ROS机器人操作系统实战

2017 年 9 月 7 日 炼数成金订阅号

课程目标:

本课程面向想要系统学习ROS的学生,讲授内容是从基础知识开始,再逐步到高级案例。

课程将不仅仅关注ROS,还会介绍不同阶段下的机器人核心概念。这门课程和其他学生可以学习的课程不一样,不仅仅是因为Dr.Rojas拥有多年的的ROS实际应用经验,而且他的课程是精心设计的,能够让你更加系统地学习ROS。大多数ROS相关书籍和课程会通过一系列拼接起来的项目来教授ROS,尽管这个方法是有效的,但是学生们只能分批地学习中间件系统。而这个课程则是基于一本2017年夏由Prof. Wyatt Newman编写的新教材,教材名称为A Systematic Approach to Learning Robot Programming with ROS,有时在课上也会引用其他教材。


Wyatt Newman是凯斯西大学的一名全职教授。Newman教授也有着大量的在ROS发展和项目上的实战经验。在2015年,Newman教授带领香港大学的比赛队伍参加2015DARPA机器人挑战赛。HKU使用了完全基于ROS的价值100万美元的Boston Dynamics的 Atlas 人形机器人。在这次的比赛中,Dr.Rojas第一次和Newman教授见面并且自此他们共同参与了很多的项目。


Dr.Rojas近期从媒体CRC编辑了一本书,相信这本书将会是一本面向任何本科生,硕士生,全职研究员或者是业余爱好者的关于ROS的最好教材。这本教材描述了非常多的关于ROS的任何种类的综合处理,它的内容十分系统:从基础知识,到仿真及可视化,再到感知处理和导航,最后到操作,系统集成以及高级控制。这本接近500页的教材解释了像摄像机检定,动力学,PID控制和运动规划等一系列基础机器人概念,是一本珍贵的资源。在课程以及教材的每一个部分都有着大量的代码,最关键的是,每一个例子都可以模拟运行,这就意味着你可以在没有机器人设备的情况下依然可以运行所有的代码,甚至是最高级的例子。如果你没有机器人设备,你可以轻而易举地在真实系统中运行代码,所有的代码都是在Github中开源的,你可以很容易获取到这些代码。在这门课程中,主要使用的编程语言是C++以及Python,熟练的编程技术能够有助于更好理解机器人技术以及代码,基本微积分以及线性代数知识也对理解本门课程有所帮助。

(特别说明:本课程是由外籍讲师授课,将会用英语授课,炼数成金将有专业老师为视频增加中文字幕,便于大家学习)


本门课程将会分为如下五个部分,并通过17周完成这五个部分的授课:

1. ROS基础

·包,节点,主题,发布,订阅,catkin_simple(功能包),roslaunch(功能包),rqt_console(功能包),rosbag(功能包)

·信息,服务,C++类,library模块,操作服务器,操作客户端,参数服务器

2. ROS的仿真以及可视化

·简单2D仿真

·动态仿真:URDF(动态的,可视化的,动态的碰撞模型)

·Gazebo:一个简单的联合控制器示例,用于联合服务控制的插件,结合机器人模型的移动机器人模型

·坐标转换,转换监听器,特征库,转换ROS数据类型

·RVIZ标注以及交互式标注

·仿真及展示LIDAR,彩色摄影机数据,深度摄影机数据,RVIZ点的选择

3. ROS的感知处理

·相机坐标下的投影变换

·内在相机校正(单相机,立体相机)

·在ROS下使用OpenCV

·扫描LIDAR,立体相机,深度相机的深度。

·点云处理(点云的展示,加载,储存,操作)

4. ROS中的机器人手臂

·低阶控制(1自由度移动模型,位置,速度,力控制器,轨迹运动服务器)

·正向与逆向动力学

·运动规划(笛卡尔,关节空间,笛卡尔运动操作服务器)

·Baxter下的手臂控制

·一个抓取物品的功能包

5. 系统集成以及高阶控制

·基于感知的操作(外在相机校正,整体感知以及操作)

·移动操作(移动操作模型,移动操纵)


课程大纲:

第一周:课程概述与环境部署

第二周:ROS系统架构及概念:ROS节点与工具的介绍

第三周:ROS计算图级:主题,服务,消息与服务器

第四周:ROS仿真:URDF ,Gazebo ,Gazebo Plugins的介绍与使用

第五周:ROS空间转换:TF,Eigen,Datatypes Transformation 坐标转换库的使用

第六周:ROS可视化工具:Markers,Displaying Sensor Values in RVIZ

第七周:机器人的视觉系统 :Markers,Displaying Sensor Values in RVIZ

第八周:机器人的视觉系统2:LIDAR,Stereo Cameras Depth Cameras

第九周:点云:理解点云库,ROS的PCL算法与接口

第十周:机器人初级控制:位置控制,速度控制,力道控制等

第十一周:机器人的运动控制:正向运动与反向运动

第十二周:机器人的移动路径规划:笛卡儿运动规划,关节运动规划,笛卡儿运动操作服务器

第十三周:机械臂运动规划:Baxter机器人功能包

第十四周:机器人抓取控制:操纵查询服务,一般的钳子服务,Ojbect-Grabber操作服务器

第十五周:基于感知的操纵:外部摄像机校准综合感知和操纵

第十六周:机器人的移动操作:移动操作模型和代码

第十七周:项目实战


授课时间:

