ROS記錄回放資料

2021-10-07 07:33:25 字數 1572 閱讀 1257

一、使用rostopic記錄資料

$ rostopic list #檢視所有topic列表

$ mkdir bagfile #新建乙個bagfile資料夾存放生成的rosbag檔案

$ cd bagfile

$ rosbag record -a #記錄所有topic資料,生成rosbag資料報

$ rosbag record -o rosbag_name /topic1 /topic2
只記錄指定topic資料,-o指定要儲存的rosbag檔名,rosbag_name即為生成的rosbag檔名;若為-o,則生成的rosbag檔名後面自動新增年月日時間

(1) 可在bagfile檔案中檢視生成的.bag資料報;若出現.bag.active檔案,則表示正在記錄,使用ctrl+c可終止儲存資料;

(2) rosbag在記錄資料時相當於乙個subscribe程式

二、檢視rosbag資料

$ rostopic echo /topic
可在終端直接列印指定topic的資料資訊

$ rosbag info mybagfile.bag		#檢視rosbag資料報基本資訊

三、將rosbag包轉化為txt檔案

$ rostopic echo -b mybagfile.bag -p /topic > mytxtfile.txt
將mybagfile.bag檔案中指定/topic的訊息轉化為txt文件,並存為mytxtfile.txt。

四、回放rosbag資料報

其中,bag time為rosbag資料報收到每一則訊息時的時間。

(1) rosbag在回放資料時相當於乙個publisher程式;

(2) 重新執行訂閱了bag包中發布的topic程式,即可接收到對應topic的資訊。

使用rviz回放rosbag資料報視覺化:

$ rosbag play -d 10 mybagfile.bag
-d 10: 指定延時10秒回放;開啟rviz訂閱topic即可在場景顯示視窗看到視覺化資訊。

注:rviz中訂閱rosbag資料報中的topic,需要先發布rosbag資料報,才能在rviz中搜尋到topic,一旦rosbag資料報發布完畢,則topic再次消失

五、.bag.active恢復為.bag:

$ cd bagfile

$ rosbag reindex mybagfile,bag.active

$ rosbag fix mybagfile.bag.active resultname.bag

ROS錄製與回放資料

rosbag record a附加 a選項,該選項表示將當前發布的所有話題資料都錄製儲存到乙個bag檔案中,個以年份 日期和時間命名並以.bag作為字尾的檔案。rosbag info 檢視bag檔案中的內容而無需回放出來。rosbag play 回放bag檔案以再現系統執行過程rosbag play...

ROS的資料錄取與回放

資料的錄取與回放對日常的工作學習至關重要,因為在裝置上執行相關程式時,難免會出現錯誤或者不符合理想的地方,這就需要我們根據資料進行分析問題出在什麼地方,這時就需要錄取資料並進行回放去研究。一,首先讓我們在ros下執行乙個簡單的話題,以方便後續的資料錄取。開啟乙個終端,輸入以下 roscore再開啟另...

ROS的資料錄取與回放turtlesim小例子

原創 2018 08 06 16 04 22 lz劍鳴驚夢 閱讀數 349 更多分類專欄 ros 資料的錄取與回放對日常的工作學習至關重要,因為在裝置上執行相關程式時,難免會出現錯誤或者不符合理想的地方,這就需要我們根據資料進行分析問題出在什麼地方,這時就需要錄取資料並進行回放去研究。一,首先讓我們...