新聞中心

EEPW首頁 > 汽車電子 > 設(shè)計(jì)應(yīng)用 > 汽車CAN總線數(shù)據(jù)記錄儀開發(fā)

汽車CAN總線數(shù)據(jù)記錄儀開發(fā)

作者: 時(shí)間:2012-07-11 來源:網(wǎng)絡(luò) 收藏

1、引言

本文引用地址:http://butianyuan.cn/article/196680.htm

20世紀(jì)80年代以來,隨著電子技術(shù)的不斷發(fā)展,上的電子控制單元越來越多,例如電子燃油噴射裝置、防抱死制動(dòng)裝置(ABS)、安全氣囊裝置、電控門窗裝置和主動(dòng)懸架等等。在這種情況下,如果仍采用傳統(tǒng)點(diǎn)到點(diǎn)的并行布線方式,將導(dǎo)致車上電線數(shù)目急劇增加,布線越來越困難,電線質(zhì)量占整車質(zhì)量越來越多,復(fù)雜電路同時(shí)也降低了的可靠性,增加了維修的難度。為適應(yīng)汽車電子設(shè)備迅速增加的應(yīng)用需要,控制器局域網(wǎng)絡(luò)應(yīng)運(yùn)而生。目前,在汽車設(shè)計(jì)領(lǐng)域中,幾乎成了一種必須采用的技術(shù)手段,尤其是在歐洲,如奔馳(BENZ)、寶馬(BMW )等都采用實(shí)現(xiàn)汽車內(nèi)部控制系統(tǒng)與各檢測(cè)和執(zhí)行機(jī)構(gòu)間的數(shù)據(jù)通信[1]。汽車CAN能實(shí)時(shí)采集汽車CAN數(shù)據(jù)信息,它的研制對(duì)于熟悉和掌握汽車CAN總線的通信協(xié)議和信息內(nèi)容,對(duì)于汽車故障維修以及進(jìn)行汽車網(wǎng)絡(luò)技術(shù)方面的應(yīng)用研究具有重要意義。

2、CAN總線介紹

CAN是控制器局域網(wǎng)絡(luò)(Controller Area Network)的簡稱,它是由德國Bosch公司及幾個(gè)半導(dǎo)體生產(chǎn)商開發(fā)出來的,CAN總線是一種串行多主站控制器局域網(wǎng)總線。它具有很高的網(wǎng)絡(luò)安全性、通訊可靠性和實(shí)時(shí)性,而且簡單實(shí)用,網(wǎng)絡(luò)成本低。特別適用于汽車計(jì)算機(jī)控制系統(tǒng)和環(huán)境溫度惡劣、電磁輻射強(qiáng)和振動(dòng)大的工業(yè)環(huán)境。CAN總線可有效支持分布式控制或?qū)崟r(shí)控制。該總線的通信介質(zhì)可以是雙絞線、同軸電纜或光纖[2-3]。其主要特點(diǎn)如下:

•CAN總線為多主站總線,各節(jié)點(diǎn)可在任意時(shí)刻向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息,且不分主從;

•CAN總線采用獨(dú)特的非破壞性總線仲裁技術(shù),高優(yōu)先級(jí)節(jié)點(diǎn)優(yōu)先傳送數(shù)據(jù),故實(shí)時(shí)性好;

•CAN總線具有點(diǎn)對(duì)點(diǎn)、一點(diǎn)對(duì)多點(diǎn)及全局廣播傳送數(shù)據(jù)的功能;

•CAN總線采用短幀結(jié)構(gòu),每幀有效字節(jié)數(shù)最多為8個(gè),數(shù)據(jù)傳輸時(shí)間短,并有CRC及其它校驗(yàn)措施,數(shù)據(jù)出錯(cuò)率極低;

•CAN總線上某一節(jié)點(diǎn)出現(xiàn)嚴(yán)重錯(cuò)誤時(shí),可自動(dòng)脫離總線,而總線上的其他操作不受影響;

•CAN總線系統(tǒng)擴(kuò)充時(shí),可直接將新節(jié)點(diǎn)掛在總線上,因而走線少,系統(tǒng)擴(kuò)充容易,改型靈活;

•CAN總線的最大傳輸速率可達(dá)1Mb/s,直接通信距離最遠(yuǎn)可達(dá)到10km(速率在5kbps以下);

•CAN總線上的節(jié)點(diǎn)數(shù)取決于總線驅(qū)動(dòng)電路。在標(biāo)準(zhǔn)幀(11位報(bào)文標(biāo)識(shí)符)時(shí)可達(dá)到110個(gè),而在擴(kuò)展幀(29位報(bào)文標(biāo)識(shí)符)時(shí),個(gè)數(shù)不受限。

3、CAN總線硬件設(shè)計(jì)

CAN總線工作時(shí)應(yīng)掛接到汽車CAN總線上成為一個(gè)CAN節(jié)點(diǎn),以便采集CAN數(shù)據(jù)信息。其系統(tǒng)硬件結(jié)構(gòu)采用圖1所示電路結(jié)構(gòu)。各核心模塊介紹如下。

11.jpg

圖1 CAN總線數(shù)據(jù)記錄儀結(jié)構(gòu)框圖

(1)主控模塊(MCU)

本系統(tǒng)主控模塊采用ATMEL公司的單片機(jī)AT89C52。它是一種低功耗、高性能、內(nèi)含8KB閃速存儲(chǔ)器的8位CMOS微控制器,與工業(yè)標(biāo)準(zhǔn)MCS-51指令系統(tǒng)和引腳完全兼容。AT89系列的優(yōu)越性在于其片內(nèi)閃速存儲(chǔ)器可進(jìn)行1000次的編程與擦除,且數(shù)據(jù)不易丟失,數(shù)據(jù)可保存10年。

