發(fā)動機測試系統(tǒng)中can總線的應用
引 言
現(xiàn)場的總線控制系統(tǒng)(FCS)將是新世紀自動控制系統(tǒng)發(fā)展的主流,是繼DCS后新一代的控制系統(tǒng)?,F(xiàn)場總線是綜合自動化發(fā)展的需要,同時智能儀器儀表則為現(xiàn)場總線的出現(xiàn)奠定了基礎。
CAN(Controller Area Network)是現(xiàn)場總線的一種,最早是德國Bosch公司在上世紀80年代推出的,主要應用于汽車內部檢測以及控制系統(tǒng)間的數(shù)據(jù)通信。CAN總線通信協(xié)議充分考慮了工業(yè)現(xiàn)場環(huán)境,采用了ISO-OSI模型中的三層,即物理層,數(shù)據(jù)層和應用層。CAN總線規(guī)范已被國際標準化組織制訂為國際標準 ISO11898,并得到了多家著名半導體器件生產(chǎn)商的支持,推出了各種集成CAN協(xié)議的芯片產(chǎn)品。CAN總線目前已經(jīng)被廣泛應用,CAN總線被公認為幾種最有前途的現(xiàn)場總線之一。
CAN總線的功能與特點
CAN總線的通信介質一般采用雙絞線、同軸電纜或光纖等,能夠實現(xiàn)在強電磁干擾環(huán)境下數(shù)據(jù)遠距離傳輸?shù)墓δ?,其硬件成本低,傳輸可靠性高,軟件開銷小,是屬于總線型串行通訊網(wǎng)絡,具有與其它通訊協(xié)議所不同的特點。
總線支持載波監(jiān)測與多主站控制以及沖突檢測的通訊模式
“載波監(jiān)測”是指在總線上每一節(jié)點在發(fā)送信息報文前都必須檢測到總線上有一段空閑狀態(tài),任一節(jié)點都有發(fā)送報文的機會。而報文信息優(yōu)先級的高低取決于信息的最終發(fā)送,在CAN中采用非破壞性的基于優(yōu)先級競爭的總線仲裁方式,這便是沖突檢測。通過報文濾波可實現(xiàn)多種傳輸方式,具有靈活的工作方式。
CAN總線協(xié)議是基于報文而不是基于站點地址的協(xié)議
CAN總線上報文所含內容只有優(yōu)先級標志區(qū)和傳送的數(shù)據(jù)內容,所有節(jié)點都會收到報文,對報文的取舍取決于節(jié)點本身,同一報文可傳送給所有站點,也可以傳送給特定的站點。基于報文協(xié)議的另一個特點是新的節(jié)點可以隨時被加入到總線系統(tǒng)中,一旦加入到系統(tǒng)中,該節(jié)點便能接收信息,有很強的實用性。
CAN總線的高速性,以錯誤檢測和恢復能力的高可靠性
CAN采用面向數(shù)據(jù)塊的通信方式,信號傳輸采用短幀結構,CAN能自動地檢測出錯誤信息,保證信息的正確性和完整性,記錄出錯信息的次數(shù),“故障界定隔離”使故障節(jié)點被及時關斷而不會永久占用總線。
靈活數(shù)據(jù)編碼方式
CAN總線通信控制器集成了CAN的物理層和數(shù)據(jù)鏈路層功能,可以完成通信數(shù)據(jù)的成幀處理,可以定義211或229個不同的數(shù)據(jù)塊。
總之,CAN總線具有實時性強、可靠性高、抗干擾性強、結構簡單、操作性好、價格低廉等優(yōu)點,是目前國際上公認的最具有前途的幾種總線之一。
在發(fā)動機測試系統(tǒng)中的應用
發(fā)動機測試系統(tǒng)簡介
發(fā)動機測試系統(tǒng)是汽車發(fā)動機生產(chǎn)廠家在發(fā)動機出廠前抽樣測試系統(tǒng)的總成,傳統(tǒng)的汽車發(fā)動機試驗臺的組成是單臺的測功機和被測發(fā)動機組成的獨立系統(tǒng),每臺被測發(fā)動機的測試周期為720小時的連續(xù)各種路況測控。該系統(tǒng)引入CAN總線將其中的8個試驗臺組成一個同步測試系統(tǒng),可大大簡化測試過程,同時減少了重復勞動,取得較好的效果。
由于該發(fā)動機測控設備是由作者在1997年研制成功的,當時考慮到今后系統(tǒng)的擴展以及完善整個試驗系統(tǒng)的通信功能,在系統(tǒng)中預留了RS-422 通信功能接口。原系統(tǒng)采用STD總線鼠籠式的8098式結構搭建了試驗臺測控系統(tǒng),而其通信接口是標準的RS-422串行通信協(xié)議,這種結構只能采用主從式結構,且只有物理層,故而采用了CAN橋接器,使其能夠組成一個標準的CAN總線系統(tǒng)。
CAN橋接器的軟硬件設計
CAN橋接器的設計是將RS-422電平與CAN標準的邏輯電平能夠相互轉換,同時使得RS-422和CAN的幀格式能夠相互轉換。系統(tǒng)采用了 SJA1000控制接口芯片,SJA1000有BasicCAN模式和PeliCAN模式兩種工作模式,本系統(tǒng)中選擇了工作模式為基本型。SJA1000 作為微控制器的片外擴展芯片,其片選引腳CS接在微控制器的地址譯碼器上,從而決定了CAN總線控制器各寄存器的地址。SJA1000通過CAN控制器接口芯片82C250連接在物理總線上。82C250器件提供對總線的差動發(fā)送能力和對CAN控制器的差動接受能力,完全和ISO11898標準兼容。其引腳8允許選擇高速、斜率控制和待機三種不同的工作方式。
在圖2所示的電路中實現(xiàn)了RS-422電平和CAN標準邏輯電平的相互轉換,同時系統(tǒng)軟件也實現(xiàn)了RS-422和CAN幀格式的相互轉換,系統(tǒng)中CPU為AT89C52單片機。
芯片MAX1490B完成了RS-422和TTL邏輯電平的相互轉換,而芯片SJA1000則完成了TTL邏輯電平和CAN邏輯電平的相互轉換,在MAX1490B中TTL側和RS-422側實現(xiàn)了完全電隔離,A、B為其RS-422側輸入端,Y、Z為RS-422側輸出端,DI為隔離的 TTL側驅動輸入,RO為隔離的TTL輸出端,MAX1490B內部的DCPDC 變換器在不需要外部隔離電源的情況下實現(xiàn)了輸入輸出的電隔離。82C250是CAN總線通信控制器,由其實現(xiàn)CAN的物理層和數(shù)據(jù)鏈路層,是CAN總線收發(fā)器,可支持多達110個節(jié)點的CAN總線負載。
測控設備的改造
原有的系統(tǒng)采用了下位控制,即將控制權限和管理權限在每一獨立的系統(tǒng)中單獨實現(xiàn),數(shù)據(jù)的輸出,給定控制目標以及各種工況的信息打印均由前端機控制,上位機只是用來對系統(tǒng)進行簡單的數(shù)據(jù)匯總通訊。在原系統(tǒng)中每個測控設備是孤立的,是信息孤島,在改造過程中上位機中配置CAN適配器,用雙絞線與 CAN總線相連,在原測控設備上利用預留RS-422與CAN橋接器相連。在軟件編程中,增加了單獨的通信單元,不增加原有的控制系統(tǒng)的其他功能和軟件開銷,經(jīng)過簡單的軟硬件改造后,形成了一個具有數(shù)據(jù)交互功能的測控系統(tǒng)。改造后的系統(tǒng)能夠通過上位機對前置機進行控制工框的設定、數(shù)據(jù)采集匯總等,可以通過上位機對前置機進行控制,突破了原有系統(tǒng)的信息交互的障礙。系統(tǒng)拓撲結構如圖4所示。
結束語
經(jīng)過改造后的測控設備連成了一個CAN總線系統(tǒng),突破了原有的信息孤島的模式,原系統(tǒng)中的各種工作模式、各種控制目標給定由上位機管理,下位機通過接收廣播、點對點方式和上位機通信,接受工況狀態(tài)的轉換以及控制給定等參數(shù),同時定期上傳其工作狀態(tài)、測試數(shù)據(jù)等,上位機對其進行統(tǒng)一管理,實現(xiàn)了 “分散控制,集中管理”的模式。上位機通訊管理軟件的編制采用DELPHI5.0,在WIN2000下編譯完成。[!--empirenews.page--]
通過對原有系統(tǒng)進行總線升級改造,針對原有測試系統(tǒng)進行現(xiàn)場總線改造的嘗試,也具有積極的實際意義。