久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10732|回復: 1
打印 上一主題 下一主題
收起左側

單片機數字濾波算法研究

[復制鏈接]
跳轉到指定樓層
樓主
ID:77367 發表于 2015-4-18 18:21 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
       幾天前測試了一下四軸的AD無極調速性能,雖說是用上了高精度電位器,但是效果還是不理想,電機還是有過沖的感覺。和以前用普通電位器的調速效果相比沒有什么改善。nxp,白瞎了老子38元人民幣。造成電機過沖的原因是采集到的AD轉換值跳變,于是借鑒了液晶觸摸屏的觸點校正原理,對采集的AD值進行軟件濾波處理,通過程序數字濾波處理,飛行器電位器調速效果有了非常大的改善,我是滿意了。所以說,硬件的不足可以通過軟件來補充解決。反過來,軟件的不足可以通過硬件來彌補,很顯然軟件模擬,仿真更經濟。

     說到數字濾波技術,最近看到了一篇非常好的文章《單片機數字濾波算法研究》。好久沒有看到這么好的文章了,正是因為讀了這篇文章受到啟示才解決了四軸的無極調速問題,F在裝逼一下,將其精華說一下。將其貼出來,閑來無事就可以看看。相信一定會有收獲。
      
      本文以51 系列單片機為背景,針對電子系統中經常出現的隨機干擾,介紹了幾種使用較為普遍的克服隨機干擾信號的單片機數字濾波算法。同時對這幾種算法進行了比較,并指出了每一種算法的具體適用范圍和注意事項。

   1,  在單片機應用中經常需要對輸入的信號進行處理,當由于存在隨機干擾使被測信號中混入了無用的成分時,可以采用濾波器濾掉信號中的無用成分,從而提高信號質量。模擬濾波器在其低頻和甚低頻時實現是比較困難的,而數字濾波器是不存在這些問題的。它具有精度高、高可靠性和高穩定性的特點,因此在單片機應用系統中被廣泛用于克服隨機誤差。采用數字濾波算法克服隨機誤差主要有如下優點:
