01
运动控制概述
运动控制定义、应用领域(机器人、数控机床、3D打印)、控制系统基本组成(控制器、驱动器、电机、反馈装置)
基础概念
02
模块化设计思想
模块化定义、模块化设计原则(高内聚低耦合)、模块化设计优势(可复用、易维护、可扩展)
原则架构
03
运动控制程序架构设计
分层架构(应用层、算法层、驱动层)、接口定义、数据流设计
架构分层
04
运动控制核心算法模块
轨迹规划(梯形、S形)、PID控制算法、前馈控制、插补算法
算法PID
05
运动控制驱动层模块
电机驱动接口(步进、伺服)、编码器接口、IO控制、PWM生成
驱动硬件
06
运动控制应用层模块
G代码解析、用户指令处理、状态机管理、异常处理
应用解析
07
模块间通信机制
共享内存、消息队列、回调函数、事件驱动
通信IPC
08
模块化编程实践(一)
使用Python实现一个简单的运动控制框架
实践Python
09
模块化编程实践(二)
实现轨迹规划模块(梯形速度曲线)
轨迹梯形
10
模块化编程实践(三)
实现PID控制模块
PID控制
11
模块化编程实践(四)
实现驱动抽象层(模拟电机驱动)
抽象模拟
12
模块化编程实践(五)
实现应用层指令解析模块
指令解析
13
模块化编程实践(六)
模块集成与测试
集成测试
14
模块接口设计规范
接口命名规范、参数传递规范、返回值规范、错误码定义
规范接口
15
模块配置文件设计
YAML/JSON配置文件、配置加载模块、运行时参数调整
配置YAML
16
模块日志系统设计
日志级别、日志格式、日志存储、日志轮转
日志调试
17
模块单元测试
测试框架选择(pytest)、测试用例设计、Mock对象使用、覆盖率分析
测试pytest
18
模块集成测试
模块间联调、接口一致性测试、性能测试
集成性能
19
模块化设计中的设计模式
单例模式(配置管理)、工厂模式(驱动创建)、观察者模式(状态通知)
模式设计
20
实时性考虑
实时操作系统(RTOS)简介、任务优先级设计、时间片管理、看门狗机制
实时RTOS
21
多轴运动控制模块设计
多轴同步、插补协调、电子凸轮、电子齿轮
多轴同步
22
安全与保护模块
软限位、硬限位、急停处理、超限保护、故障恢复
安全保护
23
远程控制与监控模块
TCP/UDP通信、WebSocket接口、远程参数调整、状态上报
远程WebSocket
24
模块化设计文档编写
接口文档、设计文档、用户手册、API文档生成(Sphinx)
文档Sphinx
25
版本控制与模块管理
Git分支策略、模块版本号管理、依赖管理、模块发布
Git版本
26
案例分析(一):3D打印机
3D打印机运动控制程序模块化设计
案例3D打印
27
案例分析(二):桌面机械臂
桌面机械臂运动控制程序模块化设计
案例机械臂
28
案例分析(三):CNC雕刻机
CNC雕刻机运动控制程序模块化设计
案例CNC
29
常见问题与解决方案
模块间耦合过紧、接口变更影响大、性能瓶颈定位
问题优化
30
课程总结与展望
模块化设计未来趋势、AI在运动控制中的应用、开源运动控制框架介绍
总结AI