1 前言
電動汽車中的電控單元多,、內(nèi)部空間小、環(huán)境干擾大,,對控制系統(tǒng),、通信系統(tǒng)提出了更高的要求。CAN 以其良好的運(yùn)行特性,,極高的可靠性和獨(dú)特的設(shè)計(jì),,特別適合電動汽車各電子控制單元之間的通信。為了更好地在實(shí)驗(yàn)室進(jìn)行研究,,建立了一個功能比較完善的試驗(yàn)測試平臺,,能夠?qū)AN 總線系統(tǒng)及其網(wǎng)絡(luò)協(xié)議進(jìn)行研究。首先,,基于DSP 的開發(fā)設(shè)計(jì)了電機(jī)控制器節(jié)點(diǎn)的通信程序,。其次,深入了解CAN 總線在電動汽車中的應(yīng)用需求,,設(shè)計(jì)了CAN總線的應(yīng)用層協(xié)議,。最后,,為檢驗(yàn)設(shè)計(jì)協(xié)議的可行性,利用VB6.0 開發(fā)了電動汽車的監(jiān)控系統(tǒng),,并為監(jiān)控?cái)?shù)據(jù)建立了數(shù)據(jù)庫,,方便管理數(shù)據(jù)。
2 電機(jī)控制器節(jié)點(diǎn)的設(shè)計(jì)
針對電動汽車電機(jī)控制器的特點(diǎn),,選用TI 公司的TMS320LF2407 芯片作為電機(jī)控制器的處理器,。采用模塊化的設(shè)計(jì)思想,編寫了電機(jī)控制器節(jié)點(diǎn)的通信程序,,可方便移植到基于DSP 的電機(jī)控制器或其他控制單元中,。在電動汽車的CAN 總線系統(tǒng)中,電機(jī)控制器的實(shí)時性要求高,,屬于高速節(jié)點(diǎn),,波特率設(shè)為1 兆波特。電機(jī)控制器節(jié)點(diǎn)主要是接收總線上傳來的電機(jī)工作模式,、SOC,、車速、加速踏板位置和制動踏板位置等控制信息,,同時發(fā)送電機(jī)的工作溫度,、電機(jī)故障、工作狀態(tài)等實(shí)時信息,。本文中利用DSP2407的郵箱2 作為接收郵箱,,郵箱5 作為發(fā)送郵箱,20 毫秒定時發(fā)送一次,。
3 電動汽車監(jiān)控系統(tǒng)設(shè)計(jì)
在實(shí)驗(yàn)室模擬電動汽車CAN 總線系統(tǒng),,以PC 機(jī)(帶USB-CAN 模塊)作為電動汽車的總控制器。利用CAN-bus 通用測試軟件的運(yùn)行機(jī)制和工作原理,,設(shè)計(jì)了基于PC 機(jī)的電動汽車CAN 總線技術(shù)的監(jiān)控系統(tǒng),。
3.1 監(jiān)控系統(tǒng)概述
監(jiān)控系統(tǒng)通過控制臺(帶USB-CAN 模塊的PC 機(jī))對電機(jī)控制器、電池控制器以及離合控制器進(jìn)行監(jiān)控,。運(yùn)行主界面如圖1 所示,。能根據(jù)需要在CAN 總線中收發(fā)參數(shù),實(shí)現(xiàn)對總線各節(jié)點(diǎn)的監(jiān)視和控制,。例如,,電機(jī)參數(shù),包括SOC,、車速,、故障等級、工作模式,、故障代碼,、工作溫度等,。監(jiān)控系統(tǒng)還可根據(jù)系統(tǒng)擴(kuò)展需要,提供創(chuàng)建節(jié)點(diǎn)的功能,。另外,,還提供數(shù)據(jù)管理功能。在監(jiān)控系統(tǒng)執(zhí)行過程中,,采集到的數(shù)據(jù)會被記錄到Microsoft Access 數(shù)據(jù)庫中,,可以用表格形式實(shí)時顯視,還可以通過輸出按鈕由軟件Excel 打開,。
3.2 監(jiān)控系統(tǒng)通信協(xié)議
在CAN 協(xié)議中只定義了數(shù)據(jù)鏈路層和物理層兩層協(xié)議,,缺乏對信息處理的規(guī)范,而一個完整的網(wǎng)絡(luò)系統(tǒng)中離不開人機(jī)交互的應(yīng)用進(jìn)程,,所以必須由用戶定義應(yīng)用層協(xié)議。根據(jù)電動汽車運(yùn)行的特點(diǎn),,設(shè)計(jì)了監(jiān)控系統(tǒng)的通信協(xié)議,。大體上將電動汽車上各電子控制單元(ECU)分為高速和低速節(jié)點(diǎn)兩大類。其中高速節(jié)點(diǎn)包括電機(jī)控制器,、發(fā)動機(jī)控制器,、電池控制器、ABS/ASR控制單元和能量管理單元等,,在它們的ID 碼設(shè)置較高的優(yōu)先級,。低速節(jié)點(diǎn)包括空調(diào)系統(tǒng)、儀表顯示系統(tǒng),、車燈系統(tǒng)等,。表1 給出了電動汽車各節(jié)點(diǎn)之間接收及發(fā)送的信號類型。根據(jù)電動汽車各節(jié)點(diǎn)之間接收及發(fā)送的數(shù)據(jù),,對各節(jié)點(diǎn)之間需要交換的信息的類型,,所包含的參數(shù)以及表示方法有具體的說明。例如在電機(jī)控制器節(jié)點(diǎn)發(fā)送的8 個字節(jié)分別定義為:電機(jī)轉(zhuǎn)速(雙字節(jié)),、電機(jī)轉(zhuǎn)矩(雙字節(jié)),、工作溫度(單字節(jié))、錯誤等級及代碼(單字節(jié)),、工作模式(單字節(jié))還有一個字節(jié)作為備用,。表1 電動汽車各節(jié)點(diǎn)之間接收及發(fā)送的數(shù)據(jù)明。例如在電機(jī)控制器節(jié)點(diǎn)發(fā)送的8 個字節(jié)分別定義為:電機(jī)轉(zhuǎn)速(雙字節(jié)),、電機(jī)轉(zhuǎn)矩(雙字節(jié)),、工作溫度(單字節(jié))、錯誤等級及代碼(單字節(jié)),、工作模式(單字節(jié))還有一個字節(jié)作為備用,。
3.3 監(jiān)控系統(tǒng)程序設(shè)計(jì)
監(jiān)控系統(tǒng)是要完成對各節(jié)點(diǎn)的監(jiān)控,,按照設(shè)計(jì)需求,可將整個設(shè)計(jì)分為五個設(shè)計(jì)窗體,,包括主窗體,、電機(jī)控制器監(jiān)控窗體、電池控制器監(jiān)控窗體,、離合控制器監(jiān)控窗體和創(chuàng)建節(jié)點(diǎn)窗體,,并進(jìn)行模塊化設(shè)計(jì)。其中創(chuàng)建節(jié)點(diǎn)窗體可根據(jù)需要方便創(chuàng)建監(jiān)控窗口,,設(shè)置節(jié)點(diǎn)ID 號和監(jiān)控變量,。監(jiān)控系統(tǒng)程序設(shè)計(jì)流程圖如圖2 所示。
4 監(jiān)控系統(tǒng)的測試
完成了PC 機(jī)的監(jiān)控系統(tǒng)程序設(shè)計(jì)后,,為了驗(yàn)證程序是否正常工作,,同時為了驗(yàn)證設(shè)計(jì)的下位機(jī)DSP 數(shù)據(jù)采集與通信程序的正確性。在這里將DSP數(shù)據(jù)采集與通信程序和PC 機(jī)程序聯(lián)合起來進(jìn)行調(diào)試,。將雙方的波特率設(shè)為1M 波特,。DSP 節(jié)點(diǎn)的測試程序包含A/D 采樣(模擬加速踏板位置)和通信程序,DSP 運(yùn)行后由定時中斷(20ms)進(jìn)行數(shù)據(jù)采集及處理,,將信號通過CAN總線上傳到上位機(jī)(PC 機(jī)),。另一方面,DSP 自動判斷是否有PC 機(jī)發(fā)送來的指令,,如電池電壓,、電池電流、加速踏板位置和工作模式等,。上位機(jī)接收到數(shù)據(jù)后,,進(jìn)行處理并交給監(jiān)控系統(tǒng)進(jìn)行顯示。電機(jī)控制器節(jié)點(diǎn)的測試界面如圖3 所示,。
5 結(jié)論
為適合電動汽車監(jiān)控的需求,,組建了基于CAN總線的電動汽車仿真測試平臺,配備專業(yè)測試儀器后可組建CAN-BUS 實(shí)驗(yàn)室,。該系統(tǒng)具有良好的擴(kuò)展性,,可方便增加需要監(jiān)控的汽車電子控制單元(ECU)。此外,,通過VB 與ACCESS 技術(shù)的良好銜接,,具有數(shù)據(jù)實(shí)時保存,為后期的數(shù)據(jù)處理提供條件,。為了保證各個消息能及時被相關(guān)節(jié)點(diǎn)采集并處理,,需要對消息的調(diào)度策略進(jìn)行深入研究,進(jìn)一步優(yōu)化網(wǎng)絡(luò)管理,特別是網(wǎng)絡(luò)故障診斷以及處理機(jī)制,。