当前位置:首页 > 工业技术
机器人设计与制作系列  ROS机器人编程  原理与应用
机器人设计与制作系列  ROS机器人编程  原理与应用

机器人设计与制作系列 ROS机器人编程 原理与应用PDF电子书下载

工业技术

  • 电子书积分:14 积分如何计算积分?
  • 作 者:(美)怀亚特·S·纽曼著;李笔锋,祝朝政,刘锦涛译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2019
  • ISBN:9787111625766
  • 页数:450 页
图书介绍:本书共分为六部分。第一部分介绍了如何编写ROS节点和ROS工具,也覆盖了消息、类和服务器。本书的第二部分是用ROS进行仿真和可视化,其中包括坐标变换。第三部分讨论了ROS的感知过程。第四部分介绍了ROS中的移动机器人控制和导航。第五部分介绍了ROS机械臂的相关知识。第六部分涉及系统集成和更高级别的控制,包括基于感知的移动操作。
《机器人设计与制作系列 ROS机器人编程 原理与应用》目录

第一部分 ROS基础 1

第1章 概述:ROS工具和节点 2

1.1 ROS基础概念 2

1.2编写ROS节点 5

1.2.1创建ROS程序包 5

1.2.2编写一个最小的ROS发布器 8

1.2.3编译ROS节点 11

1.2.4运行ROS节点 12

1.2.5检查运行中的最小发布器节点 13

1.2.6规划节点时间 15

1.2.7编写一个最小ROS订阅器 17

1.2.8编译和运行最小订阅器 19

1.2.9总结最小订阅器和发布器节点 21

1.3更多的ROS工具:catkin- simple、roslaunch、 rqt console和rosbag 21

1.3.1用catkin-simple简化CMakeLists.txt 21

1.3.2自动启动多个节点 23

1.3.3在ROS控制台观察输出 25

1.3.4使用rosbag记录并回放数据 26

1.4最小仿真器和控制器示例 28

1.5小结 32

第2章 消息、类和服务器 33

2.1定义自定义消息 33

2.1.1定义一条自定义消息 34

2.1.2定义一条变长的消息 38

2.2 ROS服务介绍 43

2.2.1服务消息 43

2.2.2 ROS服务节点 45

2.2.3与ROS服务手动交互 47

2.2.4 ROS服务客户端示例 48

2.2.5运行服务和客户端示例 50

2.3在ROS中使用C++类 51

2.4在ROS中创建库模块 56

2.5动作服务器和动作客户端介绍 61

2.5.1创建动作服务器包 62

2.5.2定义自定义动作服务器消息 62

2.5.3设计动作客户端 68

2.5.4运行示例代码 71

2.6参数服务器介绍 80

2.7小结 84

第二部分 ROS中的仿真和可视化 85

第3章ROS中的仿真 86

3.1简单的2维机器人仿真器 86

3.2动力学仿真建模 93

3.3统一的机器人描述格式 95

3.3.1运动学模型 95

3.3.2视觉模型 98

3.3.3动力学模型 99

3.3.4碰撞模型 102

3.4 Gazebo介绍 104

3.5最小关节控制器 112

3.6使用Gazebo插件进行关节伺服控制 118

3.7构建移动机器人模型 124

3.8仿真移动机器人模型 132

3.9组合机器人模型 136

3.10小结 139

第4章ROS中的坐标变换 141

4.1 ROS中的坐标变换简介 141

4.2转换侦听器 149

4.3使用Eigen库 156

4.4转换ROS数据类型 161

4.5小结 163

第5章ROS中的感知与可视化 164

5.1 rviz中的标记物和交互式标记物 168

5.1.1 rviz中的标记物 168

5.1.2三轴显示示例 172

5.1.3 rviz中的交互式标记物 176

5.2在rviz中显示传感器值 183

5.2.1仿真和显示激光雷达 183

5.2.2仿真和显示彩色相机数据 189

5.2.3仿真和显示深度相机数据 193

5.2.4 rviz中点的选择 198

5.3小结 201

第三部分 ROS中的感知处理 203

第6章在ROS中使用相机 204

6.1相机坐标系下的投影变换 204

6.2内置相机标定 206

6.3标定立体相机内参 211

6.4在ROS中使用OpenCV 217

6.4.1 OpenCV示例:寻找彩色像素 218

6.4.2 OpenCV示例:查找边缘 223

6.5小结 224

第7章 深度图像与点云信息 225

7.1从扫描LIDAR中获取深度信息 225

7.2立体相机的深度信息 230

7.3深度相机 236

7.4小结 237

第8章 点云数据处理 238

8.1简单的点云显示节点 238

8.2从磁盘加载和显示点云图像 244

8.3将发布的点云图像保存到磁盘 246

8.4用PCL方法解释点云图像 248

8.5物体查找器 257

8.6小结 261

第四部分 ROS中的移动机器人 263

第9章 移动机器人的运动控制 264

9.1生成期望状态 264

9.1.1从路径到轨迹 264

9.1.2轨迹构建器库 268

9.1.3开环控制 273

9.1.4发布期望状态 274

9.2机器人状态估计 282

9.2.1从Gazebo获得模型状态 282

9.2.2里程计 286

9.2.3混合里程计、GPS和惯性传感器 292

9.2.4混合里程计和LIDAR 297

9.3差分驱动转向算法 302

9.3.1机器人运动模型 303

9.3.2线性机器人的线性转向 304

9.3.3非线性机器人的线性转向 306

9.3.4非线性机器人的非线性转向 308

9.3.5仿真非线性转向算法 309

9.4相对于地图坐标系的转向 312

9.5小结 317

第10章 移动机器人导航 318

10.1构建地图 318

10.2路径规划 323

10.3 move base客户端示例 328

10.4修改导航栈 331

10.5 小结 335

第五部分 ROS中的机械臂 337

第11章 底层控制 338

11.1单自由度移动关节机器人模型 338

11.2位置控制器示例 339

11.3速度控制器示例 342

11.4力控制器示例 344

11.5机械臂的轨迹消息 349

11.6 7自由度臂的轨迹插值动作服务器 353

11.7小结 354

第12章 机械臂运动学 355

12.1正向运动学 356

12.2逆向运动学 360

12.3小结 365

第13章 手臂运动规划 366

13.1笛卡儿运动规划 367

13.2关节空间规划的动态规划 368

13.3笛卡儿运动动作服务器 372

13.4小结 376

第14章Baxter仿真器进行手臂控制 377

14.1运行Baxter仿真器 377

14.2 Baxter关节和主题 379

14.3 Baxter夹具 382

14.4头盘控制 385

14.5指挥Baxter关节 387

14.6使用ROS关节轨迹控制器 390

14.7关节空间记录和回放节点 391

14.8 Baxter运动学 397

14.9 Baxter笛卡儿运动 399

14.10小结 404

第15章object-grabber包 405

15.1 object-grabber代码组织 405

15.2对象操作查询服务 407

15.3通用夹具服务 410

15.4 object-grabber动作服务器 412

15.5 object-grabber动作客户端示例 415

15.6小结 425

第六部分 系统集成与高级控制 427

第16章 基于感知的操作 428

16.1外部相机标定 428

16.2综合感知和操作 431

16.3小结 440

第17章 移动操作 441

17.1移动机械手模型 441

17.2移动操作 442

17.3小结 446

第18章 总结 447

参考文献 449

相关图书
作者其它书籍
返回顶部