(1) 數字濾波是由軟件程序實現的,不需要硬件,因此不存在阻抗匹配的問題。
(2) 對于多路信號輸入通道,可以共用一個軟件“濾波器”,從而降低儀表的設計成本。
(3) 只要只當改變濾波器程序或元算參數,就能方便的改變濾波特性,這對于低頻脈沖干擾和隨機噪聲的克服特別有效。
2  算法介紹:
為便于以下的程序書寫方便,這里做一個假設:假定從8 位AD 中讀取數據(如果是更高位的AD 可定義數據類型為int) 。
1 ) 一階滯后濾波法:
硬件濾波電路中最常用的是一階慣性RC 模擬低通濾波器,當采用這種模擬濾波器來抑制低頻干擾時,要求濾波器有較大的時間常數和高精度的RC網絡,增大時間常數有求增大R 值,其漏電流也隨之增大,從而降低了濾波效果。而采用數字濾波算法來實現動態的RC 濾波,則能很好的克服上述模擬濾波器的缺點。在模擬常數要求較大的場合這種方法顯得更為實用,一階慣性濾波算法對于周期干擾具有良好的抑制作用,其不足之處是帶來了相位滯后,導致靈敏度低。同時它不能濾除頻率高于采樣頻率二分之一(稱為奈奎斯特頻率) 的干擾信號。例如采樣頻率為100Hz ,則它不能濾除50Hz 以上的干擾信號。對于高于奈奎斯特頻率的干擾信號,應該采用模擬濾波器。
2) 限副濾波法:
由于單片機系統中可能存在隨機脈沖干擾,或由于變送器不可靠而將脈沖干擾引入輸入端,從而造成測量信號的嚴重失真。對于這種隨機干擾,限副濾波是一種有效的方法。其基本方法是比較相鄰( n 和n - 1 時刻的兩個采樣值yn 和yn - 1。然后根據經驗確定兩次采樣允許的最大偏差。如果兩次采樣值yn 和yn - 1 的差值超過了所允許的最大偏差范圍,則認為發生可隨機干擾,并認為后一次采樣值
yn 為非法值,應予刪除,刪除yn 后,可用yn - 1 代替yn。若未超過所允許的最大偏差范圍,則認為本次采樣值有效。
3 ) 中位值濾波法:
中位值濾波法是對某一被測參數連續采樣n 次(一般n 取奇數) ,然后再把采樣值按大小排列,取中間值為本次采樣值。中位值濾波法能有效克服偶然因素引起的波動或采樣不穩定引起的誤碼等脈沖干擾。對溫度、液位等緩慢變化的被測參數用此法能收到良好的濾波效果,但是對于流量壓力等快速變化的參數一般不宜采用中位值濾波法。
4) 算術平均濾波法:
算術平均濾波法適用于對一般的具有隨機干擾的信號進行濾波。這種信號的特點是信號本身在某一數值范圍附近上下波動,如測量流量、液位時經常遇到這種情況。算術平均濾波法是要按輸入的N 個采樣數據,尋找這樣一個Y ,使得Y 與各個采樣值之間的偏差的平方和最小。
在編寫算術平均濾波法程序時嚴格注意兩點:一是對于定時測量,為了減小數據的存儲容量,可對測得的值直接進行計算,但由于某些應用場合,為了加快數據測量的速度,可采用先測量數據,并存放在存儲器中,測完N 點后,再對N 個數據進行平均值計算。二是選取適當的數據格式,也就是說采用定點數還是采用浮點數。采用浮點數計算比較方便,但計算時間較長,采用定點數可加快計算速度,但必須考慮累加時是否產生溢出。例如數據為14 位二進制定點數時,采用雙字節運算,當N > 4 時,就可能產生溢出。
5)  遞推平均濾波法(又稱滑動平均值濾波法):
上面介紹的算術平均值濾波,每計算一次數據,需要測量N 次。對于測量速度較慢或要求計算速度較高的實時系統,該方法是無法使用的。例如某ADC 芯片的轉換速率為每秒鐘10 次,而要求每秒輸入4 次數據時,則不能大于2。下面介紹一種只需要進行一次測量,就能得到一個新的算術平均值的方法,即滑動平均值濾波法;瑒悠骄禐V波法采用隊列作為測量數據存儲器,設隊列的長度為N ,每進行一次測量,把測量結
果放于隊尾,而扔掉原來隊首的一個數據,這樣在隊列中始終就有N 個“最新”的數據。當計算平均值時,只要把隊列中的N 個數據進行算數平均,就可得到新的算數平均值。這樣每進行一次測量,就可得到一個新的算術平均值。滑動平均值濾波法中的隊列一般采用循環隊列來實現。
6 ) 加權滑動平均濾波法:
在算術平均濾波和滑動平均濾波法中,N 次采樣值在輸出結果中的比重是均等的,即1PN ,用這樣的濾波算法,對于時變信號會引入滯后,N 越大,滯后越嚴重。為了增加新的采樣數據在滑動平均濾波法中的比重,以提高系統對當前采樣值中多受干擾的靈敏度,可以采用加權滑動平均濾波法。實質上它是前面介紹的滑動平均濾波算法一種改進,即對不同時刻的數據加以不同的權,通常越接近現時刻的數據,權取得越大。加權滑動平均濾波算法適用于由較大純滯后時間常數的對象和采樣周期較短的系統,而對于純滯后時間常數較小,采樣周期較長,變化緩慢的信號,則不能迅速反映系統當前所受干擾的嚴重程度,濾波效果較差。
7 ) 復合濾波法:
單片機系統在實際應用中,所受到的隨機干擾往往不是單一的,又是既要消除脈沖干擾的影響,又要做數據平滑處理。因此,在實際應用中常常把前面介紹的兩種以上的方法結合起來使用,形成所謂的的復合濾波。例如,防脈沖擾動平均值濾波算法就是一種實例。這種算法的特點是先用中位值濾波算法濾掉采樣值中的脈沖干擾,然后把剩下的各個采樣值再進行滑動平均濾波。由于這種濾波算法兼容了中位值平均濾波算法和滑動平均濾波算法的優點,所以無論是對緩慢變化的過程變量還是對快速變化的過程變量都能起到較好的濾波效果。

      本文介紹了幾種使用較為普遍的克服隨機干擾的軟件算法,但是在一個具體的單片機系統中究竟應該選用哪種算法,還取決于系統的使用場合以及在過程中所含有的隨機干擾情況。本文只說了每種數字濾波的思路,具體代碼比較簡單就不貼出來了。

      如果通過一篇文章就能解決實際問題,那這樣的文章就是精品。本文精華采摘自二炮工程學院的研究生論文,本人加入了一些自己的理解。程序參考:http://www.zg4o1577.cn/bbs/dpj-30985-1.html

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:1 發表于 2016-7-31 13:09 | 只看該作者
講的很棒,51黑論壇有你更精彩!!!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 久久亚洲一区二区三区四区 | 国产偷自视频区视频 | 四虎影院在线观看免费视频 | 在线观看国产视频 | 亚洲精品美女在线观看 | a级在线免费视频 | 一区二区亚洲 | 中文字幕在线视频精品 | 国产精品网址 | 国产精品日日做人人爱 | 欧美黑人一区二区三区 | 久久综合狠狠综合久久综合88 | 91av精品| 久久精品一 | 91社区在线高清 | 中文字幕乱码一区二区三区 | 男人天堂999 | 日日夜精品视频 | 亚洲国产精品久久久 | 中文久久 | 日本三级全黄三级三级三级口周 | 亚洲精品1 | 鲁大师一区影视 | 精品久久久久久久久久久久久久 | 国产高清一区二区三区 | 国产精品区一区二区三区 | 久久久免费在线观看 | 久久精品国产一区 | 久久99精品久久久久蜜桃tv | avtt国产 | 国产成人精品一区二 | 国产精品国产三级国产aⅴ无密码 | 一区二区三区国产视频 | 神马久久av| 一级黄色片在线看 | 九九九视频在线观看 | 一区观看| 日本三级网站在线观看 | www国产成人免费观看视频,深夜成人网 | 欧美黄色片在线观看 | 国产成人精品一区二区三区在线 |