首页>参考读物>计算机科学与技术>软件与程序设计

机器人ROS开发实践
作者 : 无为斋主 编著
出版日期 : 2019-01-02
ISBN : 978-7-111-61720-4
定价 : 69.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 223
开本 : 16
原书名 :
原出版社:
属性分类: 店面
包含CD : 无CD
绝版 : 未绝版
图书简介

全书共分9章。第1章介绍了机器人的发展,如何搭建ROS环境。第2章介绍了ROS的基本概念如节点、话题、消息、服务、动作等。第3章介绍如何开发ROS程序包,并应该如何编译、调试ROS程序包。第4章介绍如何进行ROS的核心技能,并介绍如何进行参数配置和分布式计算。第5章介绍ROS和运动控制相关的坐标系、控制器等,为读者学习定位、导航等打下基础。第6章介绍ROS如何实现和语音交互相关的语音识别、语义合成、声源定位等。第7章介绍ROS如何和OpenCV结合进行图像、视觉处理,如何传输、处理图片,如何进行视频流处理等。第8章介绍如何进行ROS机器人建模。第9章介绍了如何在Gazebo中进行机器人仿真,介绍了如何搭建仿真环境。

图书特色

智能硬件和人工智能领域资深专家撰写,多年嵌入式和机器人开发实践结晶。
依托全新的Ubuntu 18.04 LTS、ROS Melodic和Qt Creator 5.9搭建ROS开发环境,基于C++编写实例代码,知识新、示例多、工程性强,帮助读者迅速掌握机器人开发技能。



机器人ROS开发实践
Robotics Programming Practice with ROS
无为斋主  编著

图书前言

随着关键器件的研究突破,服务机器人这几年发展得如火如荼,无论是担当物品运输的物流机器人还是进行室内清洁的扫地机器人,是执行空中侦察的无人机还是承载人类自动驾驶梦想的无人驾驶汽车,机器人总能为我们带来无限的遐想。随着技术的不断成熟和商业推广的不断开展,一个曾被认为是科幻中的世界也许某一天就会展现在我们面前。
作为机器人主流操作系统之一,ROS目前已经成为事实上的行业标准,同Android在智能手机领域的地位一样。但作为承载人类能听、会说以及会运动等特性的设备助理大脑,ROS在涉及较多跨学科知识的同时,其系统化的文档却较少,因此学习门槛相对较高。
本书注重ROS的基本概念和核心内容,努力为读者提供系统化的视角,同时从开发实践出发,希望能让读者快速上手,迅速掌握开发一款能听会说的机器人的技能。由于机器人导航相关的导航算法等内容已经逐渐由专业的底盘厂商提供,同时导航涉及较多的专业算法和跨学科知识,考虑到本书的篇幅、专业性以及阅读对象,导航相关的内容在本书中不做过多介绍,有兴趣的读者可以查阅相关的资料和书籍进行学习。
与市面上ROS相关书籍(主要介绍较旧的ROS Indigo、ROS Kinetic)不同,本书中的相关代码和环境搭建依托于当前最新的Ubuntu 18.04和ROS Melodic而进行,力图为读者提供最新的专业知识和行业解读。
读者对象
本书主要适合于有一定C++基础、对机器人开发感兴趣但尚无过多接触的软件工程师和理工科学生。
如何阅读本书
本书共包含9章和1个附录,具体如下。
第1章介绍了机器人的发展历史以及ROS的发展历程,并介绍了如何搭建ROS环境。
第2章从一个简单的实例开始介绍了ROS的基本概念,如节点、话题、消息、服务、动作等。
第3章从一个基本的程序开始介绍了如何开发ROS程序包,以及如何编译、调试ROS程序包。
第4章介绍了如何进行ROS的核心技能(消息、服务、动作、启动等)开发,以及如何进行参数配置和分布式计算。
第5章介绍了ROS和运动控制相关的坐标系、控制器等,为读者学习定位、导航等打下基础。
第6章介绍了ROS如何实现与语音交互相关的语音识别、语义合成、声源定位等,这些内容有助于读者开发会说的机器人。
第7章介绍了ROS如何与OpenCV结合进行图像、视觉处理,如何传输、处理图片,如何进行视频流处理等,这些内容有助于读者开发会看的机器人。
第8章介绍了如何进行ROS机器人建模,从最基础的URDF概念到如何利用Solid-works快速建模。
第9章介绍了如何在Gazebo中进行机器人仿真,以及如何搭建仿真环境。
最后的附录介绍了与Linux、ROS相关的基本命令行工具,使缺乏基础的读者也能快速上手。
勘误和支持
由于笔者的水平有限,再加上编写时间仓促,书中难免会出现一些表达不尽人意甚至错误的地方,恳请读者批评指正(可以通过mzl626@163.com与笔者进行交流)。期待能够得到大家的真挚反馈,在技术的道路上我们一起共勉。
致谢
感谢机械工业出版社华章分社的杨绣国编辑,在大半年的时间里她始终支持我的写作,并能允许我根据自己的时间安排写作计划。
感谢我的家人和孩子,他们一直尊重我的写作爱好,允许我把大量的业余时间(一部分本是用来陪伴他们的)花到写作上。

