Apollo自動駕駛實踐——第3講 Apollo軟件系統部署


Ubuntu操作系統
Linux 4.4內核
Apollo 1.5.5內核

驅動軟件
1.GPU顯卡驅動
2.ESD-CAN卡驅動/Socket CAN卡驅動

應用軟件
1.docker軟件
2.git軟件
3.Apollo源代碼

通過BIOS設置工控機風扇的轉速以及工控機的功耗

BIOS設置

工控機啟動時候按F2進入BIOS設置菜單,選擇Advanced,Smart Fan Control
1.設置當溫度達到50℃的時候風扇達到最大轉速
2.設置當溫度達到20℃的是時候風扇開始轉動
3.設置工控機一直以最佳狀態運行
找到Power中的SKU Power Config 設置為Max TDP

軟件安裝順序

1.操作系統軟件
2.驅動系統軟件
3.應用軟件

1.操作系統:Ubuntu 14.04 LTS,Linux 4.4內核,Apollo 1.5.5內核
Linux操作系統種類較多,分為服務器版的和桌面版。

安裝Ubuntu
准備一個U盤,下載Ubuntu 14.04LTS的鏡像文件,並按照相關說明文檔創建一個可啟動的U盤,將U盤插入工控機
按F12進入啟動菜單,選擇U盤進行啟動引導,安裝Ubuntu

安裝好linux 4.4內核
安裝好Ubuntu后,重新開機啟動,在確保工控機處於正常聯網的情況下,在終端輸入以下命令安裝Linux 4.4內核:
1.在終端使用cd -進入home路徑
2.使用sudo apt-get update進行軟件包的升級
3.使用sudo apt-get install linux-generic-lts-xenial安裝linux4.4內核
之后重啟工控機

安裝apollo內核
1.下載apollo內核,下載網站https://github.com/ApolloAuto/apollo-kernel/releases
2.使用tar zxvf linux-4.4.32-apollo-1.5.5.tar.gz進行解壓
3.cd跳轉到install目錄
4.sudo bash install_kernel.sh啟動安裝
5.重啟工控機

GPU驅動安裝
1.通過wget http://us.download.nvidia.com/XFree86/Linux-x86_64/375.39/NVIDIA-Linux-x86_64-375.39.run 下載驅動
2.終端輸入sudo bash ./NVIDIA-Linux-x86_64-375.39.run --no-x-check -a -s --no-kernel-module安裝
3.重啟工控機

ESD-CAN卡驅動
1.從CAN卡供應商拿到CAN卡驅動安裝包,一般命名為esdcan-pcie4 開頭的文件
2.拷貝到工控機,並解壓
3.通過cd esdcan-pcie402-linux-2.6.x-x86_64-3.10.3使用cd命令跳轉到解壓好的文件夾中
4.通過cd crc/跳轉到stc目錄
5.通過make -C /lib/modules/uname -r/build M=pwd對程序進行編譯
6.通過sudo make -C /lib/modules/uname -r/build M=pwd module_install安裝ESD-CAN卡驅動
7.如果目錄中存在驅動文件則成功

socket CAN卡驅動安裝
1.Socket CAN 卡安裝到工控機 mini PCI-E 接口上
2.通過cd /etc/ydev/rules.d/跳轉到指定 rules.d 目錄:
3.新建rules文件,sudo touch 99-kernel-rename-emuc.rules
4.打開rules文件sudo vim 99-kernel-rename-emuc.rules
5.添加rules文件內容

6.重啟,進入dev目錄
7.檢查rules是否配置成功,II ttyACM*
8.emuc-B202驅動安裝包下載

9.將emuc-B202下的Socket CAN驅動安裝包解壓出來放到home下, 注意有 Windows 的和 Linux 的,應選擇 Linux 的。重命名為SocketCan
10.跳轉到 SocketCan 目錄后執行編譯:

11.修改 start.sh:

12.使用 bash ./start.sh 打開 CAN 卡驅動

13.測試: 將 CAN 卡的 CAN0 和 CAN1 連接起來
14.下載測試代碼

15.跳轉到 can-utils 目錄后執行編譯:

16.執行測試命令發送數據:

17.另一個終端接收數據:
①先跳轉到 can-utils-master
②./candump can0 命令接收 can0 的數據
③對比發送的和接收的數據是否一致
④若一致則說明 CAN 卡驅動安裝成功
18.目前 Apollo 沒有將 Socket CAN 的啟動腳本加入系統中,啟動Socket CAN 的流程如下:
①外部啟動,設置到 start 腳本
②目錄啟動腳本
③啟動 Apollo Canbus 模塊

Docker 軟件安裝:
Docker 是一種類似於虛擬機的軟件,它是一種對操作系統的虛擬,將 Apollo 所依賴的環境做成 image 鏡像放在 Docker 容器中,可以簡化 Apollo 系統的部署
1.在 docker 的官網上下載 deb 安裝包

2.雙擊 deb 安裝包,在 software center 進行安裝,重啟工控機

Git 安裝:
1.輸入如下命令安裝 git:

拉取 Apollo 源代碼
1.通過cd ~進入 home 目錄:
2.通過git init初始化git倉庫
3.下載源代碼

4.通過cd ~/apollo跳轉到 Apollo 目錄:
5.將代碼切換到工作分支 r3.0.0:

6.設置 Apollo 環境變量:

7.將當前用戶加入 docker 用戶組:

8.重啟

啟動並加入docker容器
1.通過cd ~/apollo跳轉到apollo目錄
2.執行腳本

第一次進入 Docker 或者當 image 鏡像有更新時,docker 啟動腳本會自動下載所需的鏡像文件,下載鏡像文件所需時間較長。執行完后會返回一個結果

3.通過bash docker/scripts/dev_into.sh啟動 dev_into.sh 腳本進入 docker 環境進入后命令提示符變成了 in_dev_docker

編譯apollo
1.通過bash apollo.sh build編譯,安裝開始時會有黃色的警告,找不到 ESD-CAN 相關庫文件,如果本次使用的是 Socket CAN 則忽略,若使用的是 ESD-CAN 則按照黃色告警的要求去讀 README 文件,按照 README 文件說明完成 ESD-CAN 庫文件的安裝設置過程
2.拷貝文件夾。打開ESD-CAN驅動安裝包,找到底下的esdcan-pcie402-linux2.6.x-x86_64文件夾,將文件夾下對應的include 和 lib64 文件拷貝到 Apollo 的指定目錄下。esdcan 目錄在 apollo/third_party/can_card_library/esd_can
3.重命名文件夾,將lib64重命名為lib
4.lib下有一個.so文件和另外一個文件,保留.so文件,刪除另外一個
5.創立符號鏈接,進入剛剛拷貝的 lib 目錄輸入以下命令:

6.再次編譯 Apollo,查看黃色告警是否消失

apollo控制界面以及操作界面
1.通過bash scripts/bootstrap.sh啟動圖形化界面,根據提示用瀏覽器打開網址
2.下載回放數據報demo

3.回放數據包 demo


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM