基于虛擬儀器的車載CAN總線監控系統開發
3.2 基于虛擬儀器的軟件設計
虛擬儀器技術目前已成為測試領域的主流技術,一個虛擬儀器系統主要由儀器硬件、計算機硬件和應用軟件組成,應用軟件又包括開發環境、應用程序和儀器驅動程序三部分[4]。LabVIEW是NI公司推出的虛擬儀器開發平臺,采用圖形化的編程語言,具有強大的人機界面設計和數據分析處理功能,提供了豐富的儀器驅動程序,便于快速創建靈活可靠的應用系統?;贚abVIEW環境的虛擬儀器體系結構如圖5所示。本文引用地址:http://www.104case.com/article/197803.htm
CAN總線監控系統軟件采用虛擬儀器開發平臺LabVIEW開發,儀器硬件部分包括便攜式工控機和PCI總線CAN通訊接口卡。PCI-7841 CAN接口卡提供了動態鏈接庫(DLL)形式的Windows2000/XP驅動程序,在LabVIEW中通過DLL調用實現第三方硬件的儀器驅動。PCI-7841提供的主要驅動程序功能如表1所示。
車載CAN總線監控系統采用了PC架構和高性能數據通訊接口卡,利用虛擬儀器軟件開發平臺的儀器驅動、界面控件以及應用程序開發調試環境,提高了系統的可靠性和開發效率。
3.3 監控軟件流程設計
CAN總線監控程序流程如圖6所示。首先進行硬件初始化,創建文件目錄。讀取CAN信息幀后按照協議進行解析,首先將數據幀分離成ID部分和數據部分,根據ID判斷是哪一個部件的信息;然后根據協議中定義的參數起始字節和總字節數取出數據,經過偏移量和比例因子運算得出該參數的實際值。由于CAN網絡中包含了整車控制器和各部件的控制器節點,在當前時刻緩沖區內有多個數據幀,監控程序在進入讀數據循環時不停地讀緩沖區的CAN數據,直到緩沖區數據讀取完畢為止,這樣保證了讀取數據的實時性。讀取的數據連續存儲在U盤上,存儲頻率為10Hz,由于數據量較大,為了避免數據文件過大,監控系統每隔1小時重新創建一次文件,根據當前時間生成文件名。當用戶按下結束按鈕后監控程序結束。
4 應用實例
在燃料電池汽車道路考核試驗中,應用車載CAN總線監控系統采集和記錄整車CAN網絡數據。圖7為采集的車速曲線,圖8為燃料電池電壓電流曲線,其中車速數據來自于整車控制器,電壓、電流數據來自于燃料電池發動機控制器。
評論