ROS 提高篇 A Mobile Base-01 — 控制移动平台 — 基本知识


我使用的虚拟机软件:VMware Workstation 11

使用的Ubuntu系统:Ubuntu 14.04.4 LTS

ROS 版本:ROS Indigo


注意:

1 . ROS 提高篇这个专栏的教学有门槛。

2 . 如果你没有学习前面的教程,请想学习前面的 beginner_Tutorialslearning_tfROS 相关教程。


这一节没没有编写程序或者在终端中执行什么命令,这一节我们讲一些需要你了解的事,目的是:为了告诉你你现在要怎么学 ROS

一 . 怎么理解 “移动平台”:

“移动平台” : A Mobile Base

就以 Pi 机器人为例 :

完整的 Pi 机器人: ————————————- 移动平台 就是:

对于陆地式轮式机器人,它们的移动平台就简单的组成零件是:一对轮子和一个万向轮。ROS也可用于控制其他方面的机器人,比如基于飞行的,水下的。但是陆地轮式移动平台是学习开始ROS最好的移动平台。

理解了吗。这一部分的教程(ROS 提高篇之 A Mobile Base),我们就来介绍:如何控制移动平台。(在这部分教程里面,我们使用现成的机器人,所以不介绍如何创建移动平台模型。并且整个 ROS 教程提高篇里面我们都不讲如何创建机器人模型,我们会在ROS 教程实战篇中教你如何创建自己的机器人模型。)


在学习这部分的教程(ROS 提高篇之 A Mobile Base)的开始,知道什么是 移动平台 是十分重要的事情,这样你就知道我们这一章在讲什么。

要想做一个机器人,我们需要先让它能动起来,然后在往上面加传感器,加算法….。

二 . ROS的测量单位和坐标系统:

在我们给我们的机器人发送运动命令前,我们有必要先来了解一下ROS测量单位坐标系统

1 . 坐标系统:

当你工作于参考坐标系空间,记住:ROS使用 右手定义

所以,对于 ROS 机器人,如果以它为坐标系的原心,那么:

  • x轴:前方
  • y轴:左方
  • z轴:上方


2 . 在一个绕轴线上的旋转,也使用 右手定义

根据右手定义,围绕 z轴正旋转逆时针旋转


3 . 测量单位:

ROS使用公制 :

  • 线速度:m/s
  • 角速度:rad/s

线速度=0.5m/s 对于一个室内机器人来说是一个相当快的速度了。角速度=1.0rad/s 就是旋转一圈6秒钟。

例子:下面这条命令不用运行,只是为了讲解后面数字参数的意义。

  $ rostopic pub  /turtle1/cmd_vel geometry_msgs/Twist -1 --  '[2.0, 0.0, 0.0]' '[0.0, 0.0, 1.8]' 

这句话就是给 /turtle1/cmd_vel 话题发布一次:让机器人 向x轴正方向前进:线速度:2.0m/s; 绕z轴正方向旋转:角速度:1.8ral/s


搞定



下一讲,我们来介绍: ROS的控制运动的层次。ROS控制运动并不单纯,它分好多层。类似于中国西周时代的统治层次(天子-> 诸侯 -> 卿大夫 ->士 -> 平民 -> 奴隶)。

ROS Learning-025 (提高篇-003 A Mobile Base-01) 控制移动平台的更多相关文章

  1. ROS Learning-031 (提高篇-009 A Mobile Base-07) 控制移动平台 --- (操作)人机交互

    ROS 提高篇 之 A Mobile Base-07 - 控制移动平台 - (操作)人机交互 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubuntu 14 ...

  2. ROS Learning-030 (提高篇-008 A Mobile Base-06) 控制移动平台 --- (Python)odom导航的例子:移动一个方块路径

    ROS 提高篇 之 A Mobile Base-06 - 控制移动平台 - (Python)再次使用odom导航的一个例子:移动一个方块路径 我使用的虚拟机软件:VMware Workstation ...

  3. ROS Learning-029 (提高篇-007 A Mobile Base-05) 控制移动平台 --- (Python编程)控制虚拟机器人的移动(精确的制定目标位置)

    ROS 提高篇 之 A Mobile Base-05 - 控制移动平台 - (Python编程)控制虚拟机器人的移动(精确的制定目标位置) 使用 odometry 消息类型 重写 out_and_ba ...

  4. ROS Learning-028 (提高篇-006 A Mobile Base-04) 控制移动平台 --- (Python编程)控制虚拟机器人的移动(不精确的制定目标位置)

    ROS 提高篇 之 A Mobile Base-04 - 控制移动平台 - (Python编程)控制虚拟机器人的移动(不精确的制定目标位置) 我使用的虚拟机软件:VMware Workstation ...

  5. ROS Learning-027 (提高篇-005 A Mobile Base-03) 控制移动平台 --- Twist 消息

    ROS 提高篇 之 A Mobile Base-03 - 控制移动平台 - Twist 消息 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubuntu 14 ...

  6. ROS Learning-026 (提高篇-004 A Mobile Base-02) 控制移动平台 --- “分封制”

    ROS 提高篇 之 A Mobile Base-02 - 控制移动平台 - "分封制" 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ub ...

  7. ROS Learning-032 (提高篇-010 Launch)Launch 深入研究 --- (启动文件编程)ROS 的 XML语法简介

    ROS 提高篇 之 Launch 深入研究 - 01 - 启动文件的编程 - ROS 的 XML语法简介 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubu ...

  8. ROS Learning-024 (提高篇-002) rviz的安装和使用

    ROS 提高篇-002 - rviz 的安装和使用 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubuntu 14.04.4 LTS ROS 版本:ROS ...

  9. ROS Learning-023 (提高篇-001) 准备工作 --- 安装一些必要的软件包

    ROS 提高篇-001 - 准备工作 - 安装一些必要的软件 我使用的虚拟机软件:VMware Workstation 11 使用的Ubuntu系统:Ubuntu 14.04.4 LTS ROS 版本 ...

随机推荐

  1. Maven下载 || 配置本地仓库 || IntelliJ IDEA配置Maven教程

    本文章主要介绍1.Maven下载   2.配置本地仓库Repository   3.IDEA配置Maven 三点. 相关博客: Eclipse配置Maven https://www.cnblogs.c ...

  2. 教你们在cmd里运行打开游戏,效率很快的。喜欢吧?

    第一步安装好的游戏 环境变量 变量值:把刚才复制好粘贴在里面,前面不用删除. 喜欢吧?这招非常好用.

  3. 201621123014《Java程序设计》第十周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 1. 常用异常 结合题集题目7-1回答 1.1 自己以前编写的代码中经常出现 ...

  4. hdu4771 Stealing Harry Potter's Precious(DFS,BFS)

    练习dfs和bfs的好题. #include<iostream> #include<cstdio> #include<cstdlib> #include<cs ...

  5. mysql前缀索引的应用

    在mysql中有时需要索引的列很长,如果直接应用索引会造成索引过大的问题.因此我们可以取其中一部分字段来做索引,例: 添加索引:alter table * add key (field(3));   ...

  6. jquery ajax中使用jsonp的限制(转)

    http://www.cnblogs.com/dudu/archive/2012/12/04/jquery_ajax_jsonp.html jsonp 解决的是跨域 ajax 调用的问题.为什么要跨域 ...

  7. 《Javascript高级程序设计》阅读记录(六):第六章 下

    这个系列以往文字地址: <Javascript高级程序设计>阅读记录(一):第二.三章 <Javascript高级程序设计>阅读记录(二):第四章 <Javascript ...

  8. 学习动态性能表(22)V$resource_limit

    学习动态性能表 第20篇--V$resource_limit  2007.6.15 就一条SQL语句供你参考: select * from V$RESOURCE_LIMIT where resourc ...

  9. 如何找回未保存过的 Excel 文件?

    如何找回未保存过的 Excel 文件? 同事做了一个文件,未保存直接关闭,正常是找不回来的. 但是 Excel 有一个强大的自动保存功能,对没有保存的文件也可以找回.

  10. openvswitch以及docker网络

    修改docker0的IP,教程写的是/etc/default/docker文件,但是那是过时的配置,真正的配置是在/etc/docker/daemon.json,格式是json的: { "r ...