最新消息:

Dashgo底盘入门教程-校准-Dashgo底盘精度校准

ROBOTS/其他机器人 少儿编程 1481浏览 0评论
Dashgo底盘入门教程

Dashgo底盘入门教程-校准-Dashgo底盘精度校准

说明:

  • 介绍如何对底盘进行精度的校准

基本测试

  • 底盘运行的精准度是衡量小车的重要标准。
  • 我们主要关注走直线的误差和转动角度的误差。
  • 首先,在一个终端下运行dashgo的驱动节点。

$ roslaunch dashgo_driver minimal.launch

  • 然后在另一个终端运行测试脚本。
  • 测试一:前进1米

$ rosrun dashgo_tools check_linear.py

  • 测试二:原地转动360度

$ rosrun dashgo_tools check_angular.py

  • 误差应该控制在1%以下。
  • 如果误差过大,可以通过调整底盘的轮子直径大小、两个动力轮的轮间距和动力系数三个值。
  • 这三个值在~/dashgo_ws/src/dashgo/dashgo_bringup/config/my_dashgo_params.yaml中。
# === Robot drivetrain parameters
wheel_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_tools/scripts/check_linear.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度。
  • 当然,你还可以修改小车运行的线速度和角速度的大小。

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