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