李勉
(廣東水利電力職業技術學院,廣東 廣州 510635)
汽車行駛記錄儀,俗稱汽車黑匣子,是對車輛行駛速度、時間、里程以及有關車輛行駛的其他狀態信息進行記錄、存儲并可通過接口實現數據輸出的數字式電子記錄裝置。它能夠準確記錄汽車在行駛過程中的各項狀態信息,能為事故分析提供精確的關鍵數據[1]。它能夠遏制超速行駛和疲勞駕駛等交通違章,提高駕駛員的責任心。統計資料表明:汽車行駛記錄儀的使用,使交通事故率降低了37%~52%,減少了人員傷亡和財產損失,產生了顯著的社會效益和經濟效益[2]。作者設計一種基于CAN的汽車行駛記錄儀。
該系統需要具備以下功能:
(1)自檢功能。通電后會對系統各部件及接口進行檢測,自檢通過后“嘀的”一聲響提示用戶記錄儀開始正常工作;
(2)車輛行駛狀態信息記錄功能。記錄儀保存最近10次停車前20 s的車輛行駛狀態信息;
(3)聲音報警及記錄功能。當汽車超過設置的超速值或連續行車超過設置的時間值時,會立刻報警提醒,并記錄下來;
(4)數據通訊功能。可通過USB或串口采集記錄儀數據、設置參數、管理車輛信息。
(5)顯示功能。通過LCD顯示平均車速記錄、超時駕駛記錄、超速記錄及車輛的狀態信息。
根據上面的需求,設計該系統的總體框圖。系統主要由信息采集、信息傳輸、信息處理、LCD顯示以及數據存儲組成,如圖1所示。把采集的信息經過CAN總線傳輸到主控制器中,主控制器根據信息狀態作出相應處理,并把信息保存于數據存儲器中。當需要分析數據時,連接該系統的串口或USB來獲取采集的信息。
控制器的選擇既要滿足設計所要求的控制功能,也要擁有相對豐富的資源。信息處理的控制器選擇Motorola公司的16位單片機MC68HC912D60A,具有60 KB的FLASH、1 KB的EEPROM、2 KB的RAM、USBHost功能、多達48個GPIO引腳、SPI、CAN接口等功能。信息采集的控制器選擇ATMEL公司的8位單片機Atmega8,具有高性能、低功耗、先進的RISC結構、8 KB的 FLASH、512字節的 EEPROM、1 KB的 RAM、SPI、6通道AD等功能。
車速測量的工作原理是:根據變速箱第二軸驅動的渦輪軸轉盤每轉動一圈,霍爾轉速傳感器就輸出一個脈沖信號,在指定時間收集到脈沖信號的數目,再經過特定處理換算成速度。在時間t(h)里,霍爾轉速傳感器產生脈沖的數目為N,車速里程表的速比為1∶M(也就是說,當汽車以1 km/h速度行駛時,霍爾傳感器每小時產生脈沖數為M)。可得在時間t里,汽車的行駛里程為D=N/M(km);
車速為v=D/t=N/(M×t)(km/h);
該系統選用HK16霍爾轉速傳感器。它是一種新型的轉速傳感器,感應對象為磁鋼。由于安裝使用方便、通用性好,已被廣泛應用于各種領域。Atmega8利用霍爾傳感器測量汽車的速度與里程,通過CAN總線傳給MC68HC912D60A進行信息處理。
胎壓測量的工作原理是:將傳感器置于輪胎氣門嘴上,不同的氣壓對應著不同的電壓值,通過采集傳感器的輸出電壓,間接測量氣壓值。該系統選用GE公司的NPX-C01780傳感器。它集成了硅壓力傳感器、加速度傳感器、溫度傳感器、電壓傳感器和低功耗8位RISC處理器以及一個低頻喚醒功能,具有極佳的輪胎介質兼容性,可監測450/700/900/1400 kPa多種壓力范圍,并可定制量程,滿足了系統各方面的性能要求。NPX-C01780通過無線發射模塊MC33493將采集的電氣值傳輸到接收端。接收端是Atmega8通過無線接收模塊MC33594接收電壓值,再通過CAN總線傳給MC68HC912D60A進行信息處理。
溫度測量主要是測車內的溫度和蓄電池的溫度。該系統選用單總線數字溫度傳感器DS18B20,其測量范圍是-55~125℃,默認轉換精度是9位二進制數,對應精度為0.5℃。一條總線上可以同時掛載多個DS18B20,靠內部的全球唯一標識的64位序列號來區分。Atmega8利用DS18B20測量各點的溫度值,通過CAN總線傳給MC68HC912D60A進行信息處理。
電流測量是電流輸入到電流傳感器轉換成電壓,再送往Atmega8的AD引腳進行采集,最后將電壓值再換算成電流值。該系統采用電流傳感器DHKY3-100A,能測量兩組電流。Atmega8將電流值通過CAN總線傳給MC68HC912D60A進行信息處理。
該系統的開關量包括:車門、車燈、剎車、擋位、安全帶以及安全氣囊等狀態。為了提高系統的穩定性,開關信號經過光耦隔離后直接連接到MC68HC912D60A。系統每隔0.2 s對開關量進行一次采集。
根據國標規定,記錄儀應能以不大于0.2 s的時間間隔持續記錄并存儲停車前20 s實時時間對應的車輛行駛速度及車輛制動狀態信號,記錄次數至少為10次[2]。需要存儲的實時行駛數據包含以下信息:索引,1個字節;日期和時間,6個字節;駕駛員代碼,2個字節;速度,1個字節;胎壓,1個字節;溫度,2個字節;電流,2個字節;開關量信號共占2個字節。每0.2 s采集一次速度、胎壓、溫度、電流以及開關量信號,則1秒記錄的實時行駛數據幀占用空間為1+6+2+(1+1+2+2+2)×5=49字節。每次停車前20 s記錄的數據占用空間為49×20=980字節。10次停車的數據占用空間為980×10=9800字節=9.57 KB。本系統選用二線制串行EEPROM芯片AT24C16。其容量為16 KB,具有輸入引腳經施密特觸發器濾波抑制噪聲、高可靠性、1000000次讀寫次數、數據保存100年等特點,被廣泛應用于低電壓及低功耗的工商業領域。
圖2是系統主程序的流程圖。系統初始化包括信息處理節點以及各個信息采集節點的硬件初始化,如果有節點出現故障,立即進行報警。系統自檢通過后,每0.2 s采集汽車的實時數據;如果有節點出現故障就立即報警;如果正常獲得數據,就傳輸給信息處理節點;先判斷有沒有超速并作相應處理,再保存實時數據;把相關信息顯示在LCD上。
信息采集包括速度、胎壓、溫度以及電流,采用相同的流程圖,如圖3。CAN總線采用的是多主傳輸方式,只需要使用兩根物理傳輸線就可以在整個CAN網絡范圍內進行數據傳輸,任何CAN節點都可以進行信息的發送和接受[3-4]。控制器Atmega8首先對傳感器、CAN控制器和CAN收發器進行初始化;如果硬件出問題,就報警并重新初始化設置;在硬件正常的情況下,等待信息處理節點傳輸過來的采集命令,然后采集信息并傳輸回去。
該系統完成數據采集到顯示存儲的功能,利用CAN總線的技術特性,減少了系統的線束,解決了眾多節點之間的通信問題,可動態增加或刪除節點,適用于不同型號的汽車[5]。實踐應用表明:系統在汽車上運行穩定,數據通信狀況良好,抗干擾能力強,出錯率極低。
【1】王保華,楊正才.基于ARM及CAN總線的汽車行駛記錄儀的開發[J].儀表技術與傳感器,2009(4):27-28.
【2】中華人民共和國國家質量監督檢驗檢疫總局.GB/T 19056-2003汽車行駛記錄儀[S].北京:中國標準出版社,2003.
【3】袁淑娟,陳仁文.CAN總線網絡節點的實現及應用[J].江南大學學報:自然科學版,2005,4(3):235 -239.
【4】徐華.DSP內嵌式CAN控制器的節點設計與應用[J].湖南工程學院學報,2002,12(3):10 -12.
【5】史久根,張培仁,陳真勇.CAN現場總線系統設計技術[M].北京:國防工業大學出版社,2004.