摘要:基于测量的前进返回脚本 #!/usr/bin/env python import rospy from geometry_msgs.msg import Twist, Point, Quaternion import tf from rbx1_nav.transform_utils import q
阅读全文
摘要:使用测程法前进并返回 由于已经了解ROS中的测量信息是怎样表示,那么就可以让机器人在计时前进并返回中移动的更精确了。不在需要基于时间和速度来猜测距离和角度。下一脚本将会通过转换自/odom和/base_link框架之间的测量信息,监视机器人的位置和方向。 在rbx1_nav/nodes目录下的新文件
阅读全文
摘要:我们到了吗?根据测量来到达目的距离 机器人的基处理器节点利用测程法和PID控制来把运行要求转化成现实世界的速度。这个过程的精确度和可靠性依赖于机器人内部的感应器、校准过程的精确度和周围环境的条件。 机器人通过对外部的测量获得自己的位置和方向,是可以对机器人的内部测量进行补充的。举例来说,机器人可以利
阅读全文
摘要:用现实的机器人执行计时前进并返回 如果用现实的机器人来运行脚本timed_out_and_back.py,在这里只是用了时间和速度估算距离和角度。可以预见,机器人因为惯性,运动结果与在ArbotiX模拟器上的结果有出入(在模拟器中我们并没有建立物理模型) 1、首先,停止所有正在运行的模拟器。运行你自
阅读全文
摘要:在大多数时间都是依靠ROS节点来发布恰当的Twist消息。举个简单的例子,假设我们想编程使机器人向前移动1m,旋转180度,然后返回开始的位置。我们会尝试用不同的方法来完成这个任务,这些方法很好地表现了ROS不同层次的运动控制。 1、通过定时和定速估计距离和角度 我们第一个尝试是用定时的Twist命
阅读全文
摘要:对你的机器人进行测量校准 在这一部分当中,需要有实际的机器人,如果没有可以略过此节,如果有一台原版的TurtleBot(用iRobot create作为底座),那么确保使用自动校准过程为你的机器人设置角速度修正系数。还可以用这一部分内容的第一步去设置线速度修正系数。需要注意的是,无论在什么情况下,都
阅读全文
摘要:1、/odom : (odometry : 里程计,就是车子方向盘下面的各种表)下面是它内部的参数: std_msgs/Header header string child_frame_id // 子类坐标系 geometry_msgs/PoseWithCovariance pose // 平移和旋
阅读全文
摘要:控制一个机器人运动可以在运动控制系统中许多不同的层中实现,ROS在不同的层中都有提供相应的方法。从对发动机的直接控制,到路径规划和SLAM,不同的层代表着不同程度的抽象。 1、发动机、轮子和编码器 大多数differential drive robots在运行ROS时都会在发动机和轮子上使用编码器。
阅读全文
摘要:在这一章节将学习如何控制底座移动,这里的底座是通过一对差速驱动轮子和一个被动转动的轮子来保持平衡。ROS还可以被用来控制全方向移动底座,控制飞行机器人或者水下交通工具,不过陆地上行走的差速驱动机器人比较适合初学者。 1、单位长度和坐标系 在给机器人传送指令前,复习一下ROS使用的单位长度和坐标系惯例
阅读全文
摘要:在这里我之前用的VM12安装成功之后,仿真器机器人会有问题,故把电脑做成双系统的形式来重新安装; 环境:Ubuntu14.04 LTS 32bits ROS版本:ROS Indigo 在学习本部分之后的内容,请先学习 beginner_Tutorials 和 learning_tf 的ROS 相关教
阅读全文