Main Content

ros2

ROS 2 ネットワークに関する情報を取得

R2019b 以降

説明

ros2 msg list は、MATLAB で使用できるすべての ROS 2 メッセージ タイプのリストを返します。

ros2 msg show msgType は、ROS 2 メッセージ msgType の定義を提供します。

ros2 node list は、ROS 2 ネットワーク上のノードをリストします。

ros2 topic list は、パブリッシャーまたはサブスクライバーが登録されている ROS 2 ネットワーク上のトピック名をリストします。

ros2 service list は、サーバーまたはクライアントのいずれかを通じて ROS 2 ネットワークに登録されているサービス名をリストします。

ros2 service type svcname は、提供された svcname について、ROS 2 ネットワークに登録されているサービス タイプをリストします。

ros2 action list は、サーバーまたはクライアントのいずれかを通じて ROS 2 ネットワークに登録されているアクション名をリストします。

ros2 action type actionname は、提供された actionname について、ROS 2 ネットワークに登録されているアクション タイプをリストします。

ros2 bag info folderpath は、folderpath にある ros2bag の内容に関する情報を MATLAB® コマンド ウィンドウに表示します。この情報には bag2info 構造体の内容が含まれます。

メモ

ROS 2 bag ログ ファイルにカスタム メッセージが含まれている場合は、このコマンドを使用する前に、関数 ros2genmsg を使用して ROS 2 カスタム メッセージに対する MATLAB インターフェイスを生成します。

msgList = ros2("msg","list") は、MATLAB で使用できるすべての ROS 2 メッセージ タイプのリストを返します。

msgInfo = ros2("msg","show",msgType) は、ROS 2 メッセージ msgType の定義を提供します。

nodeList = ros2("node","list") は、ROS 2 ネットワーク上のノードをリストします。

topicList = ros2("topic","list") は、パブリッシャーまたはサブスクライバーが登録されている ROS 2 ネットワーク上のトピック名をリストします。

serviceList = ros2("service","list") は、サーバーまたはクライアントのいずれかを通じて ROS 2 ネットワークに登録されているサービス名をリストします。

serviceTypes = ros2("service","type",svcname) は、提供された svcname について、ROS 2 ネットワークに登録されているサービス タイプをリストします。

actionList = ros2("action","list") は、サーバーまたはクライアントのいずれかを通じて ROS 2 ネットワークに登録されているアクション名をリストします。

actionTypes = ros2("action","type",actionname) は、提供された actionname について、ROS 2 ネットワークに登録されているアクション タイプをリストします。

nodeList = ros2("node","list","DomainID",ID) は、指定されたネットワーク ドメイン ID について、ROS 2 ネットワーク上のノードをリストします。"DomainID" の値は、ROS_DOMAIN_ID 環境変数で特に指定されていない限り、既定では 0 です。

topicList = ros2("topic","list","DomainID",ID) は、指定されたネットワーク ドメイン ID について、パブリッシャーまたはサブスクライバーが登録されている ROS 2 ネットワーク上のトピック名をリストします。

メモ

"DomainID" の名前と値のペアは、ノードやトピックのリストなど、アクティブなネットワークから収集される情報にのみ適用され、メッセージ情報などの静的な ROS 2 データには適用されません。

特定のドメイン ID について ros2 を初めて呼び出した場合、ネットワークのすべての情報をすぐに使用できないことがあります。不完全なネットワーク情報が ros2 から返される場合は、少し待ってからもう一度試してください。

bag2info = ros2("bag","info",folderpath) は、folderpath にある ros2bag の内容に関する情報を構造体 bag2info として返します。

メモ

ROS 2 bag ログ ファイルにカスタム メッセージが含まれている場合は、この関数を使用する前に、関数 ros2genmsg を使用して ROS 2 カスタム メッセージに対する MATLAB インターフェイスを生成します。

すべて折りたたむ

geometry_msgs/Accel メッセージの定義を表示します。

ros2 msg show geometry_msgs/Accel
# This expresses acceleration in free space broken into its linear and angular parts.
Vector3  linear
Vector3  angular

geometry_msgs/Accel メッセージの定義を表示します。

ros2 msg show geometry_msgs/Accel
# This expresses acceleration in free space broken into its linear and angular parts.
Vector3  linear
Vector3  angular

ROS 2 ネットワーク上にサンプル ノード myNode を作成します。

node = ros2node("myNode");

ネットワーク上のノードをリストします。

ros2 node list
/myNode

ネットワークから myNode を削除します。

delete(node)

使用可能な ROS 2 トピックをリストします。

ros2 topic list
/parameter_events
/rosout

入力引数

すべて折りたたむ

メッセージ タイプ。string スカラーまたは文字ベクトルとして指定します。string は大文字と小文字が区別され、部分一致は受け入れられません。ros2("msg","list") を呼び出すことで与えられたリスト上のメッセージと一致していなければなりません。

関数の構文:

例: ros2("msg","show","sensor_msgs/LaserScan")

コマンドの構文:

例: ros2 msg show sensor_msgs/LaserScan

データ型: char | string

サービス名。string または文字ベクトルとして指定します。string は大文字と小文字が区別され、部分一致は受け入れられません。ros2("service","list") を呼び出すことで与えられたリスト上のサービスと一致していなければなりません。

関数の構文:

例: ros2("service","type","/example_service")

コマンドの構文:

例: ros2 service type /example_service

データ型: char | string

アクション名。string または文字ベクトルとして指定します。string は大文字と小文字が区別され、部分一致は受け入れられません。ros2("action","list") を呼び出すことで与えられたリスト上のアクションと一致していなければなりません。

関数の構文:

例: ros2("action","type","/example_action")

コマンドの構文:

例: ros2 action type /example_action

データ型: char | string

ros2bag ファイルのパス。string スカラーまたは文字ベクトルとして指定します。

メモ

folderpath の場所に、ROS 2 bag ファイル (.db3) と bag ファイルに関するメタ情報を保持する metadata.yaml が含まれている必要があります。フォルダー名は ROS 2 bag ファイル名と同じでなければなりません。

関数の構文:

例: ros2("bag","info","C:\Users\Jack\MATLAB\EM\alltopics")

コマンドの構文:

例: ros2 bag info C:\Users\Jack\MATLAB\EM\alltopics

データ型: char | string

ROS 2 ネットワークのドメイン ID。0 ~ 232 の非負のスカラー整数として指定します。

例: 2

データ型: double

出力引数

すべて折りたたむ

MATLAB で使用可能なすべてのメッセージ タイプのリスト。文字ベクトルの cell 配列として返されます。

ROS メッセージ定義内の情報の詳細。文字ベクトルとして返されます。

ROS 2 ネットワーク上のトピックのリスト。文字ベクトルの cell 配列として返されます。

ROS 2 ネットワーク上のサービスのリスト。文字ベクトルの cell 配列として返されます。

ROS 2 ネットワーク上のアクションのリスト。文字ベクトルの cell 配列として返されます。

使用可能なノード名のリスト。文字ベクトルの cell 配列として返されます。

ros2bag の内容に関する情報。構造体として返されます。この構造体には、ros2bag ログ ファイルとその内容に関連するフィールドが含まれます。以下は、構造体としての ros2bag のサンプル出力です。

         Path: 'C:\Users\Jack\MATLAB\EM\alltopics\alltopics.db3'
      Version: '1'
    StorageId: 'sqlite3'
     Duration: 102.396644003
        Start: [1×1 struct]
          End: [1×1 struct]
         Size: 4965433
     Messages: 36503
        Types: [5×1 struct]
       Topics: [5×1 struct]

データ型: struct

バージョン履歴

R2019b で導入