CAN總線(xiàn)在汽車(chē)行駛記錄儀中的應用
汽車(chē)行駛記錄儀(vehicle traveling data recorder)是安裝在車(chē)輛上,能夠記錄、存儲、顯示、打印車(chē)輛運行速度、時(shí)間、里程以及有關(guān)車(chē)輛行駛的其他狀態(tài)信息,并可通過(guò)接口實(shí)現數據輸出的數字式電子記錄裝置,俗稱(chēng)汽車(chē)黑匣子。汽車(chē)行駛記錄儀的使用對遏制疲勞駕駛、車(chē)輛超速等交通違章、約束駕駛人員的不良駕駛行為、保障車(chē)輛行駛安全以及道路交 通事故的分析鑒定具有重要的作用。
本文引用地址:http://dyxdggzs.com/article/276021.htm汽車(chē)行駛記錄儀(以下簡(jiǎn)稱(chēng)記錄儀)由汽車(chē)行駛記錄儀的主機部分和計算機終端的數據分析軟件部分構成。主機部分是記錄儀的核心,主要完成車(chē)輛行駛數據的采 集、記錄和存儲。傳統的汽車(chē)行駛記錄儀由于采樣信號很多,信號采集很復雜,需要很多連接線(xiàn),為了保證采集信號的準確性,采集到的信號還要經(jīng)過(guò)放大電路和濾 波電路進(jìn)行處理,如果各級電路之間電氣特性匹配不好就會(huì )影響記錄儀信號采集的準確性,甚至有時(shí)還會(huì )影響到汽車(chē)其他系統的正常工作。
計算機終端的數據分析軟件主要實(shí)現對汽車(chē)行駛中諸如速度、壓力等數據的分析和處理,因此記錄儀采集的信號必須與計算機終端、外圍報警模塊、人機接口模塊等 進(jìn)行數據傳輸。標準的RS232串行通信是一種成熟穩定的通信方式,也是汽車(chē)行駛記錄儀國家標準規定的必須具有的通信方式。但RS232串行通訊信距離 短,只能進(jìn)行點(diǎn)到點(diǎn)通訊,不能直接組建多點(diǎn)通信網(wǎng)絡(luò )。為了延長(cháng)RS232的通信距離,并將RS232節點(diǎn)組成通訊網(wǎng)絡(luò ),就需要將RS232串行通信接口轉換成CAN總線(xiàn)接口,以CAN總線(xiàn)形式構成遠程多點(diǎn)通信網(wǎng)絡(luò )。
CAN總線(xiàn)的應用使汽車(chē)行駛記錄儀通過(guò)接口直接從CAN總線(xiàn)上讀取相應信號,因而不會(huì )影響其他系統的正常工作;同時(shí)CAN總線(xiàn)具有數據傳遞可靠性很高的優(yōu)點(diǎn),也使得其數據準確性得以保障。
1、CAN總線(xiàn)特點(diǎn)
控制器區域網(wǎng)(Controller Area Metwork,CAN)總線(xiàn)是一種多主機局部網(wǎng)。CAN總線(xiàn)規范已被國際標準化組織(ISO)制定為國際標準。C-AN總線(xiàn)屬于總線(xiàn)式串行通信網(wǎng)絡(luò ),由 于采用了許多新技術(shù)和獨特設計,因而具有以下特點(diǎn):1)總線(xiàn)以多主方式工作,通信方式靈活,且不用占地址等節點(diǎn)信息;2)CAN總線(xiàn)網(wǎng)絡(luò )上的節點(diǎn)信息分不 同的優(yōu)先級,可滿(mǎn)足不同的實(shí)時(shí)要求;3)采用非破壞性總線(xiàn)仲裁技術(shù),在網(wǎng)絡(luò )負載很重的情況下也不會(huì )出現網(wǎng)絡(luò )癱瘓的情況;4)只需通過(guò)報文濾波即可實(shí)現點(diǎn)對 點(diǎn)、一點(diǎn)對多點(diǎn)及全局廣播等幾種方式傳送接收數據,無(wú)需專(zhuān)門(mén)的“調度”;5)直接通信距離最遠可達10 km(速率5 Kb/s以下);6)通信速率最高可達1 Mb/s(此時(shí)通信距離最長(cháng)為40 m);7)每幀信息都有CRC校驗及其他檢錯措施,保證了數據出錯率極低;8)CAN總線(xiàn)節點(diǎn)在錯誤嚴重的情況下具有自動(dòng)關(guān)閉輸出的功能,以使總線(xiàn)上的其 他節點(diǎn)的操作不受影響。
2、CAN總線(xiàn)接口硬件電路設計原理
CAN總線(xiàn)是一種多主總線(xiàn),可將汽車(chē)行駛記錄儀作為汽車(chē)CAN網(wǎng)絡(luò )的一個(gè)節點(diǎn),在系統中與計算機終端相連的節點(diǎn)是主節點(diǎn),其他節點(diǎn)是從節點(diǎn)。理論上,主節 點(diǎn)可以有多個(gè)。在簡(jiǎn)單的系統中,一般只設置1個(gè)主節點(diǎn),完成主節點(diǎn)向從節點(diǎn)發(fā)送配置數據、主節點(diǎn)向從節點(diǎn)請求當前工作狀態(tài)、當前數據以及數據管理等工作。 從節點(diǎn)根據應用的需要完成不同的功能,如現場(chǎng)數據的采集、設備控制和驅動(dòng)等,并能實(shí)現上傳數據和接收數據等通信功能。
主節點(diǎn)由PC機、CAN接口電路、上位機接口軟件等組成。CAN接口電路實(shí)現了以CAN總線(xiàn)上從節點(diǎn)和上位機之間的通信,CAN接口電路原理框圖如圖1所示。

