国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于STM32的巴特沃斯帶阻IIR濾波算法的實(shí)現(xiàn)

2018-02-28 11:25:32萬(wàn)小川
電子技術(shù)與軟件工程 2018年13期
關(guān)鍵詞:上位機(jī)

萬(wàn)小川

摘要 以巴特沃斯帶阻IIR濾波器為例,給出了一種IIR數(shù)字濾波器從用MATLAB編程求解算法濾波到利用STM32將其實(shí)現(xiàn)的一般方法。并通過(guò)STM32的串口將濾波后的信號(hào)發(fā)送給上位機(jī),通過(guò)LABVIEW將實(shí)時(shí)濾波后的信號(hào)顯示出來(lái),并與濾波前的信號(hào)進(jìn)行對(duì)比,以驗(yàn)證濾波效果。實(shí)驗(yàn)結(jié)果表明成功用STM32將巴特沃斯帶阻IIR濾波器實(shí)現(xiàn),且濾波效果與仿真結(jié)果十分吻合。

【關(guān)鍵詞】帶阻 IIR濾波器 濾波算法 STM32處理器 上位機(jī)

濾波器在信號(hào)處理、控制系統(tǒng)中,有著十分重要的作用。傳統(tǒng)的信號(hào)處理都是基于模擬信號(hào)的處理。隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,尤其是嵌入式技術(shù)的飛速發(fā)展,將傳統(tǒng)的濾波器、控制器應(yīng)用于嵌入式計(jì)算機(jī)中則顯得十分必要。因?yàn)椴还軅鹘y(tǒng)的濾波算法還是控制算法都是用模擬電路來(lái)實(shí)現(xiàn)的,這樣對(duì)于有些復(fù)雜的算法,需要很多電子元器件,會(huì)占據(jù)更多電路板的面積,而且一個(gè)濾波電路只能實(shí)現(xiàn)一種濾波算法,如果條件改變則需重新繪制電路,這樣會(huì)增加人力與物力的成本。而如果將濾波算法用嵌入式處理器來(lái)實(shí)現(xiàn)則會(huì)避免這個(gè)問(wèn)題,因?yàn)椴还転V波算法如何復(fù)雜、條件如何改變,只需更改軟件而己,不需要對(duì)外圍電路做任何修改。

嵌入式處理器很多,其中典型的是TI公司的F28XXX系列的DSP和意法半導(dǎo)體公司的以Cortex-M為內(nèi)核的STM32系列處理器。相比STM32,DSP擁有更強(qiáng)的浮點(diǎn)運(yùn)算能力,但是價(jià)格卻比STM32高。之所以選擇STM32作為底層實(shí)現(xiàn)是因?yàn)楸驹O(shè)計(jì)的無(wú)限沖擊響應(yīng)(IIR)濾波器階數(shù)不高,不需要像高階有限沖擊響應(yīng)(FIR)濾波器那樣做大量的卷積運(yùn)算,使用STM32完全能滿足運(yùn)算性能,故沒(méi)必要使用價(jià)格更高的DSP。處理器具體型號(hào)為STM32F103ZET6。

在信號(hào)處理、控制算法理論分析中,MATLAB被廣泛應(yīng)用,然而MATLAB生成的程序M文件并不能直接作用于硬件,即使將MATLAB程序生成C程序,但也不能生成直接驅(qū)動(dòng)底層硬件的驅(qū)動(dòng)程序。因此在信號(hào)處理中適合用MATLAB從頂層在理論上去設(shè)計(jì)和計(jì)算,然后將MATLAB運(yùn)算得到的參數(shù)運(yùn)用到底層硬件處理器中己達(dá)到信號(hào)處理的目的。這是相對(duì)高效的處理方法,因?yàn)榍度胧较到y(tǒng)要求實(shí)時(shí)性,底層硬件沒(méi)必要去做一些跟頂層參數(shù)求解相關(guān)的運(yùn)算,這樣即提高了嵌入式的工作效率,也保證了其實(shí)時(shí)性。

1 數(shù)字濾波器濾波原理

l.1 數(shù)字信號(hào)的產(chǎn)生

濾波器(filter)是一個(gè)用來(lái)去除信號(hào)中一些不需要的頻率成分的裝置或系統(tǒng),按照其功能可劃分為低通濾波器、高通濾波器、帶通濾波器和帶阻濾波器。按照其脈沖響應(yīng)是否有限可分為有限脈沖響應(yīng)(FIR)濾波器和無(wú)限脈沖響應(yīng)(IIR)濾波器。

由數(shù)字濾波器的離散傅里葉變換:

2.2 IIR數(shù)字濾波器的設(shè)計(jì)流程

一個(gè)IIR數(shù)字濾波器一般有兩種設(shè)計(jì)方法:

(1)脈沖響應(yīng)不變法;

(2)雙線性變換法。

