3. TI C2000系列概览
电机驱动硬件设计的核心,是构建一个能够实时、精确地控制功率级开关动作,并快速响应电流、位置、速度等反馈信号的闭环系统。TI C2000系列作为专为实时控制而生的DSP/MCU,其价值不仅在于CPU算力,更在于其外设与内核的深度耦合设计。本章将聚焦C2000的选型逻辑、内核架构特点,并深入剖析PWM、ADC、QEP、eCAP这四大关键外设在电机控制链路中的具体角色与工程配置要点,帮助你在硬件设计初期就建立起正确的器件认知与资源分配框架。
上图展示了C2000在电机驱动系统中的核心枢纽地位。ePWM模块生成控制功率级的PWM波形,ADC模块同步采样电流与电压反馈,QEP与eCAP模块分别处理来自编码器和霍尔传感器的位置/速度信号。所有外设均通过内部总线与C28x DSP内核相连,并支持硬件级联动触发,这是实现高带宽电流环控制的基础。下面我们将逐一拆解这些模块的选型要点与工程角色。
3.1 C2000系列选型:从F28003x到F2838x的定位差异
核心原理:C2000系列并非单一产品线,而是覆盖从低成本F28002x到高性能F2838x的完整家族。选型的本质是在控制精度、外设资源、封装尺寸与成本之间寻找平衡点。对于GaN电机驱动,开关频率通常提升至100kHz以上,这要求PWM分辨率足够高(死区时间可调至纳秒级),且ADC采样与PWM载波同步的延迟极低。
判断方法:建议从以下三个维度筛选型号:
- PWM通道数与分辨率:三相电机至少需要6路高分辨率PWM(HRPWM),若需PFC(功率因数校正)前端,则需额外2-4路。检查数据手册中PWM时基时钟频率(如F28003x为100MHz,F2838x为200MHz)。
- ADC性能与触发方式:确认ADC位数(12位/16位)、采样率(如3.5MSPS)以及是否支持硬件触发(SOC)。对于GaN驱动,建议选择支持4路同时采样的型号,以消除相电流采样时刻偏差。
- 封装与温度等级:工业驱动常用LQFP-64或QFN-56封装,车规级需选择TMP后缀(-40°C至125°C)。
| 型号系列 | 主频 (MHz) | PWM通道 | ADC位数 | 典型应用场景 |
|---|---|---|---|---|
| F28002x | 100 | 8 (HRPWM) | 12位 | 小型BLDC、风机、水泵 |
| F28003x | 120 | 14 (HRPWM) | 12位/16位 | 中端PMSM伺服、机器人关节 |
| F2837x | 200 | 24 (HRPWM) | 16位 | 多轴伺服、光伏逆变器 |
| F2838x | 200 | 32 (HRPWM) | 16位 | 高功率密度GaN驱动、车载主驱 |
3.2 内核架构:C28x DSP与CLA协处理器的协同分工
核心原理:C2000采用C28x 32位定点/浮点DSP内核,其单周期乘法累加指令(MAC)非常适合执行PID、Park变换等矩阵运算。但更关键的是其CLA(Control Law Accelerator)——一个独立于主CPU的32位浮点协处理器,可独立访问ADC结果寄存器和PWM寄存器。
操作流程(典型电流环分配):
- 主CPU(C28x):负责速度环、位置环、通信(CAN/ EtherCAT)以及系统状态机管理。
- CLA:被PWM中断触发后,直接从ADC结果寄存器读取电流值,执行Clarke/Park变换、PID调节,并更新PWM比较值。整个过程不打断主CPU。
- 硬件同步:PWM时基在载波周期特定点(如ZERO或PRD)产生SOC信号,触发ADC采样,采样完成后再触发CLA启动。这形成了“PWM→ADC→CLA→PWM”的硬件闭环链路。
常见误区:初学者常将CLA视为“第二个CPU”,试图在其上运行复杂状态机。实际上CLA无分支预测,适合执行无循环、无函数调用的线性控制算法。若算法含大量条件跳转,应保留在主CPU中。
3.3 关键外设详解:PWM、ADC、QEP、eCAP的工程角色
3.3.1 ePWM:电机控制的“心脏起搏器”
核心原理:ePWM模块由时基周期寄存器(TBPRD)和比较寄存器(CMPA/CMPB)组成,可生成互补PWM对,并内置死区发生器(DB)和故障保护区(TZ)。对于GaN器件,死区时间需精确控制在20-50ns,C2000的HRPWM(高分辨率PWM)通过微边距定位(MEP)技术,可实现150ps级别的占空比精度。
配置要点:
- 载波频率:由TBPRD决定,公式:f_PWM = TBCLK / (2 × TBPRD)。
- 死区设置:DBCTL寄存器配置上升沿/下降沿延迟,建议使用“Active High Complementary”模式,并配合DBRED/DBFED寄存器微调。
- 故障保护:TZSEL寄存器选择触发源(如过流比较器输出),TZCTL配置为高阻态(TZA=TZB=1),确保故障时GaN栅极被快速关断。
// 示例:配置ePWM1为20kHz,死区100ns(假设TBCLK=100MHz)
EPwm1Regs.TBPRD = 2500; // 100MHz / (2*2500) = 20kHz
EPwm1Regs.CMPA.bit.CMPA = 1250; // 50%占空比
EPwm1Regs.DBCTL.bit.OUT_MODE = 0x3; // 使能上升/下降沿死区
EPwm1Regs.DBRED.bit.DBRED = 10; // 100ns / 10ns = 10
EPwm1Regs.DBFED.bit.DBFED = 10;
3.3.2 ADC:电流环的“眼睛”
核心原理:电机控制中,ADC需在PWM载波周期的特定时刻(通常为下桥臂导通中点)采样相电流,以获取无开关噪声的电流值。C2000的ADC支持SOC(Start of Conversion)触发,可由PWM模块直接触发,无需CPU干预。
判断方法:检查ADC的采样窗口与保持电容大小。对于高阻值采样电阻(如10mΩ),需确保采样时间足够(如≥200ns),否则会因采样电容充电不足导致增益误差。F28003x的ADC可配置采样窗口(ACQPS寄存器),建议设置为最大值的一半以上。
| 参数 | 推荐值 | 说明 |
|---|---|---|
| 采样窗口 (ACQPS) | 15-30个SYSCLK | 对应150-300ns @100MHz |
| 触发源 | PWM SOCA/SOCB | 确保与载波同步 |
| 结果读取 | CLA直接访问 | 避免CPU中断延迟 |
3.3.3 QEP与eCAP:位置与速度的“感知神经”
核心原理:QEP(正交编码器接口)用于增量式编码器,通过解码A/B相脉冲计算位置与方向,内置32位位置计数器(QPOSCNT)和索引脉冲锁存功能。eCAP(捕获模块)则更适合霍尔传感器或单相脉冲测速,通过捕获边沿时间戳计算转速。
案例拆解(霍尔换向与速度估算):
- 背景:某低成本BLDC项目,使用3个霍尔传感器,要求实现120°方波换向及1%精度速度闭环。
- 方案:将3路霍尔信号接入eCAP1/2/3,配置为捕获上升沿。每次捕获中断中,读取CAPTURE周期值,计算瞬时速度。同时,利用eCAP的辅助PWM输出功能,在捕获事件时自动触发PWM换相(通过PWM模块的TZ或强制高功能)。
- 关键参数:eCAP时钟预分频设为1(100MHz),捕获模式设为“连续捕获”,中断频率约1kHz(对应60rpm)。
- 结果:速度估算延迟小于1ms,换相角度误差小于3°电角度,满足风机负载需求。
3.4 常见误区与选型复盘
误区一:盲目追求高主频。对于GaN驱动,若PWM与ADC联动设计不当,即使主频200MHz,电流环延迟仍可能超过2μs,导致电流纹波增大。
误区二:忽略ADC的参考电压精度。C2000内置参考(VREFHI)精度有限,建议使用外部高精度基准(如REF5030),否则电流环增益误差可达2%以上。
误区三:将QEP与eCAP功能混淆。QEP自带数字滤波和正交解码,适合编码器;eCAP更适合脉冲计数或霍尔信号。若用eCAP解码正交信号,需额外软件处理,浪费CPU资源。
总结复盘:在硬件设计初期,建议先绘制“信号链路图”(类似本章SVG),明确每个外设的输入/输出信号、触发关系与延迟预算。例如,从PWM触发到ADC采样完成的延迟应控制在500ns以内,从ADC结果到PWM更新的延迟应控制在1μs以内。只有将外设的硬件联动机制理解透彻,才能发挥C2000在电机控制中的真正实力。