很快,我們就能夠坐上無人車了。但我們怎麼保證無人車能夠安全駕駛?這背後需要考量什麼?我們應該關注什麼?
本期行家來信來自禾多科技研發總監李文俊,基於對ISO26262和ISO21448兩個功能安全標準和冗餘機制的梳理與討論。
他回答了功能安全在自動駕駛技術發展中扮演的角色,希望能夠為你帶來啓發。
以下為文章全
近年來自動駕駛相關的技術迅猛發展,自動駕駛成為交通運輸發展的下一個重要階段。
許多公司研發的自動駕駛方案可以在簡單的環境條件下實現車輛的自動駕駛功能,但如果將這些自動駕駛車輛投放應用到真實的公共場景中,還有很長的路要走。
最重要的制約因素之一,就是安全性的問題。
自動駕駛的發展初衷就是為了提高車輛行駛的安全性,減少事故的發生。
有研究報告指出,人們對自動駕駛的安全性期望非常高。有數據顯示:相較於一個正常的人類司機,人們對自動駕駛的安全性要求至少高4至5倍。
為了實現高安全性,我們在自動駕駛技術開發過程中,明確提出要滿足功能安全的要求,其中之一就是需要滿足ISO26262功能安全標準。
ISO26262
ISO26262,概括來説就是對整車電子電氣系統的功能安全規範,為了確保即使發生失效情況也能保證整車的安全性。
ISO26262的規範指導文檔長達幾百頁、數十個章節,對車輛電子電氣系統開發過程中的概念設計、系統設計、軟硬件設計、測試驗證、確認評估等環節均作出了規定和指導。
同時也引入了諸如HAZOP、HARA、FMEA、FTA、FMEDA等一系列安全分析方法。最最重要的是,ISO26262會引入非常多的額外工作內容和條件限制,包括上面講到的對應各種安全分析方法的工作以及一些文檔工作。
舉個例子:系統的故障樹分析-FTA(Fault Tree Analyze)是功能安全裏面幾乎必實施的一個工作內容。具體來講就是對系統中的某個安全目標(Safety Goal)進行自上而下的分析,層層拆分,直到分析到某個簡單的功能是否失效。
比如為保障電源的供給,要一直分析到一個電阻是否失效。面對自動駕駛這樣一個龐大的系統,如果要做整套的FTA,那麼工作量無疑是巨大的。
不過從目前看來,自動駕駛的功能安全體系如何建立還沒有公開的統一標準,業界也有越來越多聲音認為:僅ISO26262這一標準,不能滿足自動駕駛功能安全的需求。
ISO21448(SOTIF)
ISO26262覆蓋的功能安全範圍,是在車輛電子電氣系統出現失效的情況下。在ISO26262的基礎上,人們提出了另一套標準——ISO21448(SOTIF),也被稱為“預期功能安全”。
SOTIF (Safety of the Intended Functionality) 考慮的是系統預期的功能安全性。
ISO26262只包括整車電子電氣(E/E)系統失效情況下的功能安全,但是自動駕駛的功能安全往往不僅僅和電子電氣系統有關,還關係到非常多的其他要素,比如相關傳感器自身性能的限制,車輛行駛環境的變化等等。
SOTIF考慮的情況便是在系統沒有出現任何失效的情況下,由於系統功能不足所導致的危害,比如傳感器無法正確識別道路場景。
ISO21448(SOTIF)的前身其實是ISO26262中的第14個章節,但隨着ADAS的普及與自動駕駛技術的發展,人們發現在沒有系統失效的情況下保證功能安全是一件非常複雜的事情,便將其單獨作為一個新的標準發佈。
例如,當一輛自動駕駛車輛行駛在結冰的路面上。
ISO26262負責當車輛剎車系統出現失效的情況時,車輛能保證在冰面上不打滑地安全停車。
而SOTIF所要解決的問題是車輛在沒有任何問題的前提下在冰面上行駛時,是否應該保持和正常路面行駛一樣的速度,因為在冰面上高速行駛有可能達到了車輛的安全邊界。
SOTIF的作用之一,是減少未知的安全性風險。這個定義非常寬泛,而且難以證明其是否考慮到了所有存在潛在風險的安全邊界。
因需要考慮的情況太過複雜,目前SOTIF還沒有一個正式的版本誕生,只有草案。
冗餘機制
另一個功能安全經常涉及的概念是冗餘機制。
系統的冗餘大家經常談論,最簡單的設計是將系統中所有的模塊都做冗餘備份,一旦一個系統出現失效,另一個系統便會接管車輛的操作。
但是這往往要在成本、系統的複雜度、魯棒性和冗餘上做出相對的平衡,因此不能做到完全的系統冗餘備份。
在L2級別以下的輔助駕駛功能中往往不會要求系統的冗餘,或者換一個説法,在這一類的輔助駕駛中,人類駕駛員就是系統最好的冗餘備份。
因為在輔助駕駛功能工作時,駕駛員的注意力依然要時刻保持在車輛上。一旦上升到了L3級別的自動駕駛系統,冗餘的設計就顯得非常有必要了。
因為在L3級別的自動駕駛系統中,已經允許駕駛員的手長時間脱離方向盤,也不用時刻觀察注意道路狀況。所以從系統出現失效,到駕駛員反應過來去接管控制,是存在一定時間間隔的。
在這段時間間隔內,系統要確保車輛的安全性,需要做到某一個單元失效的情況下,啓動冗餘備份以保證車輛的安全。
整個自動駕駛系統的冗餘機制又可以細分為以下幾類:
電源的冗餘:顧名思義,是指系統中關鍵模塊的供電需要有冗餘的設計,以防單點的電源失效造成事故。執行機構的冗餘:指的是車輛執行機構的冗餘,如剎車、轉向等。任何一個機構都可以獨立的完成車輛的制動動作。像我們熟知的Bosch,在制動機構方面的冗餘設計就是由iBooster和ESC/ESP構成的。傳感器的冗餘:自動駕駛不能僅依靠某一類傳感器來實現功能,既需要多種傳感器的特性冗餘,比如毫米波雷達的測速性和激光雷達的準確性,也需要檢測範圍內多種傳感器的檢測冗餘,比如車輛行駛前方往往會有激光雷達、視覺和毫米波雷達的冗餘檢測。所以在自動駕駛系統中,這種冗餘設計常常被提及和採用。計算單元的冗餘 : 如果説把執行機構形容為自動駕駛的四肢,傳感器形容為自動駕駛的眼睛,那麼計算單元就相當於自動駕駛的大腦。計算單元的冗餘也往往是功能安全裏所要求的。在Tesla最新的Autopilot域控制器上就採用了兩塊Tesla FSD,兩顆處理器互相獨立,即便一個出現問題,另一個也能照常執行。為了滿足功能安全的要求,除了上述提到的,要做的工作還很多。這些工作看似和自動駕駛的功能開發沒有什麼特別強的相關性,從某種角度來説,甚至會限制自動駕駛的功能開發。
如果把自動駕駛比喻成本領強大的孫悟空,功能安全可謂是孫悟空頭上的緊箍咒,時時刻刻限制着孫悟空的發揮。
但從另一方面講,孫悟空的任務是保護唐僧安全取得真經,就如自動駕駛的首要任務也是要保障乘客的安全。
受控於緊箍咒的限制,孫悟空不會做出出格的行為,而自動駕駛在功能安全的限制下,也會變得越來越安全,能更好地為乘客服務。