目前世界上開(kāi)發(fā)出了40多種現(xiàn)場(chǎng)總線,其中CAN總線因其具有實(shí)時(shí)性強(qiáng)、可靠性高、抗干擾性強(qiáng)、通信方式靈活、非破壞性的訪問(wèn)方式和開(kāi)發(fā)簡(jiǎn)單、廉價(jià)等獨(dú)特之處,適合于汽車檢測(cè)線中應(yīng)用?;贑AN總線的汽車檢測(cè)控制系統(tǒng)可以解決現(xiàn)有RS232、RS485等通信系統(tǒng)的傳輸速率慢,出現(xiàn)亂碼等缺點(diǎn),可以提高數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性和可靠性,而且創(chuàng)建與汽車中微電腦通信的平臺(tái),以解決汽車與檢測(cè)互通信息的前瞻問(wèn)題。
1、基于現(xiàn)場(chǎng)總線技術(shù)的汽車檢測(cè)線開(kāi)發(fā)設(shè)計(jì)
1.1 汽車檢測(cè)線測(cè)控系統(tǒng)整體設(shè)計(jì)
汽車檢測(cè)站計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)由現(xiàn)場(chǎng)總線網(wǎng)絡(luò)和數(shù)據(jù)處理網(wǎng)絡(luò)組成,兩者通過(guò)1臺(tái)NT服務(wù)器進(jìn)行連接?,F(xiàn)場(chǎng)總線網(wǎng)絡(luò)以CAN總線技術(shù)為核心,采用總線型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),而數(shù)據(jù)處理網(wǎng)絡(luò)均采用星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),汽車檢測(cè)線總體結(jié)構(gòu)如圖1所示。
數(shù)據(jù)處理網(wǎng)絡(luò)中,每個(gè)工位機(jī)的信息及車輛信息都可通過(guò)網(wǎng)絡(luò)進(jìn)行資源共享,完成打印報(bào)表、財(cái)務(wù)報(bào)表和數(shù)據(jù)統(tǒng)計(jì)等各項(xiàng)任務(wù)。
在現(xiàn)場(chǎng)總線網(wǎng)絡(luò)檢測(cè)系統(tǒng)中,測(cè)控計(jì)算機(jī)和工位機(jī)之間都由CAN總線接口卡連接。測(cè)控計(jì)算機(jī)主要完成每個(gè)工位的初始化工作和對(duì)通信參數(shù)的設(shè)定,工位機(jī)接收汽車檢測(cè)儀器儀表的傳感器(以下簡(jiǎn)稱下位機(jī))的數(shù)據(jù),檢測(cè)車到位狀態(tài)以及驅(qū)動(dòng)顯示屏,下位機(jī)進(jìn)行數(shù)據(jù)采集和數(shù)據(jù)初步處理。
汽車檢測(cè)站的檢測(cè)設(shè)備來(lái)自各個(gè)廠家,由于到目前為止還沒(méi)有一個(gè)統(tǒng)一的通信標(biāo)準(zhǔn),不可能對(duì)檢測(cè)線上的各個(gè)檢測(cè)設(shè)備進(jìn)行較大改動(dòng),所以下位機(jī)通過(guò)自身的硬件條件來(lái)確定通信方式,工位結(jié)構(gòu)如圖2所示。如果下位機(jī)的通信接口是數(shù)據(jù)打印口、RS232或RS485接口,先連接現(xiàn)場(chǎng)總線通信轉(zhuǎn)換接口CAN卡,然后連接到現(xiàn)場(chǎng)總線上來(lái)完成現(xiàn)場(chǎng)總線通信。當(dāng)然最好各檢測(cè)設(shè)備出廠時(shí)都采用CAN總線接口,這樣有利于設(shè)備的標(biāo)準(zhǔn)化。
下位機(jī)N是汽車檢測(cè)儀表中帶有CAN的CAN控制模塊,它不需要CAN卡直接與CAN總線相連。在這種方式下,工控機(jī)只連接CAN 總線,每個(gè)下位機(jī)用并聯(lián)的方式掛接在總線上,而不需要每個(gè)下位機(jī)與工控機(jī)相連。具有節(jié)省屏蔽線、布線方式簡(jiǎn)單和抗干擾性強(qiáng)的優(yōu)點(diǎn)。工位機(jī)也可以由DSP或單片機(jī)組成的嵌入式控制器代替工控機(jī)。這種方案對(duì)檢測(cè)設(shè)備的影響較小、成本較低,總線獲取數(shù)據(jù)的可靠性較高。
1.2 汽車檢測(cè)儀表中帶有CAN的CAN控制模塊設(shè)計(jì)
CAN控制模塊是由8位的微處理器89C58、獨(dú)立CAN通信控制器SJA1000、CAN總線收發(fā)器82C250以及相關(guān)的接口組成的實(shí)時(shí)多任務(wù)的嵌入式控制系統(tǒng)(如圖3所示),實(shí)現(xiàn)CAN總線的通信協(xié)議以及相關(guān)功能,可以分成3個(gè)部分:
(1) 總線接口部分,包括總線收發(fā)器和總線控制器,這部分對(duì)于所有CAN總線智能模塊都是相同的。
(2) 與傳感器及執(zhí)行機(jī)構(gòu)與單片機(jī)的接口部分,不同的接口將各單元分成不同的類型。
(3) 將前兩部分連接成一個(gè)有機(jī)系統(tǒng)的微控制器及其外圍接口部分,稱為模塊,不同的模塊要求單片機(jī)實(shí)現(xiàn)不同的功能。微處理器負(fù)責(zé)從傳感器中采集數(shù)據(jù)、對(duì)SJAIO00初始化并且控制SJAIO00實(shí)現(xiàn)數(shù)據(jù)的接收和發(fā)送等通信任務(wù)。
2、CAN通信協(xié)議的制定
SJA1000 CAN總線控制器支持CAN 通信協(xié)議約定的4種不同幀格式,即數(shù)據(jù)幀、遠(yuǎn)程幀、出錯(cuò)幀和超載幀。
汽車檢測(cè)系統(tǒng)中下位機(jī)將檢測(cè)得到的數(shù)據(jù)以數(shù)據(jù)文件的形式緩存,傳輸時(shí)打包成數(shù)據(jù)幀,以報(bào)文為單位進(jìn)行數(shù)據(jù)傳送。定義幀由優(yōu)先級(jí)、單元地址、數(shù)據(jù)組成。
優(yōu)先級(jí)的制定如表1所示,系統(tǒng)復(fù)位命令的優(yōu)先級(jí)定義為0x00,由于1讓位于0的機(jī)制,其值越小,優(yōu)先級(jí)越高。所以復(fù)位命令的優(yōu)先級(jí)最高,只要收到這個(gè)命令下位機(jī)將停止發(fā)送及采集數(shù)據(jù),并執(zhí)行復(fù)位。
單元地址表示下位機(jī)的地址信息,它可以由兩種方式制定,一個(gè)是使用編碼開(kāi)關(guān),現(xiàn)場(chǎng)制定地址,另外一個(gè)是出廠前程序中定義。若使用CAN卡只能使用第一種方式。
3、軟件設(shè)計(jì)
汽車檢測(cè)系統(tǒng)軟件主要由VC編程的主控程序,VB編程的報(bào)表程序,微處理器程序以及CAN節(jié)點(diǎn)通信程序組成。其中通信程序主要分為3個(gè)部分:CAN初始化,數(shù)據(jù)傳輸及數(shù)據(jù)接收。這里主要列出CAN芯片初始化程序,程序如下:
Unsigned char init_CAN (unsigned int btr0btr1)
{
EA=0;
EX0=1:
CAN— REGISTER [CONTROL]=1;//復(fù)位請(qǐng)求
CAN_ ACC=CAN_ REGISTER [CONTROL];
While (!CAN_ACC_0)
{
CAN REGISTER [CONTROL] =1;//確定是否復(fù)位
CAN_ACC=CAN—REGISTER [CONTROL];
}
//設(shè)置接受代碼寄存器
CAN-REGISTER [ACCEPTANCE_CODE]=ACC_CODE;
//設(shè)置接受屏蔽寄存器
CAN_REGISTER [ACCEPTANCE_MASK] =ACC_MASK;
//設(shè)置總線時(shí)序0寄存器
CAN — REGISTER [BUS_TIMING_1]=btr0btrl;
//設(shè)置總線時(shí)序1寄存器
CAN_REGISTER [BUS_TIMING_0]=btr0btrl》 》8:
//設(shè)置輸出控制寄存器
CAN_REGISTER [OUTPUT— CONTROL]=OUTONTRL;
//設(shè)置時(shí)鐘分頻寄存器
CAN_REGISTER [CDR]=CDRVALUE;
//設(shè)置控制寄存器
CAN_REGISTER [CONTROL]=CNTRLREG
//設(shè)置命令寄存器
CAN_ REGISTER [COMMAN D]&=0xe0;
CAN_REGISTER [COMMAND]I=0x0e;
CAN_REGISTER [COMMA ND]&=0xe0;
EA=1:
Return (OK);
}
4、應(yīng)用情況及效果
基于現(xiàn)場(chǎng)總線的汽車檢測(cè)系統(tǒng)由4個(gè)工位機(jī)組成。第1工位機(jī)包括底盤測(cè)功機(jī)、廢氣分析儀、噪聲聲級(jí)計(jì)、全自動(dòng)煙度計(jì)及油耗儀;第2工位機(jī)包括轉(zhuǎn)向盤及操縱力檢測(cè)儀、全功能側(cè)滑臺(tái)、車輪轉(zhuǎn)向儀、懸架松曠檢測(cè)臺(tái)及傳動(dòng)系松曠儀;第3工位機(jī)包括踏板力行程檢測(cè)儀、制動(dòng)檢驗(yàn)臺(tái)、懸架特性檢測(cè)臺(tái)、車體形位偏差儀及軸重儀;第4工位機(jī)包括發(fā)動(dòng)機(jī)檢測(cè)儀、前照燈檢測(cè)儀、喇叭聲級(jí)計(jì)及左右軸距差檢測(cè)儀。網(wǎng)絡(luò)使用了屏蔽雙絞線,連線長(zhǎng)為100m,傳輸速率為125kbps。
實(shí)踐證明,把現(xiàn)場(chǎng)總線技術(shù)應(yīng)用到汽車檢測(cè)線以后,該系統(tǒng)通信可靠、性能穩(wěn)定,取得了良好的經(jīng)濟(jì)效益和社會(huì)效益,其主要表現(xiàn)在如下幾方面:
(1) 節(jié)省了成本。由于系統(tǒng)采用了現(xiàn)場(chǎng)總線,通過(guò)屏蔽雙絞線連接各處分散的獨(dú)立設(shè)備,而且嵌入式系統(tǒng)的控制器代替工位機(jī)中的工控機(jī),與以前不使用現(xiàn)場(chǎng)總線技術(shù)相比,可以節(jié)省項(xiàng)目經(jīng)費(fèi)。
(2) 具有良好的擴(kuò)展性。由于現(xiàn)場(chǎng)總線的開(kāi)放性,可隨意增設(shè)工位,總線上可以掛接32個(gè)設(shè)備。
(3) 遠(yuǎn)距離高速通信。傳輸距離小于50m時(shí),數(shù)據(jù)傳輸速率可達(dá)1Mbps,提高檢車效率。
(4) 系統(tǒng)維修方便??偩€上某個(gè)設(shè)備出現(xiàn)故障,不會(huì)導(dǎo)致整個(gè)系統(tǒng)的癱瘓,仍可維持其余設(shè)備的正常運(yùn)行,檢修時(shí)只需斷開(kāi)故障設(shè)備即可,提高了系統(tǒng)的整體可靠。
5、結(jié)束語(yǔ)
目前在汽車設(shè)計(jì)領(lǐng)域中,很多汽車廠家采用ISO頒布的CAN國(guó)際標(biāo)準(zhǔn)(ISO1 1898)。這標(biāo)準(zhǔn)允許不同廠家生產(chǎn)的零部件能在同一輛汽車中進(jìn)行有效、協(xié)調(diào)的工作,構(gòu)成了所謂的開(kāi)放式系統(tǒng),檢測(cè)線采用CAN總線技術(shù),有利于從汽車上直接獲取其故障信息,使得標(biāo)準(zhǔn)化的故障診斷和排放檢測(cè)成為可能。
把現(xiàn)場(chǎng)總線技術(shù)應(yīng)用在汽車檢測(cè)線上,不僅提高汽車檢測(cè)速度及檢車質(zhì)量,也可以從設(shè)計(jì)、安裝、調(diào)試、運(yùn)行到維護(hù)方面,節(jié)省成本和時(shí)間,從而得到了經(jīng)濟(jì)效益,提高了市場(chǎng)競(jìng)爭(zhēng)能力。
責(zé)任編輯:gt
評(píng)論
查看更多