课程将于2017年9月30日开课,课程持续时间大约为19周


授课对象:

对机器人操作系统感兴趣,想要系统学习ROS的朋友们


收获预期:

系统性学习机器人操作系统,掌握开发技巧


授课讲师:

Dr.Juan Rojas在美国排名15的范德堡大学就读并获取了学士学位,硕士学位以及博士学位。他于学士阶段的最后一年,也就是2001年开始研究机器人方面的技术,迄今已经有16年研究经验了。他在他的研究生课程第一次接触一个名为智能机器人架构体系(the Intelligent Robotics Architecture,  IMA)的中间件系统。IMA由范德堡大学的智能系统中心的学生们研发,是一个类似于ROS的课程。Dr.Rojas在2011年于日本筑波市的国家先进科学和技术研究所获得博士后助学金。在日本期间,Dr.Rojas接触了日本一个主要的中间件项目:OpenRTM,在之后的2012年,Dr.Rojas在中山大学软件学院担任助理教授并且在2012年秋开始讲授完整的ROS课程。他开设的ROS学术课程应该是中国国内的首门ROS课程。从那以后,Dr.Rojas每一年都会为本科生和研究生开设ROS课程。Dr.Rojas还主持领导了两项ROS英文教材的翻译项目,分别是Patrick Goble的ROS By Example的卷1和卷2,这两本书的名字现在在国内被翻译成ROS入门实例以及ROS进阶实例,并且网络上可以购买相关资源。Dr.Rojas也拥有相关的培训组织经验,组织了2017年上海华东师范大学的ROS暑期学校(http://www.robotics.sei.ecnu.edu.cn/ros2017),以及2016年GDUT-Gaitech ROS培训项目和2015年Gaitech举办的ROS暑期学校。此外,Dr.Rojas在他的研究中也很频繁应用ROS并且积极地参加代码的完善工作。所有的研究代码作为开源资源在Github都可以找到,在下面Dr.Rojas的研究主页也可以找到对应的入口:www.JuanRojas.net/research。

(特别说明:老师将会用英语授课,炼数成金将有专业老师为视频增加中文字幕,便于大家学习)


课程推荐教材:

1.A SystematicApproach To Learning Robot Programming with ROS (只有英文版本)  

2.ROS ByExample: Indigo Volume 1. A Do It Yourself Guide to ROS  

3.ROS ByExample Volume 2: Indigo. Packages and Programs for Advanced Robot Behaviors  


网上资源预习材料:

中文:

http://blog.exbot.net/ - 关于ROS各个方面的相关支持文章以及博客

http://rosclub.cn/ - 关于ROS的不同方面特别是导航方面的相关教程

英文:

www.ros.org – 学习ROS,ROS包以及ROS API的中心

answers.ros.org – 能够在上面提问关于ROS的问题并且查看别人提出的问题以及ROS用户提供的相关回答

http://code.google.com/p/ros-by-example/ - ROS的不同支持例子(需要VPN)


点击下方二维码或阅读原文报名课程:


登录查看更多
7

相关内容

【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
255+阅读 · 2020年6月10日
【圣经书】《强化学习导论(2nd)》电子书与代码,548页pdf
专知会员服务
197+阅读 · 2020年5月22日
【干货书】机器学习Python实战教程,366页pdf
专知会员服务
331+阅读 · 2020年3月17日
《深度学习》圣经花书的数学推导、原理与Python代码实现
研究SLAM,对编程的要求有多高?
计算机视觉life
24+阅读 · 2019年2月18日
网易云课堂独家 | 基于PyTorch实现的《深度学习》
深度学习与NLP
11+阅读 · 2019年2月15日
OpenAI强化学习实战
炼数成金订阅号
9+阅读 · 2018年5月14日
DL4CV实战——构建基于深度学习的智能图像识别系统
炼数成金订阅号
5+阅读 · 2018年5月14日
为什么机器人企业的算法工程师需要ROS开发经验
算法与数学之美
6+阅读 · 2018年3月22日
Seq2seq强化学习实战 (Pytorch, Tensorflow, Theano)
专知
15+阅读 · 2018年1月16日
MATLAB计算机视觉与深度学习实战
炼数成金订阅号
19+阅读 · 2017年8月4日
Arxiv
5+阅读 · 2019年11月22日
Arxiv
3+阅读 · 2018年5月28日
Arxiv
4+阅读 · 2018年4月17日
Arxiv
3+阅读 · 2018年3月2日
Arxiv
6+阅读 · 2018年2月26日
VIP会员
相关资讯
研究SLAM,对编程的要求有多高?
计算机视觉life
24+阅读 · 2019年2月18日
网易云课堂独家 | 基于PyTorch实现的《深度学习》
深度学习与NLP
11+阅读 · 2019年2月15日
OpenAI强化学习实战
炼数成金订阅号
9+阅读 · 2018年5月14日
DL4CV实战——构建基于深度学习的智能图像识别系统
炼数成金订阅号
5+阅读 · 2018年5月14日
为什么机器人企业的算法工程师需要ROS开发经验
算法与数学之美
6+阅读 · 2018年3月22日
Seq2seq强化学习实战 (Pytorch, Tensorflow, Theano)
专知
15+阅读 · 2018年1月16日
MATLAB计算机视觉与深度学习实战
炼数成金订阅号
19+阅读 · 2017年8月4日
相关论文
Top
微信扫码咨询专知VIP会员