官术网_书友最值得收藏!

2.2.5 ECU的軟件體系

電控柴油機是根據ECU的指令來完成主要工作過程的。因此,ECU是電控柴油機的“大腦和指揮中心”,柴油機的工作性能不僅需要柴油機自身的結構部件,還取決于控制柴油機運行的指令。這些指令根據柴油機的復雜的工作環境和工作狀態,按照柴油機的工作原理,適時適度地指令柴油機各部件的協調工作,以實現最佳的控制效果。為實現這個目標,ECU中的軟件必須具備完整的指令體系和數據體系兩個要素,統稱為ECU的軟件體系。

ECU的軟件體系包括了基礎軟件、控制軟件、診斷軟件、調試與標定軟件。其中基礎軟件、控制軟件和診斷軟件是寫入ECU中真正在柴油機運行過程中對設備進行控制和檢查的指令集。調試與標定軟件為PC端軟件,用于ECU研發階段使用PC與對ECU進行調試和標定,一旦控制數據標定完成并將這些數據寫入ECU之后,ECU就可以獨立工作了。

(1)ECU的基礎軟件

基礎軟件與硬件系統密切相關,相對于控制軟件而言,基礎軟件只是資源的提供者。屬于基礎軟件的指令集可以分成下列功能模塊。

① 系統初始化及時鐘設置模塊。用于完成系統的初始化和時鐘設置。這部分指令根據不同的單片機有不同的形式,且與單片機的性能密切相關。其設計制作必須由對所用單片機十分了解的技術人員來完成。

② 整形輸入處理模塊。此模塊是針對輸入線的處理函數。輸入信號可以是有一定變形的電脈沖信號,經過輸入整形處理后,送入單片機的是較為整齊的脈沖信號。這可用于磁電傳感器輸入的曲軸和凸輪軸的(形狀畸變的)脈沖信號等。

③ 預處理輸入模塊。此類模塊的功能是輸入開關量或脈沖量電信號。一般用于輸入較為整齊的脈沖信號或開關量;具有這種功能的輸入通道能夠從自身獲得信號(如相鄰脈沖的間隔時間、脈寬時間等)的時序信息。

④ 模擬信號采樣輸入模塊。此模塊可輸入模擬量并實現模數轉換,具有一定的轉換精度。例如:精度為10位的MC9S12DJ256模塊,其對模擬信號的幅值要求是0~5V。

⑤ SCI串行通信。SCI串行通信一般用于程序調試和運行監控。可將SCI串行通信端口與PC相連,利用專用上位機程序,配合下位機程序的運行,可以將下位機的特征變量值按要求送到上位機顯示,從而對程序運行的正確性做出判斷;也可通過SCI串行通信對下位機的變量值進行設置,以對下位機程序的運行狀態做出調節。由于這種通信方式的速度較低而被CAN通信取代。

⑥ CAN總線通信。CAN是車用電子產品中應用最為廣泛的一種通信接口,它可在設備間實現有效的通信,不僅如此,它還可以被利用來實現正常工作時與外界的通信,如與其他車輛的ECU進行信息交換。

⑦ 其他模塊或開關輸出。除了上述輸入模塊外,電控柴油機還有下列輸出或控制模塊。

a.低位開關輸出。這相當于普通的無觸點開關。

b.PWM功能輸出。這可用作對比例電磁鐵和直流電動機的控制。

c.高位開關輸出。高位開關采用的是將處在低電位的負載的一端拉到高電位而使負載獲得供電的方法。常用于高速電磁閥的啟動驅動。

d.步進電動機控制。此功能可以直接實現對步進電動機的控制。步進電動機主要用于某些精確的定位控制。

e.電壓管理模塊。用于實現電源的管理。

(2)ECU的診斷軟件

診斷軟件可以分為兩個方面來考慮:對于硬件的直接診斷功能,此功能更偏重于基礎軟件,主要由原廠(或ECU服務商)直接提供。而對于柴油機的運行狀況的診斷,包括OBD標準的功能要求,則更多的似乎是具有控制軟件的功能。

診斷軟件由多個診斷模塊組成,設計制作時將這些制度模塊編成任務模塊,可以靈活地嵌入到基礎軟件中實現其相關功能。診斷軟件通過多次檢測確定持續故障和間歇故障,診斷結果可靠性高。此外,為了便于用戶使用,在軟件編寫時,添加了各診斷模塊的使用標志和故障標志屏蔽功能,并提供了若干的開放參數,用戶可以通過使用標志選擇相關的故障診斷模塊,也可以通過故障標志屏蔽控制故障燈的點亮條件。ECU上電后,所有可診斷的線路,可以靜態全檢一遍,然后對可動態診斷的線路做定時巡檢,做到適時監測。

上述這些診斷主要反映了診斷軟件的基礎層次,基礎層次的故障診斷一般只能發現一些較為極端的硬件故障(如短路和開路故障等),但對因部件功能退化積累而產生的故障不能做出明確的判斷。這需要有更高層次的判斷策略來解決此類問題。

