如果你在工控、机器人或者自动化设备这一行待过一段时间,大概会遇到这样一个分水岭:能用 PLC 把一台设备跑起来,和能自己搭一套实时控制系统、把运动控制做到毫秒级稳定,是两件完全不同的事。前者靠的是熟练,后者靠的是对底层机制的理解。这门课要处理的,正是后面这件事——从零搭一个基于 Linux 的实时控制系统,并把它和 EtherCAT 主站接起来。

需要先说清楚的是,它不是那种看完能立刻上手做项目的速成内容。它更像一份工程记录:作者把自己从装虚拟机开始,一路走到 CODESYS 配置 EtherCAT 主从站、再到 PLCopen 应用的完整过程录了下来。所以这篇导读的目的,是帮你判断自己现在处在哪个阶段、这套东西值不值得花时间、以及如果决定看,应该按什么顺序去消化。

它到底解决什么工作场景

现实里有一类需求特别尴尬:用现成的运动控制器,功能被框死了,想加个自定义算法或者改一下通讯周期,厂商不支持;换成工控机加实时系统自己做,又不知道从哪里下手。内核实时补丁怎么打、根文件系统怎么裁、Grub2 怎么装到目标盘上、EtherCAT 主站跑在哪个软件层——这些问题散落在各种论坛帖子和文档里,拼不成一条完整的路。

这门课的价值就在于把这条路串起来了。它讲的是实时控制系统的搭建,不是泛泛地讲 Linux 命令,也不是抽象地讲实时理论。你会看到内核与 rt-preempt 补丁的版本怎么选、配置怎么改、Busybox 怎么裁剪出一个能启动的最小系统,然后怎么让这套系统真正跑在硬件上。这中间涉及的每一步,都是实际做项目时会卡住的地方。

另一个场景是 EtherCAT。很多做设备的人知道 EtherCAT 快、同步性好,但真到自己配主站的时候,从站描述文件找不到、主从站映射对不上、周期抖动大,问题一个接一个。课程里用 CODESYS 来做主站配置,把设备描述文件安装、主从站详细配置、以及 PLCopen 运动控制功能块的应用都走了一遍。这部分对做多轴同步、做产线设备的人是比较实在的。

适合什么基础的人看

如果你完全没碰过 Linux,直接看第二部分会比较吃力。虚拟机安装、编译器配置、IDE 调试这部分虽然讲得细,但它默认你能看懂基本的命令行操作,至少知道什么是编译、什么是环境变量。完全零基础的话,建议先补一点 Linux 入门,否则会在安装环节反复卡住,消耗掉耐心。

如果你有 C 或 C++ 的基础,哪怕只是大学里学过、工作中用得不多,看这套内容会顺畅很多。课程里涉及内核配置、驱动层面的东西,不要求你写内核模块,但要求你能读懂配置文件的结构、能理解编译流程在做什么。

至于 EtherCAT 和 CODESYS 那部分,如果你已经做过 PLC 编程,或者用过类似的工业软件,上手会快。反过来,如果你连 PLCopen 是什么都不清楚,那这部分需要边看边查。总体判断:这门课对“会用电脑、懂一点编程、干过自动化相关活”的人是合适的,对纯转行、没有工程背景的人,门槛偏高。

建议先看哪几块

如果时间有限,我建议先看第三部分关于 U 盘系统搭建和烧录的内容。原因是它把前面环境搭建、内核编译、文件系统制作的成果落到了一个可验证的载体上——你能亲手做出一个能启动的系统,这种正反馈对继续往下学很重要。很多人卡在前两部分的配置细节里出不来,就是因为看不到阶段性成果。

然后跳到第四部分的 EtherCAT 主站配置。这部分和实际工作结合最紧,CODESYS 界面介绍、设备描述文件安装、主从站配置这几节,基本可以独立于前面的系统搭建来理解。如果你现在手头就有 EtherCAT 设备,可以一边看一边在软件里对着配,效率比纯看视频高得多。

