在安装好imu_utils之后就可以进行imu标定了。
具体使用方法如下:
首先录制imu的bag 文件
命令如下
rosbag record -O imuu /camera/imu #生成的包名称imuu.bag /camera/imu为imu的话题
可以通过rostopic list 来查看imu等话题
如果只是为了测试可以录制时间短一些,正常情况下需要静置一段时间。
通过ctrl +c即可停止录制,在当前文件夹下会生成对应的bag文件,可以通过rosbag info name.bag来查看bag文件的信息,如下图所示。下图所示的bag还包含了相机信息,暂时可以忽略。
此时我们可以前往imu_utils的工作空间执行以下命令
source ~/imu_catkin_ws/devel/setup.sh
roslaunch imu_utils xsense.launch # xsense.launch可以自己新建一个进行修改
xsense.launch在/imu_catkin_ws/src/imu_utils中的launch文件夹中,可以根据需要调整其中的内容。
示例如下,打开xsense.launch,主要修改部分为imu_topic的value,data_save_path是最终标定结果的输出文件夹,可以新建一个空的文件夹来存放结果。max_time_min注意自己录制的bag时间,这里设置的时间应该在录制时间范围内。
<launch>
<node pkg="imu_utils" type="imu_an" name="imu_an" output="screen">
<param name="imu_topic" type="string" value= "/android/imu"/>
<param name="imu_name" type="string" value= "shoujiIMU"/>
<param name="data_save_path" type="string" value= "$(find imu_utils)/shoujiimu/"/>
<param name="max_time_min" type="int" value= "4"/>
<param name="max_cluster" type="int" value= "100"/>
</node>
</launch>
在修改号xsense.launch文件后就可以执行
roslaunch imu_utils xsense.launch
此时可以看到
这是在等待imu的数据,需要我们播放之前录制的imu的bag文件。
重新打开一个窗口,执行命令
rosbag play -100 imuu.bag #100为播放速度可以自行调整
在录制数据播放过程中或者播放结束后就会有结果输出,在新建的文件夹中的yaml文件中即可看到标定的结果。
注意:如果执行命令之后依然还是wait for imu data 状态,原因可能在于之前我们编写的launch文件,max_time_min应该在小于录制时间。