本文采用的是雙線性變換法。所謂雙線性變換是指,傳遞函數(shù)的拉式變換s頻域與z變換z域的一種頻域映射或變換。采用公式如下:接近。其中計(jì)算得:nu=[ 0.0669,0.1541,0.6203,1.007 7,2.1925,2.6497,3.9447,3.5 921,3.9447,2.6497,2.1925,1.0077,0.6203,0.1541, 0.0669]; de=[1.0000,1.4791,2.95 08,3.132 6,4.1819,3463 3,3.33 85,2.1602,1.6307,0.8029,0.4695,0.1628,0.0729,0.0140,0.0045].

3 STM32實(shí)現(xiàn)

由于本設(shè)計(jì)旨在驗(yàn)證用STM32實(shí)現(xiàn)濾波算法,故免去了AD和DA環(huán)節(jié),待濾波的濾波器輸入信號(hào)由STM32內(nèi)部產(chǎn)生,然后再將經(jīng)過(guò)濾波算法得到濾波后的信號(hào)發(fā)送給上位機(jī)以查看濾波效果。其原理圖為圖3。

STM32軟件主要包括初始化、定時(shí)器中斷函數(shù)。定時(shí)器的定時(shí)時(shí)間為采樣時(shí)間,定時(shí)器中斷函數(shù)主要包括產(chǎn)生輸入信號(hào)、運(yùn)算濾波算法以及串口發(fā)送濾波后信號(hào)。

4 分析與總結(jié)

本設(shè)計(jì)旨在通過(guò)以巴特沃斯帶阻IIR濾波器為例,說(shuō)明用STM32實(shí)現(xiàn)IIR濾波器濾波算法的設(shè)計(jì)方法和過(guò)程,通過(guò)驗(yàn)證,成功用STM32將通過(guò)MATLAB設(shè)計(jì)得到的濾波算法實(shí)現(xiàn)。如果要設(shè)計(jì)完整的濾波器,還應(yīng)增加AD和DA模塊。對(duì)于用硬件實(shí)現(xiàn)數(shù)字濾波器的一般方法都是先采用MATLAB作為頂層設(shè)計(jì),設(shè)計(jì)其濾波算法,不論是FIR濾波器還是IIR濾波器,然后再利用硬件將其實(shí)現(xiàn)。不同的是IIR濾波器是通過(guò)Z變換得到輸入信號(hào)和輸出信號(hào)的差分方程,而FIR濾波器是得到單位沖擊響應(yīng)序列,一般利用窗函數(shù)法,然后與輸入信號(hào)做卷積得到輸出信號(hào)。但只要得到了濾波器的差分方程或單位沖擊響應(yīng)序列,不管是用STM32、DSP、FPGA實(shí)現(xiàn),還是用一般的單片機(jī)實(shí)現(xiàn)都變得簡(jiǎn)單,只是各種硬件運(yùn)算能力的差異。

參考文獻(xiàn)

[l]Sanjit K.Mitra著,彭啟琮選.Digitalsignal processing[M].清華大學(xué)出版社.2012.

[2]Weeks M.Digital Signal ProcessingUsing MATLAB and Wavelets (ElectricalEngineering) [M] . Infinity SciencePress, 2006.

[3]Proakis J G,Manolakis D G. "DigitalSignal Processing - Principles,Algorithms & Applications" ,F(xiàn)ourthEdition, Pearson Education,PrenticeHall, 2007. [J]. 2015.

[4] Proakis J. Essentials of DigitalSignal Processing Using MATLAB,Adapted International StudentEdition [J]. 2012.

猜你喜歡
上位機(jī)
基于單片機(jī)的無(wú)線液位監(jiān)測(cè)系統(tǒng)
科技資訊(2016年27期)2017-03-01 16:54:43
基于單片機(jī)的遠(yuǎn)程控制智能澆水系統(tǒng)
論網(wǎng)絡(luò)通信技術(shù)
基于云的短波發(fā)射機(jī)機(jī)房中央空調(diào)自動(dòng)控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
基于上位機(jī)、NRF多點(diǎn)無(wú)線溫度監(jiān)控系統(tǒng)
景點(diǎn)智能導(dǎo)航系統(tǒng)
全自動(dòng)包裝及碼垛系統(tǒng)的發(fā)展與應(yīng)用
可編程序控制器在糧食烘干機(jī)控制系統(tǒng)的應(yīng)用
智能遠(yuǎn)程溫室監(jiān)控系統(tǒng)設(shè)計(jì)
基于ZigBee網(wǎng)絡(luò)的Android平臺(tái)糧情移動(dòng)監(jiān)測(cè)系統(tǒng)
山阳县| 江西省| 佛教| 江孜县| 长治市| 永寿县| 福建省| 册亨县| 上蔡县| 东宁县| 新源县| 祁东县| 枣强县| 获嘉县| 尖扎县| 石景山区| 婺源县| 兴宁市| 保靖县| 蚌埠市| 将乐县| 抚顺县| 三明市| 两当县| 花垣县| 宁蒗| 红安县| 探索| 内黄县| 囊谦县| 南部县| 博罗县| 塔城市| 洪江市| 阜新市| 无为县| 陇南市| 新闻| 阿克陶县| 通州区| 吉木萨尔县|