Main Content

ROS bag ファイルのログ記録および解析

ROS bag ファイルおよび ROS 2 bag ファイルのインポート、可視化、および解析

ROS のトピックのメッセージ データは ROS bag ファイル ("rosbag") と呼ばれるログ ファイルに保存されます。MATLAB® 関数、アプリ、および Simulink® ブロックを使用して、これらの rosbag ファイル内の ROS データに対してアクセス、フィルター処理、オフライン解析の実行を行うことができます。これらの bag は多くの場合、1 つ以上の ROS トピックにサブスクライブし、受け取ったメッセージ データを効率的なファイル構造で保存することにより作成されます。rosbag の処理例は、Work with rosbag Logfilesを参照してください。

ROS ツールボックスでは、ROS 2 bag ファイル ("ros2bags") 内のメッセージ データにアクセスすることもできます。これらの ros2bag ファイルで ROS 2 データをフィルター処理し、オフライン解析を実行できます。

rosbagreader を使用してメッセージ データを rosbag から抽出し、rosbagwriter を使用して rosbag ログ ファイルを作成してログをそのファイルに書き込みます。ROS Logger アプリを使用して Simulink シミュレーション中に ROS メッセージを記録することもできます。詳細については、Use ROS Logger App to Save ROS Messages from Simulinkを参照してください。

メッセージ データを ros2bag ログ ファイルから抽出するには、ros2bagreader オブジェクトを使用します。ログを ros2bag ログ ファイルに書き込むには、ros2bagwriter オブジェクトを使用します。ROS 2 Logger アプリを使用することで、Simulink シミュレーション中に ROS 2 メッセージを記録することもできます。

ROS bag ログ ファイル内のメッセージを可視化するには、ROS Bag ビューアー アプリを使用します。

アプリ

ROS Bag ビューアーVisualize messages in ROS bag file

関数

すべて展開する

rosbagrosbag ログ ファイルを開いて解析
readMessagesrosbag からのメッセージの読み取り
rosbagreaderrosbag ログ ファイル情報にアクセス
rosbagwriterCreate and write logs to rosbag log file
writeWrite logs to rosbag log file
selectrosbag 内のメッセージのサブセットを選択
timeseries選択したメッセージ プロパティの時系列オブジェクトの作成
BagSelection rosbag の選択を保存するためのオブジェクト
ros2bagreaderROS 2 bag ログ ファイル情報へのアクセス
readMessagesRead messages from ros2bagreader object
selectSelect subset of messages in ros2bagreader
ros2bagwriterCreate and write logs to ROS 2 bag log file
writeWrite logs to ROS 2 bag log file
deleteRemove ros2bagwriter object from memory

ブロック

Read Dataログ ファイルからのデータの再生

トピック

MATLAB での ROS Bag ログ記録

Simulink での ROS Bag ログ記録

ROS Bag ファイル解析