ROS机器人底盘(11)-PIBOT的控制及校准

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ROS机器人底盘(11)-PIBOT的控制及校准相关的知识,希望对你有一定的参考价值。

参考技术A roslaunch pibot keyboard_teleop.launch

连接手柄至电脑或者 Raspberry Pi 3
ls /dev/input/js* -l

sudo jstest /dev/input/js0

Zeus 小车
roslaunch pibot joystick.launch
Apollo 小车
roslaunch pibot joystick-holonomic.launch

joystick.config.yaml

用尺子测量小车实际行径距离,如果与 test_distance 相差较大,则需要调整相关参数
对于2轮差分 Apollo
differential.h

单独向前是 motor_dis[0] + motor_dis[1] 应该为0

容易得到 odom->x 因为 (-motor_dis[0] + motor_dis[1]) / 2.0 ,而 motor_dis[0] , motor_dis[1] 跟一周编码器个数和轮子的直接相关,在假定一周编码器个数恒定情况下,即只与轮子直接相关

如果实际测量值< test_distance ,应该如何调整轮子直径,调大?调小?

rosrun pibot calibrate_angular.py

按照提示启动 rqt_reconfigure

切换到 calibrate_angular 选项, 勾选 start_test 即可开始测试。小车按照设置的速度( speed ),旋转设定的角度( test_angle ),误差不超过设定值( tolerance )

观察设计旋转的角度,如果与 test_angle 相差较大,则需要调整相关参数
对于2轮差分 Apollo
differential.h

旋转是 odom->z 为 dth 累加即 (motor_dis[0] + motor_dis[1]) / (2* body_radius)

如果实际观察角度< test_angle ,应该如何调整轮子间距,调大?调小?

上述为差分轮 apollo 的参数调整, zues 、 hades 和 hera 也类似

以上是关于ROS机器人底盘(11)-PIBOT的控制及校准的主要内容,如果未能解决你的问题,请参考以下文章

ROS机器人底盘(34)-laser_filters的使用(2)-屏蔽车体干扰

ROS机器人底盘(2)-运动解算

ros机器人用底盘里程计不准怎么改成激光里程计定位

ROS机器人底盘(23)-IMU和里程计融合与单独编码器里程计的对比测试

ROS机器人底盘(14)-move_base(2)

ROS中3D机器人建模