汽車電子電氣系統的日益復雜使得功能安全成為保障車輛可靠性和駕乘安全的關鍵。
本文將圍繞ISO 26262標準的核心內容展開,幫助大家理解如何通過系統化的方法控制風險,進行測試,確保產品安全。
01 什么是功能安全?
首先,我們需要明確功能安全的定義。根據ISO 26262,功能安全是指:“不存在因電子電氣系統(E/E)的功能異常表現而導致的不合理風險。”
ISO 26262對功能安全的定義為:
Absence of unreasonable risk due to hazards caused by malfunctioning behavior of E/E systems.
國標GB/T 34590對這一定義的翻譯為:(《GB/T 34590道路車輛 功能安全》 )
不存在由電子電氣系統的功能異常表現引起的危害而導致不合理的風險。
這里有兩個關鍵點:
-
關注對象:僅針對E/E系統(如ECU、傳感器等)的故障行為,因此機械/液壓/化學等設計都不在ISO 26262的研究范圍。換句話說,功能安全只是產品安全的一部分。
-
目標:避免因E/E系統故障導致的人身傷害,而非財產損失、車輛防盜、黑客入侵等問題。
危害涵蓋多種形式,包括人身傷害或財產損失等。但在功能安全領域,危害特指由電子電氣系統(E/E)故障行為引發的健康風險,例如對駕駛員、行人或其他車輛乘員的傷害。功能安全的核心目標是防止人員傷亡,而非避免車輛損壞或防盜問題。換句話說,功能安全開發目的是避免傷人,而不是避免損傷你的豪車,也不是避免你的豪車被偷。
此外,我們也要了解到,絕對安全的系統不存在,功能安全并非追求零風險,而是通過系統化設計將風險降至可接受水平。例如,剎車系統故障可能導致碰撞,但引入冗余設計和故障檢測機制可將此類事件發生概率控制在極低范圍內。風險管理的重點在于平衡技術可行性與安全需求。如下圖所示。
從上圖來看,判定風險是否可被接受,需要從兩個維度去衡量:危害的嚴重性和危害發生的頻率。
舉例來說,飛機失事幾乎無人生還,但是正因為飛機失事的概率非常低,所以飛機依然是最重要和最受歡迎的交通工具之一。
如果汽車上的空調開關出現故障的頻率比較高,但故障只會影響駕駛員或乘客舒適性體驗,不會造成人員受傷,你很可能等到下個月去4S店時才想起來維修它;但是,如果你的車突然在高速上自動加速,估計你馬上停在應急車道棄車而逃,喊著要退車了,因為這種原本可以通過設計規避的故障是不可接受的。這也正是功能安全開發期望避免的故障。
功能安全的核心在于通過設計降低系統失效帶來的危害。當技術系統出現故障時,能否有效控制風險、避免人身傷害是衡量安全性的關鍵指標。
簡而言之,功能安全聚焦系統故障后怎么做。
02 危害分析與風險評估 HARA(Hazard analysis and risk assessment)
我們從功能安全的定義了解到,功能安全是為了避免風險,那么首先要做的就是“識別風險”,專業術語為“危害分析與風險評估”,這部分在ISO 26262的第3部分里有詳細的闡述。
不同故障帶來的風險等級差異決定了處理優先級。非安全相關的舒適性功能故障通常被歸類為低風險,而涉及制動、轉向或動力控制的故障會被識別為高風險事件。
總的來說,危害分析、風險識別和ASIL等級評定都是為了定義研究對象(item)的安全目標(Safety Goal),而所有活動都是基于相關項定義的功能和接口來展開,識別并評估相關項的可能失效導致的危害和風險。針對這一活動,有3點需要強調。
在對這3點進行展開之前,我們需要先了解什么是相關項,這在功能安全里面是一個非常重要的概念。
在對某個產品展開功能安全分析與開發之前,需要先明確產品的功能以及產品的邊界。這一活動被稱為“相關項定義”。
以上就是相關項定義,英語里叫做 Item Definition。明確了相關項的定義后,我們繼續來談一談有哪三點需要特別注意:
1. 應在整車層面定義由相關項的功能異常表現導致的危害。—— GB T-34590.3-2022 6.4.2.3
既然是以整車層面觀察到的行為來定義危害,那么,從整車動力學的角度,汽車的運動軌跡可以被下圖中的運動坐標系完全包含。而在每一個坐標系上,因為控制不當而可能產生的所有的整車表現也能被界定。如這個表所示,這張表列出的是部分汽車各個運動坐標系上可能存在的風險。
比如在縱向(longitudinal motion )上,有突然加速、突然失速等。
在橫向(lateral motion )上,有非預期橫向運動,這種運動可能是由于車輛控制系統失效、軟件錯誤、傳感器故障或其他與車輛動態控制系統相關的問題引起的。非預期的側向運動可能會導致車輛穩定性降低,增加交通事故的風險。所以,現在很多汽車都有電子穩定系統(ESP)、防抱死制動系統(ABS)、牽引力控制系統(TCS)等技術來增強車輛的可控性。
在垂直方向上,有非預期的垂直運動,比如意外顛簸、跳躍等。非預期的垂直運動可能是由多種因素引起的,比如:懸掛系統的故障或異常工作。車身高度調節系統(如果有的話)的故障。電子控制系統的錯誤,例如在某些情況下,車輛的高度調節功能可能因為傳感器錯誤而被激活。
因此,在進行危害分析和風險評估時,不需要明確研究對象的具體設計,只要明確研究對象的功能和接口會影響整車哪個坐標系上的控制,就可以將研究對象的功能失效可能導致的危害與該坐標系上對應的整車危害鏈接起來。
當然,所有運動坐標系上可能的危害并不能包括整車能產生的所有的危害。比如,人機交互界面的設計越來越受重視,當系統失效后,如果HMI系統能夠及時把故障報告給駕駛員請求駕駛員接管甚至指導駕駛員接下來如何操作,可以避免危害。所以對于HMI系統也有相應的功能安全需求,相應的,也需要對其進行危害分析與風險識別。
2. 在危害分析和風險評估過程中,應對不含內部安全機制的相關項進行評估(即,在危害分析和
風險評估過程中不應考慮將要實施或已經在先前相關項中實施的安全機制)。GB T-34590.3-2022 6.4.1.2
我們以線控制動產品eBooster為例,eBooster的主要功能之一是在駕駛員制動時提供制動助力。所以該功能有車輛縱向控制的接口,那么,如果eBooster功能失效,可能在駕駛員沒踩制動時產生非預期的過大制動力。到這里,我們已經地識別出了eBooster相關的一個危害。在這個過程中,無需去細究危害是eBooster的軟件bug還是傳感器出了問題導致的,更不能考慮因為eBooster內部已經有故障監控模塊可以及時避免這個危害的產生。
換句話說,是先識別出了危害,再考慮對這個危害進行相應的安全措施設計(如監控模塊設計),這是后面功能安全概念(Functional Safety Concept)設計需要考慮的內容。
雖然在危害分析與風險識別中不能考慮研究對象的內部安全措施,但是,外部措施(external measures)是可以被考慮的。怎么理解呢?比如裝備eBooster的車輛同時也裝備了ESC(Electronic Stability System, 車身穩定控制系統),那么對于eBooster在駕駛員沒踩制動時產生非預期的過大制動力的危害,由于有ESC的存在,所以對eBooster進行危害分析時,無需考慮制動力過大而導致車輛失穩這種危害。
注:eBooster(一種電子液壓助力制動系統,通常與ESC(車身穩定控制系統)配合使用,兩者互為冗余)。
3. 通常,每一個危害有多種與相關項的實現相關的潛在原因,但在危害分析和風險評估中對于功能異常表現的分析時,不需要考慮這些原因。—— GB T-34590.3-2022 6.4.2.3 注1
在進行危害分析和風險評估過程中,確實會涉及到對潛在危害及其原因的識別,但重點在于危害本身及其可能帶來的后果,而不是具體的潛在原因。
其次,在初步分析階段,過多地關注潛在的具體原因可能會使分析過程變得過于復雜,從而分散了對核心危害的關注。
此外,定義危害時,通常采用一種更為通用的方法,這樣可以適用于多種情況。這意味著即使具體的原因不同,只要危害的表現形式相同,就可以采取相似的緩解措施。同時,通過專注于危害而非具體原因,可以在未來發現新的潛在原因時,仍然能夠有效地應用已有的緩解策略。
總之,在危害分析和風險評估的過程中,重點在于識別和評估危害本身及其可能帶來的后果,而具體的潛在原因則會在后續更詳細的分析和設計階段予以考慮。這種方法有助于保持分析的清晰度和效率,同時確保安全措施的有效性。
那么,基于HARA的風險評估和處理是一個怎樣的過程呢?我們看下面一個流程圖。
如圖所示,我們首先進行危害分析和風險評估(HARA),識別系統中的潛在危害并評估其風險等級。根據風險評估的結果,我們確定出一個汽車安全完整性等級(ASIL, Automotive Safety Integrity Level)。如果ASIL大于等于A級,就需要采取行動制定策略以增加安全措施,將風險降低到可接受的范圍。
一方面,我們需要采取措施避免系統失效,從而降低隨機硬件失效的概率。另一方面,我們需要實施安全管理和流程保證措施,確保系統在設計和操作過程中的安全性。最終確保不存在不合理的風險,如果有,則需要重新評估或采取額外措施。
上面提到了ASIL等級,那么ASIL等級是怎么評估出來的呢?我們繼續往下看。
接下來,我們對危害事件進行簡單的分類。
是不是只要危害發生就一定會導致人員傷亡的風險呢?
同樣以前面提到的線控制動產品eBooster為例,eBooster有導致車輛非預期制動的危害,但是當危害發生在高速公路上時,很可能造成人員傷亡;而當危害發生在自家的車庫時,幾乎沒有人員傷亡的風險,頂多就是駕駛員被嚇一跳然后開始罵娘。
也就是說,危害識別出來后,我們還要結合危害時刻車輛運行的場景,來對危害所能造成的風險進行評估。而車輛的運行場景,可以理解為是下圖中各個因素的排列組合,比如位置,高速還是國道;路況,斜坡還是寬敞大道;駕駛技巧,駕駛過程中進行的各種技巧和動作,如并線、掉頭、倒車等。
ISO 26262定義了危害事件分類的方法,綜合場景與危害,將篩選指標分為三個維度:
(1)S(severity 嚴重度):危害發生對駕駛員或乘客或路人或周邊車輛中人員會造成的傷害等級。
(2)E(Exposure 曝光度):運行場景在日常駕駛過程中發生的概率。
(3)C(controllability 可控度):駕駛員或其他涉險人員控制危害以避免傷害的概率。
我們基于上述幾個維度的評分,來確定ASIL等級即汽車安全完整性等級( automotive safety integrity level)。
ASIL一共分為四個等級,D代表最高嚴格等級,即風險最高,A 代表最低嚴格等級,即風險最低。實際上還有一個等級QM,表示只要按照企業流程開發就可以滿足ISO 26262要求,ISO 26262開發無需考慮。
ASIL等級評定方法和指標,概括起來很簡單,但是實際上操作起來卻有很多困難。如上表所示,以S值為例,表格中提到的“非常低的速度”、“中速”等詞太過模糊,對實際分析作用不大。
換個角度想,ISO 26262那么多專家坐在一起也只能定性到這樣一個模糊的程度,說明實際上這些值的評定會受很多因素的影響,比如具體的車輛設計參數、不同國家的駕駛情況不同等等,所以無法得出一個統一的標準。或者說,即使得出了統一的標準,也會因為要同時涵蓋太多的因素而導致評定結果保守嚴苛,不利于功能安全開發。
對C值來說,車企則會定義一系列的Controllability study測試。針對識別出來的可能存在風險的場景,設計故障注入測試,并(盡量)隨機選擇駕駛員進行實際道路實驗。最終綜合駕駛員主觀評價和整車動態表現的客觀參數來評定出安全邊界,為后續功能設計提供邊界參考,保證功能失效后仍在大多數駕駛員的可控范圍內。值得一提的是,這種Controllability study成本非常高,且從測試用例設計到測試結果評價都處處體現了企業的know-how,屬于企業的核心機密。
對S值和C值的評定,不同企業可以根據已有的事故數據達成基本的共識,如果出現分歧,也基本上可以通過仿真和實車測試的結果來驗證以消除。但是對場景暴露度E值的評估則不同,因為定性分析的成分很大,且不同國家的駕駛場景有區別,面對分歧雙方又很難提供有說服力的數據,所以,相比S值和C值,E值的評定往往爭議性比較大,各個車企之間分歧比較多。
總結來說,危害分析和風險評估的流程大致可以概括如下:
若無其他說明,對于ASILA、B、C和D等級,應滿足每一章條的要求或建議。但是實際項目中,ASIL D的安全級別是很難達到的,那怎么辦呢?這就涉及到了ASIL 等級分解這個知識點,以下是ASIL等級的定義:
為有助于實現同一安全目標,將冗余的安全要求分配給具有充分獨立性的要素,以降低分配給相關要素的冗余的安全要求的ASIL等級。
有一點需要注意的是,ASIL等級分解只是從流程上降低要求,在硬件失效率上的要求沒有降低。