ROS1云课→22机器人轨迹跟踪

Posted zhangrelay

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ROS1云课→22机器人轨迹跟踪相关的知识,希望对你有一定的参考价值。

ROS1云课→21可视化工具rviz中的A*

本篇所指的轨迹跟踪不是下面这一类

机器人感知-视觉部分(Robotic Perception-Vision Section)_zhangrelay的博客-CSDN博客_机器人视觉感知

更像是如下这一类:

有地图,有静态规划好的轨迹: 

ROS中机器人如何沿着上述虚线进行运动?

那么,需要思考机器人运动轨迹和A*规划出的路径是否重合?

  • 考虑机器人运动学和动力学模型(机器人自身特性)
  • 是否有动态障碍物需要躲避(环境动态特性)
  • 然后才能更好的理解ROS导航功能包设计思路和所提供的各类功能

粉色为规划轨迹,黄色是机器人实际坐标绘制。 

可以理解为参考全局路径之后,机器人依据实际特性的局部轨迹。

机器人的真实轨迹就是局部运动轨迹的总和。


上图展示了导航功能包集的组织方式。在图中,能够看到白色、灰色和虚线三种框。白框表示其中的这些功能包集已经在ROS中集成了,并且它们提供的多种节点能够为机器人实现自主导航 。如何创建上图中灰色框表示的内容。这些部分取决于所使用的机器人平台。换句话说就是,这些部分的代码并不是通用的,需要根据所使用的机器人编写一定的代码实现ROS和导航功能包集的数据接口。

为了能够理解导航功能包集,应该把它看做一套使用机器人传感器和里程计功能的算法,以便使用标准的消息来控制机器人,毫无难度地移动机器人到期望的位置(不会产生碰撞或者卡在某个位置,再或者丢失控制信号)。

可以认为这个功能包集能够为任何机器人所用。几乎可以说是这样的,但是有时也需要调整一些配置文件并且调用功能包集编写一些节点。

在使用导航功能包集之前,机器人需要满足一些条件:

  • 导航功能包集只能够处理双轮差动(非完整系统)驱动和全向轮(完整系统)驱动的机器人。机器人的形状必须是方形或者矩形。当然,双足机器人也可以使用它做一些事情,如机器人定位等,但不能横向移动机器人。
  • 需要机器人能发布关于所有关节和传感器位置关系的信息。
  • 机器人必须能发送线速度和角速度消息。
  • 机器人必须有一个平面激光雷达来完成地图构建和定位。或者,能生成一些相当于激光雷达或者声呐的数据,如果它们安装在机器人的其他地方,也可以将它们的值映射到地面上。 

以上是关于ROS1云课→22机器人轨迹跟踪的主要内容,如果未能解决你的问题,请参考以下文章

ROS1云课→23turtlesim绘制小结(数学和编程)

ROS1云课→23turtlesim绘制小结(数学和编程)

ROS1云课→24机器人感知配置

ROS1云课→24机器人感知配置

ROS1云课→25机器人控制配置

ROS1云课→25机器人控制配置