第一部分的内核与 Busybox 编译,建议放在有整块时间的时候再啃。它不是看一遍就能记住的内容,需要你对着虚拟机实际操作,出错、排查、再重来。第二部分关于移动机器人的电机选型、运动学、动力学,偏向机器人方向的基础知识,如果你做的是产线设备而不是移动机器人,可以按需取舍,不必强求全看。

学完能独立做什么

比较现实的预期是:你能独立搭出一套可运行的实时 Linux 系统,知道从内核选型到根文件系统制作的完整流程,遇到启动问题时知道去哪个环节排查。这不是“精通内核”,而是“有能力从零做出一个能用的东西”。这个能力在设备定制、边缘控制器开发这类工作里是有直接用的。

在 EtherCAT 方面,你能独立完成主站的配置,包括设备描述文件的导入、主从站参数的设置、以及用 PLCopen 功能块做基本的运动控制。如果配合实际的伺服或从站设备,你可以把一套多轴系统跑起来并做基础调试。这中间会涉及同步周期、抖动这些实际问题,课程里的配置过程能给你一个可参照的起点。

需要提醒的是,课程不承诺你学完就能做完整的机器人产品。移动机器人那部分内容覆盖了电机、运动学、闭环控制这些基础,但要真正做出一台能跑起来、能定位导航的机器人,还需要大量的实践和额外学习。把它当作入门的地图和避坑指南更合适。

资料怎么配合练习

这套资料的特点是视频为主、实操性强,所以最好的用法是边看边做,而不是先看完再动手。每看完一节涉及配置或编译的内容,就在自己的虚拟机上走一遍,哪怕过程很慢。配置类的内容看一遍和做一遍,理解程度差得很远。

建议准备一台性能还行的电脑,虚拟机里跑 Ubuntu,分配足够的磁盘和内存,因为内核编译和文件系统制作比较吃资源。另外准备一个 U 盘,用于第三部分的系统烧录和启动测试。如果手头有 EtherCAT 从站设备,第四部分的学习效果会明显更好,没有设备的话至少把 CODESYS 装好,跟着界面操作一遍。

看的过程中不用追求一次全懂。内核编译那部分第一次做大概率会报错,重点是把报错信息和对应的解决思路记下来,形成自己的排查笔记。这种笔记在以后实际做项目时比视频本身更有用。最后,各部分之间的“经典问答”环节不要跳过,那些问题往往是实际动手时最容易踩的坑,提前知道能省不少时间。

课程目录

