注册 登录 进入教材巡展
#

出版时间:2025-07

出版社:电子工业出版社

以下为《ROS机器人编程与开发》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 电子工业出版社
  • 9787121507120
  • 1-1
  • 568614
  • 平塑
  • 16开
  • 2025-07
  • 243
  • 152
  • 工学
  • 自动化类
  • 机器人工程
  • 本科 研究生及以上
内容简介
随着智能技术的快速发展,机器人技术已成为推动社会进步的重要力量。在工业自动化、物流配送、医疗服务、教育辅助等领域,机器人应用日益广泛。ROS(Robot Operating System)作为机器人开发的标准化框架,为机器人从感知到决策、执行提供了强大的具。ROS2作为ROS的下一代版本,不仅延续了传统的功能,还引入了更高效的架构,支持多种开发语言和操作系统。 本书以ROS2为核心工具,结合机器人开发的实践性和前沿技术,为学生提供一套完整的学习路径。通过理论与实践相结合的教学方式,帮助学生掌握机器人编程与开发的关键技能。本书分为7章,主要介绍ROS2基本情况及使用、ROS2程序编写、ROS2机器人基本控制、ROS2机器人视觉、ROS2机器人激光雷达地图构建、ROS2多关节机器人运动控制及规划、ROS2多关节机器人系统搭建等。 本书理论与实践相结合,采用模块化设计,内容以项目为导向,配套实验与案例分析,同时注重项目化学习。本书配有PPT、源代码、习题解答等资源,读者可登录华信教育资源网免费下载。 本书适合人工智能、计算机科学与技术、机器人工程、电子信息工程等专业教学使用,也可供ROS技术爱好者使用。
目录
第1章 ROS2基本情况及使用 1
1.1 ROS2简介与开发环境搭建 1
1.1.1 ROS2简介 1
1.1.2 ROS2开发环境搭建 6
1.2 ROS2体系架构及简单使用 12
1.2.1 ROS2与ROS1的区别 12
1.2.2 ROS2的架构 12
1.2.3 使用turtlesim及rqt 13
1.3 ROS2计算图介绍 16
1.3.1 节点 16
1.3.2 主题 18
1.3.3 服务 20
1.3.4 参数 24
1.3.5 消息记录包 26
1.4 ROS2基本工具与使用 27
1.4.1 vi的基本使用 27
1.4.2 SSH访问及基本配置 28
1.4.3 RViz2介绍与使用 30
第2章 ROS2程序编写 35
2.1 创建ROS2工作区 35
2.2 创建ROS2功能包 36
2.2.1 功能包概述 36
2.2.2 ROS2功能包的组成 36
2.2.3 创建功能包 37
2.3 编写一个简单的发布服务器和订阅服务器(C++) 38
2.3.1 创建包 38
2.3.2 写入发布节点 38
2.3.3 检查代码 39
2.3.4 添加依赖项 40
2.3.5 写入订阅节点 41
2.4 编写一个简单的发布者和订阅者(Python) 43
2.4.1 发布者节点 43
2.4.2 订阅者节点 45
2.5 编写简单的服务端和客户端(C++) 48
2.5.1 服务端 48
2.5.2 客户端 50
2.6 编写简单的服务端和客户端(Python) 53
2.6.1 服务端 53
2.6.2 客户端 54
2.7 创建自定义消息 56
2.7.1 写一个简单的发布器 56
2.7.2 写一个简单的订阅器 57
第3章 ROS2机器人基本控制 59
3.1 ROS2机器人移动控制 59
3.2 ROS2机器人IMU自动校正 61
3.3 ROS2机器人角速度及线速度校正 64
3.3.1 角速度校正 64
3.3.2 线速度校正 66
3.4 ROS2机器人PID动态调试 68
第4章 ROS2机器人视觉 71
4.1 ROS2机器人opencv_apps图形处理 71
4.1.1 边缘检测 71
4.1.2 哈夫变换 75
4.1.3 霍夫变换 76
4.1.4 凸包检测 78
4.1.5 椭圆形检测 79
4.1.6 人脸检测 80
4.1.7 特征分析 82
4.1.8 颜色块追踪 83
4.1.9 光流检测 84
4.1.10 区域分割 88
4.1.11 颜色特征空间 90
4.2 ROS2机器人视觉颜色及形状识别 91
4.3 ROS2机器人视觉条形码及二维码识别 93
4.4 ROS2机器人视觉文本及数字识别 95
4.5 ROS2机器人视觉巡线 97
第5章 ROS2机器人激光雷达地图构建 99
5.1 ROS2机器人激光雷达SLAM建图与导航 99
5.1.1 建图原理 99
5.1.2 Gmapping建图 101
5.1.3 ROS2机器人Gmapping建图具体步骤 103
5.2 ROS2机器人雷达跟随 106
5.3 ROS2机器人SLAM激光导航 109
5.3.1 导航的基本原理 109
5.3.2 SLAM与导航系统构架 111
5.3.3 ROS2机器人导航具体步骤 112
5.4 ROS2机器人多点导航 113
第6章 ROS2多关节机器人运动控制及规划 116
6.1 ROS2多关节机器人运动控制概述 116
6.1.1 机器人运动规划概述 117
6.1.2 机器人运动规划和轨迹规划的区别 118
6.2 ROS2机器人MoveIt2包介绍 118
6.2.1 ROS2 MoveIt2用户接口 119
6.2.2 ROS2 MoveIt2参数配置 119
6.2.3 ROS2 MoveIt2机器人接口 120
6.2.4 ROS2 MoveIt2运动规划实现 121
6.2.5 ROS2 MoveIt2包配置与使用 122
6.3 ROS2机器人运动规划库 124
6.3.1 运动规划库概述 124
6.3.2 MoveIt运动规划编程用例 125
6.3.3 规划接口定义 126
6.3.4 OMPL接口分析 126
第7章 ROS2多关节机器人系统搭建 128
7.1 ROS2实时化 128
7.1.1 混合实时ROS2体系结构RGMP-ROS2 128
7.1.2 案例分析 130
7.1.3 结合OROCOS的实时性实现 132
7.2 遗产代码的ROS2集成 132
7.2.1 ROS2link简介 133
7.2.2 ROS2link实现概述 133
7.2.3 ROS2link设计原理 134
7.3 ROS2-Industrial系统 137
7.3.1 ROS2-Industrial系统简介 137
7.3.2 ROS2-Industrial项目 137
7.3.3 ROS2-Industrial驱动设计规范 143