【学习日记】ROS下IMU使用困惑

最近准备在机器人上测试使用IMU代替机器人的里程计,以提高底层的控制周期(由于底层通信的原因,使用里程计的话最多能到50HZ,因为我们的机器人对运动性能要求较高,所以无法满足我们的要求),使用的是ethzasl_xsens_driver这个包,跑通了,得到IMU的信息。但是通过测试发现如果直接对角速度积分得到角度的话,还能满足我们的要求,但是,直接对线加速度两次积分得到位置的话,漂移相当大,直接无法使用,即使在短时间内处理也无法使用,因为无法保证IMU为绝对水平放置的,这样XY方向就会有重力加速度的分量导致其即使在静止的情况下XY方向也存在加速度,这应该是造成漂移的最主要原因。不知道工程上都是如何消除这种误差的,需要静止放置几分钟采集下各个轴的加速度信息,然后再在各个轴减掉相应的加速度吗?还是算出IMU所在平面与绝对水平面之间的夹角,来消除误差,困惑了,搞工程真难啊T T

你可能感兴趣的:(学习困惑)