D1不带陀螺仪的精度校准
来源:互联网 发布:安庆市宜秀区网络 编辑:程序博客网 时间:2024/04/29 12:17
PathGo 导航模块的默认固定 IP 是 192.168.31.200 默认用户名为 eaibot ,默认密码为 eaibot 。
底盘运行的精准度是衡量小车的重要标准。主要关注走直线的误差和转动角度的误差。
打开一个终端,启动底盘驱动(带平滑加减速)
$ ssh eaibot@192.168.31.200$ roslaunch dashgo_driver demo.launch
然后在另一个终端运行测试脚本。
- 测试一:前进1米
$ ssh eaibot@192.168.31.200$ rosrun dashgo_tools check_linear.py
- 测试二:原地转动360度
$ ssh eaibot@192.168.31.200$ rosrun dashgo_tools check_angular.py
误差应该控制在1%以下。
如果误差过大,可以通过调整底盘的轮子直径大小、两个动力轮的轮间距和动力系数三个值。
这三个值在 ~/dashgo_ws/src/dashgo/dashgo_driver/config/my_dashgo_params.yaml 中。
=== Robot drivetrain parameterswheel_diameter: 0.1250 # 动力轮轮子直径wheel_track: 0.3350 # 两个动力轮的轮间距gear_reduction: 1.0 # 动力系数
校准策略:
优先校准走1米直线,这个误差达到要求后再校准转动角度。
原因:走1米直线只和轮子直径有关,转动角度既和轮子直径有关,还和轮间距有关。校准走1米直线:实际运行超过1米时,调大轮子直径;实际运行不足1米时,调小轮子直径。
校准转动360度: 实际转动超过360度时,调小轮子间距;实际转动不足360度时,调大轮子间距。
如果轮子直径和轮间距已明显高于轮子实际的直径和间距,就需要通过调整动力系数是运行达到精准。
另外,如果觉得测量1米没说服力,可以通过修改 ~/dashgo_ws/src/dashgo/dashgo_tools/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_tools/scripts/check_angular.py 中的
self.test_angle = radians(rospy.get_param('~test_angle', 360.0))
需要注意的是,修改的角度不能超过360度。
当然,还可以修改小车运行的线速度和角速度的大小。
- D1不带陀螺仪的精度校准
- D1带有陀螺仪的精度校准
- Dashgo-D1 不带陀螺仪的建图导航
- Dashgo-D1 带陀螺仪的建图导航
- 不带温度补偿的DIMU校准
- Unity3d获取、校准陀螺仪
- Dashgo底盘精度校准
- opencv的相机校准的圆格和棋盘格校准精度比较
- Windows 7自带的显示器校准
- BigDecimal带精度的运算
- BigDecimal带精度的运算
- 陀螺仪内部,你所不知道的美
- iphone 陀螺仪的使用
- 陀螺仪的理解(MPU6050)
- android 陀螺仪的使用
- unity 陀螺仪的脚本
- 陀螺仪的学习
- html5的陀螺仪
- java网络socket编程详解
- Android studio在Android视图下显示jniLibs文件夹
- java.lang.IllegalStateException: Failed to load ApplicationContext
- leetcode-5-Longest Palindromic Substring 动态规划
- 程序员工作怪现象
- D1不带陀螺仪的精度校准
- Java正则表达式匹配,替换,查找,切割
- codec engine代码阅读七---codecs中的xDM,XDAIS函数解析
- ImageView的scaleType知识总结
- uploadify上传文件插件动态传参数到服务器
- android 无限轮播的广告位
- maven私有仓库快速使用指南(nexus)
- ZCMU-1622-判断数
- 保护眼睛