运动控制器固件开发实战
📚 共计 30 章节
01
运动控制概述
什么是运动控制 · 系统组成 · 控制器分类 · 固件作用
基础
概念
02
硬件平台搭建
主控选型 · 外围电路 · 电源/通信/编码器接口 · 开发板
硬件
STM32
03
开发环境搭建
Keil/IAR/CubeIDE · 编译器 · J-Link/ST-Link · 工程模板
工具
IDE
04
GPIO与基本外设
GPIO配置 · 定时器PWM · 中断系统 · SysTick
外设
中断
05
串口通信 (UART)
UART协议 · 配置 · 中断收发 · 环形缓冲区 · 调试
通信
调试
06
编码器接口与位置读取
增量式编码器 · QEI · 位置/速度计算 · Z信号归零
编码器
位置
07
ADC与模拟量采集
ADC原理 · 单次/连续/扫描 · DMA · 滤波算法
模拟
DMA
08
SPI与I2C通信
SPI主从 · I2C协议 · MPU6050驱动 · 调试经验
总线
传感器
09
CAN总线通信
CAN协议 · bxCAN配置 · TJA1050 · CANopen简介
CAN
工业
10
PWM与电机控制基础
PWM生成 · H桥/MOSFET · 直流有刷开环 · L298N/DRV8833
电机
PWM
11
步进电机驱动
两相/四相 · 细分驱动 · A4988/DRV8825 · 梯形加减速
步进
细分
12
直流无刷电机 (BLDC) 控制
六步换向 · 霍尔反馈 · 方波控制 · FOC简介
BLDC
FOC
13
PID控制算法
PID原理 · 位置/增量式 · 参数整定 · 积分限幅
控制
算法
14
运动规划 (梯形/S形曲线)
梯形/S形速度曲线 · 多段连续 · 速度前瞻与平滑
规划
轨迹
15
位置闭环控制
位置环+速度环 · 前馈 · 电子齿轮/凸轮 · 跟随误差
闭环
精度
16
多轴联动与插补
直线插补(DDA) · 圆弧插补 · 多轴同步 · 实时性
插补
多轴
17
RTOS与任务调度
FreeRTOS移植 · 任务/优先级 · 信号量/互斥锁 · 消息队列
RTOS
调度
18
固件架构设计
分层架构 · 状态机 · 模块化 · 代码规范
架构
设计
19
通信协议设计
自定义帧格式 · CRC校验 · 超时重传 · Modbus移植
协议
CRC
20
数据记录与日志
Flash存储(W25Qxx) · FATFS · 日志分级 · 异常记录
存储
日志
21
看门狗与可靠性设计
IWDG/WWDG · 电源监控 · 跑飞检测 · 冗余设计
可靠性
看门狗
22
Bootloader与固件升级
双区/单区 · Flash分区 · YModem · 加密校验
Bootloader
升级
23
参数管理与配置
EEPROM/Flash参数 · 校验默认值 · 上位机配置 · 掉电保存
参数
配置
24
上位机通信接口
USB虚拟串口 · 以太网(LWIP) · WiFi(ESP32) · 蓝牙
通信
上位机
25
运动控制指令解析
G代码解析(G0/G1/G2/G3) · M代码 · 指令缓冲区 · 错误处理
G代码
解析
26
实时性与性能优化
中断延迟 · 临界区 · Cache/预取 · DMA双缓冲 · 时间测量
性能
实时
27
安全与保护机制
软/硬限位 · 急停 · 过流过温保护 · 堵转检测 · 错误恢复
安全
保护
28
调试与测试方法
逻辑分析仪 · 示波器 · 串口助手 · Unity/CMock测试
调试
测试
29
实战项目一:两轴步进电机控制卡
需求分析 · 硬件设计 · 固件实现 · 调试验证
项目
步进
30
实战项目二:直流无刷电机伺服驱动器
FOC实现 · 电流/速度/位置环调试 · 性能测试
项目
伺服