(1)背景
? ? ? ? 在入門自動(dòng)駕駛領(lǐng)域的時(shí)候,筆者主要使用的工具是QT+ROS+Gazebo,在該行業(yè)工作一段時(shí)間之后,發(fā)現(xiàn)各家都有自己的仿真平臺(tái),只能在公司平臺(tái)使用,但是如果個(gè)人要做城區(qū)的仿真,前面所說(shuō)的工具鏈(QT+ROS+Gazebo)顯然是不夠便捷的。目前主要調(diào)研了兩個(gè)開源的平臺(tái),第一個(gè)是?Autoware.universe,第二個(gè)就是國(guó)內(nèi)Apollo平臺(tái),matlab適用于高校仿真環(huán)境,但不適用于量產(chǎn)(量產(chǎn)還是以c++為主),所以就不重點(diǎn)介紹matlab平臺(tái)了,這次先說(shuō)說(shuō)Autoware平臺(tái)。
? ? ? ? 首先介紹Autoware的安裝及使用,后面會(huì)大概說(shuō)一下自己使用的感受。
(2)Autoware安裝
? ? ? ? 個(gè)人電腦系統(tǒng)是Ubunt20.04,安裝目前主要的參考是官方文檔(比較靠譜,很友好,還會(huì)列舉可能會(huì)遇到的問(wèn)題):https://autowarefoundation.github.io/autoware-documentation/main/installation/autoware/docker-installation-devel/。
? ? ? ?第一步: 克隆倉(cāng)庫(kù)
git clone https://github.com/autowarefoundation/autoware.git
????????第二步:安裝依賴項(xiàng)
- cuda稍微好一點(diǎn)的電腦會(huì)自帶,但是此項(xiàng)不是必須項(xiàng)
- docker的安裝參考官方文檔即可
https://docs.docker.com/engine/install/ubuntu/
https://docs.docker.com/engine/install/linux-postinstall/ - 安裝nvidia的 container
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#setting-up-nvidia-container-toolkit - 安裝rocker
https://github.com/osrf/rocker#installation
?????????到此,所有依賴安裝完畢。
(3)Autoware仿真
?? ? ? ? 3.1 下載官方的image:
docker pull ghcr.io/autowarefoundation/autoware-universe:latest-cuda
? ? ? ?3.2 創(chuàng)建autoware_map文件目錄,用于存儲(chǔ)地圖demo文件:
mkdir autoware_map
? ? ? ? 3.3 以gpu加速的形式啟動(dòng)docker:(注意:如果沒(méi)有成功安裝nvidia cuda,無(wú)法使用)
rocker --nvidia --x11 --user --volume $HOME/autoware --volume $HOME/autoware_map -- ghcr.io/autowarefoundation/autoware-universe:latest-cuda
? ? ? ? 3.4 如果沒(méi)有安裝nvidia cuda,可以使用下面的命令進(jìn)入docker:
rocker -e LIBGL_ALWAYS_SOFTWARE=1 --x11 --user --volume $HOME/autoware --volume $HOME/autoware_map -- ghcr.io/autowarefoundation/autoware-universe:latest-cuda
? ? ? ? 3.5 進(jìn)入autoware空間,導(dǎo)入源碼:
cd autoware
mkdir src
vcs import src < autoware.repos
? ? ? ? 3.6 在docker中,安裝ros依賴(需要多次嘗試,由于網(wǎng)絡(luò)不好,所以經(jīng)常會(huì)更新失敗):
sudo apt update
rosdep update
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
? ? ? ? 3.7 源碼編譯:(如果需要加速編譯,使用第二行命令即可;此處時(shí)間也比較長(zhǎng),大概半小時(shí)左右)
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
MAKEFLAGS="-j4" colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
? ? ? ? 因?yàn)楹笃谑褂茫恍枰匦戮幾g所有模塊,只需要編譯自己所在業(yè)務(wù)的package,使用如下這行命令即可:
colcon build --packages-select autoware_launch
? ? ? ? 3.8 測(cè)試使用
? ? ? ? 下載官方的地圖,之后解壓即可
gdown -O ~/autoware_map/ 'https://docs.google.com/uc?export=download&id=1499_nsbUbIeturZaDj7jhUownh5fvXHd'
? ? ? ? ?運(yùn)行測(cè)試case
source ~/autoware/install/setup.bash
ros2 launch autoware_launch planning_simulator.launch.xml map_path:=$HOME/autoware_map/sample-map-planning vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit
? ? ? ? 此時(shí),我的電腦提示下面的錯(cuò)誤,后來(lái)仔細(xì)檢查是因?yàn)閍utoware_launch模塊并沒(méi)有被編譯,所以重新對(duì)該模塊進(jìn)行了編譯,后續(xù)能在autoware/install文件夾中找到“autoware_launch”文件:
Package 'autoware_launch' not found: "package 'autoware_launch' not found, searching:
????????再次運(yùn)行上面的兩條命令,出現(xiàn)了期待的畫面。
? ? ? ? 在頂欄中選擇合適的起點(diǎn)和終點(diǎn)即可規(guī)劃出路徑,點(diǎn)擊“OperationMode”下的“Auto”按鈕,車輛即可按照規(guī)劃出來(lái)的路徑行駛。(如果起點(diǎn)或終點(diǎn)在車道中逆行是無(wú)法規(guī)劃出軌跡的)? ??
(4)使用感受
? ? ? ? 因?yàn)楣P者主要從事的是planning模塊的工作,所以主要看了相關(guān)的架構(gòu),整個(gè)autoware的框架圖如下所示(圖片來(lái)自官網(wǎng)):
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-791757.html
? ? ? ? 看下來(lái)整體架構(gòu)是和市場(chǎng)上的自駕公司差不多的,但是內(nèi)部所使用的算法和目前國(guó)內(nèi)主流的方案差別較大,主要體現(xiàn)在決策和優(yōu)化部分,在繞行避障的case中,autoware使用的是模型預(yù)測(cè)方法來(lái)規(guī)避障礙物,而不是QP方法,包括變道也是。作為額外的研究工作,大家可以去看看官方文檔和源碼,也許能給自己帶來(lái)一些啟發(fā)。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-791757.html
到了這里,關(guān)于Ubuntu 20.04 安裝 Autoware.universe自動(dòng)駕駛仿真工具的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!