一文讀懂汽車自動駕駛技術原理

智能化是未來汽車製造業的大方向,在燃油車上聊油耗、聊動力、聊引擎轟鳴聲的時代早已成為過去,現在的人們,更願意關注的是觸控大屏、車聯網、智能AI助手以及——自動駕駛。

電動車正處於快速發展的階段,各類新技術不斷在電動車上得以實現,自動駕駛也不例外。由於科普知識的欠缺,大部分人對自動駕駛都有所誤解,不僅包括它的功能實質,還包括它的技術水平,由此也導致了許多由自動駕駛而引發的爭論甚至事故。

為正視聽,今天我們就請來百度自動駕駛的產品經理王石峰老師,帶大家看看自動駕駛到底是怎麼回事。

自動駕駛汽車的事故分析

首先分析一個事故案例。今年3月,北美有一個自動駕駛車肇事撞人致死的一個事故,6月22日,美國公路交通安全委員會發布了這個事故報告。報告中顯示,在碰撞發生前6秒傳感器已經探測到了,碰撞發生前1.5秒,原車的AEB功能已經啟動,但其執行機構並沒有自動採取相應制動措施,導致整個系統沒有閉環。


一文讀懂汽車自動駕駛技術原理


另外,該事故在交互設計上也有缺陷。當事故發生前,傳感器探測到這個人時,並沒有提供警報,司機正在低頭看手機視頻,當他抬頭看到這個行人的時候再處理事故已經來不及了。從事故視碰撞前四秒鐘的截圖可以看出,路面照明不足導致司機很難看到有人過馬路。

目前,自動駕駛的車輛以法律法規來說都是改裝車,事故車輛是SUV的車型自身重心比較高,所有的傳感器都安裝在車頂導致重心進一步上移。當產生碰撞的時候更有可能會側翻。


自動駕駛汽車的研發流程

百度提出了“安全是自動駕駛的第一天條”。如何避免類似事故和問題,要從整個研發流程當中去考慮。


一文讀懂汽車自動駕駛技術原理


首先當研發一輛自動駕駛車輛時,有一個基於仿真模擬器的軟件在環我們可以將這看成一個賽車的遊戲。在仿真環節中仿真出道路的路面,以及交通的參照物和各種車輛、各種行人,還有一些天氣信息,比如雨霧或者路面照明信息。代碼跑通了以後,再基於必要的硬件在環平臺,在傳感器、計算單元等硬件系統上檢測有沒有運行當中的BUG和兼容性問題。之後基於車輛在環,將相關的軟硬件系統集成到車輛平臺上在封閉場地中完成相關測試檢測代碼是否出現了問題。

最後基於司機在環,以百度為例,我們在北京智能網聯示範區,北京市政府規劃的道路上基於實際的道路情況研發測試,不僅能檢測自動駕駛系統的情況,還可以獲得司機的主觀評價和可以驗證人機交互的功能。


自動駕駛汽車的硬件系統

自動駕駛的硬件系統,可以粗略地分為感知、決策、控制三部分(還有定位、地圖、預測等模塊)。自動駕駛不能僅僅考慮系統,還要考慮到人的因素。


一文讀懂汽車自動駕駛技術原理


從車輛運動方面會考慮到車的速度、轉角以及橫滾,俯仰、航向等信息。還有一部分是環境感知,比如激光雷達、超聲波、攝像頭、毫米波雷達、V2X。V2X能提供超視距功能——當車上了路,很難發現超傳感器範圍的信息,通過V2X設備會發送和接受相關信息,車會接收到前方交通的情況。

另外,駕駛員監測主要是通過攝像頭和生物電傳感器(放在方向盤裡),來判斷駕駛員有沒有手脫離方向盤。也可以檢測司機的精神,比如駕駛員睏倦還是精神緊張。

目前L3+級自動駕駛的計算單元主要CPU+GPU+FPGA的架構。T—BOX它向上接的是互聯網,向下是接的CAN總線。比如手機有一個APP,通過T-BOX可以控制車門的開關。黑匣子負責記錄控制指令和車輛行使狀態,事故發生以後可以用黑匣子來進行事故的認定。車輛控制是一些制動、轉向、發動機、變速箱,還有警告系統,聲音、圖像、振動等。

4 自動駕駛汽車的傳感器


自動駕駛使用的感知類的傳感器,主要有

