ROS进阶学习手记 10 - 搭建自己的TurtleBot(3)- Velocity Calibration

原创 2015年11月20日 18:07:00

ROS进阶学习手记 10 - 搭建自己的TurtleBot(3)- Velocity Calibration

    上一篇我们分析了 rbx 书籍中,对于底板驱动相关的.launch文件,turtlebot_minimal_create.launch, 现在要实验一下相关的配置以后,速度值是否与设定值一致。

    要用到的.launch 文件: turtlebot_minimal_create_me.launch ; 使用 rostopic pub 命令发布驱动指令。

    运行命令行:

    先把rbx包source一下:

    $ cd ~/catkin_ws
    $ catkin_make
    $ source ~/catkin_ws/devel/setup.bash

    再在子机上(my_robot1)启动 底盘 驱动: (通过vi工具修改了子机上的tb_create_mobile_base.launch.xml文件)

  $ roslaunch rbx1_bringup turtlebot_minimal_create.launch

在校准之前,务必参考我博文:Using Create2(Roomba 620) as your turtlebot driving base.

校准线速度:

    通过母机发指令:

  $ rostopic pub -r 10 /cmd_vel geometry_msgs/Twist '{linear: {x: 0.1, y: 0, z: 0}, angular: {x: 0, y: 0, z: 0}}'
    按照rbx书上的说法:Linear velocities are specified in meters per second and angular velocities are given in radians per second. (1 radian equals approximately 57
degrees.) 单位是 m/s 和 rad/s. (1 rad = 180/pi  degree)

    实测速度在 0.12 m/s 左右。实验距离:1米。耗时8.5s左右。

校准角速度:

    通过母机发指令:

  $ rostopic pub -r 10 /cmd_vel geometry_msgs/Twist '{linear: {x: 0, y: 0, z: 0}, angular: {x: 0, y: 0, z: 0.628}}'
    0.628 rad/s 是指令发送角速度,意味着转1圈 2*3.14 rad = 6.28 rad , 耗时应:10秒, 实测耗时:7.55s,
    so, 实际角速度 = 实际转动rad数/耗用时间 = 6.28/(7.55)s = 0.83 rad/s = 0.628* 1.32
    这里我准备做个表格,画画图,看看角速度校准应该怎么弄。(地面条件:磨石地板,粗糙度:0.3-0.5mm)

   

# 转动圈数 转动角度(rad) 设置角速度rad/s 理论耗用时间s 实际耗用时间s 实际角速度rad/s 修正系数
1 1 6.28 0.100 62.80 15.14 0.41 4.148
2 1 6.28 0.200 31.40 15.03 0.42 2.089
3 1 6.28 0.300 20.93 15.05 0.42 1.391
4 1 6.28 0.350 17.94 10.18 0.62 1.763
5 1 6.28 0.400 15.70 10.10 0.62 1.554
6 1 6.28 0.500 12.56 10.20 0.62 1.231
7 1 6.28 0.628 10.00 7.55 0.83 1.325
8 1 6.28 0.750 8.37 6.13 1.02 1.366
9 1 6.28 1.000 6.28 5.12 1.23 1.227
10 1 6.28 1.400 4.49 3.83 1.64 1.171
11 1 6.28 1.600 3.93 3.82 1.64 1.027
12 1 6.28 1.800 3.49 3.36 1.87 1.038
13 1 6.28 2.000 3.14 2.81 2.23 1.117
    

    参考线方程: y = x + 0.2

    参考配置:慢速档: 0.3-0.5; 线性档: 0.5 - 1.5 ; 高速档:2.0以上

如何根据线速度和角速度估计机器人的位置:

  


  





版权声明:sonictl原创文章,转载注明,否则读者享用不了后续服务,感谢!

Turtlebot3入门手册之七:SLAM和导航

官方教程:http://turtlebot3.robotis.com/en/latest/slam.html 在进入此教程之前,请确保上一篇博客开始使用的正确运行。SLAM是Simultaneous...
  • PORTB
  • PORTB
  • 2017年09月10日 16:17
  • 636

Turtlebot3入门手册之四:SBC软件设置

官方教程:http://turtlebot3.robotis.com/en/latest/sbc_software.html 所谓SBC是single-board computer的缩写,也就是单板机...
  • PORTB
  • PORTB
  • 2017年09月10日 10:53
  • 864

turtlebot(hydro)学习笔记二:桌面pc机键盘远程控制turtlebot

假设桌面pc机为主控制机,主机名为desk;turtlebot上电脑为被控制机,主机名为robot。(其中具体主机名以现实情况为准)。     在主控制机和被控制机上做如下配置:    桌面pc机: ...
  • Jie_Sky_2015
  • Jie_Sky_2015
  • 2015年03月10日 19:00
  • 2428

Turtlebot3入门手册之一:概述

如上图所示,一共两个机器人,扁扁的叫做waffle,高高的叫做burger(命名人当时一定很饿haha)。主要的区别如下图 简单的说处理器不一样,burger是树莓派3,waffle是inte...
  • PORTB
  • PORTB
  • 2017年09月07日 20:39
  • 1132

Turtlebot3入门手册之三:PC端软件配置

官方教程:http://turtlebot3.robotis.com/en/latest/pc_software.html 这篇博客是在[Remote PC](以下统称PC)上操作的,也就是你的笔记本...
  • PORTB
  • PORTB
  • 2017年09月07日 21:59
  • 878

turtlebot(hydro)学习笔记五:Joystick控制turtlebot运动

1.连接joystick到电脑,然后运行: $ls /dev/input/ 有的电脑会出现js0,js1,这个不用担心,拔出joystick后再看设备,缺少那个设备就是joystick,这里我的jo...
  • Jie_Sky_2015
  • Jie_Sky_2015
  • 2015年04月24日 15:59
  • 1831

简单的代码让turtlebot动起来 (使用kobuki底座)直行与旋转

之前都是使用键盘控制turtlebot的行走,于是想写段代码可以让turtlebot自己动起来,毕竟今后的工作是想让机器人在地图上可以实现自行路径规划到达指定的目的地。 启动turtlebot后在...
  • ywj447
  • ywj447
  • 2016年11月17日 15:20
  • 3339

turtlebot3(一)之Ubuntu16.04上realsenceR200的使用

前言最近实验室买了turtlebot3,捣鼓了1个月,先是跑通了激光雷达demo,现在又跑realsenseR200的 demo,现在将realsense demo的跑通过程记录下来。设备:turtl...
  • qq904305159
  • qq904305159
  • 2017年12月18日 22:31
  • 108

turtlebot入门仿真

Turtlebot包安装 安装Turtlebot,打开终端,运行如下命令:sudo apt-get update sudo apt-get install ros-indigo-turtlebot ...
  • qq_16397695
  • qq_16397695
  • 2016年10月09日 13:11
  • 1800

TurtleBot基于已知地图的自主导航

此博文介绍了如何让TurtleBot基于已知的地图进行自主导航。
  • Dreamer_lhs
  • Dreamer_lhs
  • 2017年04月22日 12:40
  • 1136
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ROS进阶学习手记 10 - 搭建自己的TurtleBot(3)- Velocity Calibration
举报原因:
原因补充:

(最多只允许输入30个字)