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 はデータ ディクショナリを使用してモデル情報を保存しますが、サブシステム参照ではアタッチされたデータ ディクショナリの移植性がサポートされていないためです。サブシステム参照の使用の詳細については、ライブラリ ディクショナリを使用するときの考慮事項 (Simulink)を参照してください。

関数

すべて展開する

ros2deviceConnect to remote ROS 2 device
runNodeStart ROS or ROS 2 node
stopNodeStop ROS or ROS 2 node
isNodeRunningDetermine if ROS or ROS 2 node is running

ブロック

Blank Message指定されたメッセージ タイプを使用した空白の ROS 2 メッセージの作成
Call ServiceCall service in ROS 2 network
Current Time現在の ROS 2 時間またはシステム時間の取得
Get ParameterGet ROS 2 parameter value
Header AssignmentUpdate fields of ROS 2 message header
PublishSend messages to ROS 2 network
Read DataPlay back data from ROS 2 log file
Read ImageExtract image from ROS 2 Image message
Read ScanExtract scan data from ROS or ROS 2 laser scan message
Read Point CloudExtract point cloud from ROS 2 PointCloud2 message
SubscribeReceive messages from ROS 2 network
Write ImageWrite image data to a ROS or ROS 2 message
Write Point CloudWrite point cloud data to a ROS or ROS 2 message

トピック

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.