摘 要:本文一種閉環(huán)的胎壓力監(jiān)測軟件系統(tǒng)程序,該設(shè)計由總體方案、系統(tǒng)軟件流程、傳感器軟件設(shè)計、監(jiān)控終端軟件設(shè)計、性能分析。經(jīng)實(shí)際測試表明:該系統(tǒng)監(jiān)測的數(shù)據(jù)可靠,更新及時,軟件系統(tǒng)能有效的保持汽車收集信息的實(shí)時性及完整性,有很強(qiáng)的實(shí)用性。
關(guān)鍵詞:閉環(huán)控制系統(tǒng);C語言;監(jiān)控終端;胎壓傳感器
1 引言
1.1 系統(tǒng)總體方案
系統(tǒng)軟件流程上使用了狀態(tài)機(jī)的簡易實(shí)時系統(tǒng)控制,系統(tǒng)接收四輪傳感器信號、發(fā)送控制信息及顯示信息都采用了狀態(tài)機(jī)的軟件編寫方案,內(nèi)容之間相互不沖突,主從接收發(fā)送器溝通流暢及時。狀態(tài)機(jī)的軟件編程可代替龐大的實(shí)時操作系統(tǒng)在軟硬件上的資源浪費(fèi)。在硬件上沿用了普通實(shí)時胎壓監(jiān)測系統(tǒng),即四輪輪胎各放置一個胎壓傳感器,通過紐扣電池為傳感器供電,傳感器發(fā)送無線電信息至位于駕駛室常電供電的監(jiān)控終端,或是放置于控制臺監(jiān)控與顯示一體的監(jiān)控終端,通過太陽能供電。
1.2 系統(tǒng)軟件流程
在該軟件設(shè)計系統(tǒng)中,關(guān)閉了傳感器的加速度觸發(fā)裝置,正常工作時只是由監(jiān)視器主機(jī)進(jìn)行高頻喚醒,以便節(jié)省功耗和簡化軟件。而加速度及振動觸發(fā)裝置設(shè)置于監(jiān)視器主機(jī)上,在車輛啟動發(fā)動機(jī)后,觸發(fā)啟動。為了排除誤動作,增加了振動確認(rèn)功能,確認(rèn)啟動發(fā)動機(jī)后進(jìn)行開機(jī),主機(jī)初始化完成后即發(fā)送高頻喚醒信號,喚醒位于輪胎上的胎壓傳感器。在發(fā)動機(jī)啟動三秒后即可顯示輪胎胎壓及溫度值。傳感器接收喚醒信號后,即發(fā)送含有胎壓和溫度的訊息,訊息包含了從機(jī)碼傳送值及校驗(yàn)碼等。當(dāng)傳感器未接收到喚醒信號或喚醒失敗時,根據(jù)狀態(tài)機(jī)的處理機(jī)制,會在合適的時間再次發(fā)送點(diǎn)對點(diǎn)喚醒信號,如果依然未收到反饋信息,則認(rèn)為傳感器無電或死機(jī),當(dāng)進(jìn)入故障處理狀態(tài)時,監(jiān)控主機(jī)則先嘗試軟件重啟傳感器,如果不成功則在顯示器上提示進(jìn)行人工排故,車主拿監(jiān)控主機(jī)靠近對應(yīng)傳感器即可,監(jiān)控主機(jī)會和傳感器進(jìn)行低頻通訊,進(jìn)一步自動處理故障。
1.3 傳感器軟件設(shè)計
四輪輪胎各放置了一個通過紐扣電池為傳感器供電的胎壓傳感器,通過發(fā)送無線電信息至監(jiān)控終端,考慮到傳感器降低功耗以加強(qiáng)胎壓傳感器的使用壽命,所以考慮關(guān)閉加速度偵測功能以減少長時間的加速度偵測。
為了保障系統(tǒng)通信的可靠性,傳感器程序以準(zhǔn)確有效發(fā)送氣壓信息、溫度信息為目的,在傳感器啟用開始時,程序上了做了初次開機(jī)的分支設(shè)計,在主機(jī)與傳感器進(jìn)行低頻通訊后,完成了注冊信息,傳感器的發(fā)送時間,以及導(dǎo)入啟用時間。結(jié)束后設(shè)立標(biāo)志位并且重新啟動。在車輛啟動發(fā)動機(jī)后,由監(jiān)控主機(jī)振動感知啟動,并發(fā)送三幀高頻喚醒訊號,以保證傳感器接收到喚醒信號,在高頻喚醒時,因?yàn)榭赡苡须姶鸥蓴_等不可控因素,或者是其他設(shè)備的無線信號與該喚醒信號相仿,在喚醒訊號中加入啟用時間客戶碼等多位的校驗(yàn)機(jī)制,以保證傳感器僅被與之匹配的監(jiān)控主機(jī)喚醒。
傳感器被喚醒后,即在質(zhì)數(shù)倍的延時時間后,發(fā)送兩幀數(shù)據(jù)訊號,經(jīng)過另一質(zhì)數(shù)倍的延時時間,另一傳感器發(fā)送兩幀數(shù)據(jù);以此循環(huán)往復(fù),采用質(zhì)數(shù)倍發(fā)送可減少胎壓傳感器間的信號沖突。傳感器發(fā)送完畢則選擇休眠以節(jié)省功耗。該系統(tǒng)也保留了低頻喚醒功能,即通過監(jiān)控終端與傳感器的近距離接觸傳輸數(shù)據(jù),主要傳輸?shù)臄?shù)據(jù)是傳感器的系統(tǒng)設(shè)置,比如定時的時間,啟動時間,ID地址編碼等信息。
1.4 監(jiān)控終端軟件設(shè)計
如果輪胎實(shí)時氣壓和溫度不在標(biāo)準(zhǔn)輪胎氣壓的范圍,則監(jiān)控終端產(chǎn)生報警來提示駕駛?cè)藛T采取必要的預(yù)防措施。胎壓傳感器監(jiān)測的胎溫胎壓實(shí)時數(shù)據(jù),傳送到汽車儀表盤進(jìn)行實(shí)時數(shù)據(jù)顯示。
為了實(shí)現(xiàn)監(jiān)控終端可以穩(wěn)定可靠的傳輸數(shù)據(jù),在軟件程序上不卡機(jī)死機(jī),盡可能的規(guī)避數(shù)據(jù)傳輸失敗,該設(shè)計在監(jiān)控終端上選用了狀態(tài)機(jī)的方案,簡化了實(shí)時操作系統(tǒng)的繁雜,程序清晰了然,不需要復(fù)雜計算過程,只是按部就班執(zhí)行狀態(tài)信息,根據(jù)狀態(tài)信息進(jìn)行下一步的程序軌跡。狀態(tài)機(jī)的程序結(jié)構(gòu)將軟件程序分為若干個狀態(tài)值:觸發(fā)啟動后的驗(yàn)證狀態(tài)、發(fā)送傳感器高頻啟動訊號狀態(tài)、接收傳感器訊號狀態(tài)、接收傳感器訊號異常狀態(tài)、低頻喚醒處理狀態(tài)。觸發(fā)啟動后的驗(yàn)證狀態(tài)意在規(guī)避誤啟動或選擇是否啟動,最終確認(rèn)結(jié)果設(shè)立完成標(biāo)志位,程序進(jìn)入下一狀態(tài)的甄別;發(fā)送傳感器高頻啟動訊號狀態(tài)意在計算時間,在正確的時間點(diǎn)上發(fā)送高頻啟動信號,在該設(shè)計中的傳感器空閑時間設(shè)計為休眠,所以在處理完數(shù)據(jù)或接受完傳感器信息,需要在正確的時間里發(fā)送再次啟動的信號;接收傳感器訊號狀態(tài)意在在一定的時間里接收傳感器訊號,如果長時間未接收完全或者是接收不到,則設(shè)立相應(yīng)的狀態(tài)位進(jìn)入另一狀態(tài);接收傳感器訊號異常狀態(tài)是在在與傳感器通訊失敗后進(jìn)行的處理程序;低頻喚醒處理狀態(tài)意在初次開機(jī)或車主處理故障時使用;程序在幾個狀態(tài)間不斷的變動,減少了實(shí)時程序的復(fù)雜度。
在低頻喚醒功能中,監(jiān)控終端的狀態(tài)機(jī)處理機(jī)制進(jìn)入低頻喚醒處理狀態(tài),通過對單一的傳感器低頻通訊,完成對傳感器ID的匹配、動態(tài)設(shè)置、定時時間設(shè)置、啟用時間等設(shè)置,在數(shù)據(jù)傳輸上采用了4個字節(jié)的地址,1個壓力或溫度字節(jié),省去了位置字節(jié),采用一個字節(jié)的校驗(yàn)值;采用短碼,一則減少發(fā)送接收時間,另外減輕程序計算量。
2 結(jié)束語
該胎壓傳感器軟件設(shè)計的思路最初來源于電腦監(jiān)視器軟件程序,將電腦顯示訊號實(shí)時完整的呈現(xiàn)在屏幕上是電腦監(jiān)視器軟件程序的最終目的,兼顧一些亮度調(diào)節(jié)等基本功能,基于該軟件程序應(yīng)用狀態(tài)機(jī)程序結(jié)構(gòu)的穩(wěn)定可靠,應(yīng)用于類似的胎壓傳感器實(shí)時系統(tǒng)中,初步運(yùn)行中性能正常可靠。
參考文獻(xiàn):
[1]史蒂芬·普拉達(dá).C Primer Plus[M].人民郵電出版社.
[2]喬恩·本特利.編程珠璣[M].人民郵電出版社.
[3]馮永忠.汽車輪胎壓力監(jiān)測系統(tǒng)[M].機(jī)械工業(yè)出版社.
項目名稱:本文系2018年度廣西高校中青年教師基礎(chǔ)能力提升的立項項目(項目編號:2018KY1032)。
作者簡介:林松(1981-),男,廣西浦北人,本科,講師/工程師,主要研究方向:汽車職業(yè)教育、汽車結(jié)構(gòu)原理與維修。