注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计精通ROS机器人编程(原书第2版)

精通ROS机器人编程(原书第2版)

精通ROS机器人编程(原书第2版)

定 价:¥99.00

作 者: [印度] 郎坦·约瑟夫(Lentin Joseph) 著
出版社: 机械工业出版社
丛编项: 机器人设计与制作系列
标 签: 暂缺

购买这本书可以去


ISBN: 9787111621997 出版时间: 2019-04-01 包装: 平装
开本: 16开 页数: 378 字数:  

内容简介

  本书主要面向机器人开发人员和想充分利用ROS功能的研究人员,是一本侧重ROS框架高级概念的进阶学习指南。书中既介绍了ROS的基本概念,又系统讲解了使用ROS进行复杂机器人设计、建模、仿真和交互的实用技术、工具和编程技巧,包含大量示例,可以为你快速提升ROS实战技能提供翔实参考。全书共15章,第1章简要介绍ROS基本概念;第2章解释如何使用ROS软件包;第3章讨论7-DOF机械臂和差速驱动机器人的设计;第4章和第5章通过示例详细讲解如何使用Gazebo和V-REP这两个的机器人仿真软件;第6章介绍如何使用ROS MoveIt!和导航软件包集的现有功能;第7章讨论ROS pluginlib、小节点和控制器等一些高级概念;第8章进一步讨论RViz插件和ROS控制器;第9章讨论一些硬件组件与ROS的接口;第10章讨论如何使用ROS连接各种视觉传感器,并利用开源计算机视觉库(OpenCV)和点云库(PCL)进行编程;第11章介绍如何构建差速驱动的自主移动机器人,并将其与ROS连接;第12章介绍MoveIt!的高级功能;第13章讨论如何将Matlab和Simulink软件与ROS连接;第14章介绍ROS-Industrial软件包;第15章讨论如何在ROS中安装集成开发环境,并介绍ROS实战技巧与调试方法。

作者简介

  朗坦·约瑟夫(Lentin Joseph)是一名来自印度的作家、创业者。他是印度Qbotics实验室的创始人兼CEO,在机器人领域已经有7年的从业经验,主要研究方向包括机器人操作系统(ROS)、OpenCV、PCL等。乔纳森·卡卡切(Jonathan Cacace)在意大利那不勒斯腓特烈二世大学获计算机科学硕士学位及信息与自动化工程博士学位。目前,乔纳森是那不勒斯腓特烈二世大学PRISMA实验室的博士后,主要研究工业机器人和服务机器人,曾经开发了几款基于ROS且集成了机器人感知控制的机器人应用。

图书目录

