- 發(fā)動機ECU測試系統(tǒng)的開發(fā)
- 系統(tǒng)硬件設計
- 系統(tǒng)軟件設計
- 發(fā)動機在運行時采集各傳感器的信號
- 使用MSComm通信控件
電子控制單元ECU(Electronic Control Unit),又稱“行車電腦”、“車載電腦”等。從用途上講則是汽車專用微機控制器,也叫汽車專用單片機。它和普通的單片機一樣,由微處理器(CPU)、存儲器(ROM、RAM)、輸入,輸出接口(I/O)、模數(shù)轉(zhuǎn)換器(A/D)以及整形、驅(qū)動等大規(guī)模集成電路組成。
電子控制單元的功用是根據(jù)其內(nèi)存的程序和數(shù)據(jù)對空氣流量計及各種傳感器輸入的信息進行運算、處理、判斷,然后輸出指令,向噴油器提供一定寬度的電脈沖信號以控制噴油量。電控單元由微型計算機、輸入、輸出及控制電路等組成。
在電子控制單元中CPU是核心部分,它具有運算與控制的功能,發(fā)動機在運行時,它采集各傳感器的信號,進行運算,并將運算的結(jié)果轉(zhuǎn)變?yōu)榭刂菩盘?,控制被控對象的工作。它還實行對存儲器(ROM、RAM)、輸入/輸出接口(I/O)和其它外部電路的控制;存儲器ROM中存放的程序是經(jīng)過精確計算和大量實驗取的數(shù)據(jù)為基礎,這個固有程序在發(fā)動機工作時,不斷地與采集來的各傳感器的信號進行比較和計算。把比較和計算的結(jié)果控制發(fā)動機的點火、空燃比、怠速、廢氣再循環(huán)等多項參數(shù)的控制。
電子控制單元是汽車發(fā)動機的核心部件,其軟硬件的可靠性將直接影響發(fā)動機運行的穩(wěn)定性、排放性和車輛行駛的安全性,因此,ECU的性能檢測至關(guān)重要。ECU的檢測系統(tǒng)是將計算機仿真技術(shù)與汽車檢測技術(shù)相結(jié)合,實現(xiàn)發(fā)動機ECU工作環(huán)境的仿真模擬以及各輸出信號的采集與分析。
其信號模擬部分可用于汽車的故障檢測,在懷疑某個傳感器出現(xiàn)故障時,可用ECU模擬系統(tǒng)相關(guān)信號代替原傳感器信號,檢測故障是否消失,并判斷故障所在。此外,還可進行ECU工作狀況的檢查以及學習ECU在發(fā)動機不同工況下對噴油和點火的控制方式。
1 系統(tǒng)硬件設計
發(fā)動機ECU測試系統(tǒng)可以根據(jù)需要模擬不同轉(zhuǎn)速下的曲軸位置信號,冷卻液溫度信號、進氣溫度信號、空氣流量信號、節(jié)氣門位置信號、氧傳感器信號等,并將這些信號輸入真車發(fā)動機ECU,再采集ECU輸出給執(zhí)行器的信號并加以分析。如圖1所示。
電源管理電路需產(chǎn)生+5 V以及±12 V穩(wěn)定電壓,為降低成本電源部分采用線性工頻變壓器,輸出端分別經(jīng)LM7812、LM7805和LM7912分別將電壓穩(wěn)壓至+12V、+5V和-12V。
數(shù)控電位器采用的是X95840,它是InterSil公司出產(chǎn)的低噪聲、低功耗、兩線制8位數(shù)控電位器。DAC變換器采用的是AD5624,它是Anal-og Device公司12位效模轉(zhuǎn)換器,最高頻率可達5 MHz。運算放大器采用的是AD824,它是將DAC輸出的四路0~5 V電壓放大至-12~+12 V。
系統(tǒng)產(chǎn)生的信號需要經(jīng)過電平變換,轉(zhuǎn)換成RS-232電平,與計算機通信。這里采用MAX3232為核心電平變換電路。其原理圖如圖2所示。
2 系統(tǒng)軟件設計
本系統(tǒng)的編寫和調(diào)試采用的是Microsoft公司的VisualC++軟件。Visual C++因其擁有方便易用的AppWizard、ClassWizard和豐富的可視化資源編輯工具,成為人機對話界面設計中使用最廣泛的平臺之一。Visual C++擁有強大的集成開發(fā)環(huán)境,在此環(huán)境中用戶可以方便的進行項目管理、編寫C++源程序、編譯、改錯,更重要的是,Visual C++還提供了一套MFC(Microsoft Foundation Classes)的程序類庫。
[page]
其控制流程如圖3所示。
2.1 信號模擬
信號模擬是為發(fā)動機ECU產(chǎn)生各種必要的模擬信號,這些信號等效于汽車傳感器在不同工況下的輸出信號。系統(tǒng)提供兩種生成這些信號所需要數(shù)據(jù)的方法可供選擇。一種是由手動設置給出,一種是選擇關(guān)聯(lián)設置。關(guān)聯(lián)時,秒表開始計時,各信號參數(shù)根據(jù)汽車動力學在后臺計算。
2.2 信號采集和分析
系統(tǒng)采集發(fā)動機ECU的輸出信號,得到一組相關(guān)的測試數(shù)據(jù),根據(jù)采集的數(shù)據(jù)繪制發(fā)動機ECU噴油脈沖信號和點火控制信號。還可以根據(jù)發(fā)動機ECU的輸出信號計算出頻率、峰-峰值、脈沖寬度、占空比等物理參數(shù),給出發(fā)動機ECU的噴油時間、噴油量相對變化率、點火提前角等工作參數(shù)。
2.3 數(shù)據(jù)交換實現(xiàn)方法
計算機通過串行口向發(fā)動機ECU發(fā)送數(shù)據(jù),采集到ECU噴油和點火輸出信號,通過串行口將這些數(shù)據(jù)傳給計算機。計算機接收數(shù)據(jù)并繪制圖形。
計算機根據(jù)應采集數(shù)據(jù)個數(shù)收集數(shù)據(jù),編制成固定格式再發(fā)送。采集的數(shù)據(jù)存放在一個整型數(shù)組里,再轉(zhuǎn)換成VARIANT數(shù)據(jù)類型,計算機通過串口將這些數(shù)據(jù)發(fā)送到發(fā)動機ECU中。
數(shù)據(jù)格式:標識參數(shù)名+數(shù)據(jù)+標識參數(shù)名+數(shù)據(jù)……標識參數(shù)名+數(shù)據(jù)。
每兩位表示一個量,前一位指明參數(shù),后一位給出數(shù)值。
2.4 測試軟件的主工作界面
幾乎所有的Windows應用程序都要借助于對話框來和用戶交流,本測試系統(tǒng)也是如此。對話框是Windows應用程序中常見的元素之一,是用戶與應用程序進行交互的最簡單且最常用的方式之一。一個完整的對話框主要是由對話框資源和對話框類構(gòu)成,所以創(chuàng)建一個對話框就是創(chuàng)建對話框資源和對話框類的過程。創(chuàng)建對話框資源包括添加對話框模板、修改對話框?qū)傩?,并在對話框中添加各種控件;創(chuàng)建對話框類包括添加控件變量和添加控件消息處理函數(shù)。
界面設計要遵循簡單直觀的原則,這樣操作人員用起來才會得手,減少求助,提高工作效率。本程序的編寫和調(diào)試采用的是Microsoft公司的VisualC++軟件。
[page]
測試系統(tǒng)的主界面如圖4所示,各種控制參數(shù)都很直觀的顯示出來,用戶可以直接對一些主要控制參數(shù)做連續(xù)調(diào)整,操作方便。
2.5 串口通信參數(shù)設置
要實現(xiàn)計算機串行通信的功能,一種較為簡便的方法是使用MSComm(Microsoft Communication Control)通信控件,它提供了標準的事件處理函數(shù)過程,是微軟公司開發(fā)的專門用于串行通信的控件。它是高級語言編寫的串行通信程序和PC串口之間的橋粱。本系統(tǒng)采用得就是這種方法。設置控件的屬性。添加控件的響應代碼。就可以使串口按照要求進行工作。在這個界面,可以進行串口號和波特率的設置。通信參效設置界面如圖5所示。
3 結(jié)果顯示
發(fā)動機油路中汽油壓力是一定的。因此噴油器通電時,單位時間的噴油量是一定的。發(fā)動機一個工作循環(huán)噴油量,可通過噴油持續(xù)時間來控制。由于電噴發(fā)動機噴油嘴是通過電磁閥來控制關(guān)閉,而發(fā)動機轉(zhuǎn)速較高,噴油時間很短,噴油器響應快,因此ECU輸出的噴油信號是一個很短暫的脈沖信號,這個信號的時間寬度就是噴油脈寬。
點火控制信號實際上就是點火器中功率結(jié)晶管的通斷控制信號。它是ECU輸出到點火組件的點火命令信號,也是點火組件計算閉合角的基準信號。點火控制信號輸出后,在活塞位置達到存儲器所記憶的最佳點火時間時,點火控制信號消失,也就是發(fā)出了點火指令,如圖6所示。
4 結(jié)束語
通過對桑塔納2000型轎車發(fā)動機ECU實際測試表明,通過該系統(tǒng)可以方便的將各種信號傳遞到發(fā)動機ECU中,采集發(fā)動機ECU的輸出信號,還可以測試發(fā)動機ECU是否正常工作。其產(chǎn)生的各種傳感器信號可用于實際車輛檢測。此外還可以用于學習和演示不同環(huán)境不同工況下,ECU如何控制發(fā)動機工作。