CAN接口電路以PHILIPS公司的P89C52微控制器作為核心處理器,負責對CAN總線(xiàn)控制器初始化,并通過(guò)數據總線(xiàn)對CAN控制器進(jìn)行讀/寫(xiě)控 制,實(shí)現CAN網(wǎng)絡(luò )節點(diǎn)中信息的收發(fā),從而實(shí)現對現場(chǎng)的控制;通過(guò)MAX232與PC機實(shí)現串行通信,由PC機發(fā)送的數據寫(xiě)到微控制器中,再由微控制器 的。I/O口和控制信號線(xiàn)將數據寫(xiě)入CAN控制器,通過(guò)CAN收發(fā)器向CAN總線(xiàn)發(fā)送;CAN總線(xiàn)上,需要上傳給主節點(diǎn)的數據,經(jīng)CAN收發(fā)器寫(xiě)入CAN 控制器,通過(guò)中斷信號提醒微控制器讀取,再由RS-232接口上傳給PC機。在CAN總線(xiàn)的兩端,需要接一個(gè)120 Ω的匹配電阻,以提高數據通信的抗干擾能力及整體可靠性。
3、主要硬件電路設計
除主控器件微處理器P89C52之外,CAN總線(xiàn)接口電路主要由CAN總線(xiàn)通信接口電路、CAN收發(fā)器與光電隔離部分、串口收發(fā)器等組成。
3.1 CAN總線(xiàn)通信接口電路
CAN總線(xiàn)通信接口電路是一個(gè)很重要的環(huán)節,記錄儀的正確運行與其密切相關(guān)。該設計采用了PHILIPS公司生產(chǎn)的總線(xiàn)控制器SJA1000,該器件是一 種獨立的CAN總線(xiàn)控制器,主要用于移動(dòng)目標和一般工業(yè)環(huán)境中的區域網(wǎng)絡(luò )控制。SJA1000具有PCA82C200模式(即默認的Basic CAN模式),基本特性如下:1)具有PCA82C200模式(即默認的Basic CAN模式);2)支持CAN2.OA和CAN2.OB協(xié)議;3)支持11位和29位標識符;4)通信的位速率可達1 Mb/s;5)采用的是24 MHz時(shí)鐘頻率;6)可與不同的微處理器相接;7)可編程的CAN輸出驅動(dòng)器配置;8)溫度適應范圍大(-40~+125℃)。
此外,還具有PeliCAN模式擴展功能:1)可讀/可訪(fǎng)問(wèn)的錯誤計數寄存器;2)可編程的錯誤報警限額寄存器;3)最近一次錯誤代碼寄存器;4)對每一 個(gè)CAN總線(xiàn)錯誤的中斷;5)有具體位表示的仲裁丟失中斷;6)單次發(fā)送(無(wú)重復);7)只聽(tīng)模式(無(wú)確認、無(wú)激活的錯誤標志);8)支持熱插拔(軟件位 速率檢測);9)驗收濾波器的擴展(4字節的驗收代碼,4字節的屏蔽);10)接收自身報文(自接收請求)。

