• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

SLAM+语音机器人DIY系列:(四)差分底盘设计——6.底盘里程计标

人工智能 小虎哥哥爱学习 1165次浏览 0个评论

摘要

运动底盘是移动机器人的重要组成部分,不像激光雷达、IMU、麦克风、音响、摄像头这些通用部件可以直接买到,很难买到通用的底盘。一方面是因为底盘的尺寸结构和参数是要与具体机器人匹配的;另一方面是因为底盘包含软硬件整套解决方案,是很多机器人公司的核心技术,一般不会随便公开。出于强烈的求知欲与学习热情,我想自己DIY一整套两轮差分底盘,并且将完整的设计过程公开出去供大家学习。说干就干,本章节主要内容: 1.stm32主控硬件设计 2.stm32主控软件设计 3.底盘通信协议 4.底盘ROS驱动开发 5.底盘PID控制参数整定 6.底盘里程计标


6.底盘里程计标

机器人底盘运行的精度是衡量底盘的重要指标。底盘精度受里程计的走直线误差和转角误差影响。因此,需要对里程计的走直线和转角进行标定,尽量减小误差。miiboo机器人底盘的ROS驱动中已经写好了相应的标定程序,跟里程计标定有关的文件主要有:

…/miiboo_bringup/launch/check_linear.launch为里程计走直线标定启动文件

…/miiboo_bringup/launch/check_angular.launch为里程计转角标定启动文件

…/miiboo_bringup/launch/minimal.launch为设置标定参数及底盘控制启动文件

下面是标定步骤过程。

第一步:

打开终端,给标定脚本赋予可执行权限

cd miiboo_bringup/scripts/
sudo chmod +x ./*

 

第二步:

连接好底盘DATA-uart2串口,启动底盘

roslaunch miiboo_bringup minimal.launch

 

第三步:

设定前进1米的目标,对走直线进行标定

roslaunch miiboo_bringup check_linear.launch

  测量底盘停止时实际走的直线距离M,按下面的规则调整里程计直线参数speed_ratio   如果M > 1米,增大speed_ratio 如果M < 1米,减小speed_ratio   里程计的参数存放在miiboo_bringup/launch/minimal.launch文件中,如图53所示。   SLAM+语音机器人DIY系列:(四)差分底盘设计——6.底盘里程计标

(图53)里程计待标定参数

  修改好参数后,需要保存,然后重新启动一下底盘节点,这样参数才能生效。

roslaunch miiboo_bringup minimal.launch

  重复第三步的操作,直到走直线的误差达到我们能接受的范围(比如1%的误差),则进入下一步。  

第四步:

设定旋转360度的目标,对转角进行标定

roslaunch miiboo_bringup check_angular.launch

  测量底盘停止旋转时实际转过的角度A,按下面的规则调整里程计转角参数wheel_distance   如果A > 360度,减小wheel_distance 如果A < 360度,增大wheel_distance   上面已经讲过,里程计的参数存放在miiboo_bringup/launch/minimal.launch文件中,如图53所示。   修改好参数后,需要保存,然后重新启动一下底盘节点,这样参数才能生效。  

roslaunch miiboo_bringup minimal.launch

  重复第四步的操作,直到走转角的误差达到我们能接受的范围(比如1%的误差),则标定完成。   当然,有兴趣的朋友可以阅读miiboo_bringup/scripts/中的标定脚本源码,结合航迹推演算法,理解里程计标定的整个原理。其实wheel_distance这个参数是编码脉冲值与电机轮胎位移值的一个比例系数,简单点说就是电机转过一个编码脉冲,这个时候电机轮胎走过多少距离;wheel_distance这个参数是左右两个轮子的间距。有了这个认识后,我们可以在这两个参数的理论值附近对参数进行微调,标定起来会更快。


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明SLAM+语音机器人DIY系列:(四)差分底盘设计——6.底盘里程计标
喜欢 (0)

您必须 登录 才能发表评论!

加载中……