ROS机器人操作系统相关书籍、资料和学习路径
作者:Top Liu
链接:https://zhuanlan.zhihu.com/p/30391098
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
本文是易科机器人实验室张瑞雷老师整理的ROS机器人操作系统的相关书籍、资料和学习路径,想学习这方面技术的同学一定要收藏了。
ROS机器人相关书籍与资料(更新日期2017年10月)
ROS发展10年了,已经逐渐成为通用的机器人操作系统标准。
之前写过一篇博文总结过相关书籍(流行版本和相关书籍汇总),但是并没有具体介绍。
学习ROS基础知识以官网和书籍为主,如果需要了解ROS最新成果和进展,以论文和会议资料为主。使用ROS进行机器人设计与开发,那就需要在掌握机器人相关基本理论和知识的基础上,大量阅读源码,学习参数优化、算法改进等。
ROS learning curve is a little steep and to become proficient is pretty hard for a complete beginner. 掌握ROS并非易事。
下面介绍一下学习ROS的英中文书籍和资料。
1 ROS in 5 days
这个系列由四本书构成,分别为基础、感知、导航、操作。

基础篇:介绍ROS特点,模块化和复用性以及基本的工具、概念等。主要内容包括控制机器人,读取传感器数据,并行任务处理,复杂数据和视觉信息的可视化等,课程分为两个部分,第一部分,学习ROS并练习,执行代码并使用不同的机器人完成仿真;第二部分,开发一个项目,应用之前学过知识,完成一个控制机器人的项目。
具体目录:0,简介;1,基本概念;2,主题-发布;3,主题-订阅;4,服务-调用;5,服务-提供;6,行为-调用;7,行为-提供;8,调试工具;9,课程项目。当然也可以在ROS官网找到对应章节内容进行学习:topic、service、action。
感知篇:机器人要实现自动控制,感知是必不可少的重要内容。书中介绍在ROS中实现机器人的感知。
导航篇:书中介绍了关于导航的基础知识,地图创建、定位、路径规划、可视化导航过程数据、使用RViz调试、配置不同的导航点等。
操作篇:ROS操作主要是在环境中通过机器人对物体进行操作的术语,通过基本工具了解ROS如何操作物体并实现。
比较全面,移动机器人参考导航,工业机械手参考操作,功能全面服务机器人需要融合导航和操作。
2 A Systematic Approach to Learning Robot Programming with ROS
使用ROS学习机器人编程的系统方法通过对简单代码示例以及相应操作理论的详细解释,全面介绍了ROS的基本组件。本书探讨了ROS的组织,如何理解ROS软件包,如何使用ROS工具,如何将现有的ROS软件包纳入新的应用程序,以及如何开发新的机器人和自动化软件包。它还通过准备读者更好地了解现有的在线文档来促进继续教育。

这本书分为六部分。
1. 首先介绍ROS基础,包括编写ROS节点和ROS工具。消息,类和服务器也被覆盖。
2. 本书的第二部分是ROS的仿真和可视化,包括坐标变换。
3. 本书的这一部分讨论了ROS中的感知处理。它包括在ROS中使用摄像头,深度成像和点云以及点云处理。
4. 本书第四部分介绍了ROS中的移动机器人控制和导航。
5. 本书的第五部分包含机器人手臂在ROS中的使用。本节探讨机器人手臂运动学,手臂运动规划,使用Baxter Simulator进行手臂控制以及物体抓取包。
6. 本书的最后一部分重点介绍系统集成和更高级别的控制,包括基于感知和移动操作。
3 更多书籍





















4 论文集 Robot Operating System (ROS)


5 重要会议 ROSCon 2012-2017

6 官方网站和源码 ROS和Github


学习路径:ROS官网初级教程+中级教程+坐标变换(TF)+机器人模型(URDF)+可视化(RViz)+行为库(actionlib)+插件库(pluginlib)+nodelets+导航(navigation)+工业机器人(ROS-I)+ROS(1、2)等;
然后,结合所需要使用的场景,选择1-3本书籍进行系统练习与复习。


