ROS2の用語まとめ【アニメーションでトピック等を理解する】

ROS2を使う上で、知っておきたい用語をまとめました。説明はROS2の公式チュートリアル[1]https://docs.ros.org/en/foxy/Tutorials.htmlを参考にしています。

トピックやサービスなどの通信方法に関する用語は、表下のアニメーションが理解の助けになるかと思います。

用語説明
ワークスペース  ROSを使って開発を行う場所。ROSのパッケージを含むディレクトリ。
パッケージROSで動かすソフトウェアとそれに必要な設定ファイルなどをまとめたディレクトリ。
アンダーレイROSのコアのワークスペースのこと。aptやソースコードビルドした公式のパッケージ群、オーバーレイのビルドに必要な依存関係を含む。
オーバーレイローカルのワークスペースのこと。自作パッケージを管理。オーバーレイはアンダーレイよりも優先される。
ノードROSの構成プログラム。各ノードは単一のモジュール目的を担当(例. ホイールモーターを制御するためのノード、レーザー距離計を制御するためのノードなど)。
トピックノードがメッセージをやり取りするための通信方法。非同期通信(データ垂れ流し)。publisher-subscriber model。
サービスノードがメッセージをやり取りするための通信方法。同期通信(ノードAからノードBにrequestを出して、responseが返ってくるのを待つ)。call-and-response model。
メッセージノード間でやり取りされるデータ。
パラメータノードに対する設定値。
アクション        ノードがメッセージをやり取りするための通信方法。トピックとサービスを組み合わせたもの。サービスのようなやり取りに加えて、フィードバックを返したり、キャンセルしたりできる。client-server model。
https://docs.ros.org/en/foxy/Tutorials/Understanding-ROS2-Nodes.htmlより引用
../_images/Action-SingleActionClient.gif
https://docs.ros.org/en/foxy/Tutorials/Understanding-ROS2-Actions.htmlより引用

コメント