于云選,劉 慧,姜 晶
(中國電子科技集團公司第四十九研究所,哈爾濱 150001)
基于CAN總線的壓力傳感器設計
于云選,劉 慧,姜 晶
(中國電子科技集團公司第四十九研究所,哈爾濱 150001)
隨著總線技術在傳感器測量領域中的應用,直接輸出數字信號的壓力傳感器己成為一大趨勢。本文設計了以一種基于CAN總線的壓力傳感器,與傳統的模擬量輸出壓力傳感器相比,本傳感器克服了在長距離傳輸過程中的信號衰減問題。同時,又有效地解決了通信距離短、數據傳輸速率慢、誤碼率高、可靠性差等問題。另外,利用卡爾曼濾波算法對傳感器的輸出進行平滑濾波,剔除較大噪聲,提高傳感器的穩定度。傳感器的輸出的準確度為:0.006 MPa;動態響應:≥25 Hz。
CAN總線;壓力傳感器;卡爾曼濾波
在某些復雜的工況環境下,對傳感器的安裝、布線、信號傳輸速率、抗干擾性等都有較為嚴格的要求。本文所述壓力傳感器的應用現場情況比較復雜,傳統工業通信大多采用RS-232、RS-485、20 mA電流環等通信方式,普遍存在通信距離短、數據傳輸速率慢、誤碼率高、可靠性差等問題。針對以上問題設計了采用CAN總線作為信號傳輸方式的壓力傳感器,CAN總線通信最高速率可達1 Mbps、傳輸速率為5 kbps時,采用雙絞線,傳輸距離可達10 km,并且數據傳輸可靠性高,CAN總線是具有通信速率高、容易實現、且性價比高等諸多特點的一種已形成國際標準的現場總線。
1.1 傳感器組成
基于CAN總線的壓力傳感器對應一塊調理電路板,與其壓力敏感元件封裝在一個殼體內,降低從電纜進入的電磁干擾。信號調理電路的作用主要包括:為供電電路、信號放大、濾波電路、單片機信號補償、保護等,它直接決定著傳感器的總體性能是否滿足各項指標。當敏感元件感應到信號后,經放大電路對信號放大后由濾波電路對信號處理,而后經單片機進行數據采集和轉換,最后輸出相應的標準信號。傳感器電路系統結構圖如圖1所示。
1.2 壓力信號測量原理
傳感器敏感元件,采用壓阻式原理完成壓力信號的拾取和測量。所謂壓阻式原理是指在半導體材料在受到應力作用時,由于應力引起能帶的變化,能谷的能量移動,使其電阻率發生變化的現象。本傳感器的敏感芯體采用MEMS(Microelectromechanical Systems)工藝技術加工完成。在硅片構成的傳感器芯體上腐蝕出一個由四個等值電阻所構成的惠斯通電橋,通過該電橋完成壓力與電壓值的轉換。當未受應力作用時,電橋處于平衡狀態;當受到應力作用時,電橋的平衡被打破,從而輸出電壓,該電壓與受到應力大小成比例。
壓阻效應所引起的電阻相對變化為:

式中:
ρ——半導體材料的電阻率;
?ρ——受應力后的電阻率變化;
E——材料的彈性模量;
π——沿晶向L的壓阻系數;
δ——沿晶向L的應力;
ε——沿晶向L的應變。
半導體材料的壓阻效應是由于在外力作用下,原子點陣排列發生變化,即其晶格間距改變,禁帶寬度變化,導致載流子遷移率及載流子濃度的變化,從而引起電阻率的變化。