圖2所示為SJA1000與微處理器通信接口電路。SJA1000的復位信號RST為低電平有效。
3.2 CAN總線(xiàn)收發(fā)器隔離電路
CAN總線(xiàn)收發(fā)器采用了標準的高速CAN收發(fā)器TJAl050,該收發(fā)器是CAN協(xié)議控制器和物理總線(xiàn)之間的接口。TJAl050可以為總線(xiàn)提供差動(dòng)發(fā)送 性能,為CAN控制器提供差動(dòng)接收性能。TJAl050除了增強EMC外,另外一個(gè)重要的特性是不上電時(shí),CAN總線(xiàn)呈現無(wú)源特性。這使TJAl050在 性能上大大優(yōu)于其他CAN總線(xiàn)收發(fā)器。TJAl050有高速和靜音2種工作模式,都由引腳S控制。引腳S接地可以進(jìn)入高速模式,由于引腳S有內部下拉功 能,所以當它沒(méi)接時(shí),高速模式也是默認模式。在高速模式中,總線(xiàn)輸出信號有固定的頻率,并且以盡量快的速度切換,適用于最大的位速率和最大的總線(xiàn)長(cháng)度。將 引腳S接高電平,就可進(jìn)入靜音模式。在靜音模式中,發(fā)送器是禁止的,不管TXD的輸入信號。因此,TJA1 050在非發(fā)送狀態(tài)中,它此時(shí)消耗的電源電流和隱形狀態(tài)時(shí)一樣。TJAl050最低的波特率為20 Kb/s。
為了確保在CAN總線(xiàn)遭受?chē)乐馗蓴_時(shí)控制器能夠正常運行,CAN總線(xiàn)控制器沒(méi)有與總線(xiàn)收發(fā)模塊直接相連,而是通過(guò)光電隔離器6N137后相連,從而實(shí)現總 線(xiàn)上各節點(diǎn)間的電氣隔離。電路圖如圖3所示。6N137光耦合器的第6引腳Vo輸出電路屬于集電極開(kāi)路電路,必須上拉一個(gè)電阻;另外其第2引腳和3引腳之 間是一個(gè)LED,必須串接一個(gè)限流電阻,此外,光電耦合部分所采用的兩個(gè)電源VCC和CAN的+5 V必須完全隔離。

3.3 RS232總線(xiàn)接口模塊
RS232總線(xiàn)接口主要實(shí)現汽車(chē)行駛記錄儀與PC機的RS232串口通信功能。MAX232芯片是常用的RS-232C與TTL電平轉換器,它的內部有電壓倍增電路和轉換電路,只需+5 V電源便可實(shí)現RS-232C與TTL電平轉換,使用方便,一個(gè)芯片可連接2對收/發(fā)信號線(xiàn)。因此轉換器采用MAX23 2。其接口原理圖如圖4所示。

4 軟件設計
在軟件設計之前,為了確保SJAl000的片選地址與其他的外部存儲器無(wú)沖突,需先確定SJAl000的基地址及復位引腳,然后正確地初始化SJAl000。CAN接口電路的軟件設計主流程圖如圖5所示,主要包括CAN控制器的初始化、數據發(fā)送、數據接收及出錯處理等。

SJAl000的初始化只有在復位模式下才可以進(jìn)行,初始化主要包括工作方式的設置,接收濾波方式的設置,接收屏蔽寄存器和接收代碼寄存器的設置,波特率參數設置和中斷允許寄存器的設置等。其初始化流程如圖6所示。

CAN發(fā)送數據流程如圖7所示,接收數據流程如圖8所示。此程序以采集行駛車(chē)輛行駛速度和壓力數據為例。
5 結束語(yǔ)
CAN總線(xiàn)的應用,使汽車(chē)行駛記錄儀的信號采樣系統簡(jiǎn)化,降低了對MCU處理單元的性能要求,提高了汽車(chē)行駛記錄儀穩定性,可在RS232通信節點(diǎn)中建立 多點(diǎn)遠程通信,其硬件和軟件設計上都有所創(chuàng )新,使記錄儀安裝更為簡(jiǎn)便,具有很好的性?xún)r(jià)比和很強的可移植性和擴充性。
隔離器相關(guān)文章:隔離器原理 上拉電阻相關(guān)文章:上拉電阻原理
評論