保存
基本的な使い方、トピック名を連続で指定して好きなトピックを保存できる。以下のコマンドの場合は/Odomトピックと/image_rawトピックと/imuトピックが保存される。
コマンドを打ったときのcurrent directoryに保存され、記録したときの時刻.bagが名前になる。
rosbag record /Odom /image_raw /imu
-aオプションですべてのトピックを保存できる。
rosbag record -a
-Oオプションでbagファイルの名前を指定できる。
rosbag record -O file.bag /Odom
-dオプションで指定秒間保存できる。
rosbag record -d=20 /Odom
-xオプションで指定のトピックを保存しない。
この場合だと/tfを除いたすべてのトピックを保存する。
rosbag record -a -x /tf
再生
基本的な使い方、rosbagを再生するには以下。
"rosbag.bag"は再生したいbagファイルの名前にしてください。
rosbag play robot_bag.bag
-lオプションでリピート再生できる。
rosbag play -l robot_bag.bag
-uオプションで最初から指定秒間再生する。
この場合は0~40秒までを再生する。
rosbag play -u 40 robot_bag.bag
-sオプションで指定秒後から再生する。
この場合は40秒~最後までを再生する。
rosbag play -s 40 robot_bag.bag
-rオプションで倍速再生できる。
この場合は2倍再生。
rosbag play -r 2.0
--clockオプションでROS時間を通知する/clockトピックを送信する。
rosbag play robot_bag.bag --clock
連続して書けばオプションを複数付けれる。
この場合は2倍速で、40秒〜再生して、clockトピックも送信する。
rosbag play -r 2.0 -u 40 --clock robot_bag.bag
なお、オプションは以下のように後ろにも付けることができる。
rosbag play robot_bag.bag -r 2.0 -u 40 --clock
その他
rqt_bagコマンドでどのようにトピックが記録されたかが見れる。
rosbag recordした後に目的のトピックがきちんと保存できているかの確認でもよく使われる。
出てきたウィンドウの左側にあるトピック名を右クリック→View→Plotで値がグラフ表示できる。
rqt_bag robot_bag.bag
infoでrosbagの情報が見れる。
rosbag info robot_bag.bag
参考
rosbagコマンドのオプションが記載されてるwikiはここ。
http://wiki.ros.org/rosbag/Commandline