近年来机器人领域持续升温,涌现出了一大批机器人产品,像机器狗、无人机、无人车、各式各样的服务机器人、聊天机器人…… 你知道吗,在许多机器人背后都用到了一个共同的软件平台,那就是机器人操作系统(Robot Operating System,ROS)。ROS好比机器人的中枢神经系统,这个系统把原本松散的功能模块耦合在了一起,为他们提供了通信架构。这样机器人的各个零部件就可以协同工作,完成更为复杂的任务了。ROS让机器人具备更高级的思维框架和控制系统。
自从ROS发布以来,它的发展和传播非常迅速,ROS已经成为了机器人领域使用最广泛的机器人软件平台,社区规模和使用人数越来越多。如果你喜欢机器人,如果你想开发或者正在开发机器人,如果你希望了解机器人操作系统,请报名这门《机器人操作系统入门》。
通过这门课,你将学会使用机器人操作系统ROS,你将了解他的通信方式、工程结构、常用命令和工具;你将使用我们专门开发的仿真环境---中科院软件博物馆和XBot机器人;你将使用机器人来进行建图、定位和导航;你将学习ROS程序的编写方法,动手写一写机器人程序。从零基础到掌握ROS的使用和开发,本课程旨在为相关专业的学生、机器人爱好者、机器人科研人员提供入门性的教材和技术参考。
课程内容
仿真环境
实物展示
本课程由中国科学院软件研究所与重德智能公司(www.droid.ac.cn)合作推出,欢迎报名参加。
一. ROS介绍与安装
1.1欢迎
1.2 什么是ROS
1.3 机器人与ROS演示
1.4 ROS的安装与配置
二. 工程结构
2.1 catkin工作空间与编译系统
2.2 pacakge结构
2.3 操作演示
2.4 metapacakge
三. 通信架构(上)
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 Rosbag
六. 客户端库-roscpp
6.1 roscpp介绍
6.2 topic_demo(上)
6.3 topic_demo(下)
6.4 service_demo
6.5 param_demo
七. 客户端库-rospy
7.1 node、topic
7.2 service、param、time
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 ROS中的地图
9.2 Gmapping SLAM
9.3 Karto SLAM
9.4 操作演示
十. Navigation
10.1 Navigation Stack
10.2 Costmap
10.3 Move_base
10.4 Map_server+amcl
基本Linux操作
C++与Python编程基础
评分:
课程满分100分。
平时测验占60%(每周单元测试);
课程讨论(讨论区提问和回答其他同学问题)占10%;
期末测验占30%。
证书:
60-80分获得合格证书,80-100分获得优秀证书。
想了解更多XBot机器人详细信息,请移步重德智能官网:
机器人开发者社区:
社区简介:机器人开发者社区面向所有的机器人相关的问题,包括且不限于机械硬件、机器人学(Robotics)、传感器、控制、SLAM、机器视觉、ASR、NLP等。 我们是中国科学院软件研究所与中科重德机器人公司支持的中文问答社区。目前内部测试阶段,2019年1月1日开始开放注册。目前采用邀请制。 如果想要加入社区,请联系罗校长 luoyunxiang@droid.ac.cn
本课程配套教学资料:
[1]《机器人操作系统入门》课程讲义---Gitbook 可在线阅读或下载pdf,不断更新中
[2]《机器人操作系统入门》代码示例---Github 教学代码示例,长期维护
ROS学习网站:
[1]ROS WIKI 官方网站,文档齐全
[2]易科机器人小组 机器人、ROS学习资料
[3]古月居博客 ROS学习博客