汽車行駛記錄儀(vehicle traveling data recorder)是安裝在車輛上,能夠記錄、存儲、顯示、打印車輛運行速度、時間、里程以及有關車輛行駛的其他狀態信息,并可通過接口實現數據輸出的數字式電子記錄裝置,俗稱汽車黑匣子。汽車行駛記錄儀的使用對遏制疲勞駕駛、車輛超速等交通違章、約束駕駛人員的不良駕駛行為、保障車輛行駛安全以及道路交 通事故的分析鑒定具有重要的作用。 汽車行駛記錄儀(以下簡稱記錄儀)由汽車行駛記錄儀的主機部分和計算機終端的數據分析軟件部分構成。主機部分是記錄儀的核心,主要完成車輛行駛數據的采 集、記錄和存儲。傳統的汽車行駛記錄儀由于采樣信號很多,信號采集很復雜,需要很多連接線,為了保證采集信號的準確性,采集到的信號還要經過放大電路和濾 波電路進行處理,如果各級電路之間電氣特性匹配不好就會影響記錄儀信號采集的準確性,甚至有時還會影響到汽車其他系統的正常工作。 計算機終端的數據分析軟件主要實現對汽車行駛中諸如速度、壓力等數據的分析和處理,因此記錄儀采集的信號必須與計算機終端、外圍報警模塊、人機接口模塊等 進行數據傳輸。標準的RS232串行通信是一種成熟穩定的通信方式,也是汽車行駛記錄儀國家標準規定的必須具有的通信方式。但RS232串行通訊信距離 短,只能進行點到點通訊,不能直接組建多點通信網絡。為了延長RS232的通信距離,并將RS232節點組成通訊網絡,就需要將RS232串行通信接口轉換成CAN總線接口,以CAN總線形式構成遠程多點通信網絡。 CAN總線的應用使汽車行駛記錄儀通過接口直接從CAN總線上讀取相應信號,因而不會影響其他系統的正常工作;同時CAN總線具有數據傳遞可靠性很高的優點,也使得其數據準確性得以保障。 1、CAN總線特點 控制器區域網(Controller Area Metwork,CAN)總線是一種多主機局部網。CAN總線規范已被國際標準化組織(ISO)制定為國際標準。C-AN總線屬于總線式串行通信網絡,由 于采用了許多新技術和獨特設計,因而具有以下特點:1)總線以多主方式工作,通信方式靈活,且不用占地址等節點信息;2)CAN總線網絡上的節點信息分不 同的優先級,可滿足不同的實時要求;3)采用非破壞性總線仲裁技術,在網絡負載很重的情況下也不會出現網絡癱瘓的情況;4)只需通過報文濾波即可實現點對 點、一點對多點及全局廣播等幾種方式傳送接收數據,無需專門的“調度”;5)直接通信距離最遠可達10 km(速率5 Kb/s以下);6)通信速率最高可達1 Mb/s(此時通信距離最長為40 m);7)每幀信息都有CRC校驗及其他檢錯措施,保證了數據出錯率極低;8)CAN總線節點在錯誤嚴重的情況下具有自動關閉輸出的功能,以使總線上的其 他節點的操作不受影響。 2、CAN總線接口硬件電路設計原理 CAN總線是一種多主總線,可將汽車行駛記錄儀作為汽車CAN網絡的一個節點,在系統中與計算機終端相連的節點是主節點,其他節點是從節點。理論上,主節 點可以有多個。在簡單的系統中,一般只設置1個主節點,完成主節點向從節點發送配置數據、主節點向從節點請求當前工作狀態、當前數據以及數據管理等工作。 從節點根據應用的需要完成不同的功能,如現場數據的采集、設備控制和驅動等,并能實現上傳數據和接收數據等通信功能。 主節點由PC機、CAN接口電路、上位機接口軟件等組成。CAN接口電路實現了以CAN總線上從節點和上位機之間的通信,CAN接口電路原理框圖如圖1所示。 CAN接口電路以PHILIPS公司的P89C52微控制器作為核心處理器,負責對CAN總線控制器初始化,并通過數據總線對CAN控制器進行讀/寫控 制,實現CAN網絡節點中信息的收發,從而實現對現場的控制;通過MAX232與PC機實現串行通信,由PC機發送的數據寫到微控制器中,再由微控制器 的。I/O口和控制信號線將數據寫入CAN控制器,通過CAN收發器向CAN總線發送;CAN總線上,需要上傳給主節點的數據,經CAN收發器寫入CAN 控制器,通過中斷信號提醒微控制器讀取,再由RS-232接口上傳給PC機。在CAN總線的兩端,需要接一個120 Ω的匹配電阻,以提高數據通信的抗干擾能力及整體可靠性。 3、主要硬件電路設計 除主控器件微處理器P89C52之外,CAN總線接口電路主要由CAN總線通信接口電路、CAN收發器與光電隔離部分、串口收發器等組成。 3.1 CAN總線通信接口電路 CAN總線通信接口電路是一個很重要的環節,記錄儀的正確運行與其密切相關。該設計采用了PHILIPS公司生產的總線控制器SJA1000,該器件是一 種獨立的CAN總線控制器,主要用于移動目標和一般工業環境中的區域網絡控制。SJA1000具有PCA82C200模式(即默認的Basic CAN模式),基本特性如下:1)具有PCA82C200模式(即默認的Basic CAN模式);2)支持CAN2.OA和CAN2.OB協議;3)支持11位和29位標識符;4)通信的位速率可達1 Mb/s;5)采用的是24 MHz時鐘頻率;6)可與不同的微處理器相接;7)可編程的CAN輸出驅動器配置;8)溫度適應范圍大(-40~+125℃)。 此外,還具有PeliCAN模式擴展功能:1)可讀/可訪問的錯誤計數寄存器;2)可編程的錯誤報警限額寄存器;3)最近一次錯誤代碼寄存器;4)對每一 個CAN總線錯誤的中斷;5)有具體位表示的仲裁丟失中斷;6)單次發送(無重復);7)只聽模式(無確認、無激活的錯誤標志);8)支持熱插拔(軟件位 速率檢測);9)驗收濾波器的擴展(4字節的驗收代碼,4字節的屏蔽);10)接收自身報文(自接收請求)。 圖2所示為SJA1000與微處理器通信接口電路。SJA1000的復位信號RST為低電平有效。 3.2 CAN總線收發器隔離電路 CAN總線收發器采用了標準的高速CAN收發器TJAl050,該收發器是CAN協議控制器和物理總線之間的接口。TJAl050可以為總線提供差動發送 性能,為CAN控制器提供差動接收性能。TJAl050除了增強EMC外,另外一個重要的特性是不上電時,CAN總線呈現無源特性。這使TJAl050在 性能上大大優于其他CAN總線收發器。TJAl050有高速和靜音2種工作模式,都由引腳S控制。引腳S接地可以進入高速模式,由于引腳S有內部下拉功 能,所以當它沒接時,高速模式也是默認模式。在高速模式中,總線輸出信號有固定的頻率,并且以盡量快的速度切換,適用于最大的位速率和最大的總線長度。將 引腳S接高電平,就可進入靜音模式。在靜音模式中,發送器是禁止的,不管TXD的輸入信號。因此,TJA1 050在非發送狀態中,它此時消耗的電源電流和隱形狀態時一樣。TJAl050最低的波特率為20 Kb/s。 為了確保在CAN總線遭受嚴重干擾時控制器能夠正常運行,CAN總線控制器沒有與總線收發模塊直接相連,而是通過光電隔離器6N137后相連,從而實現總 線上各節點間的電氣隔離。電路圖如圖3所示。6N137光耦合器的第6引腳Vo輸出電路屬于集電極開路電路,必須上拉一個電阻;另外其第2引腳和3引腳之 間是一個LED,必須串接一個限流電阻,此外,光電耦合部分所采用的兩個電源VCC和CAN的+5 V必須完全隔離。 3.3 RS232總線接口模塊 RS232總線接口主要實現汽車行駛記錄儀與PC機的RS232串口通信功能。MAX232芯片是常用的RS-232C與TTL電平轉換器,它的內部有電壓倍增電路和轉換電路,只需+5 V電源便可實現RS-232C與TTL電平轉換,使用方便,一個芯片可連接2對收/發信號線。因此轉換器采用MAX23 2。其接口原理圖如圖4所示。 4 軟件設計 在軟件設計之前,為了確保SJAl000的片選地址與其他的外部存儲器無沖突,需先確定SJAl000的基地址及復位引腳,然后正確地初始化SJAl000。CAN接口電路的軟件設計主流程圖如圖5所示,主要包括CAN控制器的初始化、數據發送、數據接收及出錯處理等。 SJAl000的初始化只有在復位模式下才可以進行,初始化主要包括工作方式的設置,接收濾波方式的設置,接收屏蔽寄存器和接收代碼寄存器的設置,波特率參數設置和中斷允許寄存器的設置等。其初始化流程如圖6所示。 CAN發送數據流程如圖7所示,接收數據流程如圖8所示。此程序以采集行駛車輛行駛速度和壓力數據為例。 5 結束語 CAN總線的應用,使汽車行駛記錄儀的信號采樣系統簡化,降低了對MCU處理單元的性能要求,提高了汽車行駛記錄儀穩定性,可在RS232通信節點中建立 多點遠程通信,其硬件和軟件設計上都有所創新,使記錄儀安裝更為簡便,具有很好的性價比和很強的可移植性和擴充性。 |