[ROS2]よく使うコマンド集
注意!よく使うコマンドなのですべてを網羅しているわけではありません.
随時追記よろしくお願いします.
ビルド時に使用するのがcolcon
コマンドです.
基本的にワークスペースディレクトリの中で実行することになります.
colcon build
ディレクトリ配下のすべてのパッケージをビルドします.
ディレクトリ配下の特定のパッケージだけをビルドしたい場合は--packages-select
を使用します.
pkg
パッケージのみをビルドしたい場合は次のようになります.
colcon build --packages-select pkg
一度ビルドに失敗すると変にキャッシュが残ってしまい再度ビルドに失敗する場合があります..その場合は--cmake-clean-cache
を使用します.
それにより残っているキャッシュを一度削除し,その後ビルドを行います.
colcon build --cmake-clean-cache
ノードの立ち上げ,トピックやサービスの一覧取得など,さまざまな用途で使用します.
.bashrc
に以下を追記することで開いた端末のどこからでも使用できます.
source /opt/ros/foxy/setup.bash
ros2 run pkg node
実行ファイル名を指定しノードを立ち上げます.上の例ではpkg
がパッケージ名,node
がノードを起動するための実行ファイル名になります.
ros2 node list
現在起動しているノードの一覧を取得します.
ros2 topic list
現在発行されているトピックの一覧を取得します.
[ros2 topic list でトピック通信の一覧が返ってこない場合]
問題のPC上でros2 multicast receiveを実行してから正常動作するPCでros2 multicast sendを実行し,何も返ってこない場合はubuntuのファイアウォールの設定が変更された可能性があるので,以下を実行する.(sourceはこちら)
sudo ufw allow in proto udp from 192.168.0.0/4
ros2 topic echo /sample_msg
指定したトピックのメッセージを閲覧します.上の例ではトピック名/sample_msg
の中身を見ます.
ros2 service list
現在利用可能なサービスの一覧を取得します.
ros2 interface list
使用できるインターフェイスの一覧を取得します.独自インターフェイスについても適切に登録されたならここで出力されるはず.
ros2 interface show std_msgs/msg/String
インターフェイスを構成するデータ型を閲覧します.上の例ではメッセージstd_msgs/msg/String
の中身を見ます.