另外,如果你想从0开始、系统地学习ROS机器人操作系统课程,可以来实验楼学习张瑞雷老师制作的两门免费课程——《ROS机器人操作系统的安装、配置与初级教程》(https://www.shiyanlou.com/courses/854)《ROS机器人操作系统中级教程》(https://www.shiyanlou.com/courses/938)。内容非常丰富和系统。

参考资料目录:
1 张建伟, 张立伟, 胡颖等 开源机器人操作系统----ROS[M]. 科学出版社, 2012.
2 马丁内斯, 费尔南德斯 刘品杰 ROS机器人程序设计:Learning ROS for robotics programming[M]. 机械工业出版社, 2014.
3 Quigley M, Conley K, Gerkey B P, et al. ROS: an open-source Robot Operating System[C]// ICRA Workshop on Open SourceSoftware. 2009.
4 王之元, 周云,易晓东等. 机器人操作系统研究型课程建设[J].计算机教育,2016, No.253(1):77-80.
5 肖军浩, 卢惠民,薛小波等. 将机器人操作系统(ROS)引入本科实践教学[J].科技创新导报,2016(22):157-158.
6 R.帕特里克・戈贝尔,戈贝尔,罗哈斯.ROS入门实例[M].中山大学出版社,2016.
7 R.帕特里克・戈贝尔,戈贝尔,罗哈斯.ROS进阶实例[M].中山大学出版社,2017.
8 李振伟. ROS入门与实战[M].中国矿业大学出版社,2016.
9 恩里克·费尔南德斯等著,张瑞雷、刘锦涛译 ROS机器人程序设计(原书第2版)[M]机械工业出版社2016
10 杰森 M. 奥凯恩著; 肖军浩译 机器人操作系统浅析[M]国防工业出版社2016
11周兴社 机器人操作系统ROS原理与应用[M]机械工业出版社2017
12郎坦·约瑟夫(LentinJoseph)机器人系统设计与制作:Python语言实现[M]机械工业出版社2017
13何炳蔚,张立伟,张建伟 基于ROS的机器人理论与应用[M]科学出版社2017
14陈金宝 ROS开源机器人控制基础[M]上海交通大学出版社2016
15 卢惠民,肖军浩,郑志强 ROS与中型组足球机器人[M]国防工业出版社2016
16 Wyatt Newman A Systematic Approach toLearning Robot Programming with ROS[M]Chapman and Hall/CRC 2017
17 Lentin Joseph ROS Robotics Projects[M] Packt Publishing 2017
18 Anil Mahtani, Aaron Martinez, EnriqueFernandez Perdomo, Luis Sánchez Effective Robotics Programming with ROS - ThirdEdition[M] PacktPublishing 2016
19 Fairchild, Carol and Harman, Dr. Thomas ROS Robotics By Example[M]Packt Publishing 2016
20 Quigley, Morgan and Gerkey, Brian andSmart, William D. Programming Robots with ROS[M] O'Reilly Media 2015
21 Lentin Joseph Learning Robotics using Python[M] PacktPublishing 2015
22 Koubaa A. Robot Operating System (ROS)The Complete Reference (Volume 1) [M]. Springer International Publishing, 2016.
23 Koubaa A. Robot Operating System (ROS)The Complete Reference (Volume 2) [M]. Springer International Publishing, 2017.
作者:张瑞雷
出处:csdn博客
链接:http://blog.csdn.net/zhangrela
ROS机器人操作系统相关书籍、资料和学习路径的更多相关文章
- 【2017.10.13 ROS机器人操作系统】ROS系统常用术语及资源
ROS机器人操作系统是一种后操作系统,提供了类似于软件开发中使用到的中间件的功能. ROS: Robot Operating System 机器人操作系统 Package: 功能包 Stack: 功能 ...
- ROSCon 2016视频和幻灯片发布 ROS机器人操作系统重要参考资料
ROSCon 2016视频和幻灯片发布 By Tully Foote on 十月19,2016 7:28 AM 全部PPT下载地址:http://pan.baidu.com/s/1gf2sn2F RO ...
- 【2018.04.19 ROS机器人操作系统】机器人控制:运动规划、路径规划及轨迹规划简介之一
参考资料及致谢 本文的绝大部分内容转载自以下几篇文章,首先向原作者致谢,希望自己能在这些前辈们的基础上能有所总结提升. 1. 运动规划/路径规划/轨迹规划的联系与区别 https://blog.csd ...
- ROS机器人操作系统官方教程、源码汇总
1 wiki: http://wiki.ros.org/ 2 code: https://github.com/ ---- 1 基础教程 https://github.com/ros/ros_tut ...
- ROS机器人操作系统在线练习
废话不说,先看图吧: 1. ROS in 5 Days Entering ROS 2. ROS Navigation in 5 Days Mastering ROS 3. ROS Autonomous ...
- ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse
ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse 书中,大部分出现hydro的地方,直接替换为indigo或ja ...
- ROS(indigo)机器人操作系统学习资料和常用功能包汇总整理(ubuntu14.04LTS)
ROS(indigo)机器人操作系统学习资料和常用功能包汇总整理(ubuntu14.04LTS) 1. 网站资源: ROSwiki官网:http://wiki.ros.org/cn GitHub ...
- ROS(indigo)机器人操作系统学习有趣丰富的Gazebo仿真示例evarobot
一直在寻找一个示例可以将ROS学习中常用的基础内容大部分都包含进去,最好还包括Gazebo仿真, 这样即使没有硬件设备,也可以很好的学习ROS相关内容,但又必须有对应的硬件,便于后续研究. 这里,介绍 ...
- 机器人操作系统(ROS)在线实训平台学习实验指南
机器人操作系统(ROS)在线学习指南 在高校开设ROS相关课程已经积累了一年多的经验,由于自动化类专业在课程安排中不同于计算机相关专业,通常没有Linux相关的课程基础,直接上手ROS较为 ...
随机推荐
- Oracle ASM 磁盘组基础知识整理(收藏版)
转至:https://cloud.tencent.com/developer/article/1494403 为什么要写这么一篇基础知识呢?还是有那么一点点原因的,不是胡编乱造还真是有真实存在的事件的 ...
- 60天shell脚本计划-11/12-渐入佳境
--作者:飞翔的小胖猪 --创建时间:2021年3月18日 --修改时间:2021年3月22日 说明 每日上传更新一个shell脚本,周期为60天.如有需求的读者可根据自己实际情况选用合适的脚本,也可 ...
- IndexError:list assignment index out of range
L=[] L[0]=2 L[1]=3 报错:IndexError: list assignment index out of range,列表超过限制 一种情况是:list[index]的index超 ...
- c# 表格控件SourceGrid使用总结
网上SourceGrid相关的资料很少,使用过程中做了下记录,以便日后查用 1:初始化 this.grid = new SourceGrid.Grid(); this.grid.Size = new ...
- (五)目标检测算法之Faster R-CNN
系列博客链接: (一)目标检测概述 https://www.cnblogs.com/kongweisi/p/10894415.html (二)目标检测算法之R-CNN https://www.cnbl ...
- 大学英语四级之听力Key Words
Key Words关键词 所谓关键词,指的是短文中能够标志着正确答案的词,也就是说,关键词后面往往是正确答案 听力中的关键词可为宏观和微观两方面,一般出现在如下10种位置. 一.宏观方向(主旨大意) ...
- 专业3 Cookie 和Session的使用及原理
Cookie的使用及原理 什么是cookie cookie是一种用来跟踪和识别用户上网信息的会话控制技术,它将跟踪后的信息存储在客户端的浏览器上 cookie如何使用 第一步:设置cookie即可(告 ...
- PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation
摘要 点云是一种重要的几何数据结构类型.由于其不规则的格式,大多数研究人员将此类数据转化为常规的三维体素网格或图像集合.然而,这使数据变得不必要的庞大,并导致问题.在本文中,我们设计了一种新型的直接处 ...
- 记一次mybatis-plus遇到的问题
在用了 springboot 和 mybatis-plus很久之后, 有一天突然看到配置文件有点繁杂, 想将相同的配置拉到application.yml里, 就在将配置拉过去后, 问题就开始出现了. ...
- springboot Redistemplate的execute和 executePipelined
springboot 的 RedisTemplate 的 execute 和 executePipelined 功能的区别 1.execute 以下是 springboot 官网原文: Redis p ...