王安翔



摘要
本文主要從干擾源較多的現場環境考慮,介紹PLC控制系統中模擬量信號采樣針對隨機干擾提出的幾種濾波方法,并用仿真和應用實例證明了其有效性和可行性。
【關鍵詞】PLC 隨機干擾 軟件濾波
可編程序控制器PLC是一種進行數字運算的電子系統,是專門為在工業環境下的應用而設計的工業控制器。因其具有編程簡單、使用方便,功能完善且對環境適應性強等特點,PLC己被廣泛應用于各行各業。但在工程實際中,由于工業生產的現場環境非常惡劣,干擾源比較多,所以計算機采集到的現場數據信號中難免混有干擾。因此,在處理模擬量信號時,為了消除其中一部分隨機干擾,準確的獲得真實信號己達到準確的測量與控制,就需要通過軟件編程時增加一部分濾波程序來對輸入的模擬量采樣信號的進行濾波,方便系統控制。
1 方式與方法
1.1 消抖濾波法
設置一個濾波計數器,計數次數為N。將每次采樣值與當前有效值比較:如果采樣值=當前有效值,則計數器清零;如果采樣值◇當前有效值,則計數器+1,并判斷計數器是否>=上限N(溢出),如果計數器溢出,則將本次值替換當前有效值,并將計數器清零。
從圖1中看出,系統在靜態時,消抖濾波效果比較好;系統動態時,濾波效果就不明顯。由此得出消抖濾波法的特點
1.1.1 優點
(1)適用于系統靜態過程較多的場合;
(2)可基本避免在現場環境中隨機干擾造成的數值抖動。
1.1.2 缺點
(1)對于系統在動態時的被測參數濾波效果不明顯;
(2)從曲線的后半段凸起可以看出,如果在計數器溢出的那一次采樣值恰好是干擾值,則會將干擾值當作有效值導入系統,造成系統隨機性抖動。
1.2 —階滯后濾波法
取a=0至1之間;本次濾波結果=a*本次采樣值+(1-a)*上次濾波結果。
從圖2上看出,濾波后所有干擾的效果都按比例減小。由此可得出該方法的特點。
1.2.1 優點
(1)在系統動態或靜態時對隨機干擾具有一定的抑制作用;
(2)由于系統動態時效果好于消抖濾波法,適用于系統動態過程較多的場合。
1.2.2 缺點
(1)相位滯后,靈敏度低,滯后程度取決于a值大小。a越小,滯后程度越;
(2)由于濾波算法選用相鄰兩個采樣值進行運算,如果這兩個采樣值恰好都是同方向的干擾值,則得出結果也是干擾值。
1.3 算術平均濾波法
本次濾波值=(采樣值1+采樣值2+...+采樣值N)/N。
從圖3上看出,濾波后所有干擾的效果都明顯減小。由此可得出該方法的特點。
1.3.1 優點
(1)由于用于采樣數據量大于一階滯后濾波法的兩個采樣數據,同時出現多個同方向的干擾值得機會減小,濾波效果就比一階滯后濾波法好,而且N值越大,濾波效果越明顯;
(2)這樣有效值的特點是多個采樣值的平均值,采樣值會在有效值范圍附近上下波動,有效值會比采樣值的波形平滑了許多。
1.3.2 缺點
(1)系統滯后較為明顯,滯后時間為采樣周期的N倍。而且N次采集,得出一個結果,濾波值變化周期為采集周期的N倍,對于測量速度較慢或要求數據計算速度較快的實時控制不適用;
(2)軟件處理中,除了需要多次運算(N-1次加法運算;1次除法運算),因為采樣值數據是有效值數據的N倍,這樣比較浪費PLC的RAM。
2 結論
以上三種方式各有優缺點,在變化緩慢的系統中(例如溫控系統),適合使用消抖濾波'法在變化快速的系統中(例如調速系統),適合使用一階滯后濾波或算術平均值法。如果在一階滯后濾波法中,a=0.5,也是求平均值的方法。中和這兩種濾波方法,我們可以制作一個較好的算法,稱為遞推平均濾波法。
制作一個采樣計數器,每次采集一個數據,計數器+1,當計數器等于N時,清零。這時候采集到的數據就可以根據計數器的數值存放到相應的寄存器當中。
本次濾波值=(寄存器0+寄存器1+...+寄存器N-1)/N
該方法具備了算術平均濾波法的優點,同時也消除了濾波周期過慢的缺點,它的濾波周期與采集周期一致(最初的N個采集周期除外)。
注意:以上方法中N值取值范圍不宜過大,理論上,采樣濾波滯后時間不能大于系統控制時間的一半,最好小于系統控制時間的一個數量級,即為系統控制時間的0.1倍。例如遞推平均濾波法的N—般取4或8。
3 結束語
本文針對PLC控制系統中,采集數據受到隨機干擾產生系統波動的問題,提出軟件濾波的一些方法。這些方法保證了采集數據的可靠性,一定程度解決一些過程控制系統的波動問題。
參考文獻
[1]沈精虎主編.西門子系列PLC原理與應用[M].北京:人民郵電出版社,2009.
[2]胡學林主編.可編程控制器教程[M].北京:電子工業出版社,2003.