2020 年 2 月 19 日,《机器人操作系统入门》课程第三次开课启动。本课程将深入浅出的讲解如何使用机器人操作系统ROS,包括ROS的基本原理、基本操作和基本工具,及通过动手实践掌握机器人建图、定位和导航等技能。
课程将在慕课网和本公众号实时更新。
一、课程概述
近年来机器人领域持续升温,涌现出了一大批机器人产品,像机器狗、无人机、无人车、各式各样的服务机器人、聊天机器人…… 你知道吗,在许多机器人背后都用到了一个共同的软件平台,那就是机器人操作系统(Robot Operating System,ROS)。ROS 好比机器人的中枢神经系统,这个系统把原本松散的功能模块耦合在了一起,为他们提供了通信架构。这样机器人的各个零部件就可以协同工作,完成更为复杂的任务了。ROS 让机器人具备更高级的思维框架和控制系统。
自从 ROS 发布以来,它的发展和传播非常迅速,ROS 已经成为了机器人领域使用最广泛的机器人软件平台,社区规模和使用人数越来越多。如果你喜欢机器人,如果你想开发或者正在开发机器人,如果你希望了解机器人操作系统,请报名这门《机器人操作系统入门》。 通过这门课,你将学会使用机器人操作系统 ROS,了解它的通信方式、工程结构、常用命令和工具;并使用我们专门开发的仿真环境—中科院软件博物馆和XBot机器人,对机器人来进行建图、定位和导航;你将学习 ROS 程序的编写方法,动手写一写机器人程序。从零基础到掌握ROS的使用和开发,本课程旨在为相关专业的学生、机器人爱好者、机器人科研人员提供入门性的教材和技术参考。
本课程由中国科学院软件研究所与重德智能公司(www.droid.ac.cn)合作推出,欢迎报名参加。
报名地址:https://www.icourse163.org/course/ISCAS-1002580008
课程内容
仿真环境
实物展示
二、课程大纲
- 前言
- 前言——机器人发展概况
- 第一课 ROS 介绍与安装
- 1.1 欢迎
- 1.2 什么是 ROS
- 1.3 机器人与 ROS 演示
- 1.4 ROS 的安装与配置
- 第一课测验
- 第二课 工程结构
- 2.1 Catkin 工作空间与编译系统
- 2.2 Pacakge 组成
- 2.3 操作演示:Catkin 工作空间探索
- 2.4 Metapackage
- 第二课测验
- 第三课 通信架构(上)
- 3.1 Master 和 Node
- 3.2 操作演示
- 3.3 Topic 和 Msg
- 3.4 操作演示
- 第三课测验
- 第四课 通信架构(下)
- 4.1 Service 和 srv
- 4.2 Parameter Server
- 4.3 操作演示
- 4.4 Action
- 第四课测试
- 第五课 常用工具
- 5.1 Gazebo
- 5.2 Rviz
- 5.3 Rqt
- 5.4 Bag
- 第五课测试
- 第六课 roscpp
- 6.1 Client Library 与 roscpp
- 6.2 topic_demo 1
- 6.3 topic_demo 2
- 6.4 service_demo
- 6.5 param_demo
- 第六课测试
- 第七课 rospy
- 7.1 rospy 介绍 1
- 7.2 rospy 介绍 2
- 7.3 topic_demo
- 7.4 service_demo
- 第七课测试
- 第八课 tf & urdf
- 8.1 tf 介绍:tf tree
- 8.2 tf 消息
- 8.3 tf in C++
- 8.4 tf in Python
- 8.5 urdf
- 第八课测试
- 第九课 SLAM
- 9.1 SLAM 与 Map
- 9.2 Gmapping SLAM 包
- 9.3 Karto SLAM 包
- 9.4 操作演示
- 第九课测试
- 第十课 Navigation
- 10.1 Navigation Stack
- 10.2 move_base 与插件
- 10.3 costmap
- 10.4 map_server 与AMCL
- 10.5 操作演示
- 第十课测验
三、预备知识
- 基本 Linux 操作
- C++ 与 Python 编程基础
证书要求评分
- 课程满分100分。
- 平时测验占70%(每周单元测试):包括单选、多选、判断、填空题。
- 课程讨论不占分。
- 期末测验占30%。
证书
- 60-80分获得合格证书,80-100分获得优秀证书。
- 取消免费证书,证书需付费。
参考资料
-
关于XBot机器人
- 想了解更多XBot机器人详细信息,请移步重德智能官网:https://www.droid.ac.cn/
- 或直接电话联系:17610230188
-
机器人开发者社区
- 社区简介:机器人开发者社区面向所有的机器人相关的问题,包括且不限于机械硬件、机器人学(Robotics)、传感器、控制、SLAM、机器视觉、ASR、NLP等。我们是中国科学院软件研究所与中科重德机器人公司支持的中文问答社区。
- 社区网址:https://q.droid.ac.cn/
-
本课程配套教学资料:
- [1]《机器人操作系统入门》课程讲义—Gitbook ,可在线阅读或下载pdf,不断更新中;下载地址:https://sychaichangkun.gitbooks.io/ros-tutorial-icourse163/content/
- [2]《机器人操作系统入门》代码示例—Github ,教学代码示例,长期维护。下载地址:https://github.com/DroidAITech/ROS-Academy-for-Beginners
-
ROS学习网站:
- [1]ROS WIKI:官方网站,文档齐全,https://wiki.ros.org/
- [2]易科机器人小组:机器人、ROS学习资料,https://blog.exbot.net/
- [3]古月居博客:ROS学习博客,https://www.guyuehome.com/
在这门课里,你将学到 ROS 的基本原理、基本操作和基本工具。这是一门实践性很强的课程,我们主要讲授的是 ROS 这个工具的使用,不会涉及到高深的理论和算法,因此很多内容需要各位动手实践。“纸上得来终觉浅,绝知此事要躬行”,一些命令、代码跟着演示敲一遍下来,你会有非常大的收获。我们鼓励各位同学在本机安装 Ubuntu 16.04 操作系统,多多动手尝试,敢于“折腾”。课程视频将在慕课网及本公众号同步更新,欢迎各位报名学习。