在上周,阿波君為大家具體介紹百度Apollo開放平臺的基本情況。本期,阿波君將為大家介紹一下Apollo硬件開發平臺。
話不多說,歡迎各位開發者一起進入進階課程第五期。
事故發生在2018年3月18日晚間,一輛正在進行無人駕駛測試的Uber車在美國亞利桑那州Tempe市撞上一名行人。該行人被送醫,隨后被宣告搶救無效死亡。
根據初步調查結果,Uber車輛在撞上該名行人時,正處在自動駕駛狀態,這是史上首例自動駕駛車輛在公開路面撞傷行人致死的案例。此事件,對無人駕駛敲響關于安全的警鐘。
2018年6月22日美國公路委員會發布事故報告:
在事故發生的前6秒,系統的傳感器已經發現行人;在事故發生的前1秒,原車的應急制動AEB已經啟動,但汽車并沒有實施制動,原因是Uber在改裝沃爾沃cx90時,對原車的剎車系統進行截斷,由后續改裝的電腦來發射控制指令,進行剎車。
系統沒有一個完全閉環的狀態(主因);
自動駕駛和基礎設施是相關的,事故發生前4秒路面的照明不足導致從照片上看不出行人。
Uber之前還發生過其他交通問題,比如車輛剮蹭,直接側翻等。
原因在于,Uber后來加裝的車輛傳感器(Velodyne 64線)比較重,并且SUV中心點較高,加裝傳感器后重心上移,轉急彎時容易側翻。
Uber事故原因分析
從自動駕駛研發的流程角度看,大致可以分為以下4個步驟:
軟件在環軟件在環是基于仿真和模擬的軟件仿真,類似于賽車類游戲。即是在軟件系統里仿真模擬出真實的道路環境如光照、天氣等自然環境,開發者可將自動駕駛代碼開發完畢后,在仿真系統內運行,測試是否可以實現目標。
硬件在環 硬件在環是基于必要的硬件平臺。在第一步的軟件仿真結束后,將所有的仿真結果與傳感器、計算單元集合在一起,在硬件環境里測試。
車輛在環車輛在環是基于車輛執行。在第二步硬件環境里測試完成后實施的第三步,即在一個封閉環境中測試開發者所開發功能,封閉環境中不會有交通流的干擾。
司機在環司機在環是基于實際道路。在第三步測試成功后進入到司機在環,司機在環主要是研究人——車——路——交通四者之間的相互作用,它不僅測試自動駕駛的程序代碼,還能獲得專業司機的評判。
以上四步是整個自動駕駛研發的流程,按照以上的流程研發能夠保證自動駕駛足夠的安全性。
安全是自動駕駛的第一天條
自動駕駛汽車硬件系統
自動駕駛分為三大系統:感知、決策和控制,每個系統里有對應的硬件系統。
感知系統分為汽車運動、環境感知和駕駛員監測三部分。
車輛運動主要分為慣性導航、速度傳感器、角度傳感器和全球定位系統。
環境感知主要分為激光雷達、超聲波、攝像頭、毫米波雷達、V2X。
駕駛員監測主要分為攝像頭和生物電傳感。
決策系統分為計算單元、T-BOX和黑匣子三部分。
計算單元里是自動駕駛感知決策控制的算法。目前自動駕駛用的是X86結構的服務器或工控機。
T-BOX即Telematics BOX,是車聯網的通訊網關,它上接互聯網下接CAN總線。例如手機上APP發送的開關門指令,都是通過T-BOX網關將操作指令發送到CAN總線來進行操控的。
黑匣子是用來記錄無人駕駛過程中所有的信息和狀態。
控制系統部分分為車輛控制和警告系統。
車輛控制主要分為制動、轉向、發動機和變速箱。警告系統主要分為聲音、圖像和震動。
以上是整個自動駕駛硬件系統的構架。
下面介紹自動駕駛汽車感知類傳感器。
攝像頭主要是用于車道線、交通標識牌、紅綠燈、車輛和行人的檢測。它的優點是檢測信息全面且價格便宜,缺點是性能受天氣影響較大。
攝像頭主要由鏡頭、鏡頭的模組、濾光片、CMOS/CCD、ISP和數據傳輸這幾部分組成。攝像頭分為單目和雙目。
攝像頭的基本工作原理:光線通過攝像頭前面的鏡頭和濾光片聚焦到后面的CMOS的Sensor上.
Sensor將光信號進行曝光轉化成電信號,然后通過ISP圖像處理器轉化成標準的RGB或者YUV的數據格式,最后傳輸到后端的計算機進行處理。
激光雷達的核心原理是TOF(Time of Flight),即一束光射出后碰到障礙物后,光會發生回波,并在APD上進行接收和計算光折返的距離。
根據它的掃描原理激光雷達可以分為同軸旋轉、棱鏡旋轉、MEMS、OPA相控陣以及Flash。激光雷達不光是用于感知,地圖類的測繪和定位也會使用到需要它。
毫米波雷達主要用于交通車輛的檢測。毫米波雷達主要是由射頻天線、芯片和算法組成,基本原理是發射一束電磁波,然后觀察電磁波回波的攝入差異來計算距離和速度。
它的優點是檢測速度快且較準確,不受天氣情況干擾,缺點是不能對車道線進行識別檢測。
組合導航是通過GNSS板卡接收所有可見的GPS衛星信號并進行計算,從而得出被檢物體在大地坐標系中的空間位置。
當車輛通過隧道、有建筑物群和樹蔭遮擋等路段時,GPS信號會產生遮擋不能提供很好的結算和實時導航,所以這種情況下需要融合慣性導航的信息。
慣性導航是一個完全封閉的系統,不受外界影響,可以直接給出車身的位置、速度和姿態。
自動駕駛汽車的傳感器安裝位置
自動駕駛汽車傳感器的安裝位置一般是:
激光雷達是360°旋轉的,所以它都是安裝在車頂;
毫米波雷達的指向性很強,所以的它一般安裝在前后保險杠上;
考慮到車身在道路上的俯仰和姿態的干擾,所以組合導航系統一般是安裝在兩個后車輪的中軸線上;
車身的360°都會安裝攝像頭。
自動駕駛汽車的傳感器
上圖總結了自動駕駛所使用到的傳感器。
自動巡航、應急制動、行人檢測都是L1、L2級的功能。
歐洲的標準是2017年強制性具備AEB功能的車輛;美國的標準是讓到2020年讓所有的車具備輔助駕駛、車道偏離和AEB功能;
中國的標準是到2018年將自動駕駛L1級的功能AEB列為強制標準,這些強制標準主要是用于商用車、卡車和客車。
下面簡單介紹L1、L2目前量產的方案和百度以及很多人工智能公司研發的L3+以上的方案的差異。
L1、L2級別最怕的是傳感器誤檢,例如正在開車時傳感器發生誤檢,隨后急剎車會讓駕駛感受很差。L1、L2的算法會避免一定的誤檢率。
L3以上關注的是傳感器漏檢,駕駛的主體是一個系統,一定不能讓系統的傳感器段出現漏檢情況。
這是目前傳統車企和一些AI公司在自動駕駛上針對傳感器兩個重大的理念差異。
目前L4的適應范圍是城市道路和高速路的一些自動駕駛,我國的高速路的限速是120km/h,根據道路摩擦系數可計算出不同速度下的剎車距離。加上整個系統反應時間,根據數學公式計算出下表。
剎車距離公式和整體制動距離公式
目前自動駕駛的整個系統反應時間會在500毫秒之內,車輛制動是液壓需要0.3~0.5秒,卡車用的氣剎需要0.8秒。
目前市面上在售車,絕大多數都是低于這個技術指標,說明在售車性能都很好。從目前來看,對于傳感器的要求,能測到150米已足夠。
自動駕駛汽車傳感器分辨率計算公式
這是一個三角函數反正切函數,但是這個公式會多除以一個2,是為了避免漏檢。
當激光雷達的兩束線的角度之間有一個物體, 正好處于檢測邊緣它會產生一定的漏檢,除以2是為了保證在每一個角度上都不會產生漏檢。
在0.4°這個分辨率之下我們在100米外其實就可以檢測到一個人、車或騎行者。
在0.1°這個分辨率之下我們在400米外其實就可以檢測到一個人、車或騎行者。
但是能檢測到并不意味著自動駕駛系統能識別出來,只有一條線的這種成像或者低分辨率的成像,自動駕駛還是識別不了。
目前百度Apollo平臺,我們在同一車上用激光雷達4到5根線才可以很好地對障礙物進行分類。
現在像Velodyne 64線的激光雷達,0.4°分辨率下他的物體感知距離是50米。
未來自動駕駛傳感器的趨勢:自動駕駛傳感器離不開多傳感器的融合。激光雷達和攝像頭都屬于光學類的傳感器,它們核心零部件和處理電路很相似,
未來有可能將激光雷達和攝像頭前端融合到一起,直接輸出RGB、 XYZ融合后的顏色加點云信息,然后傳輸到后端的計算來進行處理。
美國創業公司Aeye開發的iRADAR系統,它不僅能真實的體現出二維世界的彩色信息,而且能將點云的信息疊加,每個像素點不僅有顏色信息還有空間坐標信息。
自動駕駛汽車的計算單元
上圖是自動駕駛汽車的計算單元架構。
在自動駕駛汽車的計算單元部分,需要考量整體的車規、電磁干擾和振動方面的設計以及ISO-26262標準的要求。
所有的CPU、GPU、FPGA、MCU和總線都要做冗余設計,以防止單點故障。
目前計算單元都是集中式的架構,即將所有的工作都放到一個工控機當中。
這種架構的缺點是體積大、功耗高,不適應未來的量產;優點是方便代碼的快速迭代,工控機卡槽的設計方便硬件更新和擴展。
由于集中式的缺點,未來將會考慮嵌入式的方案。將各傳感器的原始數據先融合到一個Sensor Box中,在其中完成數據融合, 然后將融合后的數據給到后端計算平臺處理。
Sensor Box作用:目前所用傳感器給出的原始數據該如何判斷融合完成后是否是判斷同一個目標,需要有一個時間戳同步,保證這個時間戳下每個傳感器探測的都是同一個坐標系,時間戳的同步是在Sensor Box里面完成的。
這種方案將原來集中式計算的功能拆解出來,可以降低整體系統的功耗,但是不足以面向更多的量產化。
芯片設計流程
下面介紹芯片的設計流程。
我們現在開發的自動駕駛算法,當感知算法固化后可以做成專用的芯片。
ASIC的芯片是基于特定需求的特殊定制芯片,它的優點是比普通的GPU和FPGA體積更小、功耗更低、性能穩定和可量產。
現在的半導體產業非常成熟。自動駕駛算法公司只需做好芯片的前端設計,比如將算法固化下來,然后選擇適用的IP核,最后進行EDA (電子自動化設計), 將芯片設計完的電路圖再交由后端,像臺積電這種芯片制造企業進行流片的生產。
芯片設計流程整體分為芯片設計、芯片制造、芯片封裝三部分。現在整個半導體產業正在從深紫外(DOV)向極紫外(EUV)發展。
半導體正步入7納米時代,新工藝對性能帶來很大提升。對比16納米工藝,7納米工藝可提升40%性能,節省60%能耗。
自動駕駛線控系統
自動駕駛線控系統(control by wire)指的是汽車的控制是由一些簡單命令完成的,而不是由物理操作完成的。
線控部分相當于人的手和腳,在線控系統里執行上端的命令。主要分為三大部分:減速控制、轉向控制和加速控制。
傳統汽車的這些控制由液壓系統和真空助力泵協助完成,自動駕駛汽車的線控需要用電控化的零部件來完成,如電子液壓制動系統(EHB)。
大陸制動解決方案
上圖是大陸制動的解決方案。它的MK C1集成液壓和制動的模塊,利用緊湊且輕重量的設計節省制動單元,通過電信號發出的制動信號也使制動距離更短。
MK100使用的ESC(車身電子穩定系統)可與MK C1之間進行相互備份。當MK C1系統失效時由MK100來接管。
從原理圖上來看,大陸制動的所有的供電、執行、線路和管路圖都是雙備份的,極大地提高安全性,但是該系統只適用于乘用車。像卡車、客車等商用車都是通過氣剎系統制動的。
目前很多自動駕駛車都使用EPS(電子助力轉向系統)。EPS直接使用轉向管柱與下面的齒條相結合,沒有采用電控制。
自動駕駛汽車的線控系統
如英菲尼迪Q50的轉向系統中,由離合器進行轉向管柱的截斷,當車輛啟動時離合器松開,所有的自動駕駛指令都通過ECU(電子控制元件)發送控制指令到下端兩個轉向電機上,進行轉向控制。
線控油門是對自動駕駛車輛加速度的控制,減速剎車踏板上有位置傳感器可檢測到剎車深淺度,該傳感器傳送指令到EMS(發動機制動系統)后,氣門進氣量越多,加速度即越快。
自動駕駛汽車的線控系統
自動駕駛汽車目前大多是新能源車,新能源車通過驅動電機的扭力控制來完成對加速度的控制,從整個線控化來看,分為三個階段:
1.0 對原車的方向盤踏板進行改裝,將一些轉向管柱截斷后,加裝轉向電機,通過控制電機進行轉向,缺點是未經過原車系統測試驗證,存在安全隱患。
2.0基于原車的輔助駕駛系統,對Can總線協議進行破解,通過原車總線指令控制車的轉向和制動。
3.0從車底盤開始開發的一套系統,轉向線控完全按照自動駕駛需求定制,與2.0的區別在于考慮到冗余和備份的需求。
2018年7月4日,Apollo硬件開發平臺正式發布,新增15家硬件廠商選型,也發布了Apollo傳感器單元。
添加底層的抽象層后(將原來的硬件參考設計升級為硬件開發平臺),硬件開發平臺內容更加豐富了。
有開發者提出,百度提供的硬件參考設計,目前要么買不到,要么供貨周期很長。
基于這些訴求,我們豐富了硬件的選型,將通過我們測試驗證的傳感器、工控機、控制單元進行發布,以方便開發者進行選購。
Apollo硬件開發平臺
在百度目前提供的參考設計中,我們將其分為Apollo平臺認證及Apollo硬件開發平臺認證。
Apollo平臺認證是指百度目前正在使用的傳感器經認證后公布出來。例如Velodyne 64線激光雷達就屬于Apollo平臺認證產品,我們會基于正在使用的傳感器提供數據集。
Apollo硬件開發平臺認證,則是在Apollo代碼層面進行驗證,如感知模塊的數據化采集標注和模型的訓練的額外工作,還需要開發者自己完成。
后續Apollo會繼續豐富生態圈,繼續提供芯片和傳感器的支持及選型。
傳感器單元(Sensor Box)將所有的傳感器信息融合到傳感器單元中,完成整個時間戳的對準,將前處理的數據傳輸到后端的工控機計算單元上進行處理.
這是根據百度在使用傳感器開發出來的,不一定適用所有開發者。后續Apollo將推出AXU擴展單元,附帶PCI卡槽的單元將更加靈活。
AXU擴展單元
在Apollo的抽象層中,有硬件接口,比如說內核驅動、USP Library(用戶空間庫)等。
USP Library(用戶空間庫)主要用在Can總線協議中。因為每個車廠/車型/批次其Can總線協議都不同,將控制指令信息寫在USP Library中進行操控。
Apollo開發平臺中,還有HAL硬件抽象層,這為了防止單一硬件短路而導致整個系統硬件內核崩潰的中間開發層。不同的硬件廠家可以選擇開放所有源代碼,或將編譯后的代碼發布在Apollo平臺上。
Apollo完成代碼核入的工作后會發布在GitHub上,開發者不需要針對不同硬件選型去開發不同的驅動。
自動駕駛產業圖譜
最后,是VSI發布的自動駕駛產業鏈布局圖。
自動駕駛產業是汽車新能源、IT、交通通訊、半導體人工智能、移動互聯網等多個10萬規模產業億聚的大型聚合產業。
自動駕駛汽車是物質流、能量流、信息流的聚合體,需要軟硬件行業的深度整合和合作才能保證自動駕駛產業的成功落地。
-
硬件開發
+關注
關注
3文章
156瀏覽量
24141 -
自動駕駛
+關注
關注
783文章
13688瀏覽量
166157 -
Apollo
+關注
關注
5文章
340瀏覽量
18407
原文標題:進階課程 ⑤ | Apollo硬件開發平臺介紹
文章出處:【微信號:Apollo_Developers,微信公眾號:Apollo開發者社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論