1、把小车平放在地板上,用资料里的虚拟机,打开一个终端 ssh 过去主控端启动roslaunch znjrobot bringup.launch 。
2、再打开一个终端 ssh 过去主控端,启动校正角速度命令rosrun znjrobot_nav calibrate_angular.py
3、在虚拟机端打开一个终端,直接运行 rosrun rviz rviz
4、全屏化后点击 File,点击 Open Config:
5、找到路径下~/catkin_ws/src/znjrobot_project/znjrobot/rviz/ 的odometry.rviz 文件。点 Open
6、把 rviz 窗口调整到合适位置,调整方法:用鼠标滚轮点住灰色区域,可以拖动地图;鼠标滚轮上下滚动可以放大缩小地图;鼠标左键点住灰色区域可以翻转地图。
7、先记下手机指南针第一次的度数,比如:静止时第一次手机指南针度数50 度,如果原地旋转小车后(双手托起小车),小车转动后停下的度数超过 50,那么就是转够了一圈有多,如果小车转动后停下的度数小于 50,那么就是没有转够一圈。分以下两种情况:
情况 1:小车停下后度数假如是 60 度,那么小车实际上是转了 370 度。此时角速度比例系数 anguler_scale= 370/360 = 1.028
情况 2:小车停下后度数假如是 40 度,那么小车实际上是转了 350 度。此时角速度比例系数 anguler_scale= 350/360 = 0.972
8、在主控端的 bringup.launch 文件中把 anguler_scale 修改成实际计算好的角速度比例系数。
9、修改完成后,重新在主控端运行bringup.launch 、calibrate_angular.py文件,以及虚拟机端的rviz文件,然后第二次观察手机指南针上面的度数,记下度数,再次原地转动小车,小车实际转动多少度,然后跟第二次的度数做对比,差值小于 10 度以内的都是差不多可以的。
更多精彩视频演示和教程请点击:https://space.bilibili.com/521688736