现象
realsense_viewer 可以可视化查看imu数据,
但是realsense-ros 查看/camera/accel/sample和/camera/gyro/sample没有数据输出
背景
realsense_viewer 安装:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE
sudo add-apt-repository "deb https://librealsense.intel.com/Debian/apt-repo $(lsb_release -cs) main" -u
sudo apt-get install librealsense2-dkms -y
sudo apt-get install librealsense2-utils -y
sudo apt-get install librealsense2-dev -y
realsense-ros 安装:
sudo apt install ros-noetic-realsense2-*
结论
由于realsense_viewer使用的realsense SDK版本和D455固件适配,因此可以看到imu.
而realsense-ros使用的realsense SDK版本和D455固件不适配,读不到imu数据.
realsense_viewer使用的librealsense2版本是2.55.1
ros-noetic-realsense2-camera 使用自带的librealsense2版本是2.50.0
查看官网的固件和SDK的版本适应关系:Firmware releases D400
所以如果要使用当前apt 安装的ros-noetic-realsense2, 需要利用realsense_viewer将Firmware降级到5.13
降级成功后,apt安装的realsense_viewer(2.55.1版本)原则上使用realsese会有问题,建议自行安装realsense_viewer(2.50.0版本).
此时再使用realsense-ros可以开启imu数据:
roslaunch realsense2_camera rs_camera.launch enable_gyro:=true enable_accel:=true
可以看到加速度计100hz,陀螺仪200hz