(2)數(shù)據(jù)存儲(chǔ)電路

CAN總線數(shù)據(jù)傳輸速率較高,而單片機(jī)運(yùn)算速度慢且任務(wù)繁重。為確保數(shù)據(jù)采集過程中數(shù)據(jù)不丟失,單片機(jī)外部擴(kuò)展數(shù)據(jù)存儲(chǔ)器。當(dāng)CAN模塊接收到汽車CAN總線上一幀數(shù)據(jù)引起單片機(jī)中斷時(shí),中斷服務(wù)程序?qū)⒔邮盏降臄?shù)據(jù)存儲(chǔ)到外部數(shù)據(jù)存儲(chǔ)器后馬上中斷返回,對(duì)于數(shù)據(jù)的處理及顯示等繁瑣的工作在主程序中完成。這樣,確保了CAN總線數(shù)據(jù)接收的完整性和實(shí)時(shí)性。

(3)人機(jī)接口模塊

CAN總線數(shù)據(jù)記錄儀采用OCMJ5×10B中文液晶顯示模塊顯示信息和接收到的數(shù)據(jù)。該模塊內(nèi)含點(diǎn)陣國標(biāo)一級(jí)簡體漢字和ASCⅡ碼,可實(shí)現(xiàn)文本顯示。其用戶硬件接口采用REQ/BUSY握手協(xié)議,簡單可靠。BUSY高電平有效,表示OCMJ忙,不能接受命令;BUSY=0時(shí),表示OCMJ空閑[4]。同時(shí)REQ=1時(shí)通知OCMJ處理當(dāng)前數(shù)據(jù)線上的數(shù)據(jù)。本系統(tǒng)利用單片機(jī)P1.6和P1.7作為與液晶顯示模塊的REQ和BUSY聯(lián)絡(luò)口。

本系統(tǒng)主要有設(shè)置、增、減按鍵。利用單片機(jī)P1.0-P1.2實(shí)現(xiàn)按鍵輸入。

(4)通信模塊

CAN總線數(shù)據(jù)記錄儀接收到的汽車CAN總線數(shù)據(jù)可在液晶顯示器上實(shí)時(shí)顯示,也可以利用串行通信接口傳輸?shù)缴衔粰C(jī)進(jìn)行顯示或數(shù)據(jù)處理和數(shù)據(jù)分析。本系統(tǒng)利用電平轉(zhuǎn)換芯片MAX232實(shí)現(xiàn)單片機(jī)與PC機(jī)的串行數(shù)據(jù)通信。

(5)CAN模塊

本系統(tǒng)采用的CAN控制器是SJA1000。SJA1000是PHILIPS公司生產(chǎn)的既支持CAN 2.0B,又支持CAN 2.0A的CAN控制器。與SJA1000配套使用的CAN收發(fā)器是PCA82C250,它是PHILIPS推出的CAN控制器和物理總線接口芯片,可提供對(duì)總線的差分發(fā)送和接收。它與ISO 11898標(biāo)準(zhǔn)完全兼容,并有高速、斜率控制和待機(jī)3種不同的工作方式,可根據(jù)實(shí)際情況選擇。CAN模塊總線控制器、總線驅(qū)動(dòng)器連接基本方法如圖2所示。為增強(qiáng)CAN總線節(jié)點(diǎn)的抗干擾能力,SJA1000通過高速光耦6N137后與82C250相連,這樣就很好的實(shí)現(xiàn)了本系統(tǒng)與汽車CAN總線的電氣隔離[5]。電源的隔離采用小功率電源隔離模塊。這些部分雖然增加了接口電路的復(fù)雜性,但是卻提高了系統(tǒng)的穩(wěn)定性和安全性。

82C250與CAN總線的接口部分也采用了一定的安全和抗干擾措施。82C250的CANH和CANL引腳各自通過一個(gè)5Ω的電阻與CAN總線相連,電阻可起到一定的限流作用,保護(hù)82C250免受過流的沖擊。CANH和CANL與地之間并連的30pF電容,可以濾除總線上的高頻干擾和提高防電磁輻射的能力;而防雷擊管可消除輸入端與地之間的瞬變干擾。82C250的RS腳上接有一個(gè)斜率電阻,電阻大小可根據(jù)總線速度適當(dāng)調(diào)整,一般在16~140kΩ之間。

22.jpg

圖2 CAN總線控制器、總線驅(qū)動(dòng)器電路連接圖

4、CAN總線數(shù)據(jù)記錄儀軟件設(shè)計(jì)

CAN總線數(shù)據(jù)記錄儀軟件設(shè)計(jì)要求簡單、實(shí)用、高效、便于擴(kuò)充。本系統(tǒng)程序主要由主模塊、CAN總線控制器初始化模塊、中斷處理模塊等組成。主模塊主要完成單片機(jī)初始化、鍵值處理、數(shù)據(jù)顯示等任務(wù)。其中,鍵值處理主要是根據(jù)鍵值修改CAN數(shù)據(jù)接收波特率;數(shù)據(jù)顯示是將存儲(chǔ)在外部數(shù)據(jù)存儲(chǔ)器的CAN總線數(shù)據(jù)逐幀顯示。

雙絞線傳輸器相關(guān)文章:雙絞線傳輸器原理

上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