黃萬眾,胡建博,靳玉
(1.華晨汽車工程研究院安全工程室,遼寧 沈陽 110141;2.華晨汽車工程研究院工程學會,遼寧 沈陽 110141)
隨著汽車電子技術的發(fā)展,電子控制單元正在逐漸增多,功能也越來越復雜,診斷服務也越來越細化,各汽車廠商(以下簡稱主機廠)在對其車型產品中使用的各電子控制單元進行診斷功能開發(fā)時,雖然都遵循ISO標準,但由于各電子控制單元開發(fā)性質與開發(fā)方式不同,因此參考使用的診斷服務也不盡相同,汽車安全氣囊控制單元(Airbag Control Unit,下文簡稱為ACU)是整個約束系統(tǒng)的中心,它能感應車輛在正面和側面碰撞過程中發(fā)生的加速度的變化,然后控制相應的起爆元器件。最大限度的降低車內駕駛員與乘員受傷害程度,以達到保護車內人員的目的。同時,ACU作為電氣元件,也需要滿足在整車環(huán)境下與其他控制單元的通信要求和診斷服務的要求。
2008年以前,國內多數主機廠采用的通信診斷標準是基于K線診斷的ISO14230標準,但隨著通訊診斷技術的逐年發(fā)展,K線在逐步淘汰,CAN(Controller Area Network,控制器局域網,下文簡稱CAN)網絡的流行,大多數主機廠又過渡到基于 ISO15765的診斷標準。隨著車載網絡形式逐漸豐富,又出現(xiàn)了MOST、FlexRay、無線網絡等多種網絡并存的情況,為了實現(xiàn)不同網絡下診斷服務的統(tǒng)一,ISO制定了ISO14229-1 Unified Diagnostics Services(統(tǒng)一診斷服務,下文簡稱UDS)標準,為未來車載網絡發(fā)展做準備和鋪墊[2],下表為UDS診斷服務。
表1 統(tǒng)一診斷服務UDS
由于ACU對于整車安全的特殊性,ACU并不適用所有UDS服務,本文將簡述ACU涉及的$22和$2E診斷服務開發(fā)工作。
UDS $22和$2E服務中的DID(Data Identifier,下文簡稱DID)并不完全適用于ACU,下文將說明ACU適用的DID及相關的內容和要求。
車輛識別碼(以下簡稱VIN碼),由主機廠定義,在車輛裝配過程(EOL,end of line)中寫入,在診斷開發(fā)階段,可以先寫入一個定義值,后續(xù)可通過更高安全等級進行刷寫,ACU需能同時滿足$22和$2E服務,即主機廠可以讀取和寫入完整的VIN碼。
零件號和版本識別碼,由主機廠定義,由 ACU供應商寫入,ACU需滿足$22服務,即主機廠可以讀取ACU的零件號和版本識別碼。
系統(tǒng)供應商識別碼,由主機廠定義,由 ACU供應商寫入,ACU需滿足$22服務,即主機廠可以讀取ACU的系統(tǒng)供應商識別碼。
ECU生產日期,由ACU供應商寫入,ACU需滿足$22服務,即主機廠可以讀取ACU的生產日期。
ECU硬件號,由主機廠定義,由ACU供應商寫入,不支持重復刷寫,ACU需滿足$22服務,即主機廠可以讀取ACU的硬件號,如果ACU在開發(fā)過程中發(fā)生硬件更改變化,需要更新硬件號。
ECU軟件號,由主機廠定義,由ACU供應商寫入, ACU需滿足$22服務,即主機廠可以讀取 ACU的軟件號,如果ACU在開發(fā)過程中發(fā)生軟件更改變化,需要更新軟件號。
CAN網絡上.dbc文件版本,取決于ACU在整車電氣系統(tǒng)架構中所處的CAN網絡位置,由主機廠定義,由ACU供應商寫入, ACU需滿足$22服務,即主機廠可以讀取CAN網絡上的.dbc文件版本號。
系統(tǒng)供應商ECU硬件號,由ACU供應商定義并寫入,ACU需滿足$22服務,即主機廠可以讀取ACU的硬件號,如果 ACU在開發(fā)過程中發(fā)生硬件更改變化,需要更新系統(tǒng)供應商ECU硬件號。
系統(tǒng)供應商ECU軟件號,由ACU供應商定義并寫入,ACU需滿足$22服務,即主機廠可以讀取ACU的軟件號,如果 ACU在開發(fā)過程中發(fā)生軟件更改變化,需要更新系統(tǒng)供應商ECU軟件號。
ECU名稱,由主機廠定義,由ACU供應商寫入, ACU需滿足$22服務,即主機廠可以讀取ACU的定義名稱。
Boot Loader軟件,作為ACU內部軟件 構成之一,在嵌入式操作系統(tǒng)中,Boot Loader是在操作系統(tǒng)內核運行之前運行??梢猿跏蓟布O備、建立內存空間映射圖,從而將系統(tǒng)的軟硬件環(huán)境帶到一個合適狀態(tài),以便為最終調用操作系統(tǒng)內核準備好正確的環(huán)境。
標定軟件,作為 ACU內部軟件構成之一,用于實現(xiàn)不同車型安全氣囊系統(tǒng)的點火參數要求,通過將整車基礎碰撞試驗采集的數據導入 ACU算法進行計算比對,盡量與主機廠要求的點火時刻一致或接近,由于在主機廠平臺化策略下可能存在多種不同車型使用同一種ACU,或者同款車型有不同標定策略的情況,因此同一種 ACU產品可能同時存在若干種標定軟件。
應用軟件,通常是 ACU供應商為滿足主機廠不同個性化需求而可以修改定制的軟件,包括$22和$2E中包括的各種零件號,也包括各種可以根據主機廠需求而定制的特性,如氣囊警示燈亮滅時間和安全帶未系提醒方式等。
底層軟件,是ACU廠家在進行新平臺開發(fā)時對整個平臺的基本架構,包括操作系統(tǒng)、通信軟件和基本的I/O服務。
由于不同主機廠對 ACU軟件管理程度不同,目前大多數主機廠只管理到ACU軟件號,對Boot Loader版本、標定軟件、應用軟件和底層軟件則不進行管控,由 ACU供應商自行管控,因此相關診斷服務也不被要求。
隨著汽車電子和軟件技術應用的逐漸普及,診斷技術應用已經遍布到產品開發(fā)、工程設計、測試驗證、生產制造、售后服務等車輛的整個生命周期[2]。除了上文提到的讀寫數據以外,還包括讀取和清除故障信息和安全訪問等基本功能,隨著主機廠的研發(fā)能力逐漸加強,軟件開放權限逐漸增加,ACU還可以實現(xiàn)刷寫功能、下線配置和車輛事故分析等功能。
診斷功能應用的逐漸深入細化,對整車的開發(fā)過程和售后工作要求越來越高,促進了汽車整車品質的逐步提升。
[1] ISO14229-1 Road vehicles-Diagnostic on CAN-Part2: Implementa tion of Diagnostic Services(2005)[S].
[2] 黃麗芳,UDS診斷服務在車載ECU中的應用分析.