基于CAN總線(xiàn)的電動(dòng)汽車(chē)數(shù)字控制系統(tǒng)研究
掃描二維碼
隨時(shí)隨地手機(jī)看文章
電動(dòng)汽車(chē)是集計(jì)算機(jī)技術(shù)、通信技術(shù)、電子技術(shù)、新材料技術(shù)等一體化的高科技產(chǎn)品,其結(jié)構(gòu)復(fù)雜,有多種相互作用卻又相對(duì)獨(dú)立的部件,且車(chē)載環(huán)境較惡劣,有很強(qiáng)的干擾,用模擬量的控制可靠性不高。先進(jìn)高效的控制體系結(jié)構(gòu),可以使電動(dòng)汽車(chē)各系統(tǒng)之間的數(shù)據(jù)交換滿(mǎn)足簡(jiǎn)單迅速、可靠性高、抗干擾能力強(qiáng)、實(shí)時(shí)性好、系統(tǒng)錯(cuò)誤檢測(cè)和隔離能力強(qiáng)等要求。本文采用了先進(jìn)的計(jì)算機(jī)技術(shù)和CAN總線(xiàn)技術(shù),集智能控制、信號(hào)采集、數(shù)據(jù)處理和通信于一體,控制實(shí)時(shí)性好,可實(shí)現(xiàn)整車(chē)控制智能化和多傳感器信息的有效融合。
1 CAN總線(xiàn)的簡(jiǎn)介
CAN(ControllerAreaNewtork)即控制器局域網(wǎng),是一種先進(jìn)的串行通信協(xié)議,屬于現(xiàn)場(chǎng)總線(xiàn)范圍。CAN總線(xiàn)是最初由德國(guó)Bosch公司在80年代初期,為了解決現(xiàn)代汽車(chē)中眾多的控制與測(cè)試一起之間的數(shù)據(jù)交換而開(kāi)發(fā)的一種串行數(shù)據(jù)通信協(xié)議,目的是通過(guò)較少的信號(hào)線(xiàn)將汽車(chē)上的各種電子設(shè)備通過(guò)網(wǎng)絡(luò)連接起來(lái),并提高數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)目煽啃裕珻AN總線(xiàn)具有較強(qiáng)糾錯(cuò)能力,支持差分收發(fā),因而適合高噪聲環(huán)境,并具有較遠(yuǎn)的傳輸距離,特別適合于中小型分布式測(cè)控系統(tǒng),目前己在工業(yè)自動(dòng)化、建筑物環(huán)境控制、機(jī)床、醫(yī)療設(shè)備等領(lǐng)域得到廣泛應(yīng)用。CAN總線(xiàn)具有以下幾個(gè)重要特點(diǎn):
1)結(jié)構(gòu)簡(jiǎn)單,只有兩根線(xiàn)與外部相連,且內(nèi)部含有錯(cuò)誤探測(cè)和管理模塊。
2)通信方式靈活。可以多種方式工作,網(wǎng)絡(luò)上任意一個(gè)節(jié)點(diǎn)均可在任意時(shí)刻主動(dòng)的向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息,而不分主從。
3)可以點(diǎn)對(duì)點(diǎn)、點(diǎn)對(duì)多點(diǎn)及全局廣播方式發(fā)送和接受數(shù)據(jù)。
4)網(wǎng)絡(luò)上的節(jié)點(diǎn)信息可分成不同的優(yōu)先級(jí),可以滿(mǎn)足不同的實(shí)時(shí)要求。
5)CAN通訊格式采用短幀格式,每幀字節(jié)數(shù)最多為8個(gè),可滿(mǎn)足通常工業(yè)領(lǐng)域中控制命令、工作狀態(tài)和測(cè)試數(shù)據(jù)的一般要求。同時(shí),8個(gè)字節(jié)也不會(huì)占用總線(xiàn)時(shí)間過(guò)長(zhǎng),從而保證了通訊的實(shí)時(shí)性。
6)采用非破壞性總線(xiàn)仲裁技術(shù)。當(dāng)兩個(gè)節(jié)點(diǎn)同時(shí)向總線(xiàn)上發(fā)送數(shù)據(jù)時(shí),優(yōu)先級(jí)低的節(jié)點(diǎn)主動(dòng)停止數(shù)據(jù)發(fā)送,而優(yōu)先級(jí)高的節(jié)點(diǎn)可以不受影響繼續(xù)傳輸數(shù)據(jù),這大大地節(jié)省了總線(xiàn)仲裁沖突時(shí)間,在網(wǎng)絡(luò)負(fù)載很重的情況下也不會(huì)出現(xiàn)網(wǎng)絡(luò)癱瘓。
7)直接通訊距離最大可達(dá)1k0m(速率在5kb/S以下),最高通訊速率可達(dá)1Mb/s(此時(shí)距離最長(zhǎng)為40m)。節(jié)點(diǎn)數(shù)可達(dá)110個(gè),通信介質(zhì)可以是雙絞線(xiàn)、同軸電纜或光導(dǎo)纖維。
8)CAN總線(xiàn)通訊接口中集成了CAN協(xié)議的物理層和數(shù)據(jù)鏈路層功能,可完成對(duì)通信數(shù)據(jù)的成幀處理,包括位填充、數(shù)據(jù)塊編碼、循環(huán)冗余檢驗(yàn)、優(yōu)先級(jí)判別等項(xiàng)工作。
9)CAN總線(xiàn)采用CRC檢驗(yàn)并可提供相應(yīng)的錯(cuò)誤處理功能,保證了數(shù)據(jù)通信的可靠性。
2 系統(tǒng)設(shè)計(jì)
電動(dòng)汽車(chē)數(shù)字控制系統(tǒng)主要由電機(jī)驅(qū)動(dòng)控制系統(tǒng),電池管理系統(tǒng),動(dòng)力裝置的冷卻系統(tǒng),汽車(chē)電器、儀表顯示、供電系統(tǒng),信息通信系統(tǒng)等組成。電動(dòng)汽車(chē)采用雙CAN總線(xiàn)結(jié)構(gòu),電機(jī)驅(qū)動(dòng)控制系統(tǒng)、電池管理系統(tǒng)和信息通信系統(tǒng)均采用高速CAN總線(xiàn)通信;動(dòng)力裝置的冷卻系統(tǒng),汽車(chē)電器、儀表顯示、供電系統(tǒng)采用低速CAN總線(xiàn)系統(tǒng);高、低速CAN總線(xiàn)系統(tǒng)之間采用網(wǎng)關(guān)進(jìn)行交換,如圖1所示,CAN總線(xiàn)符合CAN.20B標(biāo)準(zhǔn)和15011898國(guó)際標(biāo)準(zhǔn)。通信介質(zhì)采用普通屏蔽雙絞線(xiàn)。
選擇合適的MCU是CAN總線(xiàn)數(shù)字儀表控制系統(tǒng)設(shè)計(jì)成功的關(guān)鍵。它必須能適應(yīng)各類(lèi)復(fù)雜監(jiān)控系統(tǒng)的要求,如實(shí)時(shí)性、低功耗、快速數(shù)據(jù)處理、集成數(shù)模外設(shè)功能、集成CAN總線(xiàn)接口,還應(yīng)該集成充足的Flash或RAM供程序、數(shù)據(jù)存儲(chǔ),以簡(jiǎn)化電路,提高系統(tǒng)的可靠性。此外,它還要具有低成本和惡劣環(huán)境下的適應(yīng)性。在綜合比較了當(dāng)前業(yè)界流行的幾款MCU,如DSP2000系列、ATM89系列和C8051F系列之后,最終選擇了Cygnal的C805lF這一系列高性能8位單片機(jī)。
C8051F系列單片機(jī)是完全集成的混合信號(hào)系統(tǒng)級(jí)芯片SOC具有與MCS51完全兼容的指令內(nèi)核。由于采用了流水線(xiàn)處理技術(shù),不再區(qū)分時(shí)鐘周期和機(jī)器周期,大大提高了指令執(zhí)行效率,使其處理速度不遜于許多16位單片機(jī)。在低功耗的同時(shí)它還擁有著控制系統(tǒng)所需的豐富模擬、數(shù)字外設(shè),大量的外設(shè)功能接口,通過(guò)交叉開(kāi)關(guān)表分配到64個(gè)I/O引腳,這一獨(dú)創(chuàng)性設(shè)計(jì)使得芯片集成度大大增高。此外,C805lF還采用了Flash ROM技術(shù),集成了JTAG,實(shí)現(xiàn)了真正的在線(xiàn)編程和片上調(diào)試。
3 接口電路設(shè)計(jì)
系統(tǒng)中選用Phliips公司的CAN總線(xiàn)收發(fā)器PCA82C250,PCA82C250是CAN控制器和物理層總線(xiàn)之間的接口,符合CAN國(guó)際標(biāo)準(zhǔn)15011898,它可以提供總線(xiàn)的差動(dòng)發(fā)送能力和接收能力。用PCA82C250的目的是為了增大通信距離,提高系統(tǒng)的瞬間抗干擾能力,保護(hù)總線(xiàn),降低射頻干擾,實(shí)現(xiàn)熱防護(hù)等。PCA82C250允許的最高通信速度可達(dá)lMbps,最多節(jié)點(diǎn)數(shù)可達(dá)110個(gè)節(jié)點(diǎn)。它可以使系統(tǒng)具有較好的開(kāi)放性和靈活性,即使該CAN總線(xiàn)在不要求所有節(jié)點(diǎn)及其應(yīng)用層改變?nèi)魏诬浖陀布那闆r下,可自由地增加或減少控制器節(jié)點(diǎn)。
C805lF040內(nèi)集成了完全支持CAN2.0A和CAN2.0B的CAN控制器,獨(dú)立的消息RAM可以處理32條消息對(duì)象,每個(gè)消息對(duì)象都可以進(jìn)行發(fā)送和接收濾波,最高工作速率達(dá)到1Mb/s,能夠完成CAN總線(xiàn)協(xié)議數(shù)據(jù)鏈路層和應(yīng)用層的所有功能;其中CAN總線(xiàn)的競(jìng)爭(zhēng)處理、CPU接口、同步、數(shù)據(jù)的一貫性以及連續(xù)性保證,都是由硬件來(lái)解決,CPU因此得以騰出大量的精力來(lái)處理其他的用戶(hù)功能。以上這些特性,使得C805lF040成為CAN總線(xiàn)節(jié)點(diǎn)微控制器的良好選擇。因而系統(tǒng)不需要專(zhuān)門(mén)的CAN控制器。通訊接口電路設(shè)計(jì)如圖2所示,82C250是CAN控制器和物理總線(xiàn)間的接口,它是專(zhuān)用的CAN驅(qū)動(dòng)芯片,提供對(duì)總線(xiàn)的差動(dòng)發(fā)送和接收功能。為了增強(qiáng)CAN通信的抗干擾能力,在緩沖器和CAN驅(qū)動(dòng)之間設(shè)計(jì)了光電隔離電路。采用的是高速光電隔離芯片6N137,輸入與輸出的供電電壓也都采用5V。同時(shí)為了避免電源引起的干擾,CAN通信部分采用單獨(dú)的DC—DC電源模塊供電。
4 軟件設(shè)計(jì)
系統(tǒng)軟件模塊包括:控制策略模塊、系統(tǒng)參數(shù)配置模塊、運(yùn)行監(jiān)控及故障指示模塊、CAN通信總線(xiàn)模塊、數(shù)據(jù)采集模塊、配置數(shù)據(jù)交換模塊、報(bào)表打印模塊、與其他軟件的接口模塊等。其中控制策略模塊和CAN總線(xiàn)通信模塊是主要的功能模塊。
由于控制器是多變量輸入,為了適應(yīng)控制對(duì)象結(jié)構(gòu)和參數(shù)變化范圍大、對(duì)象數(shù)學(xué)模型難于建立的特點(diǎn),控制策略模塊采用了模糊控制方法。模糊控制的基礎(chǔ)是知識(shí)庫(kù),當(dāng)各個(gè)節(jié)點(diǎn)的信息通過(guò)CAN總線(xiàn)輸入到控制器后,經(jīng)過(guò)模糊推理和模糊決策獲得輸出量,可使整車(chē)獲得最佳運(yùn)行狀態(tài),實(shí)現(xiàn)電動(dòng)汽車(chē)儀表顯示及優(yōu)化控制。CAN總線(xiàn)通信軟件主要包括節(jié)點(diǎn)初始化程序、報(bào)文發(fā)送程序、報(bào)文接收程序以及CAN總線(xiàn)出錯(cuò)處理程序等。在初始化C8051F040內(nèi)部寄存器時(shí)注意使得各節(jié)點(diǎn)的速率必須一致,而且收、發(fā)雙方必須同步。報(bào)文的接收主要有中斷和查詢(xún)兩種接收方式,為提高通信的實(shí)時(shí)性,保證接收緩存器不會(huì)出現(xiàn)數(shù)據(jù)溢出現(xiàn)象,本文設(shè)計(jì)的系統(tǒng)采用中斷接收方式實(shí)現(xiàn)CAN的通信過(guò)程。中斷服務(wù)程序流程圖如圖3所示。
數(shù)據(jù)采集系統(tǒng)通過(guò)傳感器、信號(hào)調(diào)理電路和采集卡,將表征電動(dòng)汽車(chē)運(yùn)行狀況的物理量轉(zhuǎn)化為數(shù)字量采集至各個(gè)CAN節(jié)點(diǎn),在對(duì)數(shù)據(jù)位值轉(zhuǎn)換、軟件濾波和必要運(yùn)算后,通過(guò)CAN總線(xiàn)將信息送往多能源控制器。CAN節(jié)點(diǎn)控制模
塊需要采集的主要信號(hào)有:
1)動(dòng)力裝置的冷卻系統(tǒng):檢測(cè)水溫、油溫、油壓力、啟動(dòng)故障、水溫過(guò)高/低等;
2)電機(jī)驅(qū)動(dòng)控制系統(tǒng):檢測(cè)電壓、電流扭矩、功率、轉(zhuǎn)速、電機(jī)狀態(tài)、車(chē)速、電機(jī)故障、加速踏板位置、制動(dòng)踏板位置、離合器狀態(tài)、鑰匙信號(hào)、檔位等;
3)電池管理系統(tǒng):檢測(cè)SOC、電池電壓、電池電流、電池溫度、電池充/放電、電池故障等。
現(xiàn)場(chǎng)總線(xiàn)控制系統(tǒng)以其高性能、高可靠性和高性?xún)r(jià)比,被越來(lái)越多地應(yīng)用于車(chē)用電控單元和儀表系統(tǒng)之中。在電動(dòng)汽車(chē)控制系統(tǒng)中采用CAN總線(xiàn)技術(shù),不僅組網(wǎng)自由,擴(kuò)展性強(qiáng),實(shí)時(shí)性好,可靠性高,而且具有自診斷和監(jiān)控能力,它是一種十分有效的通信方式。
5 結(jié)論
本文介紹了基于單片機(jī)C8051F040的CAN電動(dòng)汽車(chē)數(shù)字控制系統(tǒng)設(shè)計(jì)過(guò)程,給出了硬件系統(tǒng)結(jié)構(gòu)圖和軟件設(shè)計(jì)思路,經(jīng)過(guò)實(shí)驗(yàn)證明,CAN電動(dòng)汽車(chē)數(shù)字控制系統(tǒng)工作穩(wěn)定、可靠,具有良好的應(yīng)用前景。