基于現場(chǎng)總線(xiàn)的發(fā)動(dòng)機測試系統
1. 引言
柴油發(fā)動(dòng)機測試是柴油發(fā)動(dòng)機生產(chǎn)過(guò)程中的最后一道關(guān)鍵工序,對柴油機制造質(zhì)量起著(zhù)十分重要的作用,其主要內容是通過(guò)對特定測試環(huán)境下柴油機工藝參數的記錄和分析,判斷其合格與否,并能及時(shí)發(fā)現和排除故障。許多現在正在使用的柴油發(fā)動(dòng)機測試平臺都是通過(guò)儀表讀數來(lái)分析、判斷一臺柴油發(fā)動(dòng)機測試時(shí)的工作狀態(tài),不僅效率低、精度差,而且綜合分析判斷能力有限。為了能夠更加全面、直觀(guān)地了解柴油發(fā)動(dòng)機測試過(guò)程,迅速發(fā)現并排除故障隱患,使測試操作人員提高分析判斷能力,結合企業(yè)技術(shù)改造,我們開(kāi)發(fā)了基于CAN現場(chǎng)總線(xiàn)的柴油發(fā)動(dòng)機測試系統,實(shí)現了同時(shí)對多臺柴油發(fā)動(dòng)機測試過(guò)程的監控與測試。
2. 測試系統結構組成
根據柴油發(fā)動(dòng)機的測試要求,本系統主要完成對柴油發(fā)動(dòng)機測試過(guò)程中各種傳感信號的處理以及柴油機工況數據的采集,并將數據通過(guò)CAN總線(xiàn)送上位機,要求處理16路模擬信號、16路I/O信號。采集的參數主要有:機油壓力和溫度、冷卻水溫度、進(jìn)排氣溫度、燃油液位、啟動(dòng)蓄電池電壓、轉速等。
柴油發(fā)動(dòng)機測試系統的關(guān)鍵是引入了CAN總線(xiàn)技術(shù),形成基于CAN總線(xiàn)的分布式測控體系模型,如圖1所示。由于CAN總線(xiàn)作為現場(chǎng)總線(xiàn)的類(lèi)型之一,屬于開(kāi)放式底層控制網(wǎng)絡(luò ),是應用于生產(chǎn)現場(chǎng)、在微機化測量控制設備之間實(shí)現雙向串行多節點(diǎn)數字通信的系統,因此基于CAN總線(xiàn)的分布式測控系統是開(kāi)放式的,而不是封閉和專(zhuān)用的[1]。這種測試系統將監控功能分散到每個(gè)試車(chē)臺,每個(gè)試車(chē)臺均由一個(gè)CAN智能節點(diǎn)完成監控任務(wù)。每個(gè)CAN總線(xiàn)節點(diǎn)的組成是相同的,都包括:主控單元、CAN總線(xiàn)通信管理單元、數據采集與處理單元等。各節點(diǎn)通過(guò)CAN總線(xiàn)與上位機相連,通過(guò)總線(xiàn)完成彼此間的通信。
3. 測試系統硬件設計
柴油發(fā)動(dòng)機測試系統采用兩級分布式結構。上位機采用PC機,在上位機的PCI總線(xiàn)插槽中安裝了PC-CAN總線(xiàn)適配卡,這樣就可以通過(guò)CAN總線(xiàn)將上、下位機聯(lián)系在一起構成控制網(wǎng)絡(luò )。下位機控制器采用單片機AT89C51和CAN總線(xiàn)控制器SJA1000共同組成的智能節點(diǎn),它們直接對各現場(chǎng)設備(如:傳感器、繼電器、電機等進(jìn)行控制,采集現場(chǎng)數據,并根據接收到的命令或者主動(dòng)將數據發(fā)送到CAN總線(xiàn)。通過(guò)事先設置驗收碼和驗收屏蔽碼可以控制智能節點(diǎn)從總線(xiàn)上接收哪些數據或命令。如果某些數據需要進(jìn)一步復雜的處理(如動(dòng)態(tài)顯示),則上位計算機可以從總線(xiàn)上接收數據。當上位機需要對某個(gè)節點(diǎn)施加控制動(dòng)作時(shí),可以采用點(diǎn)對點(diǎn)方式與該節點(diǎn)通訊,而當它要同時(shí)對所有節點(diǎn)施加控制動(dòng)作時(shí),可以采用廣播方式將命令發(fā)送到總線(xiàn)。這樣當系統正常運行時(shí)完全可以沒(méi)有上位機的參與,大大減少了數據的傳輸量,同時(shí)提高了系統的實(shí)時(shí)性和可靠性。
柴油發(fā)動(dòng)機測試系統的硬件設計主要涉及上位機中的PC-CAN適配卡以及下位機CAN智能節點(diǎn)。這里重點(diǎn)分析CAN智能節點(diǎn)的結構組成。
在圖2所示的CAN智能節點(diǎn)中,核心器件是CAN總線(xiàn)控制器SJA1000、CAN總線(xiàn)驅動(dòng)器82C250以及單片機AT89C51。AT89C51主要有兩方面的任務(wù):一是負責對CAN控制器SJA1000的初始化,并通過(guò)控制SJA1000實(shí)現數據的接收和發(fā)送等通信任務(wù);二是負責對現場(chǎng)信號的采集以及對現場(chǎng)設備的控制。SJA1000是Philips公司的CAN控制器,它實(shí)現了CAN總線(xiàn)網(wǎng)絡(luò )中的數據鏈路層和物理層功能,通過(guò)對其編程,微處理器可以設置它的工作方式,控制它的工作狀態(tài),進(jìn)行數據的發(fā)送和接收,把應用層建立在它的基礎之上。在本設計中,為了增強CAN總線(xiàn)節點(diǎn)的抗干擾能力,采用SJA1000的具有光電隔離的CAN總線(xiàn)接口。SJA1000的發(fā)送輸出端TX0與接收輸入端RX0、RX1分別經(jīng)高速集成光電耦合器6N137隔離后與CAN總線(xiàn)接口驅動(dòng)芯片82C250的TXD和RXD相連,82C250則直接與CAN物理總線(xiàn)相連。
上位機監控軟件采用組態(tài)軟件進(jìn)行開(kāi)發(fā)。組態(tài)軟件作為用戶(hù)可定制功能的軟件平臺工具,是隨著(zhù)分布式控制系統及計算機控制技術(shù)的日趨成熟而發(fā)展起來(lái)的。
當前,隨著(zhù)現場(chǎng)總線(xiàn)技術(shù)的逐步推廣,現場(chǎng)總線(xiàn)和開(kāi)放系統已成為組態(tài)軟件成長(cháng)所依賴(lài)的外部環(huán)境,這使得組態(tài)軟件更易于與眾多的輸入/輸出設備連接,從而促進(jìn)了組態(tài)軟件在現場(chǎng)總線(xiàn)控制系統中的應用。通過(guò)對現有組態(tài)軟件性能及價(jià)格的比較,同時(shí)結合本技改項目的實(shí)際需要,選擇國產(chǎn)"世紀星"組態(tài)軟件來(lái)開(kāi)發(fā)CAN總線(xiàn)系統的監控程序。為了將上位機人機界面程序與下位機數據采集與交換程序有機地結合起來(lái),我們把臨控程序分成兩部分,即:將服務(wù)器-客戶(hù)機結構應用到CAN總線(xiàn)控制系統的組態(tài)軟件設計中,實(shí)現以人機界面程序作為客戶(hù)機端程序,以與硬件進(jìn)行數據交換的程序作為服務(wù)器端程序。
評論