激光雷達、毫米波雷達、攝像頭、組合導航


一文讀懂汽車自動駕駛技術原理


激光雷達安裝在車頂,目前是360度同軸旋轉,可提供周圍一圈的點雲信息。激光雷達不僅用於車輛感知,也用於定位和高精度地圖的測繪。

攝像頭光線通過鏡頭、濾光片到後段的CMOS或CCD集成電路,將光信號轉換成電信號,再經過圖像處理器(ISP)轉換成標準的RAW,RGB或YUV等格式的數字圖像信號,再通過數據傳輸接口傳輸到計算單元。

毫米波雷達和激光雷達有點類似,基本原理是發射一束電磁波,通過觀察回波和射入波的差異來計算距離和速度,主要分24G和77G,它的安裝是在保險槓上面。

組合導航是兩部分,一部分是GNSS板卡,通過天線接收GPS和RTK信號,解析計算出自身的空間位置。但是當車輛行駛到林蔭路,或者是有些建築物,GPS就會沒信號或者產生多徑效應,定位就會產生偏移和不準。此時需要通過INS的信息融合來進行組合運算。GNSS+INS融合在一起就是組合導航系統。


一文讀懂汽車自動駕駛技術原理


此表羅列出了目前一些L1、L2功能所用的傳感器,包括自動駕駛L3及以上的傳感器。L1、L2的功能傳感器也需要多傳感器融合,但是融合前的一些算法就直接傳輸到了MCU。L3+以上的是多傳感器融合後的信息傳輸到計算單元,它從硬件架構上略有差異。從實現上來說,L1、L2會更在意一些誤檢的情況,比如我們開車突然剎車會很不舒服,而L1、L2主要責任在駕駛員上,所以它對誤檢會非常在意。但是L3+以上自動駕駛是通過系統去承擔主要的駕駛責任,就會對傳感器漏檢非常在意,這是L1、L2和自動駕駛之間的差異。


一文讀懂汽車自動駕駛技術原理


如何得知自己到底需要什麼樣的傳感器?我們可以通過這個公式計算出來,剎車距離公式,也就是通過道路摩擦係數去計算。自動駕駛要求侷限設計適用範圍。目前,我國城市封閉道路限速80,高速最高限速120。通過這個公式能計算出剎車距離,限速120的情況下最少需要150米的探測範圍,如果能到200米會更好。如果有冰雪怎麼辦,是不是我們要看到更遠距離?實際不是這樣,國家法有規定,高速公路,霧天能見度低於50米的情況下,要求限速到20公里每小時。


一文讀懂汽車自動駕駛技術原理


分辨率是通過反正切函數來計算的。這裡多除以一個2,為什麼呢?是為了保證我沒有漏檢的情況, L3+自動駕駛必須保證百分之百檢測到這個物體。所以從這個公式也能得出這張圖,0.4度分辨率的傳感器在一百米以外就可以探測到行人或者車輛,或者在32米能測到一個路錐。


一文讀懂汽車自動駕駛技術原理


再分析一下傳感器未來的發展趨勢。目前多傳感器融合,相對來說是後融合。其實攝像頭和激光雷達都是光學傳感器,它們部分核心的零部件包括一些處理電路,元器件都是非常相似的,有希望能把攝像頭和激光雷達前融合到一起。左邊的圖是Aeye公司做的智能感知系統的融合,可以看到融合後可以直接輸出R、G、B、X、Y、Z的信息。右邊是Waymo的原形樣機,它用的就是這種前融合系統,可以叫LiCam(Lidar+Camera)。


自動駕駛汽車的計算單元


一文讀懂汽車自動駕駛技術原理


自動駕駛汽車的計算單元,必須考慮到冗餘設計。所有的CPU、GPU、FPGA都是雙冗餘備份,包括總線也是雙冗餘備份的。當檢測系統失效的狀況下MCU還能繼續工作,這是最後的保障,它發出控制指令給剎車系統,讓車輛剎停下來保證安全性。


一文讀懂汽車自動駕駛技術原理