replyreload += ',' + 2198819;├─1、基于Linux的实时控制系统搭建实例与EtherCAT主站配置详解 │ 1-1 搭建Ubuntu-Linux环境--虚拟机安装与配置.mp4
 │ 1-2 支持库与编译器-C C++ 环境安装与配置.mp4
 │ 1-3 用IDE来编写、调试程序-Eclipse安装与配.mp4
 │ 1-4 让硬件按照我们的思路来启动-Bootloader配置.mp4
 │ 2-1 获取原材料-内核与rt-preempt补丁版本选择与源码获得.mp4
 │ 2-2 原材料预处理-内核配置修改.mp4
 │ 2-3 获取原材料-Busybox源码获取.mp4
 │ 2-4 原材料预处理-Busybox配置修改.mp4
 │ 2-5 原材料深加工-Busybox编译.mp4
 │ 2-6 原材料深加工-文件系统完善.mp4
 │ 2-7 获取原材料-Grub2的几种获取方式.mp4
 │ 2-8 原材料预处理-Grub2的配置文件.mp4
 │ 2-9 原材料加工-硬盘分区处理以及Grub2安装.mp4
 │ 3-1 U盘系统搭建.mp4
 │ 3-2 烧录文件、脚本和烧录测试案例.mp4
 │ 3-3 经典问答.mp4
 │ 4-1 硬件环境搭建.mp4
 │ 4-2 CODESYS软件界面介绍.mp4
 │ 4-3 EtherCAT设备描述文件安装.mp4
 │ 4-4 CODESYS的EtherCAT主从站详细配置.mp4
 │ 4-5 CODESYS的EtherCAT主从站详细配置(续).mp4
 │ 4-6 CODESY中PLCopen的应用.mp4
 │ 4-7 经典问答.mp4
 │ 5-3 CODESYS二次开发流程.mp4
 │ 基于Linux的实时控制系统搭建实例与EtherCAT主站配置详解_运动控制_规划_专题培训_睿慕课.mp4
 │ ├─2、移动机器人的系统设计与定位导航 │ 1-1 交流电机和直流电机.mp4
 │ 1-2 有刷电机和无刷电机的区别.mp4
 │ 1-3 移动机器人用电机选型.mp4
 │ 1-4 配套减速器及其原理.mp4
 │ 1-5 经典问答.mp4
 │ 2-1 移动机器人的分类.mp4
 │ 2-2 移动机器人的正运动学.mp4
 │ 2-3 移动机器人的逆运动学.mp4
 │ 2-4 移动机器人的动力学.mp4
 │ 2-5 移动机器人的闭环控制.mp4
 │ 2-6 经典问答.mp4
 │ 3-1 移动机器人的工作空间.mp4
 │ 3-2 二维环境的定位于地图构建算法.mp4
 │ 3-3 三维环境的定位与地图构建算法.mp4
 │ 3-4 常用的激光SLAM算法.mp4
 │ 3-5 视觉SLAM算法讨论.mp4
 │ 3-6 经典问答.mp4
 │ 4-1 移动机器人的全局路径规划.mp4
 │ 4-2 移动机器人的局部路径规划.mp4
 │ 4-3 移动机器人的实时避障.mp4
 │ 4-4 经典问答.mp4
 │ 5-1 移动机器人设计中需要注意的问题.mp4
 │ 5-2 移动机器人的组装顺序.mp4
 │ 5-3 移动机器人的电池选型.mp4
 │ 5-4移动机器人相关的上位机程序设计介绍.mp4
 │ 5-5 经典问答.mp4
 │ 6-1 ROS的运用.mp4
 │ 6-2 仿真软件Gazebo的运用.mp4
 │ 6-3 基于ROS与Gazebo的移动机器人仿真.mp4
 │ 6-4 经典问答.mp4
 │ 7-1 激光SLAM技术在机器人领域的应用.mp4
 │ 移动机器人的系统设计与定位导航_机器人开发_专题培训_睿慕课.mp4
 │ ├─3、机器人控制软件非实时系统组成与实现 │ 1-1 工业机器人控制软件非实时系统组成.mp4
 │ 2-1 基于socket通信的示教器软件开发介绍.mp4
 │ 2-2 使用socket通信方式建立客户端和服务器端程序.mp4
 │ 2-3 使用TLV协议格式建立示教器通信仿真程序及通信异常处理.mp4
 │ 2-4 示教器人机界面程序的主要功能、基本概念和实现方式.mp4
 │ 3-1 如何使用tinyxml实现xml格式的配置文件管理.mp4
 │ 3-2 如何实现自定义的机器人程序文件.mp4
 │ 3-3 日志文件功能如何快速搭建.mp4
 │ 3-4 导入导出与备份恢复功能实现要点.mp4
 │ 4-1 自定义的机器人程序中变量如何存储及查找.mp4
 │ 4-2 机器人程序变量的三种状态.mp4
 │ 4-3 机器人程序中变量的使用与同步.mp4
 │ 4-4 其他数据.mp4
 │ 5-1 基于flex的词法分析理论介绍.mp4
 │ 5-2 使用flex编写词法分析实例.mp4
 │ 5-3 基于bison的语法分析理论介绍.mp4
 │ 5-4 使用bison编写语法分析实例程序1.mp4
 │ 5-5 使用bison编写语法分析实例程序2.mp4
 │ 5-6 语法冲突如何解决.mp4
 │ 5-7 使用flex和bison建立机器人指令语法规则示例.mp4
 │ 5-8 机器人指令格式定义过程中常见的词法、语法问题汇总.mp4
 │ 6-1 机器人程序中间代码理论及示例1.mp4
 │ 6-2 机器人程序中间代码示例2.mp4
 │ 6-3 中间代码实现两种方式的总结补充.mp4
 │ 7-1 机器人语言解释理论及示例.mp4
 │ 7-2 如何搭建语言解释仿真程序以及机器人命令处理的软件实现流程.mp4
 │ 机器人控制软件非实时系统组成与实现_运动控制_规划_专题培训_睿慕课.mp4
 │ ├─4、机器人通用伺服驱动器的原理与应用 │ 1-1 伺服系统的定义.mp4
 │ 1-2 伺服系统的基础.mp4
 │ 1-3 伺服驱动器的数学模型.mp4
 │ 2-1 机器人伺服系统的组成部分.mp4
 │ 2-2 通用伺服系统的特点.mp4
 │ 2-3 机器人伺服系统.mp4
 │ 3-1 伺服电机分类和机器人常用伺服电机的种类.mp4
 │ 3-2 机器人用伺服电机选型.mp4
 │ 3-3 适合机器人用的电机.mp4
 │ 4-1 伺服驱动器的算法.mp4
 │ 4-2 伺服驱动器的数学模型.mp4
 │ 4-3 机器人用伺服驱动器.mp4
 │ 4-4 协作机器人.mp4
 │ 5-1 旋转变压器.mp4
 │ 5-2 光电编码器.mp4
 │ 5-3 磁编码器.mp4
 │ 5-4 编码器的关键指标.mp4
 │ 6-1 机器人伺服控制器为什么需要总线.mp4
 │ 6-2 工业以太网总线的关键指标.mp4
 │ 6-3 国内市场主流工业以太网总线技术.mp4
 │ 6-4 开放总线伺服驱动器的关键.mp4
 │ 7-1 伺服驱动器的响应.mp4
 │ 7-2 PID调试分步骤.mp4
 │ 7-3 日系伺服的免调整.mp4
 │ 7-4 调试典型6轴机器人伺服驱动器的步骤和方法.mp4
 │ 7-5 经典问答.mp4
 │ 8-1 总结.mp4
 │ 机器人通用伺服驱动器的原理与应用_伺服_专题培训_睿慕课.mp4
 │ ├─5、高性能伺服驱动系统设计与实践_ │ 1-1 伺服市场现状及主要内容介绍.mp4
 │ 1-2 伺服驱动单元的控制目标.mp4
 │ 1-3 伺服驱动单元软件特征分析.mp4
 │ 1-4 高性能伺服驱动单元软件体系结构设计.mp4
 │ 1-5 个任务运行时间效率观测.mp4
 │ 1-6 经典问答.mp4
 │ 1-7 第一章作业.mp4
 │ 2-1 第一章内容回顾.mp4
 │ 2-2 带宽定义和扩展意义.mp4
 │ 2-3 带宽测评手段.mp4
 │ 2-4 带宽预测控制.mp4
 │ 2-5 第二章作业.mp4
 │ 3-1 死区效应分析 伏秒补偿原理.mp4
 │ 3-2 三相定子电流极性的判断.mp4
 │ 3-3 实际补偿结果观测与分析.mp4
 │ 3-4 经典问答.mp4
 │ 3-5 第三章作业.mp4
 │ 4-1 第1-3章内容回顾和作业解答.mp4
 │ 4-2 PMSM数学模型.mp4
 │ 4-3 电流控制器设计及整定.mp4
 │ 4-4 速度控制器设计及整定.mp4
 │ 4-5 位置控制器设计及整定.mp4
 │ 4-6 速度环自调整方法.mp4
 │ 4-8 第四章作业.mp4
 │ 5-1 转动惯量识别的原因.mp4
 │ 5-2 转动惯量比计算方法.mp4
 │ 5-3 手工计算与加减速识别方法.mp4
 │ 5-4 模型参考自适应技术.mp4
 │ 5-5 经典问答.mp4
 │ 5-7 经典问答.mp4
 │ 6-1 第4-5章知识回顾.mp4
 │ 6-2 刚度指标定义.mp4
 │ 6-3 转矩扰动观测器设计.mp4
 │ 6-4 负载扰动补偿效果实践与分析.mp4
 │ 6-5 第6章作业.mp4
 │ 7-1 机械振动原因分析.mp4
 │ 7-2 陷波器设计与实现.mp4
 │ 7-3 信号频率发生器.mp4
 │ 7-4 机器人末端抖动抑制.mp4
 │ 7-5 经典问答.mp4
 │ 7-6 第7章作业.mp4
 │ 8-1 第4-7章作业和内容回顾.mp4
 │ 8-2 通用数字滤波器.mp4
 │ 8-3 一阶低通滤波器分析与设计.mp4
 │ 8-4 二阶低通滤波器分析与设计.mp4
 │ 8-5 陷波滤波器分析与设计.mp4
 │ 8-6 滑动平均滤波器分析与设计.mp4
 │ 8-7 直线插值方法及应用.mp4
 │ 8-8 三次样条方法及应用.mp4
 │ 8-9 作业.mp4
 │ 9-1 测试标准与项目.mp4
 │ 9-2 测试方法与流程.mp4
 │ 9-3 可靠性测试专题.mp4
 │ 9-4 经典问答.mp4
 │ 9-5 作业.mp4
 │ 10-1 第8-9章内容回顾.mp4
 │ 10-2 高频优化.mp4
 │ 10-3 编译器.mp4
 │ 10-4 内存运行.mp4
 │ 10-5 实时库.mp4
 │ 10-6 作业.mp4
 │ 11-1 安川、三菱、西门子、路斯特、科尔摩根等产品特性功能分析.mp4
 │ 11-2 功能安全专题.mp4
 │ 11-3 经典问答.mp4
 │ 11-4 作业.mp4
 │ 11-5 第8-11章作业解答.mp4
 │ 11-6 经典问答总结.mp4
 │ 高性能伺服驱动系统设计与实践_伺服_专题培训_睿慕课.mp4
 │ ├─6、轨迹规划和插补算法 │ 1-1 绪论.mp4
 │ 1-2 插补原理.mp4
 │ 1-3 数值计算方法.mp4
 │ 2-1 引言.mp4
 │ 2-2 机器人位姿表示法.mp4
 │ 2-3 基于最短路径的逆解算法.mp4
 │ 2-4 基于形态和旋转数的逆解算法.mp4
 │ 2-5 机器人时间最优化规划算法.mp4
 │ 3-1 关节轴线性插补.mp4
 │ 3-2 直线与抛物线相结合的关节插补算法.mp4
 │ 3-3 基于三次多项式的关节插补算法.mp4
 │ 4-1 位置插补.mp4
 │ 4-2 姿态插补.mp4
 │ 4-3 加减速控制.mp4
 │ 4-4 连续插补及速度规划.mp4
 │ 4-5 轨迹规划压缩算法.mp4
 │ 4-6 案例一 轨迹规划和插补算法.mp4
 │ 5-1 基于平均滤波的关节轴平滑算法.mp4
 │ 5-2 基于样条曲线的关节轴平滑算法.mp4
 │ 5-3 案例二 单轴平滑算法.mp4
 │ 轨迹规划和插补算法_运动控制_规划_专题培训_睿慕课.mp4
 │ ├─7、基于力觉的机器人碰撞检测与拖动示教 │ 1-1 机器人力觉介绍.mp4
 │ 2-1 背景介绍.mp4
 │ 2-2 碰撞力检测.mp4
 │ 2-3 碰撞力矩检测.mp4
 │ 2-4 碰撞相关事件.mp4
 │ 2-5 深入学习.mp4
 │ 3-1 背景介绍.mp4
 │ 3-2 开环拖动示教.mp4
 │ 3-3 闭环拖动示教.mp4
 │ 3-4 深入学习和总结.mp4
 │ 3-5 经典答疑.mp4
 │ ├─8、柔性关节机器人动力学、参数辨识与控制【第2期】 │ 1-1 绪论.mp4
 │ 1-2 数学基础.mp4
 │ 2-1 理论基础.mp4
 │ 2-2 连杆动力学.mp4
 │ 2-3 关节动力学.mp4
 │ 2-4 动力学正问题与逆问题.mp4
 │ 2-5 总结与深入学习.mp4
 │ 2-6 经典答疑.mp4
 │ 3-1 系统辨识基础.mp4
 │ 3-2 相关细节.mp4
 │ 3-3 实例.mp4
 │ 4-1 振动来源.mp4
 │ 4-2 振动方法.mp4
 │ 4-3 经典问答.mp4
 │ 5-1 背景介绍.mp4
 │ 5-2 碰撞力检测.mp4
 │ 5-3 碰撞力矩检测.mp4
 │ 5-4 碰撞相关事件和检测算法.mp4
 │ 6-1 绪论.mp4
 │ 6-2 工业控制策略.mp4
 │ 6-3 位置控制策略.mp4
 │ 6-4 总结及经典答疑.mp4
 │ 7-1 柔顺与动力学.mp4
 │ 7-2 柔顺控制策略.mp4
 │ 7-3 交互力矩获取.mp4
 │ 7-4 案例:拖动示教.mp4
 │ 7-5 经典答疑.mp4
 │ 柔性关节机器人动力学、参数辨识与控制【第2期】_运动学_专题培训_睿慕课.mp4
 │ ├─9、伺服驱动器中的控制理论基础与性能提升 │ 1-1 如何认识伺服系统.mp4
 │ 1-2 交流伺服系统的应用结构.mp4
 │ 1-3 伺服系统如何接收信息 定义性能指标.mp4
 │ 1-4 伺服系统的基本特征.mp4
 │ 2-1 交流电机基本方程.mp4
 │ 2-2 矢量控制 电流闭环控制 速度闭环控制.mp4
 │ 3-1 电流环控制器设计.mp4
 │ 3-2 速度环控制器设计.mp4
 │ 3-3 位置环控制器设计.mp4
 │ 4-1 PI控制.mp4
 │ 4-2 滑膜变结构控制.mp4
 │ 4-3 模糊控制.mp4
 │ 4-4 常用分析方法 系统辨识方法.mp4
 │ 5-1 控制精度.mp4
 │ 5-2 控制带宽.mp4
 │ 5-3 可靠性和系统效率.mp4
 │ 5-4 通讯能力.mp4
 │ 5-5 控制性能下降的分析.mp4
 │ 6-1 基于锁相环的转速估计器.mp4
 │ 6-2 基于滑膜观测器的无传感器控制方案.mp4
 │ 6-3 基于高频激励模型的无传感器控制策略.mp4
 │ 6-4 容错控制.mp4
 │ 6-5 经典问答.mp4
 │ 7-1 MTPA控制方案.mp4
 │ 8-1 电流环带宽提高.mp4
 │ 8-2 速度环带宽提高.mp4
 │ 8-3 死区补偿.mp4
 │ 9-1 先进控制方法概述.mp4
 │ 9-2 内模控制.mp4
 │ 9-3 预测控制.mp4
 │ 9-4 自适应控制 自抗扰控制.mp4
 │ 10-1 滑模控制+扰动观测的基本结构.mp4
 │ 10-2 滑模控制器的设计.mp4
 │ 10-3 扰动观测器设计.mp4
 │ 11-1 惯量辨识方法概述.mp4
 │ 11-2 负载转矩观测器的设计.mp4
 │ 11-3 基于降阶龙伯格观测器的惯量辨识.mp4
 │ 11-4 基于高频信号注入的惯量辨识方法.mp4
 │ 11-5 PI参数的自适应.mp4
 │ 12-1 控制结构优化概述.mp4
 │ 12-2 伺服控制接口.mp4
 │ 12-3 片上驱动一体系统.mp4
 │ 伺服驱动器中的控制理论基础与性能提升_伺服_专题培训_睿慕课.mp4