圖1 傳感器電路系統結構圖
2.1 CAN總線程序設計
在主程序中循環進行AD 采集、數字濾波、溫度采集、壓力計算程序。通過CAN 接收中斷,接收主控制器命令進入相應的工作模式。在相應工作模式中使用對應時間基準中斷由主控制器同步發送數據。程序流程框圖如圖2所示。
壓阻式壓力傳感器的主要技術指標包括非線性、零點輸出、靈敏度以及溫漂等,為了保證傳感器的輸出滿足最終的使用要求,需要通過數學物理方法為傳感器進行參數補償。由于所設計的傳感器是基于CAN總線輸出的數字傳感器,所以可以更好利傳感器中的微處理器在其中通過軟件算法完成傳感器參數的補償。具體方法為在規定的使用壓力和溫度工作范圍內,采用最小二乘法分段擬合壓力A/D值和溫度A/D值,擬合原始的溫度壓力輸出曲線,并通過卡爾曼濾波算法對傳感器的輸出進行平滑該曲線,剔除較大噪聲,進一步提高傳感器的穩定度。
卡爾曼濾波算法動態模型如下:
系統狀態方程:

式中:

圖2 程序結構圖
X(k)——k時刻的系統狀態;
A 、B——參數;
U(k)——k時刻對系統的控制量;
W(k)——高斯白噪聲;
測量方程:

式中:
Z(k)——k 時刻的測量值;
H ——測量系統的參數;
V(k)——高斯白噪聲。
溫度補償過程具體步驟如下:
1)經過多次標定,利用最小二乘法曲線擬合出在特定溫度區間下的壓力輸出曲線。
2)讀取溫度A/D值,判斷該值所在的溫度區間,從而確定壓力輸出曲線。
3)讀取壓力A/D值,通過已經確定的壓力輸出曲線,得到實際壓力值。
4)多次測量,利用卡爾曼濾波算法,計算出穩定的壓力輸出值并通過CAN總線輸出。
通過以上實驗數據可以看出,通過采用卡爾曼濾波算法,有效地修正了傳感器的準確度。使傳感器的準確度有效地控制在0.006 MPa范圍內,滿足實際使用需求。

表1 傳感器溫度補償實驗結果
本文設計了一種基于CAN總線輸出的壓力傳感器,介紹了其硬件電路的系統組成,軟件程序流程圖,以及采用卡爾曼濾波算法對其進行數據補償的方法。通過對實驗數據的分析可以看出傳感器測量的準確度可以達到0.006 Mpa,滿足實際使用需求。
[1]韓偉劉,建偉. CAN 總線壓力傳感器的研究設計[J].黑龍江科技信息, 2012(3).
[2]郝勃,劉衍珩,曲良東,等. CAN 網絡的分組合并策略研究及實現[J]. 儀器儀表學報, 2012,33 (9) :2137-2143.
[3]郭曉松,王振業,于傳強,等.基于CAN 總線的容錯冗余技術研究[J]. 計算機測量與控制, 2009,17 (1) :60-62.
[4]袁帥,李穎. CAN 總線電能質量監測系統中的通信協議設計[J]. 低壓電器, 2010(5) ,31-34.
[5]馬量呈.應變電測與傳感器技術[M].北京:中國計量出版社, 1993,11.
Design of Pressure Sensor Based on CAN-bus
YU Yun-xuan, LIU Hui, JIANG Jing
(49th Research Institute, China Electronic Technology Group Corporation, Harbin 150001)
With the application of bus technology in the field of sensor measurement, direct output digital signal pressure sensor has become a major trend. In this paper, a kind of pressure sensor based on CAN bus is designed. Compared with the traditional analog output pressure sensor, the sensor overcomes the problem of signal attenuation in long distance transmission. Simultaneously, it also solves the problems of short communication distance, slow data transmission rate, high bit error rate and poor reliability. In addition, the Kalman filter is used to smooth the output of the sensor, eliminate large noise, and improve the stability of the sensor. The accuracy of the sensor output is 0.006 MPa, and dynamic response is ≥25 Hz.
CAN-bus; pressure sensor; Kalman filtering
TP212.1
A
1004-7204(2017)03-0052-03
于云選(1982-),男,本科,工程師,主要從事智能傳感器及測量技術工作。