一,、引言
隨著汽車計算機(jī)控制技術(shù)的不斷發(fā)展,,現(xiàn)代汽車上的計算機(jī)控制系統(tǒng)越來越多,聯(lián)系也越來越緊密,。如發(fā)動機(jī)控制,、變速控制、制動防抱死控制,、安全氣囊控制,、照明控制、空調(diào)控制,、儀表管理等,。原來的汽車上這些計算機(jī)控制單元之間往往沒有通過總線構(gòu)成網(wǎng)絡(luò),而是獨立進(jìn)行控制,,或者相關(guān)控制單元通過串行口進(jìn)行聯(lián)系?,F(xiàn)在很多汽車采用CAN(Controller Area Network)總線將它們聯(lián)系起來,但是現(xiàn)代汽車計算機(jī)控制單元多,,各控制單元對系統(tǒng)響應(yīng)時間的要求不一樣,。有些系統(tǒng)對實時性要求很高,系統(tǒng)指令發(fā)出以后如果得不到執(zhí)行器的及時響應(yīng),,就可能造成嚴(yán)重后果甚至車毀人亡,,如制動防抱死控制單元、安全氣囊等,;而有些系統(tǒng)如照明控制,、空調(diào)控制等對系統(tǒng)的響應(yīng)時間要求就相對較低。
由于計算機(jī)控制單元越來越多,,采用單網(wǎng)絡(luò)CAN總線負(fù)荷很重,,筆者通過分別構(gòu)造高、低速CAN網(wǎng)絡(luò),,對實時性要求高的計算機(jī)控制單元采用高速CAN網(wǎng)絡(luò)傳輸,;其它采用低速CAN網(wǎng)絡(luò)傳輸,并采用微控制器兼作網(wǎng)關(guān),。使得傳輸線束大大簡化,,可靠性大大提高。
二,,CAN總線的技術(shù)特性
CAN(Controller Area Network)總線是一種串行多主站控制器局域網(wǎng)總線,。它具有很高的網(wǎng)絡(luò)安全性,、通訊可靠性和實時性,簡單實用,,網(wǎng)絡(luò)成本低,。特別適用于汽車計算機(jī)控制系統(tǒng)和環(huán)境溫度惡劣、電磁輻射強(qiáng)和振動大的工業(yè)環(huán)境,。通訊媒體可以是雙絞線,、同軸電纜或光導(dǎo)纖維,數(shù)據(jù)傳輸速率可達(dá)1 Mbits/s(此時通信距離最長為40m),。CAN總線還廣泛應(yīng)用于汽車,、船舶、機(jī)器人,、樓宇自動化等場合,。
自CAN總線問世以來,為滿足CAN總線協(xié)議的多種應(yīng)用需要,,相繼出現(xiàn)了幾種高層協(xié)議,。目前大多數(shù)基于CAN總線的網(wǎng)絡(luò)都采用CAN總線的高層協(xié)議。CANopen, DeviceNet和SDS是通常采用的高層協(xié)議,,適用于任何類型的工業(yè)控制局域網(wǎng)應(yīng)用場合,,而CAL則應(yīng)用于基于標(biāo)準(zhǔn)應(yīng)用層通訊協(xié)議的優(yōu)化控制場合,SAEJ1939則應(yīng)用于卡車和重型汽車計算機(jī)控制系統(tǒng),。
三,,基于P87C591的汽車計算機(jī)控制
?。ㄒ唬?P87C591
P8xC591 是一個單片8位高性能微控制器,,具有片內(nèi)CAN控制器,從80C51微控制器家族派生而來,。它采用了強(qiáng)大的80C51指令集并成功的包括了Philips 半導(dǎo)體SJA1000 CAN控制器的PeliCAN功能,。全靜態(tài)內(nèi)核提供了擴(kuò)展的節(jié)電方式。振蕩器可停止和恢復(fù)而不會丟失數(shù)據(jù),。改進(jìn)的1:1內(nèi)部時鐘預(yù)分頻器在12MHz外部時鐘速率時實現(xiàn)500ns指令周期,。微控制器以先進(jìn)的CMOS工藝制造,并設(shè)計用于汽車和通用的工業(yè)應(yīng)用,。除了80C51的標(biāo)準(zhǔn)特性之外,,器件還為這些應(yīng)用提供許多專用的硬件功能。P8xC591組合了P87C554(微控制器)和SJA 1000(獨立的CAN控制器)的功能,,并具有下面的增強(qiáng)特性:增強(qiáng)的CAN接收中斷,;擴(kuò)展的驗收濾波器;驗收濾波器可“change on the fly”,。
?。ǘ┫到y(tǒng)實現(xiàn)
目前,,汽車計算機(jī)控制已經(jīng)涉及到動力性、經(jīng)濟(jì)性,、安全性,、可靠性、凈化性和舒適性等諸多方面,,具體包括發(fā)動機(jī)控制,,變速器控制、巡行控制,,制動控制,,照明控制,空調(diào)控制,,雨刷控制,,儀表管理系統(tǒng)等,而且各種控制系統(tǒng)的電控單元(ECU)相互聯(lián)系緊密,,需要隨時進(jìn)行實時數(shù)據(jù)通信,,CAN總線作為一種極具應(yīng)用潛力的控制器局域網(wǎng)總線,近年來在汽車計算機(jī)控制系統(tǒng)中得到越來越廣泛的應(yīng)用,,并已成為歐洲汽車制造業(yè)主體行業(yè)標(biāo)準(zhǔn),,代表著汽車電子控制網(wǎng)絡(luò)的主流發(fā)展趨勢。
汽車計算機(jī)控制系統(tǒng)中的所有這些子控制系統(tǒng)通過CAN,0.線構(gòu)成一個實時控制系統(tǒng)網(wǎng)絡(luò),,各控制單元的指令發(fā)出去之后,,必須保證在一定時間內(nèi)得到響應(yīng),要不然就有可能發(fā)生重大事故,,這就要求汽車上的CAN通信網(wǎng)絡(luò)有較高的波特率設(shè)置和可靠性,。而且,汽車在實際運(yùn)行過程中,,眾多節(jié)點之間需要進(jìn)行大量的實時數(shù)據(jù)交換,。若整輛汽車的所有節(jié)點都掛在一個CAN網(wǎng)絡(luò)上,這么多節(jié)點通過一條CAN總線進(jìn)行通信,,信息管理配置稍有不當(dāng),,就很容易出現(xiàn)總線負(fù)荷過大,將導(dǎo)致系統(tǒng)實時響應(yīng)速度下降,,這在實時系統(tǒng)中是不允許的,。因此我們在對汽車上各節(jié)點的實時性進(jìn)行了分析之后,根據(jù)各節(jié)點對實時性的要求,,設(shè)計了高,、低速兩個速率不同的CAN通信網(wǎng)絡(luò)。將實時性要求嚴(yán)格,、可靠性要求高的節(jié)點組成高速CAN通信網(wǎng)絡(luò),,將其它實時性要求相對較低的節(jié)點組成低速CAN通信網(wǎng)絡(luò),,并架設(shè)網(wǎng)關(guān)將這兩個速率不同的CAN通信網(wǎng)絡(luò)連接起來,實現(xiàn)全部節(jié)點之間的數(shù)據(jù)共享,。整輛汽車的通信網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖1所示,。
圖 1中的發(fā)動機(jī)控制、變速器控制,、安全控制,、防抱死制動控制(ABS)等控制單元節(jié)點是現(xiàn)代汽車動作的核心部件,對時間響應(yīng)要求嚴(yán)格,,因而在本設(shè)計中采用傳輸速率為500Kbps的高速CAN通信網(wǎng)絡(luò),。空調(diào)控制,、雨刷控制,、照明控制和儀表管理控制等相對來說對實時性的要求較低,采用傳輸速率小于125 Kbps的CAN通信網(wǎng)絡(luò),,主控制器跨接高,、低速兩條總線,與各節(jié)點進(jìn)行數(shù)據(jù)交換,,兼起網(wǎng)關(guān)的作用,,實現(xiàn)網(wǎng)絡(luò)互連。
電控單元的微控制器(P8xC591 )通過數(shù)據(jù)總線經(jīng)過光電隔離器(6N137)與CAN總線控制器(SJA 1000)直接相連,,由于CAN總線控制器帶有一個接收緩沖器和一個發(fā)送緩沖器,,因此,CAN總線控制器的發(fā)送端口Tx0,,接收端口Rx0,、Rx1分別與 CAN,總線發(fā)送接收器的TxD和RxD, Vref端口直接相連,CAN_L和CAN -H是CAN總線的兩條差分接收發(fā)送線,。它們的端點間各接一個120Ω的總線匹配電阻,,當(dāng)有節(jié)點占用CAN總線時,該節(jié)點的發(fā)送端(電平為3.5 V)接CAN_H,接收端(電平為1.5V)接CAN_L;當(dāng)無節(jié)點占用CAN總線時,,CAN_L和CAN_H上的電平均為2.5V.