診斷軟件在應用層次上的工作方式通常與某些分析策略相關。例如:如果柴油機在工作一段時間后冷卻液溫度信號沒有出現預期的變化,則認定為冷卻液溫度傳感器出現了功能故障;如果某缸的做功沖程沒有引發該階段角加速度的增加,則可認定該缸出現了缺火(或失火)故障。因此,在應用層次上診斷軟件與柴油機的工作原理及機型密切相關,這也就是某型柴油機故障診斷儀通常只適用于某類或某幾類柴油機的原因所在。

(3)ECU的控制軟件

ECU的控制軟件是指控制柴油機運行的那部分計算機指令。ECU的控制軟件是柴油機設計者(也包括使用者)需要重點了解并掌握的內容。專業的柴油機(軟件)設計者可以根據某個ECU技術平臺,通過完成控制軟件設計制作來實現面向自身產品的控制代碼,使柴油機控制過程完全透明化,以達到對柴油機性能的完全掌握。

按照對ECU軟件體系的區分,可以認為這部分軟件既不涉及單片機的系統控制,也不涉及對硬件的直接操作。但要設計和發展這部分軟件功能,必須對柴油機原理有深入的了解。因此,掌握柴油機控制軟件技術已經成為掌握柴油機技術的重要組成部分。

由于ECU控制軟件編程的專業化程度很高,所以一般而言,柴油機使用者和操作者只要了解其使用方法和能夠實際使用就可以了。

(4)ECU的調試與標定軟件系統

由于ECU屬于嵌入式計算機系統,沒有常備的顯示器。在ECU工作時,也不需要這類部件。但是在ECU為柴油機配套時,相關(研發)人員必須通過監測ECU內部變量的變化情況,掌握設備的工作狀態;并通過對ECU內控制變量的當前值進行動態調整,以滿足對工況改變做出控制。這就需要通過專用的軟件來實現,即ECU的調試與標定軟件,這個是運行在(個人)電腦上的軟件,也就是所謂的上位機,而ECU就稱為下位機。調試與標定軟件通過上位機與ECU之間的通信連線實現與ECU的信息交換,并提供調試與標定所需要的相關軟件功能。這些功能主要有:

① ECU的數據讀出與顯示。將ECU的內部參數值(也即程序的變量值)讀入到上位機,顯示在上位機的屏幕界面上;這種讀寫操作通過通信線來實現,一般使用CAN總線的SAEJ1939協議,最快可以達到1Mbit/s的速率。受通信速度的限制,上位機屏幕所顯示的ECU參數值每隔一定時間就會更新一次。

② 對ECU數據進行動態改寫。這個改寫是在ECU控制柴油機運行時實施的,可以直接對柴油機運行狀態產生影響。注意:通過對ECU運行數據的當前值進行改寫來影響柴油機的運行狀態是通過上位機與下位機的軟件配合來實現的。這是因為ECU運行時的控制參數,首先可能受到ECU內部程序的設定和修改;因此,哪些參數可以通過上位機的操作來修改,以作為控制變量,是ECU軟件設計制作時就已經設置好了的,不能任意修改。

一般而言,柴油機運行狀態的控制參數,可以分為兩類:一類是簡單變量,在ECU程序運行時,這類變量都是內存變量,可以動態修改;另一類控制參數是數組,這些數組通常叫脈譜(MAP),其初始值隨ECU程序一同寫入閃存。這些數組可以分別對同時控制過程產生重要影響,所以需要在配套試驗中精確地確定其最佳值,這個過程即稱為標定。為對脈譜進行標定,需要將被標定的脈譜從閃存中讀出并隨機讀寫到內存區(RAM)中,然后即可通過上位機的人機交互界面對脈譜進行修改。

③ 對脈譜做永久改寫。此功能實質上是將存儲在RAM中完成標定的脈譜寫回其在Flash閃存中原來的數據區域內,形成數據值的永久改變。這一功能可以將對脈譜的修改記錄在ECU中,以便在斷電后仍能保持。也可以將脈譜的值以文件形式保存在上位機的磁盤中,然后以文件復制粘貼的方式加入到ECU的源程序中,然后通過源程序寫入的方式永久修改這些脈譜。

④ 其他功能。除了上述功能外,ECU的調試與標定軟件通常還能將下位機的診斷程序生成的故障碼讀取到上位機進行顯示,能夠直接觀察到相關電氣部件的故障情況,這對于原始系統的硬件狀態檢查有很大的幫助。

主站蜘蛛池模板: 永济市| 新疆| 嘉祥县| 吉林市| 博爱县| 康保县| 台山市| 鄂托克旗| 龙门县| 昔阳县| 三门县| 滕州市| 大冶市| 威宁| 电白县| 融水| 彭水| 岢岚县| 江永县| 呼图壁县| 黑龙江省| 伊吾县| 徐闻县| 云林县| 祁东县| 鄂托克前旗| 徐汇区| 屏南县| 宁强县| 镇原县| 老河口市| 晋江市| 敦化市| 汶川县| 突泉县| 称多县| 长沙县| 施秉县| 开鲁县| 曲阳县| 阿合奇县|