[ROS] CARLA シュミレータ

何を学習するのか?

UE4で作成された自動運転の為のシュミレータCARLAのセンサー
データをROSで取得してみる

CARLAのサーバー起動

$ cd  ~/src/carla
$ make launch

再生ボタンを押す

CARLAシュミレータの起動

$ cd ~/src/carla/PythonAPI/examples
$ python3 manual_control_steeringwheel.py

G29コントローラーを使いたいので
manual_control_steeringwheel.py

ROS bridge installation

ROS bridge installation を参考に carla-ros-bridge-melodic を
インストールする。今回は apt でインストールしてみる

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 81061A1A042F527D &&
sudo add-apt-repository "deb [arch=amd64 trusted=yes] http://dist.carla.org/carla-ros-bridge-melodic/ bionic main"
sudo apt update &&
sudo apt install carla-ros-bridge-melodic
$ source /opt/carla-ros-bridge/melodic/setup.bash

ROS bridge インストール先

dpkg -L パッケージ名 のコマンドでaptでのインストール先を確認

$ dpkg -L carla-ros-bridge-melodic | grep launch

ROS bridge Start

幾つか起動する launch ファイルがインストールされるので
状況に応じて選択する。

# Option 1: start the ros bridge
roslaunch carla_ros_bridge carla_ros_bridge.launch

# Option 2: start the ros bridge together with RVIZ
roslaunch carla_ros_bridge carla_ros_bridge_with_rviz.launch

# Option 3: start the ros bridge together with an example ego vehicle
roslaunch carla_ros_bridge carla_ros_bridge_with_example_ego_vehicle.launch

エラーが出た場合

$ roslaunch carla_ros_bridge carla_ros_bridge.launch

“ImportError: No module named carla” 问题的解决方案_amnesiagreen的博客-CSDN博客_no module named carla
このサイトなどから、PATHを通す必要があるらしい。

$ export PYTHONPATH=$PYTHONPATH:/home/max/src/carla/PythonAPI/carla/dist/carla-0.9.9-py2.7-linux-x86_64.egg

Carla ROS Bridge

launchファイルで起動出来たら、ROSのノード、トピックを確認する

$ rosnode list
$ rosnode info /carla_ros_bridge
$ rostopic list

ROS経由で画像を確認する

$ rqt_image_view

Rvizで確認する

$ roslaunch carla_ros_bridge carla_ros_bridge_with_rviz.launch

参考サイト

ROS bridge installation
CARLA X ROS: シミュレータで自動運転車にセンサをガン積みする!!! – Qiita
Linux build – CARLA Simulator
自動運転シミュレータCARLAを使う – Fixstars Tech Blog /proc/cpuinfo
lardemua/ros_bridge: ROS Bridge Driver for Carla Simulator package : https://github.com/carla-simulator/carla

投稿者: yoshimax

Software Engineer #Unity #iOS