Autoware.auto
Table of Contents
前提
NVIDIA GeForce RTX クラスのグラフィックボードが搭載されていることが前提。
この事例では RTX 2060 を用いている。
基本的な環境構築
Ubuntu 20.04 をインストールする
基本的なインストール方法は下記参照
docker-ce インストール
Ubuntu NVIDIA ContainerToolkit
Autoware向けの環境構築
ADE インストール
バイナリファイルを /usr/local/bin において実行権を設定するだけ
git-lfs インストール
sudo apt install git-lfs
公式ドキュメント
ソース取り出し
adehome を作成する
$ mkdir ~/adehome $ cd ~/adehome $ touch .adehome
1.0.0 をチェックアウトする
$ git clone https://gitlab.com/autowarefoundation/autoware.auto/AutowareAuto.git $ cd AutowareAuto $ git checkout tags/1.0.0 -b release-1.0.0
ade環境に入る
ade環境の設定ファイル
ADE環境の設定に相当するのは .aderc であると思われる。
".aderc -> .aderc-amd64-foxy" のようにシンボリックリンクが貼られており、デフォルト環境は "amd64-foxy" になっているようだ。
ちなみに .aderc-amd64-foxy
export ADE_DOCKER_RUN_ARGS="--cap-add=SYS_PTRACE -e RMW_IMPLEMENTATION=rmw_cyclonedds_cpp" export ADE_GITLAB=gitlab.com export ADE_REGISTRY=registry.gitlab.com export ADE_DISABLE_NVIDIA_DOCKER=true export ADE_IMAGES=" registry.gitlab.com/autowarefoundation/autoware.auto/autowareauto/amd64/ade-foxy:1.0.0 registry.gitlab.com/autowarefoundation/autoware.auto/autowareauto/amd64/binary-foxy:1.0.0 "
また、lgsvlについても、 ".aderc-lgsvl -> .aderc-amd64-foxy-lgsvl" のようにシンボリックリンクが貼られており、デフォルト環境は "amd64-foxy" になっているようだ。
ちなみに .aderc-amd64-foxy-lgsvl
export ADE_DOCKER_RUN_ARGS="--cap-add=SYS_PTRACE --net=host --privileged --add-host ade:127.0.0.1 -e RMW_IMPLEMENTATION=rmw_cyclonedds_cpp" export ADE_GITLAB=gitlab.com export ADE_REGISTRY=registry.gitlab.com export ADE_IMAGES=" registry.gitlab.com/autowarefoundation/autoware.auto/autowareauto/amd64/ade-foxy:1.0.0 registry.gitlab.com/autowarefoundation/autoware.auto/autowareauto/amd64/binary-foxy:1.0.0 registry.gitlab.com/autowarefoundation/autoware.auto/ade-lgsvl/foxy:2020.06 "
ade 環境を開始
下記のように .aderc-lgsvl を指定して ade 環境を開始する。
$ ade --rc .aderc-lgsvl start --update --enter
ade環境に入ると下記の様に仮想的なホームに移動しているので、
wurly@ade:~$ ls -la total 32 drwxrwxr-x 4 wurly wurly 4096 Nov 3 16:49 . drwxr-xr-x 1 root root 4096 Nov 3 16:49 .. -rw-rw-r-- 1 wurly wurly 0 Nov 3 16:02 .adehome drwxrwxr-x 9 wurly wurly 4096 Nov 3 16:04 AutowareAuto -rw-r--r-- 1 wurly wurly 220 Feb 25 2020 .bash_logout -rw-r--r-- 1 wurly wurly 4421 Feb 22 2021 .bashrc -rw-r--r-- 1 wurly wurly 807 Feb 25 2020 .profile drwx------ 2 wurly wurly 4096 Oct 17 13:09 .ssh
AutowareAuto ディレクトリに入る
再度 AutowareAuto ディレクトリに入る。
wurly@ade:~$ cd AutowareAuto
ビルド
ビルド実行してみる(colcon build)
$ colcon build --packages-up-to autoware_demos
ビルドエラー
が、ビルドエラーになる
/home/wurly/AutowareAuto/src/control/motion_testing/include/motion_testing/motion_testing.hpp:18:10: fatal error: autoware_auto_msgs/msg/trajectory.hpp: No such file or directory 18 | #include <autoware_auto_msgs/msg/trajectory.hpp> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated.
対処方法
下記を参考にして対応
$ rm -rf build/ install/ log/ src/external/
$ vcs import < autoware.auto.$ROS_DISTRO.repos
意味がよくわからないが、これをやるとビルドエラーが解消される。
.. === ./src/external/autoware_auto_msgs (git) === Cloning into '.'... Note: switching to '1.0.0'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c <new-branch-name> Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 1358b83 1.0.0 === ./src/external/rosbridge_suite (git) === Cloning into '.'... Note: switching to '1a2c386455067b00a9e67fb70cc711add38c3582'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c <new-branch-name> Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 1a2c386 Adaptations to Eloquent [Again] (#533)
再度ビルド実行
それなりに時間がかかる。
$ colcon build --packages-up-to autoware_demos
LGSVL Simulator
別の端末を開いて実行する。
上記ページの 「Download」のボタンをクリックして 「Download for Linux」からダウンロードする。
2021.11.3現在、svlsimulator-linux64-2021.3.zip がダウンロードされた。これを展開して、AutowareAuto ディレクトリ下に移動する。
$ mv svlsimulator-linux64-2021.3 ~/adehome/AutowareAuto/svlsimulator
adehome/AutowareAuto へ移動
$ cd ~/adehome/AutowareAuto
すでに ade環境が動いているので、ここでは enter するだけ。
$ ade enter
simulator を実行する
$ ./simulator&