标定记录 2nd

2020.4.27


陀螺仪问题解决


先做线(杜邦线),用2s锂电池单独给陀螺仪供电后问题解决

  • 每次转一圈的数据比较稳定,每转1080°陀螺仪若干数据之间的差不超过20

再次标定


  • 由于陀螺仪数据稳定,需要再次标定,标定后角度经验证比较准确:

    • 每转三圈读取的角度值在1080°±3°之间浮动
  • 角度标准不同后,还需要整体重新标定,结果图示如下:

    • 验证正y轴

      • y方向行进约 1300 mm,x方向偏移量约为 0.7 mm

    • 验证假x轴

      • x方向行进约 1400 mm,y方向偏移量约为 10 mm

    • 验证正y轴转为假x轴后沿正y轴走

      • 这里最终x方向偏移量约 4 mm

  • 根据上图走假x轴的x、y位移数据 acrtan(10.04 / 1373)= 0.4189653°

​ 又推车转角为 89.5257507°

89.5257507° + 0.4189653° = 89.944716° ≈ 90°

​ 在这里再次验证了之前的结论

重复性误差


  • 在这里我推车测试了8条不同的路径(左下角到右上角),并且把每条路径最终的x、y坐标都列了出来,横线代表8个值的平均值,由于条件有限无法知道精确的实际值,所以把平均值当作实际值。

  • 结果发现,在推车直线距离大概 1.5 m的情况下,小车在x、y方向都可能存在5mm内的偏移

旋转误差


  • 这里每次旋转 3 - 4 圈后回到起始点,来观察小车的定位误差情况

  • 顺逆时针都测试了,发现顺时针坐标整体偏移了 5 mm,然而逆时针坐标整体偏移了约 20 mm

为何会有偏移?


  1. 由上图可以发现转三圈的角度值都是1080°左右,说明陀螺仪提供的角度数据没有问题

  2. 旋转算法matlab程序实现是否有问题?

    • 我把程序中 alpha 和 L 的值都设为 0,再次转3圈看结果:

      结论是与旋转算法无关测试结果照样有十几到二十多毫米的偏移

(这里发现路径图中由于是随动中心,会绕中心转圈,是对的,之前是车的中心,所以路径图比较奇怪)

  1. 直行算法matlab程序实现是否有问题?**(由于在家标定时旋转角度方向变了,我改了一部分matlab代码,所以怀疑是不是这个有问题)

    • 我把之前 Adams 的仿真理想数据带入现在的matlab程序,并且在程序里再次分别验证走正y轴,假x轴:正y轴的x方向偏移 0 mm;正x轴的y方向偏移 1.2 mm 比较理想,证明程序无误
  2. 综上,那就意味之标定的系数(8个)还是不准,那就再小心的标定一次

再再次标定


  • 这次标定不一样,电脑不用放在车上了,标定也用蓝牙传数据(这周第一次整体标定电脑还是放在车上的);并且,走一个方向多次重复取平均值。

  • 这一次标定效果如下:

    • 验证正y轴

      • y方向行进约 1400 mm,x方向偏移量约为 0.25 mm

    • 验证假x轴:(这次两边测得正好是90°,没办法每次都测的不一样,这个车有一边有问题)

      • x方向行进约 1400 mm,y方向偏移量约为 1.293 mm

    • 验证正y轴转为假x轴后沿正y轴走

      • 这里最终x方向偏移量约 4 mm,和这周第一次标定的效果

再次看看旋转的误差大小

  • 旋转三圈回到起始点,依然会有 10 - 20 mm的坐标偏移

结论


  考虑到标定时的车身的振动,旋转时车身的振动,自身操作使随动轮前后小幅度摇摆造成回程差等等的条件受到限制。

  这一套系统的精度目前看来就是上述的研究结果。

Comments

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×