劉遠(yuǎn)宏,馬宗坡,夏均忠,王 萌
(軍事交通學(xué)院汽車工程系汽車試驗中心,天津 300161)
目前國內(nèi)汽車檢測線控制系統(tǒng)大都是采用RS232C、RS485串行通信接口的分布式控制系統(tǒng)(distributed control system,DCS)[1-3],傳輸方式是一對一結(jié)構(gòu),控制系統(tǒng)接線復(fù)雜,工程費(fèi)用高,維護(hù)困難,信號傳輸精度低,易受干擾,儀表互換性差,這都阻礙了上層系統(tǒng)功能的發(fā)揮。
現(xiàn)場總線使數(shù)字通信總線一直延伸到現(xiàn)場設(shè)備,使現(xiàn)場設(shè)備可通過一條總線進(jìn)行雙向多信息數(shù)字通信,通信方式更為靈活、實時性強(qiáng)、可靠性高、抗干擾性強(qiáng)?,F(xiàn)場總線控制系統(tǒng)(fieldbus control system,F(xiàn)CS)作為新一代控制系統(tǒng),突破了DCS采用通信專用網(wǎng)絡(luò)的局限,把DCS的集中與分散相結(jié)合的系統(tǒng)結(jié)構(gòu)變成了新型全分布式結(jié)構(gòu)[4-5]。
現(xiàn)場總線和開放系統(tǒng)在汽車檢測線控制系統(tǒng)中的應(yīng)用將大大降低自動化控制系統(tǒng)的成本,實現(xiàn)系統(tǒng)全分散控制和檢測設(shè)備的智能化與功能自治。
現(xiàn)場總線技術(shù)的基礎(chǔ)是數(shù)字通信,其結(jié)構(gòu)遵循國際標(biāo)準(zhǔn)化組織(ISO)的開放系統(tǒng)互聯(lián)(OSI)模型。目前世界上有40多種現(xiàn)場總線,雖然總線標(biāo)準(zhǔn)不統(tǒng)一,但其協(xié)議大多采用了OSI模型中的物理層、數(shù)據(jù)鏈路層和應(yīng)用層,同時考慮了現(xiàn)場裝置的控制功能和具體運(yùn)用增加了用戶層[6-7]。
物理層定義了信號的編碼和傳送方式、傳送介質(zhì)、接口的電氣及機(jī)械特性、信號傳輸速率等。傳輸介質(zhì)主要有電纜、光纖和無線介質(zhì)。
數(shù)據(jù)鏈路層分為介質(zhì)訪問控制層(MAC)和邏輯鏈路控制層(LLC)。MAC層的功能是對傳輸信號的發(fā)送和接收進(jìn)行控制,而LLC層的功能是對數(shù)據(jù)鏈路進(jìn)行控制,保證數(shù)據(jù)傳送到指定設(shè)備上。
應(yīng)用層定義了如何讀、寫、中斷和操作信息及命令,信息、句法(包括請求、執(zhí)行及響應(yīng)信息)的格式和內(nèi)容。應(yīng)用層的功能是傳送現(xiàn)場設(shè)備數(shù)據(jù)及訪問現(xiàn)場總線變量,為用戶提供接口。
用戶層是現(xiàn)場總線標(biāo)準(zhǔn)在OSI模型之外新增加的一層,定義了從現(xiàn)場裝置中讀、寫信息和向網(wǎng)絡(luò)中其他裝置分派信息的方法,即規(guī)定了供用戶組態(tài)構(gòu)成系統(tǒng)的標(biāo)準(zhǔn)“功能模塊”。
目前影響較大的現(xiàn)場總線有CAN總線、FF總線、LonWorks總線、Profibus總線和HART總線。
CAN 全稱為“controller area network”,即控制器局域網(wǎng),是德國BOSCH公司為解決汽車眾多控制單元與測試儀器之間的數(shù)據(jù)交換而開發(fā)的。
與其他現(xiàn)場總線相比,CAN總線是目前唯一具有國際標(biāo)準(zhǔn)的現(xiàn)場總線,數(shù)據(jù)通信具有突出的實時性、可靠性,通信速率快,結(jié)構(gòu)簡單,互操作性好。CAN協(xié)議也是建立在ISO/OSI模型基礎(chǔ)上的,其模型結(jié)構(gòu)有2層,即取OSI底層的物理層、數(shù)據(jù)鏈路層。協(xié)議具有完善的錯誤處理機(jī)制、靈活性高[8-11]。由于CAN的數(shù)據(jù)結(jié)構(gòu)簡單,結(jié)構(gòu)層次少,有利于系統(tǒng)中實時控制信號的傳送。
汽車檢測線FCS控制系統(tǒng)結(jié)構(gòu)如圖1所示。CAN總線采用雙絞線作為通信介質(zhì),采用網(wǎng)關(guān)實現(xiàn)網(wǎng)絡(luò)連接。檢測線分為3個工位,分別由各節(jié)點的智能檢測設(shè)備完成,每個工位采用LED引導(dǎo)屏提示。第一工位主要檢測底盤輸出功率、排放、油耗、滑行距離或時間,校驗車速表等;第二工位主要檢測汽車制動性能,包括制動力、制動力平衡、車輪阻滯力和駐車制動力等;第三工位主要檢測汽車前照燈、噪聲、側(cè)滑和整車外觀等。
圖1 汽車檢測線FCS控制系統(tǒng)結(jié)構(gòu)圖
當(dāng)車輛完成報檢后,主控計算機(jī)通過LED引導(dǎo)屏提示引車員開始車輛檢測。檢測設(shè)備進(jìn)入等待測試狀態(tài)。車輛在行駛過程中觸發(fā)各個工位放置的光電開關(guān),各檢測設(shè)備根據(jù)觸發(fā)信號判斷車輛位置,通過LED引導(dǎo)屏發(fā)送提示信息,提示引車員執(zhí)行各種操作。檢測設(shè)備啟動,開始檢測并采集數(shù)據(jù),實時處理數(shù)據(jù),給出評價,存儲檢測結(jié)果,需要時上傳至主控計算機(jī),并通過LED引導(dǎo)屏顯示檢測結(jié)果。當(dāng)該工位各項目檢測結(jié)束后,引車員根據(jù)LED引導(dǎo)屏提示進(jìn)入下一工位檢測。各檢測設(shè)備在主控計算機(jī)的監(jiān)控下,可以同時在線檢測多輛車,即每個工位可以同時有一輛車在進(jìn)行檢測。主控計算機(jī)外連打印機(jī)等輸出設(shè)備,打印檢測結(jié)果。質(zhì)檢部工作站通過網(wǎng)關(guān)監(jiān)測檢測過程,通過訪問主控機(jī)共享檢測數(shù)據(jù),并根據(jù)檢測結(jié)果判定檢測合格與否,出示檢測報告,實現(xiàn)車輛檢測自動化。檢測流程如圖2所示。
圖2 檢測流程圖
由于標(biāo)準(zhǔn)配置計算機(jī)本身沒有配置CAN接口,為了實現(xiàn)CAN總線與計算機(jī)總線的通信,主控計算機(jī)等接入檢測線的計算機(jī)都需配置CAN總線適配卡,用來收集總線上各節(jié)點的信息轉(zhuǎn)發(fā)給計算機(jī)并將計算機(jī)的命令和數(shù)據(jù)轉(zhuǎn)發(fā)給各節(jié)點。計算機(jī)PCI總線傳輸速度快,而且支持熱插拔,具有電源管理等功能,不但能滿足CAN總線的高速數(shù)據(jù)傳輸?shù)纫?,而且體積小、價格低、使用方便、應(yīng)用范圍廣?;赑CI的CAN適配卡原理如圖3所示,主要由CAN接口、PCI總線接口芯片PCI9052、電源管理電路等組成。CAN接口由CAN總線控制器SJA1000、光耦和CAN驅(qū)動器82C250組成,光耦用于光電隔離。
圖3 基于PCI的CAN適配卡原理圖
當(dāng)上位機(jī)發(fā)出數(shù)據(jù)時,經(jīng)過PCI9052傳輸?shù)絊JA1000,數(shù)據(jù)從發(fā)送緩沖器以報文的形式經(jīng)光耦發(fā)送到82C250,數(shù)據(jù)以差分的形式發(fā)送到CAN總線上的相應(yīng)的節(jié)點,完成指定動作。數(shù)據(jù)從節(jié)點傳至上位機(jī)時,SJA1000啟動接收命令接收來自節(jié)點上的報文,經(jīng)處理轉(zhuǎn)發(fā)到PCI總線。
汽車檢測線FCS控制系統(tǒng)的總線節(jié)點是指符合CAN總線標(biāo)準(zhǔn)的智能化、自動化的檢測設(shè)備。智能檢測設(shè)備基本組成如圖4所示,它由單片機(jī)、存儲器、輸入輸出通道、CAN接口等組成。CAN接口由CAN控制器、光電隔離模塊和CAN總線收發(fā)器組成。傳感器將輸出的模擬信號經(jīng)調(diào)理、A/D轉(zhuǎn)換成數(shù)字信號輸入到單片機(jī),單片機(jī)根據(jù)預(yù)定程序進(jìn)行處理,并將檢測結(jié)果存儲在存儲器中。檢測設(shè)備通過CAN總線收發(fā)器實時對CAN總線上的信息進(jìn)行巡檢,將其接收到的命令信息經(jīng)單片機(jī)處理,D/A轉(zhuǎn)換成模擬信號傳至執(zhí)行機(jī)構(gòu),使其做出相應(yīng)動作。
圖4 智能檢測設(shè)備的基本組成
智能檢測設(shè)備中單片機(jī)的嵌入式測控軟件程序流程一般是上電復(fù)位、初始化、自檢后進(jìn)入工作主循環(huán)。測控軟件主要是通過事件觸發(fā)調(diào)用各功能模塊來實現(xiàn)的,主要包括數(shù)據(jù)采集模塊、顯示模塊、CAN通信模塊、操作控制調(diào)節(jié)模塊等。
在CAN總線構(gòu)成的系統(tǒng)中,用戶要根據(jù)具體要求來編寫應(yīng)用層和用戶層??刂葡到y(tǒng)軟件部分主要由主控程序、報表程序、智能檢測設(shè)備的測控程序以及CAN節(jié)點通信程序等組成。CAN接口通信程序主要有CAN初始化、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收。
CAN初始化主要是設(shè)置CAN的通信參數(shù),包括工作方式、接收濾波方式、接收屏蔽寄存器(AMR)、接收代碼寄存器、波特率參數(shù)和中斷允許寄存器等的設(shè)置。
CAN數(shù)據(jù)發(fā)送子程序負(fù)責(zé)節(jié)點報文的發(fā)送,發(fā)送時把存儲器中待發(fā)送的數(shù)據(jù)取出,按特定格式組合成一幀報文送入SJA1000的發(fā)送緩沖區(qū)。在接收到發(fā)送請求后,發(fā)送程序啟動發(fā)送命令。SJA1000與CAN總線之間的通信都是由CAN接口自動完成的,接收程序只需從接收緩沖區(qū)讀取信息并將其存儲在存儲器中。CAN發(fā)送程序代碼如下:
CAN接收子程序負(fù)責(zé)節(jié)點報文的接收,在接收的同時要對諸如總線關(guān)閉、錯誤報警、接收溢出等情況進(jìn)行處理。SJA1000報文的接收主要有中斷和查詢接收方式。由于對通信的實時性要求比較強(qiáng),所以選用中斷方式,中斷方式接收子程序流程如圖5所示。
圖5 中斷方式接收子程序流程圖
現(xiàn)場總線技術(shù)在分布式控制系統(tǒng)中的應(yīng)用具有獨(dú)特的優(yōu)勢,該文探討了CAN總線技術(shù)在汽車檢測計算機(jī)控制系統(tǒng)中的應(yīng)用,設(shè)計了基于CAN總線技術(shù)的汽車檢測線FCS控制系統(tǒng)。通過研究得出以下結(jié)論:
(1)汽車檢測線FCS控制系統(tǒng)將傳感測量、數(shù)據(jù)處理與控制等功能分散到檢測設(shè)備中,靠智能檢測設(shè)備完成自動控制的基本功能,并可隨時診斷設(shè)備的運(yùn)行狀態(tài)。
(2)基于PCI總線的CAN適配卡結(jié)構(gòu)簡單,使用靈活,支持熱插拔,成本低廉。
(3)檢測設(shè)備可主動向其他節(jié)點發(fā)送信息,具有較強(qiáng)的糾錯能力,傳輸速率快,可在總線空閑時自動重發(fā)沖突信息,多點接收。增加或刪除節(jié)點,不會影響其他節(jié)點。
隨著總線技術(shù)和應(yīng)用的發(fā)展,不同汽車檢測線中可能用到不同總線,面對多種總線共存的現(xiàn)實,要想實現(xiàn)各檢測站檢測線聯(lián)網(wǎng)控制,網(wǎng)關(guān)或網(wǎng)絡(luò)間的接口有待進(jìn)一步研究。
[1] 夏均忠.汽車檢測技術(shù)與設(shè)備[M].北京:機(jī)械工業(yè)出版社,2009.
[2]關(guān)雙城.汽車安全檢測線智能化控制系統(tǒng)設(shè)計與實現(xiàn)[J].林業(yè)機(jī)械與木工設(shè)備,2003,23(2):18-20.
[3] 趙祥模,馬建,關(guān)可,等.汽車綜合性能分布式計算機(jī)網(wǎng)絡(luò)自動測控系統(tǒng)[J].長安大學(xué)學(xué)報:自然科學(xué)版,2003(5):94-98.
[4] 陳曉俠,袁愛進(jìn),張春光.一定規(guī)模的現(xiàn)場總線控制系統(tǒng)通信故障解析[J].工自動化及儀表,2007,34(3):83-85.
[5] 黃福彥,陸綺榮,程大方.集散控制系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)的研究[J].自動化儀表,2010,31(1):10-12.
[6] 馬寶峰,王兵,鄧學(xué)鎣.基于現(xiàn)場總線和智能變送器的風(fēng)洞氣流參數(shù)測量系統(tǒng)研制[J].實驗流體力學(xué),2010,24(2):83-87.
[7] 金介明.基于現(xiàn)場總線的精處理控制系統(tǒng)研究[D].武漢:武漢理工大學(xué),2008.
[8] 潘全文,房振旭,姜守達(dá).基于CAN總線的分布式線束網(wǎng)絡(luò)測試系統(tǒng)設(shè)計[J].儀器儀表學(xué)報,2007,28(4):300-303.
[9]王建新.基于CAN總線的汽車電子集成控制系統(tǒng)[J].哈爾濱工業(yè)大學(xué)學(xué)報,2006,38(5):811-814.
[10]高士友,王代強(qiáng),王義,等.基于CAN總線的轎車車窗智能控制系統(tǒng)設(shè)計[J].電子設(shè)計工程,2009,17(3):45-48.
[11]畢乾坤,程秀生.基于CAN現(xiàn)場總線的車輛智能數(shù)據(jù)監(jiān)控系統(tǒng)[J].儀表技術(shù)與傳感器,2007(9):71-75.