译者序
前言
作者简介
译者简介
第1章 ROS简介 1
1.1 为什么要学习ROS 1
1.2 在机器人开发中,人们为什么更愿意选择ROS 2
1.3 为什么有些人不愿意选择ROS 3
1.4 理解ROS的文件系统 4
1.4.1 ROS软件包 5
1.4.2 ROS超软件包 7
1.4.3 ROS消息 7
1.4.4 ROS服务 9
1.5 理解ROS的计算图 9
1.5.1 ROS节点 11
1.5.2 ROS消息 12
1.5.3 ROS话题 13
1.5.4 ROS服务 13
1.5.5 ROS消息记录包 14
1.5.6 ROS节点管理器 14
1.5.7 应用ROS参数 16
1.6 ROS的社区 17
1.7 学习ROS需要做哪些准备 17
1.8 习题 20
1.9 本章小结 20
第2章 ROS编程入门 21
2.1 创建一个ROS软件包 21
2.1.1 学习ROS话题 23
2.1.2 创建ROS节点 23
2.1.3 编译生成节点 26
2.2 添加自定义的msg和srv文件 28
2.3 使用ROS服务 30
2.3.1 使用ROS动作库 34
2.3.2 编译ROS动作服务器和客户端 37
2.4 创建启动文件 39
2.5 话题、服务和动作库的应用 41
2.6 维护ROS软件包 41
2.7 发布ROS软件包 42
2.7.1 准备发布ROS软件包 43
2.7.2 发布软件包 43
2.7.3 为ROS软件包创建维基页面 45
2.8 习题 47
2.9 本章小结 47
第3章 在ROS中为3D机器人建模 48
3.1 机器人建模的ROS软件包 49
3.2 利用URDF理解机器人建模 50
3.3 为机器人描述创建ROS软件包 52
3.4 创建我们的第一个URDF模型 52
3.5 详解URDF文件 54
3.6 在RViz中可视化机器人3D模型 55
3.7 向URDF模型添加物理属性和碰撞属性 57
3.8 利用xacro理解机器人建模 58
3.8.1 使用属性 58
3.8.2 使用数学表达式 59
3.8.3 使用宏 59
3.9 将xacro转换为URDF 59
3.10 为7-DOF机械臂创建机器人描述 60
3.10.1 机械臂规格 61
3.10.2 关节类型 61
3.11 解析7-DOF机械臂的xacro模型 61
3.11.1 使用常量 61
3.11.2 使用宏 62
3.11.3 包含其他xacro文件 62
3.11.4 在连杆中使用网格模型 63
3.11.5 使用机器人夹爪 63
3.11.6 在RViz中查看7-DOF机械臂 63
3.12 为差速驱动移动机器人创建机器人模型 66
3.13 习题 70
3.14 本章小结 70
第4章 使用ROS和Gazebo进行机器人仿真 71
4.1 使用Gazebo和ROS仿真机械臂 71
4.2 为Gazebo创建机械臂仿真模型 72
4.2.1 为Gazebo机器人模型添加颜色和纹理 73
4.2.2 添加transmission标签来驱动模型 74
4.2.3 添加gazebo_ros_control插件 74
4.2.4 在Gazebo中添加3D视觉传感器 75
4.3 仿真装有Xtion Pro的机械臂 76
4.4 在Gazebo中使用ROS控制器 78
4.4.1 认识ros_control软件包 78
4.4.2 不同类型的ROS控制器和硬件接口 79
4.4.3 ROS控制器如何与Gazebo交互 79
4.4.4 将关节状态控制器和关节位置控制器连接到手臂 80
4.4.5 在Gazebo中启动ROS控制器 81
4.4.6 控制机器人的关节运动 83
4.5 在Gazebo中仿真差速轮式机器人 83
4.5.1 将激光雷达添加到机器人中 85
4.5.2 在Gazebo中控制机器人移动 86
4.5.3 在启动文件中添加关节状态发布者 87
4.6 添加ROS遥控节点 88
4.7 习题 89
4.8 本章小结 89
第5章 用ROS和V-REP进行机器人仿真 91
5.1 安装带有ROS的V-REP 91
5.2 理解vrep_plugin 95
5.2.1 使用ROS服务与V-REP交互 96
5.2.2 使用ROS话题与V-REP交互 98
5.3 使用V-REP和ROS仿真机械臂 101
5.4 在V-REP下仿真差速轮式机器人 107
5.4.1 在V-REP中添加激光传感器 109
5.4.2 在V-REP中添加3D视觉传感器 110
5.5 习题 112
5.6 本章小结 112
第6章 ROS MoveIt!与导航软件包集 113
6.1 安装MoveIt! 113
6.2 使用配置助手工具生成MoveIt!配置软件包 118
6.2.1 第1步:启动配置助手工具 118
6.2.2 第2步:生成自碰撞矩阵 120
6.2.3 第3步:增加虚拟关节 120
6.2.4 第4步:添加规划组 121
6.2.5 第5步:添加机器人姿态 122
6.2.6 第6步:设置机器人的末端执行器 122
6.2.7 第7步:添加被动关节 123
6.2.8 第8步:作者信息 123
6.2.9 第9步:生成配置文件 123
6.3 使用MoveIt!配置软件包在RViz中进行机器人运动规划 124
6.3.1 使用RViz运动规划插件 125
6.3.2 MoveIt!配置软件包与Gazebo的接口 128
6.4 理解ROS导航软件包集 133
6.4.1 ROS导航硬件的要求 133
6.4.2 使用导航软件包 134
6.5 安装ROS导航软件包集 136
6.6 使用SLAM构建地图 136
6.6.1 为gmapping创建启动文件 137
6.6.2 在差速驱动机器人上运行SLAM 138
6.6.3 使用amcl和静态地图实现自主导航 141
6.6.4 创建amcl启动文件 141
6.7 习题 144
6.8 本章小结 144
第7章 使用pluginlib、小节点和Gazebo 插件 145
7.1 理解pluginlib 145
7.2 理解ROS小节点 151
7.3 理解Gazebo插件 156
7.4 习题 160
7.5 本章小结 160
第8章 ROS控制器和可视化插件编程 161
8.1 理解 ros_control软件包集 162
8.1.1 controller

本目录推荐