Main Content

Simulink における ROS 2 ネットワーク アクセス

Simulink® を使用して ROS 2 のネットワークおよびメッセージにアクセスする

ROS Toolbox を使用して、ROS および ROS 2 に Simulink 内で接続し、ネットワーク経由でメッセージを送信できます。Get Started with ROS 2 in Simulinkを参照してください。

また、コードを生成してターゲット システムに展開することもできます。スタンドアロンの ROS 2 ノードの作成に関する高度な例については、Generate a Standalone ROS 2 Node from Simulinkを参照してください。

ROS 2 デバイス上で使用可能な展開済みの ROS 2 ノードの実行、停止、またはステータス チェックを行うには、リストにある MATLAB® 関数を使用します。ros2device を使用して ROS デバイスへの接続を作成します。

メモ

サブシステム参照内での ROS 2 ブロックの使用はサポートされていません。これは、ROS Toolbox はデータ ディクショナリを使用してモデル情報を保存しますが、サブシステム参照ではアタッチされたデータ ディクショナリの移植性がサポートされていないためです。サブシステム参照の使用の詳細については、Considerations When Using a Library Dictionary (Simulink)を参照してください。

ROS 2 ブロックは、ソフトウェアインザループ (SIL) およびプロセッサインザループ (PIL) のシミュレーションではサポートされていません。

関数

すべて展開する

ros2deviceConnect to remote ROS 2 device (R2021a 以降)
runNodeStart ROS or ROS 2 node (R2019b 以降)
stopNodeStop ROS or ROS 2 node (R2019b 以降)
isNodeRunningDetermine if ROS or ROS 2 node is running (R2019b 以降)

ブロック

Apply TransformTransform input ROS or ROS 2 message to target frame (R2023b 以降)
Blank Message指定されたメッセージ タイプを使用した空白の ROS 2 メッセージの作成 (R2019b 以降)
Call ServiceCall service in ROS 2 network (R2021b 以降)
Cancel Action GoalCancel active action goal in ROS 2 network (R2024a 以降)
Current Time現在の ROS 2 時間またはシステム時間の取得 (R2022b 以降)
Get ParameterGet ROS 2 parameter value (R2022b 以降)
Get TransformGet transformation between source and target frame from ROS 2 network (R2023b 以降)
Header AssignmentUpdate fields of ROS 2 message header (R2023a 以降)
Monitor Action GoalMonitor action goal in ROS 2 network (R2024a 以降)
PublishSend messages to ROS 2 network (R2019b 以降)
Receive Service RequestReceive service request from ROS 2 network (R2024a 以降)
Read DataPlay back data from ROS 2 log file (R2021b 以降)
Read ImageExtract image from ROS 2 Image message (R2021b 以降)
Read ScanExtract scan data from ROS or ROS 2 laser scan message (R2022a 以降)
Read Point CloudExtract point cloud from ROS 2 PointCloud2 message (R2021b 以降)
Send Action GoalSend action goal messages to ROS 2 network (R2024a 以降)
Send Service ResponseSend service response to ROS 2 service client (R2024a 以降)
SubscribeReceive messages from ROS 2 network (R2019b 以降)
Write ImageWrite image data to a ROS or ROS 2 message (R2022a 以降)
ROS Write Point Cloud, ROS 2 Write Point CloudWrite point cloud data to a ROS or ROS 2 message (R2022a 以降)

トピック

ROS 2 ネットワーク

ROS 2 メッセージ

ROS 2 アプリケーション

モデルの実行

  • Enable ROS 2 Time Model Stepping for Deployed Nodes
    You can enable a deployed ROS 2 node to execute based on the time published on the /clock topic on a ROS 2 network. To deploy a ROS 2 node from Simulink, see Generate a Standalone ROS 2 Node from Simulink.