IMU-Xsens与Kinect联合使用
- 1. X-sens传感器使用
- 2. Kinect传感器使用
- 3. 录制ROS-bag数据包
- 4. 回放ROS-Bag数据包
1. X-sens传感器使用
ROS(kinetic版本)下的IMUC传感器X-sens使用:
- 安装驱动
笔者使用的Xsens型号为MTI-100。首先安装Xsens的驱动 (kinetic版本):
sudo apt-get install ros-kinetic-xsens-driver
- 测试X-sens
X-sens有两个接口,一个是数据线,用于传输IMU数据;另一个是电源线,单独供电; 将两个接口插到电脑USB接口上,稍等30s, 然后输入一下指令查看电脑是否存在外部连接设备:
ls -l /dev/ttyUSB*
- 提升设备权限:
sudo chmod 777 /dev/ttyUSB*
- 启动X-sens传感器
roslaunch xsens_driver xsens_driver.launch
- 查看X-sens话题及数据
rostopic list
rostopic echo /imu/data
2. Kinect传感器使用
使用的是kinect v1传感器,成效效果即深度测量不是特别好.
- 安装驱动
sudo apt-get install ros-kinetic-openni-* ros-kinetic-freenect-*
- 启动测试
将 kinect 的电源接口,数据接口插入电脑USB,等待30s后,再运行下面launch文件:
roslaunch freenect_launch freenect.launch
- 查看话题
rostopic list
3. 录制ROS-bag数据包
1. 仅录制 Kinect与IMU 的数据,订阅的话题
以时间戳命名:
- 相机彩色图像: /camera/rgb/image_raw
- 相机深度图像: /camera/depth/image_raw
- IMU数据: /imu/data
rosbag record /camera/rgb/image_raw /camera/depth/image_raw /imu/data
2. 录制所有话题
以时间戳命名:
rosbag record -a
4. 回放ROS-Bag数据包
- 基本回放
# 格式
rosbag play <your bagfile name>
# 实例
rosbag play MH-02-easy.bag
- 回放指定话题
# 格式
rosbag play <your bagfile name> --topics <topics>
# 实例
rosbag play MH-02-easy.bag --topics /camera/rgb/image_raw
- 等待一定时间之后发布bag文件中的内容
等待时间单位: 秒 s
rosbag play <your bagfile name> -d <delay time>
# 实例
rosbag play MH-02-easy.bag -d 30
- 按一定速率回放
# 3倍速回放
rosbag play -r 3 <your bagfile name>
# 实例
rosbag play -r 3 MH-02-easy.bag