汽車行駛記錄儀(俗稱汽車黑匣子),是對車輛行駛速度、時間、里程以及有關車輛行駛的其他狀態信息進行記錄、存儲并可通過接口實現數據輸出的數字式電子記錄裝置。對遏止疲勞駕駛、車輛超速等交通違章、約束駕駛人員的不良駕駛行為、保障車輛行駛安全以及道路交通事故的分析鑒定具有重要的作用。
近幾年來,國內部分省份已經規定,長途客運車必須安裝汽車行駛記錄儀。本文根據汽車行駛記錄儀國家標準GB/T 19056-2003,設計了一種符合國家標準且在現有的汽車行駛記錄儀產品中增加了防碰撞無線數據上載的功能。下面主要闡述汽車行駛記錄儀的基本功能以及硬件架構和軟件系統的設計。
1 汽車行駛記錄儀基本功能
國家標準GB/T 19056-2003中主要要求記錄儀應有如下功能:
(1)自檢功能
記錄儀在通電開始工作時,應首先進行自檢,自檢正常后應以綠閃信號及顯示屏顯示方式指示工作正常。
(2)駕駛員身份記錄功能
每臺記錄儀均配置惟一序號,并安裝了非接觸式射頻IC卡驗卡機,或鍵人密碼方式,用戶可以根據需要采用IC卡方式或鍵入密碼方式驗證駕駛員的身份。如駕駛前未進行身份驗證,或身份驗證無效,即默認為是上一次駕駛員身份。通過記錄儀管理軟件可以方便地查看駕駛員身份驗證資料,如駕駛員身份驗證無效,并不影響駕駛,但可通過管理軟件查看到非法駕駛的相關數據。
(3)數據顯示
轉速檢測與車輛轉速儀表同步,數字顯示,檢測精度為±50 r/min,顯示范圍為0~9 999 r/m。發動機轉速特征系數可通過記錄儀管理軟件進行設定。
日期和時間的記錄格式:北京時間*年*月*日*時*分*秒,相對誤差:±5 s。
(4)數據的采集、記錄、存儲功能
能夠對時間、日期、駕駛時間、車輛行駛速度、行駛里程等數據進行實時測量、記錄和存儲,并保證存儲的數據在較長時間內不丟失。需要被采集的輸入信號包括三類:模擬信號輸入、數字信號輸入以及開關量信號輸入。
(5)數據通信功能
記錄儀能夠通過多種方式(包括RS 232串行接口、USB接口以及I2C總線接口)與外部環境進行通信,實現數據的交互。
現有的汽車行駛記錄儀數據上載大部分均為有線傳輸,例如USB、串口線傳輸等。在無法使用有線傳輸的場合,采用無線數據傳輸模塊和單片機相結合進行數據傳輸是較合理的方案。本文就是用LPC2214與SR-WF-1021數傳模塊結合,加上防碰撞的簡單算法進行數據通信。
(6)超速、駕駛員疲勞駕駛的報警、記錄
當車速超過設限(可根據用戶需要設定),記錄儀將發出聲光報警,提醒駕駛員減速。報警聲間隔為4s。
當同一駕駛員連續駕車行駛累計4 h以上,記錄儀將記錄下該駕駛員疲勞駕駛的相關數據,并發出蜂鳴報警,同時紅燈閃爍,與超速報警相似。連續駕駛中途停車超過20 min,記錄儀自動解除當前疲勞時間的累計。若停車時間小于20 min,記錄儀仍視為連續駕駛,累計疲勞駕駛時間。
2 系統硬件設計
本文設計了一個基于LPC2214單片機的簡化嵌入式無線數據采集系統,系統框圖如圖1所示。該系統體積小、重量輕、運行成本低,且依托現有的無線模塊自組網絡,自定義通信協議。特別適用于采集點分布范圍廣、數量多、自動化值守的場合。
本系統的主機部分包括:信號輸入、數據保存和處理、數據顯示、數據通信、復位電路和掉電保護電路等部分。
?
實時時鐘電路,在發生超速、疲勞駕駛等違章情況時,LPC2214可直接從實時時鐘電路中讀取實時時間進行處理和保存。
系統具備USB接口,當用戶插入USB磁盤時,可利用主控USB功能,將存儲器中的數據導入磁盤中。上位機軟件可利用此USB磁盤采集到的數據進行數據分析和車輛、人員管理。
復位電路不僅能夠復位系統,同時可以處理無線通信中一些干擾信號使無線模塊通信阻塞造成的死機,同時LPC2214中的電源監控芯片可提高系統的可靠性,從而保證LPC2214對電源、時鐘源等諸多方面提出的較高要求。
2.1 CPU模塊
系統中的CPU模塊是采用Philips公司推出的基于一個支持實時仿真和跟蹤的32位ARM7TDMISTM CPU的高速處理器LPC2214。
LPC2214帶有256 KB嵌入的高速FLASH存儲器。128位寬度的存儲器接口和獨特的加速結構使32位代碼能夠在最大時鐘速率下運行。對代碼規模有嚴格控制的應用可使用16位Thumb模式將代碼規模降低超過30%,而性能的損失卻很小。
LPC2214采用144腳封裝,可使用的GPIO高達76(使用了外部存儲器)~112個(單片應用)。由于內置了寬范圍的串行通信接口,使它們非常適合于通信網關、協議轉換器、嵌入式軟Modern以及其他各種類型的應用。
2.2 數據量采集
本文的模擬量采集是直接利用LPC2214內現有的逐次逼近式的10 b A/D轉換器,實現8路快速模擬信號的采集。該轉換器的測量范圍為0~3 V,最快轉換速度可達2.44μs/次,編程簡單,還可選擇需要的功能來提高轉換器的轉換精度。
本文的開關量采集時采用8路開關量的采集,外部開關信號經過光電隔離TLP421后,從LPC2214的8根I/O口引入系統,編程實現采用中斷方式或查詢方式對這8路開關信號進行采集。
2.3 數據存儲模塊
本文系統以LPC2214為核心,對外部模擬量輸入、數字量輸入以及開關量輸入3種信號分別進行采集。需要保存的數據經過處理后存儲于內部大容量存儲器中,實時數據(如實時車速、駕駛員信息、實時時間)及報警信號等可通過顯示面板輸出顯示。
?
本文系統中含有兩種存儲器:FLASH存儲器SST39VF160和E2PROM存儲器FM24CL64。示意圖如圖2所示。
FM24CL64是一個基于I2C總線、具有8 KB存儲空間的串行CMOS的E2PROM存儲器,有一個專門的寫保護功能。該芯片占據LPC2214的I/O資源少、編程簡單、數據存儲時間亦可達100年,故常用于存儲一些系統、配置參數,在儀器儀表中的應用十分廣泛。
SST39VF160是一個1M×16的CMOS并行多功能FLASH存儲器,具有快速擦除扇區和軟、硬件寫保護等功能。因為該芯片掉電數據保存時間超過100年,所以非常適用于大容量數據存儲的場合,尤其是需要程序或數據存儲器可方便且低成本地更新換代。
在本系統中,擴展了一個高速的靜態RAMIS61LV25616,該器件由ISSI的高性能CMOS技術制造而成,具有功耗低、訪問速度快等特點。超大容量的SDRAM資源,為嵌入式操作系統的移植、復雜邏輯處理提供了堅實的基礎。
2.5 通信模塊
LPC2214內部集成2個16C550工業標準UART串行接口,使用UART1外擴SP3232芯片,構成標準的RS 232通信接口。采集數據可以通過RS 232總線,傳輸到PC機,便于數據的存儲與處理。
使用UART0外擴SRWF-1021無線數傳模塊,為記錄儀和PC機之間的數據通信提供了一種便利的透明的無線傳輸方式。該模塊主要用于工業控制。其突出特點是:實現串口透明的無線傳輸、實時穩定可靠高速、配置簡單。將采集到的數據通過無線的方式進行傳送,應用靈活,可以在不容易布線的環境中很好地工作。
SRWF-1021無線數傳模塊為通用透明傳輸模塊,能適應任何標準或非標準的用戶協議,其特點如下:
(1)微功率發射,最大發射功率為17 dBm,使用載波頻率為433 MHz。
(2)標準配置提供8個信道,可擴展到16/32信道。滿足用戶多種通信組合方式。
(3)提供2個串口三種接口方式,COM1為TTL電平。
(4)接口波特率為多種可選,格式也為用戶自定義,可傳輸無限長的數據幀,用戶編程靈活。
(5)+5 V供電情況下,接收電流為(28±2)mA,發射電流為(90±5)mA,休眠電流為(5±2)μA。
(6)采用單片射頻集成電路及單片MCU,體積小,外圍電路少,可靠性高,故障率低。
(7)高抗干擾能力和低誤碼率,是基于GFSK/FSK的調制方式,采用高效前向糾錯信道編碼技術,提高了數據抗突發干擾和隨機干擾的能力。
(8)傳輸距離遠,在公路情況下,天線放置高度為2 m,可傳輸距離可達800 m(433 MHz@9 600 b/s)。
(9)提供透明數據接口,能適應任何標準或非標準的用戶協議,自動過濾掉空中產生的假數據,用戶無需編制多余的程序,實現所收即所發。
(10)UART接口,COM2由用戶自定義為軟件模擬的RS 232/RS 485接口,用戶只需要拔插1位短路器后再上電即可定義。
3 系統軟件部分
無線通信系統的軟件設計包括單片機端、PC機端以及上位機管理分析軟件三部分。三部分軟件相互配合,實現半雙工通信。
單片機端軟件要求汽車黑匣子作為一個記錄汽車運行狀態的儀器,在無人控制的環境下,隨汽車開始運行而自動運行。
本文汽車黑匣子的運行方式為:在系統上電后開始運行系統引導程序,通過引導程序調用嵌入式Linux內核,在操作系統運行后,操作系統自動啟動本系統的主程序。
系統軟件采用中斷服務程序配合CPU集中控制的結構。主控程序負責系統初始化、操縱每個模塊的硬件設備并與之交互數據;而各個模塊用中斷的方式向主控程序發出請求,要求主控程序完成相應的操作。
上位機管理分析軟件是提供給車輛管理中心人員使用,一方面它可以采集管理中心屬下的所有車輛信息和駕駛員信息,進行統一編號和管理;另一方面它可以采集車輛行駛的實時數據,掌握駕駛員的駕駛情況。此外它還可對發生事故的車輛進行事故分析鑒定,為交通部門和執法部門提供相應的交通事故鑒定報告。
?
記錄儀和PC機之間通信可以是單點對單點,單點對多點,多點對多點通信。發送廣播信息是單點對多點通信,或者是多點對多點通信。但是疲勞、超時、超速等詳細信息都是單點對單點通信。無線通信協議實現過程如圖3所示。
3.1 無線通信協議設計
無線通信中,由于外部環境的干擾,通常誤碼率較高,因此通信協議的設計對保證通信的可靠性十分重要。協議的設計主要是幀結構的設計。在該無線通信系統中,存在指令幀和數據幀。數據幀的內容包括起始字節、數據長度字節、數據字節、結束字節和校驗和 在汽車行駛記錄儀國家標準中有規定好的通信傳輸約定,如下所示:
(1)通訊機(計算機或數據采集儀)與記錄儀間的數據交換按幀傳輸,其通信方式為異步串行方式,含有一個起始位,8個數據位,一個停止位,奇校驗。本協議中的數據分別采用十六進制編碼、8421BCD碼及ASCII字符碼。
(2)采用RS 232接口,數據傳輸速率為9 600 b/s。
(3)校驗的作用范圍應包括校驗字節之前的所有字節,其值為這些字節間的異或結果。
(4)數據塊是本數據幀所附帶的與命令字相關的參數或數據,當為0時即本幀無數據塊或參數,這種情況出現在數據上載“命令幀”及數據下傳“應答幀”中。
(5)數據塊長度是指本數據幀所附帶的與命令字相關的參數或數據的長度,以字節數表示,其有效長度為0~64 KB,當為0時即本幀無數據塊或參數,這種情況出現在數據上載“命令幀”及數據下傳“應答幀”中。
根據國家標準中的數據格式要求,本文系統設計的數據幀格式如表1所示。
?
3.2 簡易防碰撞算法設計
因為無線數據傳輸的開放性,且在PC機發送廣播信息后,所有收到廣播的記錄儀之間的響應數據回應基本是同時的,這就必然會產生無線數據碰撞的問題。
為防止不同記錄儀無線上傳數據時的碰撞現象。本文系統在設計時,嘗試過各種已有的防碰撞算法,但鑒于本文系統的應用范圍,已有的算法都過于復雜。
根據應用范圍,本文系統主要會應用于收費站路口之類汽車短暫停留之地,具有時間短、范圍小的特征。那么在記錄儀代碼的發送響應的地方,加上一段有效延時發送:如根據車牌號尾數乘以1~10以內的隨機數得到的結果,以毫秒為單位。這樣就可以有效地將各輛車的響應報文有序回應給PC機。
加上這段延時改進代碼后的實驗測試結果表明,正確率高達99%,而不加此簡易防碰撞算法的正確率僅為90%。
4 結語
本文只是在原有的簡易汽車記錄儀的基礎上增加了PC機實時獲取記錄儀行駛數據的無線傳輸的功能,并添加簡易的防碰撞算法來降低無線數據傳輸的碰撞問題。可以避免一些需要用GPRS等流量費用的問題,降低使用費用,相信隨著國家科技的發展,本系統可以得到更多的認識和應用。
評論
查看更多