李勇
摘要:卡爾曼濾波算法是一種最優化自回歸數據處理算法,廣泛應用于機器人導航、工業控制、傳感器數據融合等場合中。聲吶流量檢測系統采用嵌入式單片機和FPGA固化程序同時將多路同步、實時性采集數據進行卡爾曼濾波,保證測量精度。
關鍵詞:卡爾曼;聲吶;流量
中圖分類號:TH814?? 文獻標識碼:A?? 文章編號:1672-9129(2020)12-0048-01
1 引言
隨著工業的不斷發展,工業現場需要檢測的流量工藝點越來越廣泛,同時對流量檢測的精度和穩定性要求越來越高,本文將卡爾曼濾波算法成功應用到聲吶流量檢測系統中,為流量檢測系統穩定性和可靠性提供保障。
2 檢測原理
聲吶流量檢測系統利用接收陣列傳感器信號來測量標準生產線流體內不穩定壓力場實現流量測量。聲吶流量檢測系統利用了循環流動和聲兩個獨立的技術,通過跟蹤流過陣列傳感器自然產生的湍流漩渦結構的速度和確定流體中聲波擾動的傳播速度,來提供混合物的體積流量。
3 卡爾曼濾波算法
卡爾曼濾波是一個高效的遞歸濾波算法,它可以實現從一系列的噪聲測量中,估計動態系統的狀態。將狀態空間引入濾波理論,并導出一套遞推估計算法。卡爾曼濾波核心理論是:采用信號與噪聲的狀態空間模型,將上一次的預估值和當前的觀測值來更新對狀態變量的預判,求出當前的估計值。
4 算法應用
對聲吶流量檢測系統AD采集數據進行卡爾曼濾波前,需要引入一個線性隨機微分方程的離散控制系統,描述為:X(k)=A X(k-1)+B U(k)+W(k) ,再加上系統的測量值:Y(k)=C X(k)+V(k),這兩個方程式式子中,X(k)是k時刻的系統值,U(k)是k時刻對檢測的控制量。A和B是偏差參數。 Y(k)是k時刻的測量值,C是測量系統的參數。 W(k)和V(k)分別表示過程和測量的高斯白噪聲,測量協方差分別表示為Q、R,假設他們不隨系統狀態變化而變化。在多測量系統模式下,A、B、C為矩陣。當控制函數U(k)或過程激勵噪聲W(k)為零時,差分方程X(k)中的 n × n階增益矩陣 A 將上一時刻 k-1 的狀態線性映射到當前時刻 k 的狀態。n × l 階矩陣 B 代表可選的控制輸入增益。測量方程Y(k)中的 m × n 階矩陣C 表示狀態變量X(k)對測量變量Y(k)的增益。
根據聲吶流量檢測系統AD寬動態范圍音頻信號采集出的數據特點和卡爾曼算法相結合,信號子空間由陣列接收到的數據協方差矩陣中與信號對應的特征向量組成,噪聲子空間則由協方差矩陣中所有最小值噪聲方差對應的特征向量組成,配置出適合聲吶流量檢測系統的卡爾曼數據濾波方式。
第一次卡爾曼濾波:
Q(k) = Q(k)+M
G1(k)= Q(k)+N
E1(k)=E1(k)+ G1(k)*(Y(k)- E1(k))
Q(k) =(1- G1(k))*Q(k)
第二次卡爾曼濾波:
R(k) = R(k)+m
G2(k)= R(k)+n
E2(k)=E2(k)+ G2(k)*(E1(k)- E2(k))
R(k) =(1- G2(k))*R(k)
其中Q(k)、R(k)? 估計協方差,G1(k)、G2(k) 為兩次卡爾曼增益系數,E1(k)、E2(k)為兩次 流量預估值,M、N為系數,第一次預估值通過測量值Y(k)獲得,為了更精確的剔除高斯噪聲和異常抖動,流量檢測系統中將第一次卡爾曼濾波獲得的預估值代入公式進行第二次卡爾曼濾波。預估值計算完后,將估計協方差通過卡爾曼增益系數進行更新。軟件運行過程中,通過while不斷的循環估計協方差和卡爾曼增益都會使AD采集的數據不斷收斂并趨于平穩,從而計算出最優流量值。
5 結論
聲吶流量系統中充分發揮了卡爾曼濾波算法預測和更新兩個階段的功能,利用觀測值來優化預估值,使系統實時數據達到更精確更穩定的狀態。保證了工業生產過程中對流量檢測精度和穩定性的要求。
參考文獻:
[1]聲納陣列信號處理技術[M]. 電子工業出版社 , 杜選民, 2018
[2]聲吶信號處理引論[M]. 科學出版社 , 李啟虎, 2018
[3]卡爾曼濾波原理及應用[M]. 電子工業出版社 ,黃小平,王巖, 2015
[4]廣義卡爾曼濾波的計算機實現[J]. 富鈺.網絡與信息.2007(05)