高壓共軌柴油機ECU硬件在環仿真系統軟件設計
摘要:介紹了基于CAN 總線的高壓共軌柴油機ECU硬件在環仿真系統的軟件設計。軟件采用Visual C++和I abVIEw 混合編程的方式,構建了發動機仿真模型和硬件在環仿真系統用戶界面,實現了CAN總線通信和系統運行數據的處理與記錄。在滿足實時性要求的同時,本軟件為發動機ECU控制策略、控制功能以及工作可靠性的測試和評估提供了一個良好的平臺。
關鍵詞:內燃機;高壓共軌;柴油機;ECU;硬件
在環仿真;CAN總線0 概述為了縮短開發周期、降低研發費用,硬件在環仿真在發動機的開發過程中已有較多的應用,如柴油機高壓共軌ECU 的開發_1],柴油機高壓共軌供油系統的開發_2],電控單體泵的開發口 等。目前的相關文獻較偏重于硬件在環仿真系統的硬件設計,而對于系統軟件設計的描述較為簡略。本文主要介紹了高壓共軌柴油機ECU硬件在環仿真系統的軟件開發設計。
作為高壓共軌柴油機ECU 硬件在環仿真系統的一部分,系統軟件運行于PC機中,實現了以下幾項功能:(1)構建靈活友好的人機交互界面(用戶界面);(2)構建高壓共軌柴油機仿真模型;(3)實現PC機、柴油機ECU和HIL—ECU(仿真ECU)三者之間的CAN總線通信;(4)操作數據采集卡測量噴油脈寬信號;(5)對系統運行時的相關數據進行保存。
1、硬件在環仿真系統架構高壓共軌柴油機ECU 硬件在環仿真系統主要由高壓共軌柴油機ECU、控制箱、HIL—ECU、PC機以及其他一些外圍通信、測試設備組成,連接成為一個閉環的開發測試系統。
系統運行時,控制箱將模擬出發動機ECU工作所需的多種信號提供給ECU,包括溫度傳感器模擬信號、壓力傳感器模擬信號以及開關量模擬信號等;ECU也會產生一些開關量控制信號,來驅動控制箱上相應的繼電器、指示燈及儀表。同時,ECU 對噴油器電磁閥的驅動信號通過數據采集卡發送給PC機,HII 一ECU也將采集控制箱產生的傳感器模擬信號發送給PC機,PC機使用從兩個方面接收來的信號進行發動機模型計算,計算出發動機的模擬轉速并通過HII ECU控制驅動電機,帶動曲軸盤和凸輪盤轉動。進一步地,發動機ECU將采集曲軸盤和凸輪盤的轉速信號,根據自身控制策略再產生對噴油器電磁閥的驅動信號,從而實現硬件在環仿真系統的閉環控制。
2、軟件用戶界面設計高壓共軌柴油機ECU硬件在環仿真系統的主程序使用LabVIEw 8.5來開發。用戶界面如圖2所示。其中包括軟件操作菜單、分頁標簽、系統名稱、仿真顯示頁面和軟件運行控制欄5個部分。
軟件操作菜單用來選擇文本文件以保存系統運行時的相關數據,或是選擇退出系統關閉軟件;分頁標簽用來選擇仿真頁面1、仿真頁面2或是數據列表頁面其中之一作為仿真的主顯示頁面;仿真頁面1包括發動機轉速儀表、波形圖表、溫度信號、指示燈、繼電器以及開關信號。仿真頁面2包括壓力信號、霍爾(轉速)信號、噴油電磁閥驅動信號。數據列表頁面使用多列列表框來顯示系統運行過程中的重要數據參數;軟件運行控制欄包括水平搖桿開關、數據文件保存路徑、數據保存按鈕、載入初始參數按鈕、啟動/停止程序運行按鈕、系統退出按鈕,用以實現對軟件運行的控制。
3、軟件程序設計
3.1 軟件程序架構高壓共軌柴油機ECU硬件在環仿真系統軟件程序采用VC和Labview混合編程的方式來開發。
柴油機仿真模型在Visual C++ 6.0環境下采用C語言編寫。編寫好后的C程序將被封裝為D1 I s(dy—namic link libraries,動態鏈接庫),供I.abview調用。
系統軟件的主程序在Labview 8.5環境下采用G語言編寫。具體分為4個模塊:發動機仿真模型模塊;用戶界面模塊;數據采集卡模塊;CAN通信模塊。
3.2 軟件程序流程發動機硬件在環仿真系統的一個仿真循環不能太長,否則無法真實反映出發動機的動態響應速度,從而影響系統的實時性,失去硬件在環仿真的意義。
為此,高壓共軌柴油機ECU硬件在環仿真系統軟件將采用Labview環境下的多線程技術,其主程序中的發動機仿真模型模塊、用戶界面模塊、數據采集卡模塊和CAN通信模塊將設計成為4個獨立的while循環并列執行。通過在循環中使用等待函數來設置各模塊運行的優先級,從而保證整個系統的實時性。
軟件運行流程可分為軟件啟動、軟件初始化、啟動程序運行、停止程序運行以及軟件退出等部分。
3.3 各模塊程序代碼設計
3.3.1 發動機模型模塊本軟件采用均值發動機模型(mean valueengine mode1),主要包括渦輪增壓器、發動機以及供油系統3個子模塊,用以模擬真實發動機的運轉狀態。
3.3.2 用戶界面模塊軟件的用戶界面模塊程序可進行子模塊劃分,包括數據分析處理子模塊、波形圖表顯示子模塊、數據列表顯示子模塊、數據文件保存子模塊、程序停止判定子模塊。
數據分析處理子模塊負責PC機上數據以及相關信息的分析和處理。波形圖表顯示子模塊將系統運行過程中的6個重要數據參數描繪曲線。數據列表顯示子模塊使用多列列表框來顯示系統運行過程中的.14個重要數據參數。數據文件保存子模塊負責將系統運行過程中的相關數據信息保存在格式為。txt的文本文件中。程序停止判定子模塊在每個循環中都將查詢“停止程序運行”按鈕是否被按下,以決定是否要停止程序運行。
3.3.3 數據采集卡模塊系統使用ADVANTECH PCF1712數據采集卡對噴油器的噴油脈寬信號進行采集。安裝好數據采集卡對LabVIEW 的驅動程序后,打開LabVIEW,在程序框圖中的函數選板一用戶庫中,將出現數據采集卡的操作函數。通過使用DeviceOpen.vi、PM W StartRead.vi、CounterReset.vi、DeviceClose.vi等函數,即可完成對噴油脈沖寬度的測量。
3.3.4 CAN通信模塊高壓共軌柴油機ECU 硬件在環仿真系統軟件通過USBCAN接口卡來實現PC機的CAN總線通信,USBCAN接口卡專門提供了應用程序接口Vir—tual CAN Interface(VCI)函數庫,庫里的函數從ControlCAN.dll中導出E 7]。
首先在LabVIEw 環境下通過使用‘Call LibraryFunction Node依次調用打開設備函數VCI~OpenDe—vice、初始化CAN函數VCI—InitCAN和啟動CAN 函數VCI—StartCAN,完成對USBCAN設備的初始化。
之后根據高壓共軌柴油機ECU硬件在環仿真系統的CAN總線通信協議,循環調用ControlCAN.dll中的發送數據函數VCI—Transmit和接收數據函數VCI—Receive,即可實現CAN總線通信。
4、仿真驗證
對于GI>I高壓共軌柴油機ECU,圖7和圖8分別為軌壓和轉速對油門動態響應的硬件在環仿真結果和試驗結果。
在負荷不變的情況下,增加柴油機油門開度,高壓共軌油壓和柴油機轉速也將上升;維持油門開度不變,軌壓和轉速均將保持穩定。對比圖7和圖8可見:軌壓和轉速對油門動態響應的硬件在環仿真結果與試驗結果是一致的,驗證了本硬件在環仿真系統軟硬件的有效性。
圖9為本硬件在環仿真系統在空載情況下,油門從0 至50%時的運行效果。系統在穩態和過渡工況下運行良好,達到了硬件在環仿真系統的開發目的。
5、結論
(1)基于CAN總線的高壓共軌柴油機ECU硬件在環仿真系統軟件中的均值發動機仿真模型具有較快的運算速度,可以反映真實發動機的動態響應速度,且各硬件設備之間的通信基于CAN 總線,具有較高的傳輸速率,可達1 Mbit/s,保證了系統仿真的實時性。
(2)軟件通過數據采集卡對ECU 噴油控制信號進行了實測,增加了硬件在環仿真系統的真實性。
【高壓共軌柴油機ECU硬件在環仿真系統軟件設計】相關文章:
計算機的硬件系統簡介06-06
嵌入式系統的核心硬件12-10
仿真網格系統結構指揮自動化系統效能評估09-26
Matlab仿真在無線通信原理與系統中的運用與研究論文06-22
冶金仿真系統數據通信論文07-15
計算機軟硬件系統的組成05-22
2017環境評價師考試仿真題及答案11-11