Dashgo底盘精度校准
来源:互联网 发布:正在缓冲点播数据 编辑:程序博客网 时间:2024/05/16 01:18
基本测试
底盘运行的精准度是衡量小车的重要标准。我们主要关注走直线的误差和转动角度的误差。
首先,在一个终端下运行dashgo的驱动节点。
roslaunch dashgo_bringup minimal.launch
然后在另一个终端运行测试脚本。
- 测试一:前进1米
rosrun dashgo_bringup check_linear.py
- 测试二:原地转动360度
rosrun dashgo_bringup check_angular.py
误差应该控制在1%以下。
如果误差过大,可以通过调整底盘的轮子直径大小、两个动力轮的轮间距和动力系数三个值。这三个值在~/dashgo_ws/src/dashgo/dashgo_bringup/config/my_dashgo_params.yaml中。
# === Robot drivetrain parameterswheel_diameter: 0.125 # 动力轮轮子直径wheel_track: 0.335 # 两个动力轮的轮间距gear_reduction: 1.0 # 动力系数
校准策略:
- 优先校准走1米直线,这个误差达到要求后再校准转动角度。 原因:走1米直线只和轮子直径有关,转动角度既和轮子直径有关,还和轮间距有关。
- 校准走1米直线:实际运行超过1米,调大轮子直径;实际运行不足1米,调小轮子直径。
- 校准转动360度: 实际转动超过360度,调大轮子间距;实际转动不足360度,调小轮子间距。
- 如果轮子直径和轮间距已明显高于轮子实际的直径和间距,就需要通过调整动力系数是运行达到精准。
另外,如果觉得测量1米没说服力,可以通过修改~/dashgo_ws/src/dashgo/dashgo_bringup/scripts/check_angular.py 中的
self.test_distance = rospy.get_param('~test_distance', 1.0) # meters
把测量距离有1.0米修改为3.0米、5.0米和10.0等等。
同理,也可以修改测量角度,修改~/dashgo_ws/src/dashgo/dashgo_bringup/scripts/check_angular.py中的
self.test_angle = radians(rospy.get_param('~test_angle', 360.0))
需要注意的是,修改的角度不能超过360度。
当然,你还可以修改小车运行的线速度和角速度的大小。
0 0
- Dashgo底盘精度校准
- D1不带陀螺仪的精度校准
- D1带有陀螺仪的精度校准
- opencv的相机校准的圆格和棋盘格校准精度比较
- 抄底盘
- Dashgo D1概述
- Dashgo D1硬件清单
- Dashgo D1软件支持
- 搭建Dashgo运行环境
- Dashgo多种运动方式
- Dashgo D1使用手册
- 搭建Dashgo运行环境
- Dashgo D1使用注意说明
- Dashgo D1蓝牙控制移动
- Dashgo-D1 多点连续导航
- 控制kobuki底盘(一)
- 控制kobuki底盘(二)
- 连接kobuki的底盘
- error while loading shared libraries: xxx.so.x" 错误的原因和解决办法
- [转]聊聊成为大神路上的过程
- IOS XML系统自带解析
- 栈和队列的简单实例
- leetcode 165. Compare Version Numbers
- Dashgo底盘精度校准
- Spring—Quartz定时调度CronTrigger时间配置格式说明与实例
- eclipse迁移到android studio
- iframe 父页面与子页面互相调用方法
- (void)printf("hello world"); int a=2; void(a);中的(void)有什么用?
- [转]一个三十秒的习惯,让你受益终生
- SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
- 网页展示本地图片
- 6、消除过期的对象引用