像這種中央集中式的計算也有缺點——整個單元體積比較大,功耗也比較高。自動駕駛車輛後置一個服務器顯然不容易產業化,未來產業化是逐步拆分計算量到邊緣計算。比如說激光雷達、毫米波、攝像頭,都接入到一個Sensor BOX,將對準融合後的數據再傳輸到計算單元進行處理。從整個自動駕駛汽車來看,也會根據不同的功能設計不同的域控制器,比如車身域控制器、車載娛樂域控制器、動力總成域控制器、自動駕駛域控制器。彼此之間隔離,彼此之間互相不干擾。


一文讀懂汽車自動駕駛技術原理


Sensor+SOC。舉個例子,Dibotics是一個做激光雷達SlAM算法的公司,它將算法寫到Renesas的R-car芯片上,寫完之後將芯片植入到傳感器,在傳感器端完成相關算法的運算。


一文讀懂汽車自動駕駛技術原理


介紹一下整個芯片的流程,

芯片設計、芯片製造、芯片封測三個流程。選擇芯片設計的IP,再經過EDA進行電子電路佈局,做成光罩,經過光刻等多種工藝,生產出一個芯片,再進行芯片的封裝。自動駕駛算法芯片主要恆量指標是功耗、算力和麵積。目前整個芯片製造是從16納米向7納米發展,同等面積7納米對比16納米整個運算力會提升40%,功耗會降低60%。


自動駕駛汽車的線控系統


一文讀懂汽車自動駕駛技術原理


自動駕駛車輛的線控系統,分減速轉向加速三大部分。


一文讀懂汽車自動駕駛技術原理


上圖是大陸的線控制動解決方案。MK C1將制動助力以及制動壓力控制模塊(ABS、ESC)集成一個制動單元當這個失效的時候還有一個MK 100保證冗餘。


一文讀懂汽車自動駕駛技術原理


自動駕駛車輛的線控轉向系統,自動駕駛線控和傳統車輛的EPS非常類似,唯一的差異就是在於冗餘。右圖是英菲尼迪Q50線控轉向系統,基本上還是延續了傳統轉向系統的結構。只是增加了一套離合、三組ECU、冗餘轉向電機和力度回饋器。


一文讀懂汽車自動駕駛技術原理


自動駕駛車輛的加速線控系統,以往的車輛都有一個油門拉線,油門踏板通過拉線控制氣門開合。目前都是直接通過發動機管理系統來控制電子油門。


一文讀懂汽車自動駕駛技術原理


自動駕駛汽車的線控系統可分為三個版本,1.0版對原車的踏板及方向盤進行了物理截斷的改裝,也是俗稱的暴力改裝,由於是後改的並不符合安全性,有時候會漏油和燒電機的情況。2.0版是通過借用原車的ADAS系統來實現線控。3.0版則完全是定製化的,百度阿波龍目前是3.0版,所有的線控都是基於自動駕駛的需求,特別定製化的。

Apollo硬件開發平臺


一文讀懂汽車自動駕駛技術原理


7月4號,百度開發者大會也推出了硬件開發平臺,新增了15種硬件傳感器,發佈了Apollo傳感器單元,添加了底層硬件抽象層。


一文讀懂汽車自動駕駛技術原理


硬件開發平臺的傳感器單元,就是前面介紹的Sensor Box,將所有的傳感器數據都統一到傳感器單元中,完成時間戳的同步將獲得的數據傳輸到後端的計算單元來進行處理。


一文讀懂汽車自動駕駛技術原理


後續會發布AXU可以提供更多的擴展性,支持更多的硬件設備,滿足不同開發者的需求。Apollo硬件開發平臺會完成相關硬件廠家設備的准入工作,涉及到的內核驅動也會在Github上完成合入。


一文讀懂汽車自動駕駛技術原理


用戶空間庫是給用戶進行一些自定義的。比如每一款車的CAN總線協議是不同的,可以將相關CAN協議指令寫在這裡。硬件抽象層主要提供數據格式轉換和API的功能。另外,添加了硬件抽象層可以保證當某一硬件出現故障時不會導致整個系統崩潰。


一文讀懂汽車自動駕駛技術原理


從VSI發佈自動駕駛產業佈局圖中可以看出自動駕駛產業,是汽車、新能源、IT通訊、交通運輸、半導體、人工智能、互聯網等多個10萬億巨無霸產業的跨界融合體。自動駕駛汽車是物質流、能量流、信息流的聚合體,需要行業各方深度合作。只有軟硬件深度整合,打通藩籬跨界的企業才能摘得皇冠上的明珠。


分享到:


相關文章: