logo资料库

ros by example 中文翻译版本.pdf

第1页 / 共284页
第2页 / 共284页
第3页 / 共284页
第4页 / 共284页
第5页 / 共284页
第6页 / 共284页
第7页 / 共284页
第8页 / 共284页
资料共284页,剩余部分请下载后查看
自HYDRO以来的变化
ROS的变化
示例代码的更改
主要章节标题
2.1 凉亭,舞台和ArbotiX模拟器
2.2 介绍TurtleBot,Maxwell和Pi机器人
3.1 安装Ubuntu Linux
3.2 Linux入门
3.3 关于更新和升级的注意事项
4.1 安装ROS
4.2 安装rosinstall
4.3 用Catkin建设ROS包装
4.4 创建一个柔和的工作区
4.5 用柔Do做“干净”
4.6 重建一个单一的柔kin包
4.7 混合柔cat花和rosbuild工作区
4.8 通过官方的ROS教程
4.9 RViz:ROS可视化工具
4.10 在程序中使用ROS参数
4.12 机器人和台式计算机之间的网络连接
4.12.1 时间同步
4.12.2 ROS联网使用Zeroconf
4.12.3 测试连接
4.12.4 设置ROS_MASTER_URI和ROS_HOSTNAME变量
在机器人上:
在桌面上:
在桌面上:
4.12.5 打开新的终端
4.12.6 在两台机器上运行节点
在桌面上:
在机器人上(通过ssh):
在桌面上:
4.12.7 在互联网上的ROS网络
4.13 ROS回顾
4.14 什么是ROS应用程序?
4.15 使用SVN,Git和Mercurial安装软件包
4.15.1 SVN
4.15.2 混帐
4.15.3 水银
4.16 从您的个人catkin目录中删除软件包
4.17 如何查找第三方ROS软件包
4.17.1 搜索ROS Wiki
4.17.3 浏览ROS软件索引
4.17.4 做一个Google搜索
4.18 获得ROS的进一步帮助
5.1 安装先决条件
5.2 克隆靛蓝色的例子库
5.2.1 从电力或Fuerte升级
5.2.2 从Groovy升级
5.2.3 从Hydro升级
5.2.4 第一次克隆Indigo的rbx1仓库
5.3 关于本书中的代码清单
6. 安装ARBOTIX仿真器
6.1 安装模拟器
6.2 测试模拟器
6.3 用你自己的机器人运行模拟器
7.1 单位和坐标系统
7.2 运动控制的级别
7.2.1 电机,车轮和编码器
7.2.2 电机控制器和驱动器
7.2.3 ROS基础控制器
7.2.4 使用move_base ROS Package的基于帧的运动
7.2.5 SLAM使用gmapping和amcl ROS包
7.2.6 语义目标
7.2.7 概要
7.3 用ROS来扭转和转动
7.3.1 示例扭曲消息
7.3.2 使用RViz监视机器人运动
7.4 校准你的机器人的测量
7.4.1 线性校准
7.4.2 角度校准
7.5 发送扭曲消息到一个真正的机器人
7.6 从ROS节点发布扭曲消息
7.6.1 使用时间和速度估计距离和旋转
7.6.2 在ArbotiX模拟器中定时执行
7.6.4 超时和使用真正的机器人回来
7.7 我们到了吗? 用Odometry走出去的距离
7.8 出和回使用Odometry
7.8.1 基于Odometry的出来和在ArbotiX模拟器回来
7.8.2 使用真实的机器人基于Odometry的背部和背部
7.8.3 基于Odometry的Out-and-Back脚本
7.9 使用Odometry导航广场
7.9.1 在ArbotiX模拟器中导航广场
7.9.2 使用真实机器人导航广场
7.9.4 推算死亡的麻烦
7.10 远程操作您的机器人
7.10.1 使用键盘
7.10.2 使用罗技游戏手柄
7.10.4 使用交互式标记的TurtleBot遥控操作
8.1 使用move_base的路径规划和避障
8.1.2 路径规划的配置参数
8.1.2.1 base_local_planner_params.yaml
8.1.2.2 costmap_common_params.yaml
8.1.2.3 global_costmap_params.yaml
8.1.2.4 local_costmap_params.yaml
8.2 在ArbotiX模拟器中测试move_base
8.2.1 点击并点击导航在RViz
8.2.2 RViz的导航显示类型
8.2.4 避免模​​拟障碍
8.2.5设置存在障碍的手动目标
8.3.2 使用深度相机作为假激光避免障碍
8.4.1 激光扫描仪或深度相机?
8.4.2 收集和记录扫描数据
8.4.3 创建地图
8.4.4 从袋子数据创建地图
8.4.5 我可以扩展或修改现有的地图吗?
8.5 使用Map和amcl导航和本地化
8.5.1 用假冒本地化测试amcl
8.5.2 在真机器人上使用amcl
8.5.3 完全自主导航
8.5.4 在仿真中运行导航测试
8.5.5 了解导航测试脚本
8.5.6 在真实的机器人上运行导航测试
8.5.7 下一步是什么?
9. 语音识别和综合
9.1 安装PocketSphinx进行语音识别
9.2 测试PocketSphinx识别器
9.3 创建一个词汇表
9.4 一个语音控制导航脚本
9.4.1 测试ArbotiX仿真器中的语音控制
9.4.2 使用真实机器人的语音控制
9.5 安装和测试节日文本到语音
9.5.1 在ROS节点中使用文本到语音
9.5.2 测试talkback.py脚本
10.1 OpenCV,OpenNI和PCL
10.2 有关相机分辨率的注意事项
10.3 安装和测试ROS相机驱动程序
10.3.1 安装ROS OpenNI和OpenKinect(freenect)驱动程序
10.3.2 安装摄像头驱动程序
10.3.3 测试你的Kinect或Xtion相机
10.3.4 测试您的USB摄像头
10.4 在Ubuntu Linux上安装OpenCV
10.5 ROS到OpenCV:cv_bridge包
10.6 ros2opencv2.py实用程序
10.7 处理录制的视频
10.8 OpenCV:开源计算机视觉库
10.8.1 人脸检测
10.8.3 使用光流跟踪关键点
10.8.4 建立一个更好的面容追踪器
10.8.5 动态添加和删除关键点
10.8.6 彩色斑点追踪(CamShift)
10.9 OpenNI和骨架跟踪
10.9.2 在RViz中查看骨骼
10.9.3 在您的程序中访问骨架框架
10.10 PCL节点和3D点云
11.1 关于相机坐标轴的注意事项
11.2 对象跟踪器
11.2.1 使用rqt_plot测试对象跟踪器
11.2.2 用模拟机器人测试对象跟踪器
11.2.3 了解对象跟踪代码
11.2.4 在真实的机器人上的对象跟踪
11.3 对象追随者
11.3.1 将深度添加到对象跟踪器
11.3.2 用模拟机器人测试物体跟随器
11.3.3 对象在一个真正的机器人之后
11.4 人追随者
11.4.1 在仿真中测试跟随器的应用
11.4.2 理解追随者脚本
11.4.3 在TurtleBot上运行Follower应用程序
11.4.4 在过滤点云上运行跟随者节点
12.1 一个带有一个平移头的TurtleBot
12.2 选择一个Dynamixel硬件控制器
12.3 关于动态像素硬件的注意事项
12.4 选择一个ROS动态像素包
12.5 了解ROS联合状态消息类型
12.6 控制关节位置,速度和扭矩
12.6.1 设置伺服位置
12.6.2 设置伺服速度
12.6.3 控制伺服扭矩
12.7 检查USB2Dynamixel连接
12.8 设置伺服硬件ID
12.9 配置和启动dynamixel_controllers
12.10 测试舵机
12.10.1 启动控制器
12.10.2 在RViz中监视机器人
12.10.3 列出控制器主题和监视联合国
12.10.4 列出控制器服务
12.10.5 设置伺服位置,速度和转矩
12.11 跟踪视觉目标
12.11.1 跟踪一张脸
12.11.2 头追踪脚本
12.11.3 跟踪彩色的对象
12.11.4 跟踪手动选择的目标
12.12 完整的头部跟踪ROS应用程序
笔记
ROS例子 一个自己动手的机器人操作系统指 南 VOLUME1 PI机器人生产 R. PATRICK GOEBEL 版本1.1.0对 于ROS Indigo
ROS例子。 版权©2012 R. Patrick Goebel 版权所有。 未经版权所有者和出版者事先书面许可,不得以任何形式或任何手段 (电子或机械,包括影印,录制或任何信息存储或检索系统)复制或传播本作品 的任何部分。 ISBN:5-800085-311092 ROS Indigo版本1.1.0:2015年1月 乐高®是乐高集团的商标,不赞助,授权或认可本书。 此处提及的其他产品和公司名称可能是其各自所有者的商标。 我们不是在商标 名称每次出现时都使用商标符号,而是仅以编辑方式使用商标名称,并且为了商 标所有者的利益,而不打算侵犯商标。 包含在这项工作(平装书或电子书)中的信息已经从相信是可靠的来源获得。 然而,作者并不保证其中包含的任何信息的准确性和完整性,作者不对由此处公 布的信息直接或间接引起或声称的任何错误,遗漏,损失或损害负责。 这项工 作是出版的理解是作者提供的信息,但不是试图提供专业服务。 这个产品几乎 肯定包含错误。 您有责任检查,验证,测试和确定使用的恰当性,或请合适的 专业人员协助。
P前言 这本书是关于编程你的机器人做惊人的事情,无论是检测人的脸部和其他视觉对 象,在你的房子自主导航,或响应口头命令。 由于加利福尼亚州创建的机器人 操作系统ROS,我们将使用一些当今最先进的机器人软件柳木车库现在由开源机 器人基金会维护(OSRF). ROS(发音为“Ross”)的主要目标是提供一个统一的开源编程框架,用于在各种 现实世界和模拟环境中控制机器人。 ROS当然不是第一个这样的努力; 事实 上,做一个维基百科搜索“机器人软件”的项目就有15个。 但Willow Garage并 不是一个普通的程序员群体,他们自由软件就是这样。 在一些严肃的资金,强 大的技术专长以及计划好的一系列发展里程碑的推动下,Willow Garage已经在 机器人专家中引发了一种编程热潮,短短几年内已经创建了数百个用户贡献的 ROS软件包。 ROS现在包括用于导航和本地化(SLAM),3D对象识别,行动计划,多关节臂的运 动控制,机器学习等甚至是任务的软件打台球. 与此同时,Willow Garage还设计并制造了一款名为PR2的价值40万美元的机器 人,以帮助展示其操作系统。 使用最新的机器人硬件,包括两个立体相机,一 对激光扫描仪,7个自由度的手臂和一个全方位的驱动系统,只有一个幸运的少 数人能够直接在PR2上运行ROS,包括11个研究机构获得免费的PR2作为beta测试 比赛的一部分。 但是,您不需要PR2来充分利用ROS; 包已经创建,以支持包括 iRobot创建,TurtleBot,Arduino,WowWee Rovio,乐高®NXT,Phidgets, ArbotiX,串行器,元素和Robotis Dynamixels成本较低的平台和组件。 ROS的基本原则是“不要重新发明轮子”。 成千上万的非常聪明的人已经为机器 人编程五十多年了,为什么不把所有的大脑力量集中到一起呢? 幸运的是,Web 是共享代码的完美媒介。 现在许多大学,公司和个人都公开分享他们的ROS代码 库,通过诸如谷歌代码或GitHub等服务提供免费的云空间,任何人都可以轻松地 免费分享他们自己的ROS创作。 也许跳上ROS列车的最好的部分是来自与来自世界各地的数千名志同道合的机器人 工作者的兴奋。 你不仅可以通过不复制别人的工作节省很多天的挫折感,还可以 感受到回馈到这个快速发展的领域所带来的满足感。
分享到:
收藏