LoginSignup
1
1

目黒研のbagデータをautoware (ros2)で動かす

Last updated at Posted at 2023-11-30

はじめに

こんにちは!!B4の黒田です!!
今回は,以下の構成で記事を書きます!!

推奨環境
・OS ubuntu22.04
・ROS ROS2 Humble
・git 「https://github.com/settings/keys」

1. githubの登録・SSHキーの設定

2. autowareのインストール・設定

3. autoware外の環境設定

4. autoware内の環境設定

5. 幸田町で実装してみた

1. githubの登録・SSHキーの設定について

githubの登録

まずは,fire boxやChromeを開いてgithubを調べよう!!
次に,githubを登録(ユーザーネームとパスワード)しよう!!

githubのSSHキーの設定

まずは,下記の写真,右上のアイコンを押そう!!
Screenshot from 2023-07-24 16-44-24.png
「Settings」⇒「Developer settings」⇒「Personal access tokens」⇒「Tokens(classic)
Screenshot from 2023-07-24 17-04-49.png
上記の写真,「Generate new token」⇒「Generate new token(classic)」を選択.
New personal acces token (classic)に移動.
Noteは,「ubuntu22.04PC」⇐適当に判別が付く名前を決定する.ubuntu?Windows?なのか
Expirationは,「No expiration」⇐お好みで.めんどくさいので期限なしにしてます.
Select scopesは,repoにチェックマーク.
上記3つを変更後,「Generate token」を選択.
パスワードが生成させるので,メモしてください.パスワード超超超重要,これで完成!!

2. autowareのインストール・設定について

2-1. How to set up a development environment

以下のコマンド打ってください

$git clone git@github.com:MeijoMeguroLab/Y23_autoware.git

⚠⚠注意:外部ネットに繋ぐこと⚠⚠

$cd Y23_autoware
$./setup-dev-env.sh

ここで,エラー発生!!
自分の場合は,systemdとubevがお互い干渉環境にあったらしく、、、
以下のコマンドでsystemdをアップグレードでエラー解消.以下,時間かかります.

$sudo apt upgrade systemd

上記が通れば,もう一度やり直してください。これで通るはず.

$./setup-dev-env.sh

2-2. How to set up a workspace

以下のコマンド打ってください.以下(3行目),時間かかります.

$cd autoware
$mkdir src
$vcs import src < autoware.repos
$source /opt/ros/humble/setup.bash
$rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO

ここで,エラー発生!!
自分の場合は,rosdepのversionが古かったらしく、、、
以下のコマンドでrosdepをupdateすればエラー解消.以下,時間かかります.
また,Y23_autoware/src/universe/autoware.universe/perception内のCOLCON_IGNOREは削除.
autowareはすぐに変更されるのでエラー分を見て,gitを入れ直す必要があります.
現時点で,autoware.universeは変更されているのでもう一度git cloneし直して下さい.

$rosdep update

上記が通れば,もう一度やり直してください。これで通るはず.

$rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO

最後に,ここで,コルコンビルドして下さい.ここも,結構時間かかります.

$colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

3. autoware外の環境設定

ここでは,簡潔に準備するものについて説明する.

3-1 目黒研のros1bagデータをros2bagデータに変換

別のqiita記事に記述があります.参考にどうぞ.

3-2 topic_name_chengerをgit cloce

目黒研のbagデータ(topic,type)をautowareに適応するために用いる.
このリンクから飛べます.README.mdを参考に.

3-3 network設定

はじめに,Home内の.bashrcを開きます.隠しファイルなのでCtrl+hで出できます.
.bashrcの最後の行に,「export ROS_LOCALHOST_ONLY=1」を追加します.
次は,以下のコマンドを打ちます.

$ip link show lo

「1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000」
が出力させるはずです.上記に,MULTICASTがなければ,コマンドで以下を打つ.

$sudo ip link set lo multicast on

以上で,networkの設定は完了です.

4. autoware内の環境設定

ここでは,autowareのコードを触っていきます.多いし,難しいし,さっぱりー.
目黒のrosbagデータに対応させるために,以下を変更するといいと思います.

4-1 sample_sensor_kit_launchをgit clone

このリンクから飛べます.
git cloneする意味として,lidarの設定が必要であるため.

4-2 autoware.universeをgit clone

このリンクから飛べます.
git cloneする意味として,vector map視点からpcd視点に変更するため.

4-3 autoware_invidual_paramsをgit clone

このリンクから飛べます.
git cloneする意味として,車両のtf設定変更を行うため.

5. 幸田町で実装してみた

使用したrosbagデータ
・場所⇒幸田町
・計測日時 2021/10/14

次の順番でコマンド打ちましょう!!それぞれ別コマンドで!!

5-1 autowareを立ち上げましょう!!

$cd Y23_autoware
$source install/setup.bash
$ros2 launch autoware_launch logging_simulator.launch.xml map_path:='/home/megken/0_data/kota/map' vehicle_model:=sample_vehicle sensor_model:=sample_sensor_kit perception:=false planning:=false control:=false

5-2 topic_name_changerを立ち上げましょう!!

$ cd ros2_ws/
$source install/setup.bash
$ros2 launch autoware_topic_name_changer autoware_topic_name_changer_launch.py

5-3 ros2 bag playをしましょう!!

bagデータが欲しければ言って下さい.

$ros2 bag play --clock 100 '/home/megken/0_data/kota/bag/2021-10-14_run2_cut' --topics /velodyne_packets /imu/data_raw /rtk/fix /can_twist -s sqlite3

5-4 ros2 bag recordをしましょう!!

$ros2 bag record /sensing/lidar/top/velodyne_packets /sensing/gnss/ublox/fix_velocity /sensing/imu/tamagawa/imu_raw /sensing/gnss/ublox/nav_sat_fix

record前に,トピックが流れているかの確認も大事です!!以下のコマンドで確認しよう!!

$ros2 topic echo /sensing/lidar/top/velodyne_packets
$ros2 topic echo /sensing/gnss/ublox/fix_velocity
$ros2 topic echo /sensing/imu/tamagawa/imu_raw
$ros2 topic echo /sensing/gnss/ublox/nav_sat_fix

また,rosbagデータ内のtopicの確認もできます.以下のコマンドで確認しよう!!
下記の' '内はtopicを見たいbagデータをinputして下さい!!

$ros2 bag info 'input_bag'

以下は,実際に実装した時の写真です.

image.png

以上,黒田からでした.

参考:
ローカルのgit設定「https://qiita.com/koki2022/items/2a056f1286b9c62bf614」

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1