目录
第 1章 ROS简介 1
1.1 ROS概述 2
1.2 Ubuntu系统 3
1.2.1 Ubuntu系统的安装 3
1.2.2 树莓派安装Ubuntu 10
1.3 ROS的安装 11
1.4 常用的操作命令 13
1.4.1 Ubuntu系统的常用命令 13
1.4.2 常用的ROS操作命令 14
第 2章 ROS基础 15
2.1 开发工具IDE 16
2.1.1 RoboWare Studio的安装 16
2.1.2 卸载 17
2.1.3 使用 18
2.2 节点 22
2.2.1 发布端 23
2.2.2 接收端 24
2.2.3 CMakeLists.txt文件 24
2.2.4 测试 25
2.3 消息 26
2.3.1 自定义消息 26
2.3.2 编写自定义消息发布端 27
2.3.3 编写自定义消息接收端 28
2.3.4 CMakeLists.txt文件 29
2.3.5 测试 30
2.4 服务 31
2.4.1 服务通信 31
2.4.2 自定义srv 31
2.4.3 创建服务器 32
2.4.4 创建客户端 33
2.4.5 CMakeLists.txt文件 34
2.4.6 测试 35
2.5 参数 36
2.5.1 编写参数设置获取节点 36
2.5.2 CMakeLists.txt文件 39
2.5.3 测试 39
2.6 动态参数设置 41
2.6.1 创建cfg文件 41
2.6.2 创建动态参数设置可执行文件 42
2.6.3 CMakeLists.txt文件 43
2.6.4 测试 44
2.7 ROS类编程思想 45
2.7.1 创建类头文件 45
2.7.2 创建类应用可执行文件 47
2.7.3 CMakeLists.txt文件 49
2.7.4 测试 50
第3章 调试及仿真工具 52
3.1 Rviz 53
3.2 Gazebo 56
3.2.1 安装与更新 57
3.2.2 Gazebo环境 58
3.2.3 选项卡与工具条 59
3.2.4 模拟场景组成元素 62
3.2.5 搭建简单机器人模型 64
3.3 rqt的调试 72
3.4 rosbag的使用 76
3.5 rosbridge的开发 78
3.5.1 rosbridge_suite的安装 78
3.5.2 测试html通信 79
第4章 TF简介及应用 87
4.1 TF包概述 88
4.2 TF包的简单使用 88
4.3 编写TF发布与接收程序 93
第5章 SLAM简介及应用 100
5.1 SLAM概述 101
5.2 gmapping建图功能应用 102
5.3 ROS gmapping功能包解读 103
5.4 openslam源码解读 108
5.5 ROS建图实战 119
5.5.1 ROS地图发布 119
5.5.2 TF坐标变换发布 124
5.5.3 模拟激光数据 126
5.5.4 建图 129
5.5.5 建图测试 138
第6章 ROS navigation及算法简介 140
6.1 ROS navigation stack概述 141
6.2 move_base的配置 142
6.3 navigation源码解读 150
6.4 A-Star算法原理与实现 155
6.5 dwa算法 166
第7章 基于V-rep的ROS开发 176
7.1 V-rep机器人仿真软件概述 177
7.1.1 V-rep与Gazebo的区别 178
7.1.2 V-rep与ROS通信机制 178
7.2 V-rep安装与ROS配置 179
7.2.1 环境要求 179
7.2.2 V-rep的安装 179
7.2.3 配置RosInterface 180
7.3 运行V-rep自带ROS控制场景 182
7.3.1 熟悉V-rep基本操作 182
7.3.2 运行ROS控制场景 183
7.3.3 ROS发送数据到V-rep 185
7.4 V-rep环境搭建与ROS控制开发 190
7.4.1 V-rep环境搭建 190
7.4.2 激光雷达ROS参数配置 199
7.5 V-rep与ROS联合仿真实验 201
7.5.1 gmapping建图测试 201
7.5.2 导航测试 204
作者介绍
主编: 陶满礼,硕士,毕业于东北大学机械工程与自动化学院机械电子工程专业。曾先后在沈阳新松机器人自动化股份有限公司服务机器人事业部担任软件工程师,在北京天下宏图空间信息技术有限公司担任视觉算法工程师。主要研究方向为机器人激光SLAM与Navigation路径规划算法研究、三维点云及深度学习在物体识别与定位领域的应用。 参编: 夏丽娟,东北大学工商管理学院企业管理专业硕士,辽宁大学商学院企业管理专业学士。主要研究方向为绿色供应链管理、复杂网络研究、项目管理、供应链系统的数学建模及算例分析应用。 张志飞,硕士,毕业于东北大学机械工程与自动化学院,沈阳新松机器人自动化股份有限公司智能交通事业部工程师。主要从事机器人产品开发及ROS相关研究,包括Delta并联机器人无传感器力位混合控制及轮式挂轨巡检机器人等产品的研发。 夏文杰,学士,毕业于中国民航大学,主要从事互联网软件产品研发工作,包括产品定义、方案输出、过程管控及持续更新迭代,熟悉人工智能在智慧零售领域的应用,对人工智能在零售领域的应用具有丰富的实战经验。
关联推荐
全彩印刷,提供了结合ROS进行机器人开发的V-rep环境,ROS与V-rep联合开发实现机器人建图与导航。