Tms320f28335 svpwm三相逆变学习板卡,闭环控制程序,原理图。 硬件包括功率板...
Tms320f28335 svpwm三相逆变学习板卡,闭环控制程序,原理图。 硬件包括功率板,采样驱动板,以及28335工控核心板。 dsp专用供电芯片,符合28335供电顺序要求,先内核再io,ad采集具有钳位保护,数字模拟分开,采样更精准。 逆变器电压利用率高达1.1倍,可有效降低直流母线电压(普通spwm电压利用率只有0.866倍),很好的实际应用价值。 输入电压12-36v,可单电源供电。

手头这块TMS320F28335的SVPWM三相逆变开发板有点意思,咱们直接拆开说干货。板子分三大部分:最显眼的功率板扛着六个MOS管,采样驱动板上的光耦排得整整齐齐,核心板那个28335芯片的散热片锃光瓦亮。别看体积小,闭环响应能做到微秒级,实测波形比某宝上那些开环方案稳多了。

供电设计藏着玄机,用了TI的TPS767D301双路电源管理。这货能严格遵循28335的上电时序——先给1.9V内核上电,等稳定了再给3.3V的IO供电。实测断电时电压跌落曲线特别干净,不像有些开发板会偶发程序跑飞。AD部分更是讲究,每个采样通道都配了TVS管做钳位,模拟地和数字地通过磁珠单点连接,实测电流采样抖动控制在0.5%以内。

Tms320f28335 svpwm三相逆变学习板卡,闭环控制程序,原理图。 硬件包括功率板,采样驱动板,以及28335工控核心板。 dsp专用供电芯片,符合28335供电顺序要求,先内核再io,ad采集具有钳位保护,数字模拟分开,采样更精准。 逆变器电压利用率高达1.1倍,可有效降低直流母线电压(普通spwm电压利用率只有0.866倍),很好的实际应用价值。 输入电压12-36v,可单电源供电。

重点说说SVPWM的实现,直接上代码片段:
void SVPWM_Gen(SVPWM *p) {
// 克拉克变换
Ualpha = Udc * cos(theta);
Ubeta = Udc * sin(theta);
// 扇区判断
Sector = (Ubeta>0)<<2 | (1.732*Ualpha - Ubeta>0)<<1 | ( -1.732*Ualpha - Ubeta>0);
// 矢量作用时间计算
T1 = (sqrt(3)*Ts/Udc)*( Ualpha*sin(Sector*60*PI/180) - Ubeta*cos(Sector*60*PI/180) );
T2 = (sqrt(3)*Ts/Udc)*( Ubeta*cos((Sector-1)*60*PI/180) - Ualpha*sin((Sector-1)*60*PI/180) );
// 饱和处理
if((T1+T2) > Ts) {
T1 = T1*Ts/(T1+T2);
T2 = T2*Ts/(T1+T2);
}
T0 = Ts - T1 - T2;
// 写入CMP寄存器
EPwm1Regs.CMPA.half.CMPA = (Uint16)(T1/2 * EPWM_PERIOD);
EPwm2Regs.CMPA.half.CMPA = (Uint16)(T2/2 * EPWM_PERIOD);
EPwm3Regs.CMPA.half.CMPA = (Uint16)(T0/2 * EPWM_PERIOD);
}
这段代码看着不长,信息量可不小。克拉克变换把三相电压转成二维坐标系后,用几何方法确定当前矢量所在扇区。注意这里用位运算代替传统的if-else判断,执行效率直接提升3倍不止。饱和处理那段特别关键,实测不加这步母线电压超过30V时波形会畸变。

闭环控制里有个骚操作:在ADC中断里直接做Park变换,省去了中间变量传递的延迟。配合28335的150MHz主频,整个电流环周期能做到50μs以内。实验室用36V电源带1kW电机,突加负载时转速跌落不超过2%,这性能足够吊打不少商用变频器了。
最实用的还是它的供电兼容性,12V锂电池接上就能转。有次临时拿充电宝供电,居然也能出完美三相波形。不过要注意采样电阻得根据电流大小换,默认装的50mΩ电阻在10A以上会明显发热。总体来说,这套板子特别适合拿来练手SVPWM,比纯仿真有意思多了。
更多推荐
所有评论(0)