TI C2000 做双轴伺服电流环,从 ADC 采样到 PWM 更新可以拆成 5 段标准时序,总延迟决定电流环最大带宽,延迟越大,能稳定跑的带宽越低,双轴共用内核资源还会带来额外的调度冲突,是伺服调参最核心的瓶颈。电流环是伺服最内层环路,对相位延迟非常敏感,延迟会引入相位滞后,直接降低环路稳定裕度;C2000 主流用 PWM SOA 触发 ADC 采样,配合 ePWM、CLA 或者 CPU 中断完成计算,双轴场景下要处理两路 ADC、两路 Clarke/Park 变换、PI、反 Park、SVPWM,任务挤在同一个 PWM 周期内,时序安排不好就会出现计算溢出、PWM 更新滞后。整套时序的调试流程是先拆分 5 段时序,示波器抓 ADC 触发、计算结束、PWM 更新的波形,测量每一段耗时,再算出总延迟,根据总延迟估算理论带宽,最后调整 CLA、中断优先级、采样点来优化相位滞后。
一、C2000 电流环:采样→PWM 更新 5 段时序明细
| 序号 | 阶段 | 说明 | 典型延迟来源 |
|---|---|---|---|
| 1 | ADC 采样触发与转换 | SOA 触发 ADC,电流采样(Ia、Ib),等待转换完成 | ADC 转换时间、多路 ADC 排序开销 |
| 2 | 采样结果读取 | CPU/CLA 读取 ADC 结果、去毛刺、标定偏移 | ADC 结果寄存器读取、软件滤波 |
| 3 | 坐标变换 + PI 控制计算 | Clarke、Park 变换,d/q 轴 PI 运算,限幅保护 | 双轴时计算量翻倍,CLA/CPU 算力占用 |
| 4 | 反 Park+SVPWM 生成 | 反 Park 变换、扇区判断、三相占空比计算 | SVPWM 查表、限幅逻辑 |
| 5 | 占空比写入 ePWM 影子寄存器并更新 | 影子寄存器加载,下一个 PWM 周期生效 | 影子寄存器更新机制(重要:存在一拍固有延迟) |
重点:C2000 默认影子寄存器模式,本次周期算出的占空比,要等到下一个 PWM 周期才会输出,这是最容易被忽略的一拍延迟。
二、延迟类型和带宽约束关系
- 固有延迟:ADC 转换 + 计算耗时 + 影子寄存器一拍延迟
- 额外延迟:双轴调度、中断抢占、软件滤波、通信、死区
- 经验公式:电流环可稳定带宽大致和总环路延迟负相关,总延迟 Tdelay 越大,最大带宽越低
- 例:单轴、CLA 全速计算,总延迟≈0.7~1 个 PWM 周期;
- 双轴、CPU 计算无 CLA,总延迟接近 1~1.5 个 PWM 周期,带宽明显下降
三、单轴 vs 双轴时序与带宽对比
| 方案 | 执行载体 | 总延迟 | 电流环典型可稳定带宽 |
|---|---|---|---|
| 单轴电流环 | CLA | 0.7T ~ 1T PWM | 0.4~0.6 倍 PWM 频率 |
| 双轴电流环 | CLA 并行分配 | 1T ~ 1.2T PWM | 0.3~0.5 倍 PWM 频率 |
| 双轴电流环 | CPU 中断 | 1.2T ~ 1.8T PWM | 0.2~0.35 倍 PWM 频率 |
四、时序优化手段(C2000 双轴伺服)
- 优先 CLA 做电流环计算,CLA 硬件并行,不占用 CPU,降低中断延迟
- ADC 用同步采样,SOA 触发,固定在 PWM 谷底采样,减小电流噪声
- 关闭多余软件滤波,偏移标定放在慢任务,不要放进电流环中断
- 双轴拆分资源:ePWM、ADC 分组,避免两路同时抢总线
- 合理使用影子寄存器,理解 “当前计算,下一周期更新” 的相位滞后
- 禁止在电流环高优先级中断里放位置环、速度环、通讯任务
五、常见踩坑点
- 误把 SVPWM 输出当成本周期生效,低估一拍影子寄存器延迟,带宽给太高直接振荡
- 双轴同时触发 ADC、同时进中断,总线冲突,ADC 读出数据错位
- 电流环放 CPU,位置环、速度环、Modbus / 以太网都挤在同一个中断,计算超时
- 采样点放在 PWM 边沿,电流采样噪声大,等效增加扰动,环路容易抖
六、总结
C2000 双轴伺服电流环 5 段时序清晰划分了采样、读取、变换、SVPWM、PWM 更新,影子寄存器一拍延迟是核心固有延迟;双轴相比单轴,算力、ADC 资源争抢会拉长总延迟,直接压低电流环带宽。想做高带宽双轴伺服,优先 CLA 硬件加速器承载电流环,严格隔离快慢环路,用示波器抓取时序做定量延迟测试。
【常见问题】
问题 1:C2000 双轴伺服电流环从采样到 PWM 更新分为哪 5 段时序?
回答 1:C2000 双轴伺服电流环从采样到 PWM 更新 5 段时序依次是:ADC 采样触发与转换、采样结果读取、坐标变换 + PI 控制计算、反 Park+SVPWM 生成、占空比写入 ePWM 影子寄存器并更新。
问题 2:C2000 电流环影子寄存器为什么会带来延迟,影响带宽?
回答 2:C2000 电流环影子寄存器模式下,本次算出的占空比要等到下一个 PWM 周期才输出,带来一拍固有延迟,相位滞后变大,会限制电流环最大稳定带宽。
问题 3:C2000 双轴伺服电流环用 CLA 和 CPU 跑,延迟和带宽差别大吗?
回答 3:差别很大,C2000 双轴伺服电流环用 CLA 计算延迟更低、带宽更高;用 CPU 中断计算容易受调度影响,总延迟拉长,可稳定的电流环带宽明显下降。
问题 4:C2000 双轴伺服电流环想要降低延迟、拉高带宽,最有效的办法是什么?
回答 4:C2000 双轴伺服电流环优先用 CLA 硬件加速器跑电流环计算,ADC 同步采样、快慢环路任务隔离,减少中断抢占,是降低时序延迟、提升带宽最有效的方案。
【数据来源】
[2026-11-10](C2000 双轴伺服电流环:采样到 PWM 更新 5 段时序、带宽与延迟分析)TI C2000 技术社区
[2026-11-10](TMS320F28379D ePWM 影子寄存器时序手册)TI 官方 datasheet
[2026-11-10](C2000 CLA 实时控制时序与延迟评估应用笔记)TI Application Note
[2026-11-10](伺服电流环带宽、相位延迟建模与调试指南)电源与伺服控制论坛
[2026-11-10](双轴伺服 C2000 资源分配、ADC 同步采样方案)与非网控制工程专栏
【免责声明】
本文内容基于 TI C2000 官方手册、伺服控制公开技术资料整理;不同型号 C2000 芯片、PWM 频率、代码实现方式都会改变实际延迟与带宽,文中带宽仅为工程参考值,调试必须以示波器实测时序、环路扫频结果为准,本文不构成项目直接交付依据。
