基于DSP的電動(dòng)汽車CAN總線通訊技術(shù)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
德國(guó)Bosch公司為了解決現(xiàn)代車輛中眾多的控制和數(shù)據(jù)交換問(wèn)題,開發(fā)出一種CAN(Controller AreaNetwork) 現(xiàn)場(chǎng)總線通訊結(jié)構(gòu). CAN總線硬件連接簡(jiǎn)單,有良好的可靠性、實(shí)時(shí)性和性能價(jià)格比. CAN總線能夠滿足現(xiàn)代自動(dòng)化通訊的需要,已成為工業(yè)數(shù)據(jù)總線通訊領(lǐng)域中最為活要躍的一支.
其主要特點(diǎn)是: ①CAN總線為多主站總線,各節(jié)點(diǎn)均可在任意時(shí)刻主動(dòng)向網(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é)數(shù)最多為8個(gè),并有CRC及其它校驗(yàn)措施,數(shù)據(jù)出錯(cuò)率極低,萬(wàn)一某一節(jié)點(diǎn)出現(xiàn)嚴(yán)重錯(cuò)誤,可自動(dòng)脫離總線,總線上的其它操作不受影響; ⑤CAN總線只有兩根導(dǎo)線,系統(tǒng)擴(kuò)充時(shí),可直接將新節(jié)點(diǎn)掛在總線上即可,因此走線少,系統(tǒng)擴(kuò)充容易,改型靈活; ⑥CAN總線傳輸速度快,在傳輸距離小于40m時(shí),最大傳輸速率可達(dá)1Mb/s. 正是由于CAN總線具有這些其它通信方式無(wú)法比擬的優(yōu)點(diǎn),使之成為電動(dòng)汽車控制系統(tǒng)的理 想總線.
1 電動(dòng)汽車對(duì)通訊網(wǎng)絡(luò)的需求
電動(dòng)汽車由于儲(chǔ)能設(shè)備容量有限,在運(yùn)行過(guò)程中對(duì)能源的管理十分嚴(yán)格. 效率是衡量電動(dòng)汽車系統(tǒng)性能的重要指標(biāo),國(guó)家863“十五”電動(dòng)汽車重大專項(xiàng)要求電動(dòng)機(jī)系統(tǒng)額定效率為85% ,控制器的額定效率達(dá)到95%. 電動(dòng)汽車電子控制系統(tǒng)的動(dòng)態(tài)信息必須具有實(shí)時(shí)性,各子系統(tǒng)需要將車輛的公共數(shù)據(jù)實(shí)時(shí)共享,如電機(jī)轉(zhuǎn)速、車輪轉(zhuǎn)換、油門踏板位置和剎車踏板位置等. 但不同控制單元的控制周期不同,數(shù)據(jù)轉(zhuǎn)換速度、各控制命令優(yōu)先級(jí)也不同,因此需要一種具有優(yōu)先權(quán)競(jìng)爭(zhēng)模式的數(shù)據(jù)交換網(wǎng)絡(luò),并且本身具有極高的通信速率. 此外,作為一種載人交通工具,電動(dòng)汽車必須具有較好的舒適性,整車通訊系統(tǒng)必須具有很強(qiáng)的容錯(cuò)能力和快速處理能力.
目前,電動(dòng)汽車的發(fā)展得到了各國(guó)的高度重視.電動(dòng)汽車成為未來(lái)汽車發(fā)展的主流方向. 電動(dòng)汽車內(nèi)電氣元件極多,需要實(shí)時(shí)傳輸和共享的數(shù)據(jù)很多.如何提高電動(dòng)汽車通訊的實(shí)時(shí)性、可靠性和應(yīng)急處理能力成為電動(dòng)汽車通訊的難點(diǎn)所在. 我們采用TMS320LF2407型DS作為電動(dòng)汽車通訊系統(tǒng)的主處理器,利用DSP良好的快速處理能力提高數(shù)據(jù)處理速度,從而提高通訊的實(shí)時(shí)性;利用DSP內(nèi)嵌的CAN總線模塊作為CAN的控制器,減少硬件電路的復(fù)雜性,從而提高通訊的可靠性;通過(guò)軟件設(shè)計(jì)緊急時(shí)刻屏蔽次要因素來(lái)提高電動(dòng)汽車的應(yīng)急處理能力.
2 控制方案
電動(dòng)汽車總成控制我們采用先進(jìn)的模糊控制,采用的控制器也是TMS320LF2407型的DSP. 對(duì)采集到的剎車信號(hào),加速信號(hào)和反饋回的轉(zhuǎn)速信號(hào)進(jìn)行模糊處理,得到期望的轉(zhuǎn)速信號(hào),并將得到的轉(zhuǎn)速值通過(guò)CAN 總線傳送到電動(dòng)機(jī)的控制機(jī)構(gòu),對(duì)電動(dòng)機(jī)進(jìn)行控制,滿足駕駛員的駕駛意圖. 同時(shí)管理燈光系統(tǒng)和屏幕顯示系統(tǒng). 屏幕顯示系統(tǒng)實(shí)時(shí)顯示電動(dòng)汽車的運(yùn)行狀態(tài). 具體控制方案如圖1 所示.
圖1 電動(dòng)汽車控制系統(tǒng)結(jié)構(gòu)框圖
3 電動(dòng)汽車CAN總線通訊方案
電動(dòng)汽車控制需要良好的通訊協(xié)調(diào)性和運(yùn)行可靠性. 良好的通訊系統(tǒng)是實(shí)現(xiàn)電動(dòng)汽車可靠運(yùn)行的關(guān)鍵. CAN總線結(jié)構(gòu)是一種有效支持分布式控制或?qū)崟r(shí)控制的串行通訊網(wǎng)絡(luò). 圖2 是一個(gè)典型的電動(dòng)汽車CAN總線結(jié)構(gòu)示意圖,包括整車動(dòng)力部分的主電動(dòng)機(jī)控制器、電池組管理系統(tǒng)、電動(dòng)汽車屏幕顯示系統(tǒng)等多個(gè)設(shè)備,這些子系統(tǒng)之間通過(guò)CAN進(jìn)行數(shù)據(jù)通訊和命令傳輸. 每個(gè)節(jié)點(diǎn)設(shè)備都能夠在脫離CAN 總線的情況下獨(dú)立完成自身系統(tǒng)的運(yùn)行,從而滿足車輛運(yùn)行安全性的需要. 同時(shí),CAN總線也不會(huì)因?yàn)槟硞€(gè)設(shè)備的脫離而出現(xiàn)系統(tǒng)結(jié)構(gòu)崩潰的現(xiàn)象.
圖2 電動(dòng)汽車CAN 總線結(jié)構(gòu)圖
4 CAN總線模塊
CAN 總線模塊是DSP的一個(gè)16位的外設(shè),是一個(gè)完整的CAN 控制器. 除具有CAN 總線的基本功能外,還有一些特有功能,如:對(duì)象有六個(gè)郵箱,其數(shù)據(jù)長(zhǎng)度為0~8 個(gè)字節(jié),其中兩個(gè)接收郵箱(0、1) ,兩個(gè)發(fā)送郵箱(4、5) ,兩個(gè)可配置為接收或發(fā)送郵箱(3、4) ;自動(dòng)回復(fù)遠(yuǎn)程請(qǐng)求功能;可編程的CAN 總線喚醒功能;自測(cè)試模式功能等. 對(duì)CAN 總線的訪問(wèn)分為控制/ 狀態(tài)寄存器的訪問(wèn)和郵箱的RAM 訪問(wèn).CAN 總線控制模塊的內(nèi)存空間分配圖如圖3 所示.
圖3 CAN 總線內(nèi)存空間分配
CAN 控制器發(fā)送的信息幀有兩種,一種是發(fā)送數(shù)據(jù)幀,一種是發(fā)送遠(yuǎn)程幀. 發(fā)送郵箱有郵箱4 和郵箱5以及被配置為發(fā)送方式的郵箱2 和郵箱3. 發(fā)送數(shù)據(jù)幀時(shí),在數(shù)據(jù)寫到發(fā)送郵箱的數(shù)據(jù)區(qū)后,如果相應(yīng)的發(fā)送請(qǐng)求位使能,則數(shù)據(jù)幀被發(fā)送到CAN 總線上. 數(shù)據(jù)幀的數(shù)據(jù)區(qū)可以通過(guò)軟件設(shè)置成1~8 個(gè)字節(jié). 數(shù)據(jù)幀的格式如圖4 所示.
圖4 CAN 總線數(shù)據(jù)幀
CAN 總線控制器的接收郵箱有郵箱0和郵箱1及被配置為接收方式的郵箱2 和郵箱3. CAN 控制器在接收信息時(shí),首先要將接收信息的標(biāo)志符與相應(yīng)接收郵箱的標(biāo)志符進(jìn)行比較,只有標(biāo)志符相同的信息才能被接收. CAN 總線控制器的接收寄存器使得接收郵箱可以忽略更多的位來(lái)接收信息. 但是,如果當(dāng)接收屏蔽使能位(AME) 為0 時(shí),則局部接收屏蔽寄存器將失效. 只有配置為發(fā)送方式的郵箱2 和郵箱3 才可以接收自動(dòng)應(yīng)答遠(yuǎn)程幀. 當(dāng)郵箱接收到遠(yuǎn)程幀后,接收節(jié)點(diǎn)將自動(dòng)發(fā)送一個(gè)數(shù)據(jù)幀作為應(yīng)答.
5 接口電路設(shè)計(jì)
由于DSP 本身內(nèi)帶CAN 總線模塊,所以不需要專門的CAN 控制器,DSP 本身不具有CAN 收發(fā)器,需要外接CAN 收發(fā)器82C250 ,中間使用光電隔離器6N137. 如果距離很短,可以不使用光電隔離器. DSP與光電隔離器和CAN 收發(fā)器硬件連接圖如圖5 所示.
圖5 DSP 與CAN 總線硬件連接圖
6 電動(dòng)汽車總成控制器CAN通訊的軟件實(shí)現(xiàn)
電動(dòng)汽車總成控制器是電動(dòng)汽車的心臟,它需要頻繁的接收和發(fā)送數(shù)據(jù)對(duì)電動(dòng)汽車進(jìn)行實(shí)時(shí)控制和檢測(cè). 發(fā)送信息采用查詢方式,接收信息采用中斷方式. 通過(guò)設(shè)定不同事件的不同優(yōu)先級(jí)來(lái)確定信息的接收和發(fā)送順序,同時(shí)增加緊急事件處理程序來(lái)提高控制器處理緊急事件的能力,保證車輛和人身安全. 緊急事件處理程序是當(dāng)緊急事件發(fā)生時(shí),如執(zhí)行器件損壞,急剎車和急轉(zhuǎn)彎等,通過(guò)暫時(shí)屏蔽低優(yōu)先級(jí)事件,如電池電量檢測(cè),LCD 顯示系統(tǒng)等,使控制器有足夠的時(shí)間處理緊急事件,以提高控制器的實(shí)時(shí)控制能力和應(yīng)急處理能力. 控制器軟件流程圖如圖6 所示.
圖6 控制器軟件流程圖
7 結(jié) 論
目前,現(xiàn)場(chǎng)總線在自動(dòng)化領(lǐng)域中快速發(fā)展,CAN總線作為一種很有影響的現(xiàn)場(chǎng)總線,采用了許多新的技術(shù)和設(shè)計(jì),使CAN 總線成為最有發(fā)展前途的現(xiàn)場(chǎng)總線之一. CAN 總線以其高實(shí)時(shí)性、高可靠性和高靈活性,在工業(yè)自動(dòng)化控制中得到了越來(lái)越多的應(yīng)用. 本文應(yīng)用DSP 控制器作為CAN 總線的微處理器,利用DSP 很強(qiáng)的數(shù)據(jù)處理能力和CAN 總線傳輸速率高、可靠性高的特點(diǎn),對(duì)電動(dòng)汽車內(nèi)復(fù)雜的通訊系統(tǒng)提出解決方案. 實(shí)驗(yàn)證明,本系統(tǒng)不但解決了電動(dòng)汽車通訊對(duì)實(shí)時(shí)性的要求,而且可靠性和穩(wěn)定性都得到了提高.