上架指导

计算机\程序设计

封底文字

随着深度学习的突破,语音识别、语义理解、计算机视觉等技术实现了跨越式的发展,基于人工智能的各类产品、服务如雨后春笋般出现,智能安防、智能客服、无人超市、智能家居、智能机器人等已经深入到我们的生活,尤其是智能服务机器人在物流、餐饮、酒店、家庭、巡检、迎宾等领域的成功应用更是给我们带来无限的遐想。也许有一天,一个曾经认为是科幻中的世界就会展现在我们面前,但如何去创造这些激动人心的产品呢?本书将为你打开神秘之门。

本书特色:
? 注重ROS的基本概念和核心内容,努力给读者带来一个系统化的视角,从开发实践出发,帮助读者快速上手,迅速掌握开发机器人的能力。
? 知识新,本书基于全新的Ubuntu 18.04 LTS、ROS Melodic和Qt Creator 5.9介绍ROS开发环境搭建,并进行开发。
? 示例多,每个主题都有一个完整的示例,并结合示例进行了深入的功能讲解。
? 工程性强,面向工程实践,对ROS开发所必需的开发环境、编译调试、坐标变换、机器人建模、视觉处理等内容都进行了较深入的介绍。

图书目录

前言
第1章 机器人基础1
1.1 机器人发展历史 1
1.2 ROS发展历程 5
1.3 安装ROS环境 6
第2章 理解ROS 11
2.1 启动小海龟 11
2.2 系统架构 12
2.3 理解节点管理器 16
2.4 理解节点 19
2.5 理解话题 21
2.6 理解消息 23
2.7 理解服务 28
2.8 理解动作 30
2.9 理解参数 32
第3章 开发ROS 35
3.1 你好ROS 35
3.2 编译ROS 42
3.3 编译配置 49
3.4 调试ROS 62
第4章 资源与配置 67
4.1 消息通信 67
4.2 订阅服务 73
4.3 执行动作 77
4.4 启动管理 81
4.5 配置参数 89
4.6 分布式计算 97
第5章 运动控制 99
5.1 坐标系 99
5.1.1 理解坐标系 99
5.1.2 坐标变换 101
5.1.3 消息过滤 108
5.1.4 添加坐标系 111
5.2 控制器 113
5.2.1 控制器架构 114
5.2.2 双轮差速控制 121
第6章 语音处理 125
6.1 语音基础 127
6.2 语音识别 129
6.3 语音合成 137
6.4 声源定位 142
第7章 视觉处理 144
7.1 相机标定 144
7.2 图像处理 147
7.3 视频处理 152
第8章 机器人建模 157
8.1 URDF模型基础 157
8.2 实现URDF模型 169
8.3 使用Xacro建模 178
8.4 使用Solidworks建模 186
第9章 机器人仿真 193
9.1 Gazebo场景 194
9.1.1 场景基础 194
9.1.2 创建场景 198
9.2 Gazebo模型 199
9.3 启动仿真 207
附录A 常见Linux、ROS命令 210
参考文献 217

教学资源推荐
作者: 【美】梁勇(Y.Daniel Liang) 著
作者: 苏小红 孙承杰 李东 等编著
作者: 王珊珊 臧洌 张志航 编著
作者: [美] 埃里克·伽玛(Erich Gamma) 理查德·赫尔姆(Richard Helm) 拉尔夫·约翰逊(Ralph Johnson) 约翰·威利斯迪斯(John Vlissides) 著
参考读物推荐
作者: [美] 戴维·亨德里克森(Dave Hendricksen)著
作者: 陆嘉恒 著
作者: David Carlson
作者: [意] 阿尔贝托·博斯凯蒂(Alberto Boschetti) 卢卡·马萨罗(Luca Massaron)著