您好,欢迎来到聚文网。 登录 免费注册
ROS机器人程序设计

ROS机器人程序设计

  • 装帧: 平装
  • 出版社: 机械工业出版社
  • 作者: Aaron Martinez Enrique Fern á ndez 著作 刘品杰 译者
  • 出版日期: 2014-09-01
  • 商品条码: 9787111473961
  • 版次: 1
  • 开本: 16开
  • 页数: 225
  • 出版年份: 2014
定价:¥59 销售价:登录后查看价格  ¥{{selectedSku?.salePrice}} 
库存: {{selectedSku?.stock}} 库存充足
{{item.title}}:
{{its.name}}
精选
内容简介
本书涵盖了ROS软件架构中从初始设计到很复杂设计的全过程,自始至终,都用大量的实例帮助你理解ROS架构。该书用简单明了的叙述兼实用性的实例带你进入迷人的机器人世界,涉及传感器集成、建模、仿真、计算机视觉、语音识别、导航算法等诸多技术领域。
作者简介
Aaron Martinez是一个计算机工程师、企业家和数字化制造专家。他硕士毕业于拉斯帕尔马斯大学的IUCTC(科学与网络技术研究所)。之后,参与过拉斯帕尔马斯大学AVORA项目。在这个项目中,他负责设计AUV (自主式水下机器人),并在意大利参加了欧洲学生自主式水下挑战(SAUC-E)。
刘品杰,硕士,技术方向为工业自动化控制、DCS/PLC/SCADA系统研发,机器人技术等。先后参与过国产化核电站DCS控制系统研发、国产化油气管道大型SCADA系统研发。
目录
译者序
前  言
第1章  ROS系统入门  1
1.1  使用软件源安装ROS Electric  3
1.1.1  添加软件源到sources.list文件中  4
1.1.2  设置密码  4
1.1.3  安装  4
1.1.4  环境配置  5
1.2  使用软件源安装ROS Fuerte   6
1.2.1  配置Ubuntu软件源  6
1.2.2  配置source.list文件  6
1.2.3  设置密码  7
1.2.4  安装  7
1.2.5  环境配置  8
1.2.6  独立工具  9
1.3  如何安装VirtualBox和Ubuntu  9
1.3.1  下载VirtualBox  9
1.3.2  创建虚拟机  10
1.4  本章小结  12
第2章  ROS系统架构及示例  13
2.1  理解ROS文件系统级  13
2.1.1  功能包  14
2.1.2  功能包集  16
2.1.3  消息类型  16
2.1.4  服务类型  17
2.2  理解ROS计算图级  18
2.2.1  节点  19
2.2.2  主题  20
2.2.3  服务  21
2.2.4  消息  22
2.2.5  消息记录包  22
2.2.6  节点管理器  22
2.2.7  参数服务器  22
2.3  理解ROS开源社区级  23
2.4  ROS系统试用练习  23
2.4.1  ROS文件系统导览  24
2.4.2  创建工作空间  24
2.4.3  创建ROS功能包  25
2.4.4  编译ROS功能包  26
2.4.5  使用ROS节点  26
2.4.6  使用主题与节点交互  28
2.4.7  学习如何使用服务  31
2.4.8  使用参数服务器  33
2.4.9  创建节点  34
2.4.10  编译节点  36
2.4.11  创建msg和srv文件  37
2.4.12  使用新建的srv和msg文件  38
2.5  本章小结  42
第3章  调试和可视化  43
3.1  调试ROS节点  44
3.1.1  使用GDB调试器调试ROS节点  45
3.1.2  ROS节点启动时调用GDB调试器  46
3.1.3  设置ROS节点core文件转存  47
3.2  调试信息  47
3.2.1  输出调试信息  47
3.2.2  设置调试信息级别  48
3.2.3  为特定节点配置调试信息级别  48
3.2.4  信息命名  50
3.2.5  条件显示信息与过滤信息  50
3.2.6  信息的更多功能——单次显示、可调、组合  51
3.2.7  使用rosconsole和rxconsole在运行时修改调试级别  52
3.3  监视系统状态  56
3.3.1  节点、主题与服务列表  56
3.3.2  使用rxgraph在线监视节点状态图  56
3.4  当奇怪的事情发生——使用roswtf  58
3.5  画标量数据图  58
3.5.1  用rxplot画出时间趋势曲线  59
3.5.2  另一个画图工具rxtools  60
3.6  图像可视化  61
3.6.1  显示单一图片  61
3.6.2  FireWire接口摄像头  62
3.6.3  使用双目立体视觉  63
3.7  3D可视化  64
3.7.1  使用rviz在3D世界中实现数据可视化  64
3.7.2  主题与坐标系的关系  66
3.7.3  可视化坐标变换  67
3.8  保存与回放数据  68
3.8.1  什么是消息记录包文件  69
3.8.2  使用rosbag在包文件中记录数据  69
3.8.3  回放消息记录文件  70
3.8.4  使用rxbag检查消息记录包的主题和消息  71
3.9  rqt插件与rx应用  72
3.10  本章小结  73
第4章  在ROS下使用传感器和执行机构  74
4.1  使用游戏杆或游戏手柄  74
4.1.1  joy_node如何发送游戏杆动作消息  75
4.1.2  使用游戏杆数据在turtlesim中移动海龟  76
4.2  使用激光雷达——Hokuyo URG-04lx  79
4.2.1  了解激光雷达如何在 ROS 中发送数据  80
4.2.2  访问和修改激光雷达数据  82
4.3  使用Kinect传感器查看3D环境  84
4.3.1  如何发送和查看Kinect数据  85
4.3.2  创建和使用Kinect示例  86
4.4  使用伺服电动机——Dynamixel  88
4.4.1  Dynamixel如何发送和接收运动命令  89
4.4.2  创建和使用伺服电动机示例  90
4.5  使用Arduino添加更多的传感器和执行机构  91
4.6  使用惯性测量模组——Xsens MTi  94
4.6.1  Xsens如何在ROS中发送数据  95
4.6.2  创建和使用Xsens示例  96
4.7  使用低成本惯性测量模组IMU-10自由度  98
4.7.1  下载加速度传感器库  99
4.7.2  Arduino Nano和10自由度传感器编程  99
4.7.3  创建ROS节点并使用10自由度传感器数据  101
4.8  本章小结  103
第5章  3D建模与仿真  104
5.1  自定义机器人在ROS中的3D模型  104
5.2  创建第一个URDF文件  104
5.2.1  解释文件格式  106
5.2.2  在rviz里查看3D模型  107
5.2.3  加载图形到机器人模型  109
5.2.4  使机器人模型运动  109
5.2.5  物理和碰撞属性  110
5.3  xacro——一个写机器人模型的更好方法  111
5.3.1  使用常量  111
5.3.2  使用数学方法  112
5.3.3  使用宏  112
5.3.4  使用代码移动机器人  112
5.3.5  使用SketchUp进行3D建模  116
5.4  在ROS中仿真  117
5.4.1  在Gazebo中使用URDF3D模型  117
5.4.2  在Gazebo中添加传感器  120
5.4.3  在Gazebo中加载和使用地图   121
5.4.4  在Gazebo中移动机器人  123
5.5  本章小结  125
第6章  机器视觉  126
6.1  连接和运行摄像头  128
6.1.1  FireWire IEEE1394 摄像头  128
6.1.2  USB摄像头  132
6.2  使用OpenCV制作USB摄像头驱动程序  133
6.2.1  创建 USB 摄像头驱动功能包  134
6.2.2  使用ImageTransport API发布摄像头帧  135
6.2.3  使用 cv_bridge 进行OpenCV 和 ROS 图像处理  138
6.2.4  使用ImageTransport 发布图像  139
6.2.5  在ROS中使用OpenCV  139
6.2.6  显示摄像头输入的图像  140
6.3  如何标定摄像头  140
6.4  ROS 图像管道  147
6.5  对于计算机视觉任务有用的 ROS功能包  152
6.6  使用viso2执行视觉测距  153
6.6.1  摄像头位姿标定  154
6.6.2  运行 viso2 在线演示  156
6.6.3  使用低成本双目摄像头运行 viso2  158
6.7  本章小结  159
第7章  导航功能包集入门  160
7.1  ROS导航功能包集  160
7.2  创建转换  161
7.2.1  创建广播机构  162
7.2.2  创建侦听器  162
7.2.3  查看坐标变换树  164
7.3  发布传感器信息   165
7.4  发布里程数据  168
7.4.1  Gazebo如何获取里程数据  169
7.4.2  创建自定义里程数据  171
7.5  创建基础控制器  175
7.5.1  使用Gazebo 创建里程数据  176
7.5.2  创建基础控制器  178
7.6  使用ROS创建地图  180
7.6.1  使用map_server保存地图  181
7.6.2  使用map_server加载地图  182
7.7  本章小结  183
第8章  导航功能包集进阶  184
8.1  创建功能包  184
8.2  创建机器人配置  184
8.3  配置全局和局部代价地图  187
8.3.1  基本参数的配置  187
8.3.2  全局代价地图的配置  188
8.3.3  局部代价地图的配置  189
8.4  基本局部规划器配置  189
8.5  为导航功能包集创建启动文件  190
8.6  为导航功能包集设置rviz  191
8.6.1  2D位姿估计  191
8.6.2  2D导航目标  192
8.6.3  静态地图  193
8.6.4  点云  193
8.6.5  机器人立足点  193
8.6.6  障碍  194
8.6.7  膨胀障碍  194
8.6.8  全局规划  195
8.6.9  局部规划  195
8.6.10  规划器规划  196
8.6.11  当前目标  196
8.7  自适应蒙特卡罗定位  197
8.8  避免障碍  199
8.9  发送目标  200
8.10  本章小结  202
第9章  在实践中学习  203
9.1  REEM——类人形PAL机器人  204
9.1.1  从官方软件源安装REEM  205
9.1.2  使用Gazebo仿真环境运行REEM  208
9.2  PR2——柳树车库机器人  210
9.2.1  安装 PR2仿真环境  210
9.2.2  在仿真环境中运行PR2  211
9.2.3  生成地图与定位  214
9.2.4  在仿真环境中运行PR2演示程序  216
9.3  Robonaut 2——NASA的敏捷型人形机器人  217
9.3.1  从软件源安装Robonaut 2  217
9.3.2  在国际空间站的固定支座上运行Robonaut2  218
9.4  Husky——Clearpath的轮式机器人  222
9.4.1  安装Husky仿真环境  222
9.4.2  运行Husky仿真环境  222
9.5  TurtleBot——低成本移动机器人   224
9.5.1  安装TurtleBot仿真环境  224
9.5.2  运行TurtleBot仿真环境  224
9.6  本章小结  225

蜀ICP备2024047804号

Copyright 版权所有 © jvwen.com 聚文网