运动控制多任务调度设计
📚 共计 30 章节
01
运动控制概述
定义、发展历程、应用领域(工业机器人、CNC、3D打印等),核心指标(精度、速度、稳定性)
基础
概念
02
实时操作系统基础
RTOS概念、任务与进程、调度器工作原理、上下文切换、中断管理
RTOS
核心
03
FreeRTOS入门
FreeRTOS简介、源码结构、移植方法、任务创建与删除、任务优先级
FreeRTOS
实践
04
任务状态与切换
运行态、就绪态、阻塞态、挂起态,状态转换图,vTaskDelay与vTaskDelayUntil
状态
API
05
调度算法详解
时间片轮转、优先级抢占、协作式调度,调度点分析,任务切换时机
调度
算法
06
任务同步机制
信号量(二值、计数、互斥)、事件组、任务通知,生产者-消费者模型
同步
IPC
07
队列与消息传递
队列创建、发送、接收,队列集,流缓冲区,消息缓冲区
通信
队列
08
软件定时器
定时器回调函数、自动重载与单次模式、定时器服务任务、应用场景
定时器
软时钟
09
中断管理
中断嵌套、临界区、中断延迟、中断与任务的同步(ISR to Task)
中断
实时
10
内存管理
堆栈管理、静态与动态内存分配、内存碎片问题、heap_1到heap_5分析
内存
堆
11
多任务调度设计原则
任务划分粒度、优先级分配策略、CPU负载评估、死锁与优先级反转
设计
原则
12
优先级反转与解决方案
优先级反转现象、优先级继承、优先级天花板、FreeRTOS的互斥量实现
反转
互斥
13
看门狗与任务监控
硬件看门狗、软件看门狗、任务心跳检测、故障恢复机制
监控
可靠性
14
运动控制中的实时性要求
控制周期、抖动(Jitter)、最坏情况执行时间(WCET)、响应时间分析
实时
WCET
15
电机控制任务设计
直流电机、步进电机、伺服电机的控制任务模型,PID任务调度
电机
PID
16
多轴联动调度
插补算法(直线、圆弧)、多轴同步机制、主从跟随、电子凸轮
多轴
插补
17
轨迹规划任务
梯形速度曲线、S形曲线、T型曲线,前瞻算法,速度规划与调度
轨迹
速度
18
传感器数据采集任务
编码器、霍尔传感器、IMU,数据滤波(卡尔曼、互补),采样率与任务周期
传感器
滤波
19
通信任务设计
CANopen、EtherCAT、Modbus,协议栈任务化,数据帧解析与发送
通信
协议
20
人机交互任务
HMI刷新、按键扫描、状态显示,低优先级任务设计,防阻塞策略
HMI
交互
21
故障诊断与保护任务
过流、过压、过热检测,紧急停止逻辑,安全状态机
故障
安全
22
任务优先级反转实战
案例分析,使用互斥量解决,优先级继承效果验证
实战
互斥
23
任务堆栈优化
堆栈深度估算、堆栈溢出检测、MPU保护、任务堆栈共享
堆栈
优化
24
多核与AMP架构
SMP与AMP区别,多核任务分配,核间通信,缓存一致性
多核
AMP
25
低功耗任务调度
Tickless模式、睡眠任务、动态频率调整,电池供电设备优化
低功耗
Tickless
26
任务调度性能分析
Tracealyzer、SystemView工具使用,任务执行时间统计,调度延迟分析
性能
分析
27
运动控制框架设计
整体架构(任务图)、模块划分、接口定义、数据流设计
架构
设计
28
实战项目一:单轴位置控制
任务划分(通信、控制、采集、监控),代码实现
实战
单轴
29
实战项目二:两轴联动插补
任务同步与数据流,实时性验证
实战
两轴
30
实战项目三:3D打印机运动控制
多任务调度优化,性能调优与测试
实战
3D打印