喬海曄,鄧 超
QIAO Hai-ye1, DENG Chao2
(1. 廣東白云學院 計算機系,廣州 510450;2. 東莞南博職業技術學院,東莞 523083)
基于遠程通信的汽車油箱監測系統的設計
Based on the remote communication car tank monitoring system design
喬海曄1,鄧 超2
QIAO Hai-ye1, DENG Chao2
(1. 廣東白云學院 計算機系,廣州 510450;2. 東莞南博職業技術學院,東莞 523083)
汽車油箱監控裝置是以嵌入式計算機技術和通信技術為基礎,采用現代控制論的方法對汽車油箱中油量進行測量和油量變化速度進行檢測。通過模擬油箱油量變化和油料傳感器電壓的變化曲線獲得電壓和油量變化的分段線性函數,系統根據用戶需求設定采樣時間,定時采樣油料傳感器的電壓值,通過函數計算出對應的油量值。同時保留前一次采樣值,以判斷油量的變化速度,實現自動檢測油箱油量的消耗情況,對油箱非正常工作狀態產生報警。經過測試,裝置的測量準確度和報警功能均達到預期的效果,提高了汽車使用的安全性。
遠程通信;油量;分段線性法;采樣
眾所周知,所有的車輛都有一臺油表,用來顯示油箱中油量的多少,可提醒司機及時加油。但是普通的油表并不能時刻跟蹤油表的變化速度,反應油箱的性能情況,單靠油表來監測油箱的運行狀況,很難真實反映油料的使用情況。本系統在簡單改造原來的油料顯示系統后,提供對油箱中的油量一種精確的度量。利用油料管理模塊跟干簧管油浮子組合,代替原來的油料系統,獨立使用,提供精確測量的數字顯示,同時對油箱中油量變化速度進行監測。車輛運行(ACC開)的過程中,若石子或其他外力使油箱漏油,提供漏油報警;車輛停止(ACC關)狀態下,監測油箱中的油料變化情況,如發現油箱工作異常,通過遠程通信[1]的方式向車主提供偷油、漏油報警。即使在油表工作不正常的情況下,本系統也可以提供油量的數字顯示。實時監測車輛油箱中的油量變化情況,提高汽車使用的安全性。
在ACC開、車輛行駛的狀態下,檢測油表傳感線上的電壓,計算出油浮子電阻uiRX。連續5秒內若檢測到濾波電壓值相等;而且系統是剛從ACC關切換到ACC開狀態(bCTo0=1),將此時計算得到的電阻值跟ACC關記錄狀態下油浮子的電阻值比較。如果比較的結果相差不超過2歐姆,說明沒有任何的異常;如果相差大于5歐姆,表示油料異常。檢測油料傳感線上的電壓(Voil),采用穩定值算法,即測量過程中丟掉異常值,再進行穩定選取,最后求平均值。求解的平均值和保留值比較,由于在開車的過程中油料不可能產生突變,變化過大的電阻值先暫時存儲下來,留作后續參考判斷。系統不斷的更新電壓基準,以1分鐘為刷新頻率,檢測油料的消耗情況。
切換繼電器前保留的油表電壓Vbase、油表等效電阻Roil。計算ACC開油浮子的電阻值:

在ACC開、車輛停止狀態下,在0.5秒~2秒之間檢測油表傳感線上的電壓、通過穩定值算法[2]得出油表上的電壓值(Vbase),油表電壓在此段時間應該是不變的。切換繼電器檢測油表傳感線上的電壓(Voil),得出此段時間內的油表傳感器上的電壓采樣值。采樣值大,等效油浮子電阻就大;電壓小,等效油浮子電阻就小。利用在ACC關情況下,利用檢測到電阻值計算出油表的等效電阻(Roil)。每次進行校準的目的是防止油浮子卡住在油箱的某一位置,引起誤判。在車輛振動的情況下,油浮子不可能穩定在一個狀態。
在ACC關狀態下,在0.5~2秒之間切換繼電器,檢測油料線(見圖3中藍色線)的電壓,計算出電阻值。由于油浮子有可能發生卡住現象,保留此時計算出的電阻值作為后續的參考電阻值;如果這個值和ACC開狀態下測的電阻值一致,并且在5秒鐘內電阻值處于穩定狀態(變化的范圍在±1歐姆以內),這個值作為基準值,計算公式為:

