# Tool for rosbag analyse
'''
本教程均以151机器为例,需以不同配置的镜像内容作为base,实例化相应容器并完成相关操作。
ros1的数据包以*.bag结尾,ros2的数据包以*.db3结尾。不同数据包可从410网盘或平台自行下载。
目前数据组相关ros版本如下:
melodic - ros1
noetic - ros1
galactic - ros2
不同版本的ros启动脚本和操作指令不同。
'''
### 容器实例化指令:
### Step1 创建容器
- sudo docker run -itd --name [自定义容器名] --privileged -v [宿主机目录]:[容器内映射目录] -d [镜像名:tag]
e.g.:sudo docker run -itd --name test --privileged -v /home/igs/xueyoumin:/home/workspace -d hub.bdat.saicmotor.com:8011/dwh/ppl-base:shangqi-v1.3
### Step2 进入容器
- sudo docker exec -it [自定义容器名] [entry指令]
e.g sudo docker exec -it test /bin/bash
### ROS1
镜像名:hub.bdat.saicmotor.com:8011/dwh/ppl-base:shangqi-v1.3
### 进入相关容器后执行以下指令可进行ros1相关的操作
- source /opt/ros/noetic/setup.bash
常用指令:rosbag info可查rosbag消息类型及msg信息
### ROS2
镜像名:hub.bdat.saicmotor.com:8011/dwh/ppl-base:shangqi-ros2-v1.2
### 进入相关容器后执行以下指令可进行ros1相关的操作
- source /opt/ros/galactic/setup.bash
- 找到ros2_ws文件夹,执行source ~/ros2_ws/install/setup.bash指令
常用指令: ros2 bag info,功能同上。
### 解析
单纯的ros指令无法进行精细化的解析。需结合脚本进行操作。相关脚本可结合附件进行操作
- ros1:ros1_analyse.py
- ros2:ros2_analyse.py
### 参考ros系统快捷指令(ros1)
https://zhuanlan.zhihu.com/p/377790338