Unity製自動運転シミュレータのAWSIMをうごかしてみた
株式会社ティアフォーから自動運転シミュレータ「AWSIM」が公開された。
Autowareとは自動運転システム用オープンソースソフトウェアとして公開されている。
今回のAWSIMはUnityを使ったシミュレータもオープンソースで公開したもので、QuickStartチュートリアルがあったので試してみた。
動画解説はこちら
推奨環境
OS Ubuntu 20.04
CPU 6cores and 12thread or higher
GPU RTX2080Ti or higher
Nvidia Driver (Windows) >=472.50
Nvidia Driver (Linux) >=460.27.03
GPUはなるべく高性能のものを用意しよう。
試験環境
OS Ubuntu 20.04 LTS
CPU AMD Ryzen 9 3900X BOX (12core / 24thread)
GPU GeForce RTX 3090 (24GB)
OSのセットアップ
今回はWindowsと環境を切り離したかったので、Ubuntu 20.04 LTSをUSB SSDにインストールして使用した。
そのセットアップについては以下の記事を参照。
NVIDIA driverのセットアップ
NVIDIAドライバーインストールのためのレポジトリを追加
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
インストールできるNVIDIAのドライバー一覧を表示
ubuntu-drivers devices
こんな感じで表示されます
== /sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0 ==
modalias : pci:v000010DEd00002560sv00001028sd00000A6Ebc03sc00i00
vendor : NVIDIA Corporation
driver : nvidia-driver-510 - distro non-free
driver : nvidia-driver-470 - distro non-free
driver : nvidia-driver-515-server - distro non-free
driver : nvidia-driver-515-open - distro non-free
driver : nvidia-driver-470-server - distro non-free
driver : nvidia-driver-515 - distro non-free
driver : nvidia-driver-525-open - distro non-free recommended
driver : nvidia-driver-525 - distro non-free
driver : xserver-xorg-video-nouveau - distro free builtin
ここでチュートリアル通りに「ubuntu-drivers autoinstall」を実行すると、上記リストで「recommended」になっているnvidia-525-openがインストールされるが、手元の環境だとうまく動かなかった。
そのため、この時点で最新のプロプライエタリ版を入れる
sudo apt install nvidia-driver-525
再起動
sudo reboot
再起動後、Nvidiaドライバーの動作を確認
nvidia-smi
Thu Dec 22 21:03:38 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.60.11 Driver Version: 525.60.11 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
~
.bashrcへの追加
.bashrcを好きなエディタで開く
nano ~/.bashrc
以下を末尾にコピペ
export ROS_LOCALHOST_ONLY=1
export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
if [ ! -e /tmp/cycloneDDS_configured ]; then
sudo sysctl -w net.core.rmem_max=2147483647
sudo ip link set lo multicast on
touch /tmp/cycloneDDS_configured
fi
ctrl+X
→Enter
で保存(nanoの場合)
設定を反映させる
source ~/.bashrc
シミュレータのインストール
ZIPをダウンロード
wget https://github.com/tier4/AWSIM/releases/download/v1.0.1/AWSIM_v1.0.1.zip
解凍
unzip ./AWSIM_v1.0.1.zip
実行権限をつける
chmod +x ./AWSIM/AWSIM.x86_64
起動
./AWSIM/AWSIM.x86_64
マップファイルの準備
西新宿MAPのZIPファイルをダウンロード
wget https://github.com/tier4/AWSIM/releases/download/v1.0.0/nishishinjuku_autoware_map.zip
解凍
unzip ./nishishinjuku_autoware_map.zip
Autowareのインストール
ダウンロードして
git clone https://github.com/autowarefoundation/autoware.git
cd autoware
git checkout awsim-stable
セットアップスクリプトを実行
./setup-dev-env.sh
途中で2回質問があり、パスワードを聞かれるので入力。
かなり時間がかかるが、(成功すれば)実行は1度だけ
src
ディレクトリを作ってファイルを格納
mkdir src
vcs import src < autoware.repos
ROSのパッケージをインストール
source /opt/ros/galactic/setup.bash
rosdep update
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
Workspaceをビルド
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-w"
起動
source install/setup.bash
ros2 launch autoware_launch e2e_simulator.launch.xml vehicle_model:=sample_vehicle sensor_model:=awsim_sensor_kit map_path:=/home/YOUR_USERNAME/nishishinjuku_autoware_map
最後に
もしビルドで苦しんだ場合、Dockerで環境入れてしまうのもいいかも?(未検証)
無事起動したら、チュートリアルの続きを見ながら自動運転を体験しよう。
Discussion