




资源介绍
视频数量:61个
总时长:4小时53分
课程介绍:
ROS机器人操作系统新手入门教程
你可能听说过ROS这个名字,它在机器人领域几乎是绕不开的存在。无论是工业机械臂、无人机,还是智能小车,背后往往都有ROS的身影。ROS全称Robot Operating System,虽然名字里带着“操作系统”四个字,但它实际上是一套专门为机器人软件开发量身打造的通信框架和工具链。
这门课正是为零基础学员设计的入门教程,总共61个视频,累计不到5小时,内容紧凑但不仓促,讲师会带着你从环境搭建开始,一步一步走到能够独立编写ROS节点、理解话题通信、调用服务接口。
课程最开始会解决一个很现实的问题:怎么把ROS装到你的电脑上。讲师会详细介绍Ubuntu系统下安装ROS的具体步骤,帮你理清src、devel、build这几个目录分别用来干什么,让你搞清楚工作空间的概念。安装完成后,你马上就能写出第一个ROS包,并且分别在C++和Python两种语言下跑通可执行文件。整个过程中,讲师会演示rosrun命令的用法,以及Linux终端里Tab键自动补全的技巧,这个小技巧能让你在敲代码时省不少力气。
接下来进入节点的概念。你会明白ROS系统里“节点”到底是什么意思,为什么需要这样一个抽象层,以及ROS Master在其中扮演的角色。讲师会手把手教你用C++和Python两种语言创建节点,对比两种实现方式的异同。这个部分打好了基础,后面所有的内容才能理解得顺畅。
节点之间的通信是ROS最核心的东西,第三部分会深入讲解话题和消息机制。发布者和订阅者这两个概念会反复出现,讲师不仅会告诉你怎么用代码实现,还会教你用rqt_graph这个可视化工具,把节点之间的通信关系用图形画出来,让抽象的通信过程变得直观可见。你会分别用C++和Python动手实现发布者节点和订阅者节点,然后让两者真正联通起来。
到了第四部分,就可以开始玩点有意思的了。ROS自带一个叫turtlesim的模拟器,能在窗口里控制一只小乌龟移动。讲师会从这里切入,教你读取ROS官方文档,读懂geometry_msgs Twist消息的结构,然后让小乌龟自动走圆形路线。更有趣的是,你还能实现一个简单的避障功能,让乌龟碰到边界就改变方向。这部分会综合运用前面学到的发布者和订阅者知识,让你体会到什么叫“知识串起来用”。
除了话题这种一问一答的通信方式,ROS还有服务这种请求-响应模式。课程第五部分会专门讲服务,你会接触到自定义消息类型msg文件和服务描述文件srv文件的创建方法,从定义数据结构开始,一步步完成整个通信链路的搭建。C++和Python两套实现都会演示,确保你掌握了用任何一种语言完成同样任务的能力。
参数传递是另一个实用技能。ROS提供了参数服务器来存储和读取配置数据,第六部分会教你如何用YAML文件保存参数、如何在代码里读写这些参数。掌握这个之后,你的程序就不再是硬编码的了,改个配置不用动代码本身。
Launch文件是管理复杂项目的好帮手。第七部分会带你了解XML语法基础,然后学习launch文件里各种标签的用法,包括node、remap、param、rosparam、arg、include这些。学了这些之后,你就能用一个命令同时启动多个节点、设置参数、完成话题重映射,项目规模大了之后这是必备技能。
最后一个部分聊的是进阶话题:多机器通信。如果你想让不同电脑上的ROS节点互相通信,需要理解IP地址、端口这些网络基础知识,还要知道roscore启动时发生了什么、节点之间到底怎么找到彼此。这部分内容偏理论但很有价值,特别是对以后想做分布式机器人系统的学员来说。
学完这门课,你会对ROS的基本架构有清晰的认识,能够用C++或Python编写节点、发布话题、订阅消息、调用服务、读写参数、管理启动文件。这些能力足够让你入门ROS开发,也为后续学习导航、机械臂控制、传感器融合这些更专业的方向打下坚实的基础。