2. C2000控制器硬件架构与HIL接口
做HIL验证,第一步不是打开仿真软件,而是把被测控制器“拆开看”:它有哪些计算单元、哪些外设、这些外设的引脚在真实硬件上连到哪里、信号以什么电气形式出现。只有把芯片内部资源和外部物理接口对应清楚,才能决定HIL侧需要提供哪些通道、以什么速率和电平去模拟或采集。本节以TI C2000系列中HIL验证最常用的F2837x(如F28379D)和F28004x(如F280049C)为例,梳理CPU、CLA、PWM、ADC、eQEP、CAN等资源,并给出HIL接口映射的基本方法。
一、两类典型芯片的定位差异
F2837x属于高性能双核系列,典型配置为两个C28x CPU核(各200MHz)、双CLA协处理器、多组ePWM、多组12位/16位ADC、多路eQEP、eCAN/CAN-FD以及大量GPIO。它适合电机驱动、数字电源、多轴控制等需要高算力和丰富外设的场景。F28004x则是单C28x核(100MHz)加CLA的紧凑型器件,外设数量相对精简,但保留了ePWM、ADC、eQEP、CAN等关键资源,常用于成本敏感的电机控制与电源变换。
对HIL而言,这个差异直接决定接口规模:F2837x可能同时有十几路PWM输出、多组ADC输入、两三个eQEP和两路CAN需要映射;F28004x则通道更少,但映射逻辑完全一致。因此HIL接口设计应做成“按外设类型可复用”的模块,而不是按芯片型号硬编码。
二、CPU与CLA:谁在算,HIL要观测什么
C28x CPU负责主控制环、状态机、通信和故障处理,是HIL中最主要的被测对象。CLA(Control Law Accelerator)是一个独立浮点协处理器,可并行执行控制算法,典型用途是把电流环、PWM更新等实时任务从CPU卸载出去。在HIL中,CPU和CLA本身不直接产生外部信号,但它们的执行结果会通过PWM占空比、GPIO状态、DAC/比较器输出等体现出来。因此HIL的观测点应放在“外设输出”上,而不是试图直接探测内核。若需要评估CLA与CPU的协同,可通过在CLA任务中翻转一个GPIO,用HIL的数字输入通道记录翻转时刻,从而间接测量任务时序。
三、PWM、ADC、eQEP、CAN的接口映射
ePWM是HIL中最关键的输出类外设。F2837x的ePWM模块可产生互补带死区的PWM,HIL侧通常用数字输入通道采集其高低电平,测量频率、占空比和死区时间。若被测对象是电机控制器,HIL需要把PWM占空比解释为电压指令,再驱动电机模型。ADC则是输入类外设,HIL用模拟输出通道向控制器注入电流、电压、温度等反馈信号,电平范围通常为0~3.3V,需注意分压和偏置。eQEP用于读取增量式编码器,HIL需模拟A/B/Z三路正交脉冲,频率和相位关系对应转速与方向。CAN用于与上位机或其他节点通信,HIL侧需配置CAN卡,按DBC报文周期收发,验证控制器的通信与故障响应。
四、HIL接口映射的实操方法
映射工作可以按“信号清单—电气匹配—通道分配—时序核对”四步推进。第一步,从控制器原理图和软件配置中导出所有对外信号,形成清单,字段至少包括:信号名、外设类型、方向、电平范围、频率/更新率、对应引脚。第二步,核对电气匹配:PWM输出为3.3V数字电平,HIL数字输入通常兼容3.3V/5V,可直接连接;ADC输入为0~3.3V模拟量,HIL模拟输出需确认输出范围与驱动能力,必要时加运放缓冲;eQEP的A/B/Z为3.3V数字脉冲,注意HIL脉冲输出频率上限要覆盖最高转速对应的编码器频率;CAN为差分信号,需经收发器转换为HIL CAN卡的差分接口。
第三步,分配HIL通道并记录映射表。第四步,核对时序:PWM采集的采样率应远高于PWM频率,例如20kHz PWM至少用1MHz以上采样或使用边沿捕获;ADC注入信号的更新率应与控制环周期匹配,典型电流环为10~20kHz;CAN报文周期按DBC定义,常见为10ms、100ms。若时序不匹配,HIL中会出现占空比测量抖动、电流反馈相位滞后等问题。
五、一个可参考的映射表片段
| 控制器信号 | 外设 | 方向 | HIL通道 | 电气/协议 | 更新率 |
|---|---|---|---|---|---|
| EPWM1A/1B | ePWM1 | 输出 | DI0/DI1 | 3.3V 数字 | 边沿捕获 |
| EPWM2A/2B | ePWM2 | 输出 | DI2/DI3 | 3.3V 数字 | 边沿捕获 |
| IA_FB | ADC-A0 | 输入 | AO0 | 0~3.3V 模拟 | 20kHz |
| IB_FB | ADC-A1 | 输入 | AO1 | 0~3.3V 模拟 | 20kHz |
| EQEP1_A/B/Z | eQEP1 | 输入 | PULSE0/1/2 | 3.3V 正交脉冲 | ≤1MHz |
| CANA_TX/RX | CAN-A | 双向 | CAN0 | CAN 2.0B | 10ms 报文 |
| FAULT_IN | GPIO | 输入 | DO0 | 3.3V 数字 | 事件触发 |
表中“方向”以控制器为参照:输出表示控制器发出、HIL采集;输入表示HIL发出、控制器接收。这个约定必须在全文和图示中保持一致,否则接线和配置极易出错。实际项目中,F2837x的ePWM和ADC通道数量更多,可按同样字段扩展;F28004x通道较少,但映射逻辑不变。
六、常见接口问题与判断依据
HIL调试初期最常见的问题是“控制器收不到正确反馈”。若ADC反馈值恒为0或满量程,先查HIL模拟输出是否使能、量程是否匹配、共地是否可靠;若PWM占空比测量值跳动大,检查DI采样率是否足够、是否使用了边沿捕获而非电平轮询;若eQEP计数方向相反,交换A/B两路接线或调整HIL脉冲相位;若CAN通信失败,确认波特率、终端电阻和报文ID是否与DBC一致。这些判断都依赖前面的映射表和时序核对,而不是盲目改参数。
把芯片内部资源和HIL物理接口一一对应,是后续建模、配置和排障的基础。下一阶段的工作,就是在这个映射关系上搭建实时模型并闭环验证。