系統以100毫秒的頻率檢測油料線的電阻,1秒鐘進行1次計算,在10秒鐘內,對比每1秒鐘檢測到的數據,若數據變化幅度較大,而且一直減小,表示油箱中油量變化異常(有人偷油或油箱漏油)。等檢測到的油料電阻值穩定時,記下穩定后的油料電阻。跟檢測前ACC關狀態下的基準值作比較,計算油料傳感器的電阻的變化值,從而計算出油量的變化,作為參考值提供給用戶。如果油料數據沒有穩定的情況下ACC開的動作發生,系統將油料傳感器的電阻變化值交給ACC開來判斷。若整個過程采樣值都很穩定的情況下,每10分鐘作為一個刷新周期,防止因溫度的變化而引起誤判。檢查ACC關的時間段內有沒有異常報警,若有將穩定的電阻值發送給主控中心。
通常汽車油表的供電電路有兩種,一種為帶總閘供電系統,另一種為不帶總閘供電系統。分別由發電機、穩壓電源、油表、油浮、負載電阻組成。油量顯示、傳感器系統的供電系統是通過汽車供電電路進行穩壓后提供的。本系統以帶總閘供電系統車輛為研究對象,將油表電源線剪斷,引出兩根線,一根作為傳感器的輸入,另外一根是地線,同時跟整個車架連接。因帶總閘開關的汽車中,車架地和電源地在總閘關閉的時候是不同的,在總閘打開的時候,車架地和電瓶地是同一個地。設計時將車駕作為參考電位對汽車的ACC、Motor進行檢測才不會產生較大的誤差。本系統電源由車機提供5V的電源。系統通過無線方式和通信網絡連接實現遠程服務器通信,也可以通過短信將報警信息發送給管理者。
2.1.1 傳感器設計
車載油料傳感器主要分為壓力式,電阻式傳感器。汽車油表的監測電路相當于一個電阻式傳感器;汽車的燃油表等效于一個電流表;從電路原理上等效于一個電阻。油耗模塊就是通過等效電路模型測得可變電阻RX的值,間接反映出油箱油量的變化;固定電阻R0是不變化的,反映的是油表和電源的內阻。
2.1.2 系統數據采集模塊設計
本系統數據采集、處理模塊包括油表線、油浮子線取樣器、放大器、RC濾波、CPU、A/D采樣、串口通信、電源等主要模塊。詳細流程及主要芯片選擇如圖1所示。

圖1 數據采集處理系統設計
軟件設計的主要目標是能夠準確的得到油浮子的任一時刻的電阻值,通過故障代碼ucErrCode的設置,利用C51語言實現車輛工作情況的跟蹤和異常情況的報警。軟件實現流程圖如圖2所示。以車輛每行駛100Km消耗10升油,時速平均為60Km計算,經過對不同車型的多次測試,選擇采樣時間為5秒,利用車本身油料傳感器,經過校準,準確率高達97%。

圖2 軟件實現流程圖
模擬某一種車型油箱,通過增加油箱中的油量,監測電阻值。假設油箱的容積為145升,取樣值每20升作為一個間隔,通過監測電阻值分別為 12,20,35,42,60,80,90,120,160。 增加的油量和對應的電阻值對應值如表1所示。獲得油量和電阻之間的關系模擬曲線(如圖3所示)。需要說明的是對于不同的車型,需經現場測試模擬該車型油箱中油量變化和對應電阻值的變化曲線,該模擬曲線不能通用。

表1 增加的油量和對應的電阻值對應值
根據油量采樣點采用分段線性化的方法,利用線性插值用直線來逼近曲線,其誤差不大于±0.2%。采用0.618法,即黃金分割[3]來尋優,目標值即誤差等于0.2%±ε。每取一段直線,驗算一次誤差,然后再修正,直到滿足誤差要求再取下一段,在自變量的取值范圍內分出合理的直線段數。

圖3 關系模擬曲線
假設線性插值函數為R=f (L)=kL+b (k>0,0≤x≤e,e為油箱的容積),其中L表示油量,R表示當前電阻值,單位歐姆。計算出電阻值在80-90歐姆范圍內時,線性函數為:

假設誤差為E(L)=R2-F(L),d≤L=d+n△L≤R2
假定這次驗算誤差的結果E (x) <0.2%-ε,則再前進0.618,如此類推:R3=0.618 (R1-R2)+R2。
本系統采用汽車電源供電系統,具有自己的數據采集系統和控制操作系統,獨立運行并時刻監測油箱中油料的變化情況。經過對本系統油量測量的準確性和油料消耗情況兩方面進行測試,均達到預期的效果,能夠滿足用戶的需求。本系統的實現和投入市場,使汽車用戶可以通過通信網絡實現對汽車油箱中油量和油料的消耗情況進行適時監控,提高用戶使用汽車的安全性。
[1] Tamara Dean. 遠程通信技術[M].北京:清華大學出版社,2004.
[2] 張吉堂.現代數控原理及控制系統(第3版)[M].北京:國防工業出版社,2009.
[3] 李鵬. 優選法在非線性函數分段線性化計算機編程中的應用[J]. 發明與創新(綜合版),2010,(2).
TP335
B
1009-0134(2010)12(下)-0056-03
10.3969/j.issn.1009-0134.2010.12(下).21
2010-07-11
喬海曄(1974-),女, 內蒙古人,講師,碩士,研究方向為嵌入式系統,計算機控制系統應用。