Apollo进阶课程㊲丨Apollo自动驾驶架构介绍
原文鏈接:進(jìn)階課程?丨Apollo自動(dòng)駕駛架構(gòu)介紹?
自動(dòng)駕駛硬件架構(gòu):一般采用激光雷達(dá)作為主要感知傳感器,同時(shí)結(jié)合攝像頭、GPS/IMU、毫米波雷達(dá)、超聲波雷達(dá)等,以NVIDIA Drive PX2 或 Xavier作為主要計(jì)算平臺(tái),在工業(yè)PC機(jī)上運(yùn)行各種算法模塊,通過(guò)線控技術(shù)控制車(chē)輛行駛。
百度開(kāi)源自動(dòng)駕駛系統(tǒng)Apollo的架構(gòu)圖如下所示:
上周阿波君為大家詳細(xì)介紹了「進(jìn)階課程?丨Apollo ROS深入介紹」。
此課程主要講解七個(gè)深入內(nèi)容:第一是ROS Packages;第二是Eclipse下編譯ROS基本工程;第三是通過(guò)hello world了解ROS基本的運(yùn)行邏輯;第四是ROS提供的日志系統(tǒng);第五是ROS提供的subscriber和publisher功能;第六是ROS除了message的另外兩種通信方式;第七是ROS的可視化工具Rviz。
本周阿波君將與大家分享Apollo自動(dòng)駕駛架構(gòu)介紹的相關(guān)課程。下面,我們一起進(jìn)入進(jìn)階課程第37期。
目錄
1.最底層的車(chē)輛平臺(tái)
2.傳感器層
3.核心的軟件平臺(tái)
4.云服務(wù)層
Apollo自動(dòng)駕駛平臺(tái)的架構(gòu)如下圖所示。該架構(gòu)是Apollo 在2017年7月5號(hào)發(fā)布的,主要包括四個(gè)部分:最底層的車(chē)輛平臺(tái),往上一層的傳感器層,第三層的核心軟件層以及最上層的云服務(wù)層。
?????????????????????????????????????????????????????????????????????????????????????????????????????????Apollo 自動(dòng)駕駛架構(gòu)
1.最底層的車(chē)輛平臺(tái)
底層車(chē)輛平臺(tái)執(zhí)行Apollo無(wú)人駕駛平臺(tái)生成的車(chē)輛控制指令。為了能夠運(yùn)行Apollo生成的指令,車(chē)輛必須是線控的,例如可以接受一定的指令,比如換擋、加減速、轉(zhuǎn)向,完成對(duì)應(yīng)的操作。在Apollo 3.0之前,我們稱(chēng)之為車(chē)輛參考平臺(tái),即推薦的可運(yùn)行Apollo的幾種車(chē)。在3.0之后,我們發(fā)布了Apollo對(duì)車(chē)輛條件的需求,比如需要哪些線控功能,對(duì)應(yīng)的操作耗時(shí)是多少等。只要把車(chē)改裝成具備對(duì)應(yīng)條件之后就可以運(yùn)行Apollo,現(xiàn)在稱(chēng)為開(kāi)放車(chē)輛認(rèn)證平臺(tái)。
2.傳感器層
傳感器層主要是集成各種傳感器對(duì)汽車(chē)周?chē)h(huán)境進(jìn)行感知,包括GPS、IMU、相機(jī)、激光雷達(dá)、毫米波雷達(dá)、超聲波雷達(dá)等。無(wú)人駕駛系統(tǒng)對(duì)算力的要求非常高,所以在Apollo上安裝了一臺(tái)高性能工控機(jī)(IPC)機(jī)。
Apollo 中GPS/IMU主要是用于自定位。相機(jī)的功能主要是做紅綠燈識(shí)別。主傳感器激光雷達(dá)主要用來(lái)感知車(chē)輛周?chē)h(huán)境。在百度內(nèi)部使用了Velodyne 64線激光雷達(dá)和國(guó)產(chǎn)禾賽的Pandora。Apollo 3.0時(shí),我們開(kāi)放了更多的激光雷達(dá)型號(hào),例如16線速騰聚創(chuàng)(Robosense)、16線鐳神科技等等。毫米波雷達(dá)主要用來(lái)做遠(yuǎn)距離的跟車(chē)、障礙物的檢測(cè)等。超聲波雷達(dá)主要用來(lái)做五米范圍之內(nèi)的障礙物的檢測(cè);HMI是對(duì)車(chē)輛發(fā)指令的一些設(shè)備,例如平板。Blackbox是百度開(kāi)放的一個(gè)商業(yè)化硬件,它記錄一些內(nèi)部數(shù)據(jù),例如關(guān)鍵時(shí)刻的執(zhí)行操作,類(lèi)似于飛機(jī)上的黑匣子。在Apollo 3.0,我們發(fā)布了一些硬件開(kāi)發(fā)平臺(tái),成為Sensor Unit(ASU)。
3.核心的軟件平臺(tái)
核心軟件層又可以細(xì)分為三層:最下面的是RTOS實(shí)時(shí)操作系統(tǒng),在Apollo中,我們使用打補(bǔ)丁的方式來(lái)實(shí)現(xiàn)實(shí)時(shí)的效果。中間層是Runtime Framework。這一層,我們用的是ROS,主要是為上層的模塊提供數(shù)據(jù)層支持。最上面一層是Apollo各個(gè)功能模塊實(shí)現(xiàn)部分,包括地圖引擎、定位、感知、規(guī)劃、監(jiān)管、控制、端到端以及HMI。
4.云服務(wù)層
最上層的云服務(wù)層提供了高精地圖服務(wù)、模擬仿真、Data Platform、安全和更新、DuerOS等。
對(duì)于高精度地圖,在中國(guó),個(gè)人并不具備制定高精地圖的資質(zhì)和能力,因?yàn)檎筮@些數(shù)據(jù)不能在網(wǎng)絡(luò)上傳播。因此,Apollo直接將制作好的高精地圖以云服務(wù)的方式對(duì)外開(kāi)放。
仿真主要用來(lái)對(duì)自動(dòng)駕駛的相關(guān)算法進(jìn)行驗(yàn)證。Data Platform開(kāi)放了紅綠燈數(shù)據(jù)、一些典型的障礙物數(shù)據(jù)、像素級(jí)的標(biāo)注數(shù)據(jù)。
總結(jié)
以上是生活随笔為你收集整理的Apollo进阶课程㊲丨Apollo自动驾驶架构介绍的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: npm安装与卸载和cordova及ion
- 下一篇: 【HDU - 2087】 剪花布条(直接