目前貨車、掛車等牽引車駕駛室和車廂之間相距比較遠,如采用有線方式進行傳感器數據采集和傳輸,必須布置足夠長的線束,不僅使設備安裝不便,還會出現安全隱患,因此本文采用Zigbee方式進行數據采集和傳輸。
將超聲波液位計合理安裝在車廂水箱上方,通過超聲波測距模塊對水箱水位進行測量,并將數據經Zigbee發送模塊傳輸到安裝在駕駛室內的接收模塊,最后將數據通過顯示模塊12864或者1602進行顯示,這樣駕駛員可以直接觀察水箱水量的使用情況,從而摒棄了停車觀測或通過駕駛員經驗來對水位進行判斷。
超聲波模塊共3個,圖2是超聲波模塊2發射電路原理圖。OUTPUT_2輸出的40kHz方波信號一路經一級反向器后送到超聲波換能器的一個電極,另一路經兩級反向器后進到超聲波換能器的另一電極。用這種推挽形式將方波信號加到超聲波換能器兩端,可以提高超聲波的發射強度。輸出端采用兩個反向器并聯,用以提高驅動能力。上拉電阻,除了可以提高反向器74LS04輸出高電平的驅動能力,可以增加超聲換能器的阻尼效果,縮短其自由振蕩的時間。
圖3是超聲波模塊2接收電路原理圖。CX20106A是一款紅外線檢波接收的專用芯片,常用于電視機紅外遙控接收器。考慮到紅外遙控常用的載波頻率38kHz與測距的超聲波頻率40kHz較為接近,可以利用它制作超聲波檢測接收電路。實驗證明用CX20106A接收超聲波,具有很高的靈敏度和較強的抗干擾能力。根據測量范圍要求不同可適當調整與接收換能器并接的濾波電容的大小,以獲得合適的接收靈敏度和抗干擾能力。
接口電路為超聲波與外部電路連接的接口,包括INPUT、OUTPUT、VCC、GND接口。
Zigbee發送和接收模塊
圖4是傳感器終端無線發送和接
圖1 系統構成
片機相應輸入捕捉通道計算從發射到接收的時間t,聲速便可以得出。由于補償聲波與測量聲波傳播途徑所處環境極為相似,所受到環境影響也基本一致,其聲速通常也較為接近,所以這種方法是目前使用最精確的聲速修正方式。
時間修正法可以有效修正軟硬件系統造成的延時。在實際系統中,我們可以用下面的方法來對這個固定的延時時間Δt來進行修正。設S1、S2為兩個已知固定距離,t1、t2分別為對應這兩個固定距離采集的回聲值(內含Δt因素),則超聲波在S1、S2距離內往返傳播所用的時間實際上分別為t1-Δt和t2-Δt。故有:
S1=C×(t1-Δt)/2 (3) S2=C×(t2-Δt)/2 (4)由上面兩式可得:
Δt=(S1×t2-S2×t1)/(S1-S2) (5)
在實際測量中,將測量得到的S1、S2、t1、t2值代入式中求得Δt,再將各個回聲時間減去Δt,即可消除延遲時間的影響。在此S1可取貨車水箱直徑2R,S2可取R。
經上面兩種方法校正,由(2)、(5)式可得:
L= C×(T-Δt )/2 (6)
此外為了避免超聲波從發射器直接傳送到接收器引起直射波造成的影響系統需延時0.1ms。因此最后得出的等式應為:
L=C×(T-Δt-0.1ms)/2 (7) Zigbee水箱液位設計
Δt -100)* Vt /20000;
Distance1 = (uint8)(CaptureTime1-Δt -100)* Vt /20000;
Distance2 = (uint8)(CaptureTime2-Δt -100)* Vt /20000;
代碼中C a p t u r e T i m e 0、CaptureTime1、CaptureTime2為Timer1三個輸入捕捉通道所捕捉的聲波傳輸時間;Δt為時間修正法后得到的系統延時時間;Vt為聲速校準補償法得到的聲速。
最終得到液位數據Report_Data為:
If (counterfag= =5) { Report_Data= (value_0+value_1+value_2)/3;counter fag=0;}
現實中該值多次測量后與實際值進行比較,采用最小二乘法來修正,通過Excel線性擬合,得出線性擬合式子[4],這樣根據擬合等式得出的位置
正確定位和采取合理的安裝保護措施是超聲波傳感器模塊可靠工作的前提和關鍵。由于盲區[5]的存在以及聲速和系統延時造成的影響,該裝置最小測量范圍為0.7cm,最大為255cm,測量精度為1cm。
本系統只設計了單類型采集節點,由于設計時采用了模塊式設計方法,因此可以用于其他傳感器的數據收發,比如胎壓檢測、車速測量等,硬件上只需在傳感器接口電路和命令觸發上做相應的調整即可。