DSP28335,三相逆变电路电压闭环程序,三相逆变数字电源程序。 包括源代码文件和PDF说明文件

DSP28335,三相逆变电路电压闭环程序,三相逆变数字电源程序。 包括源代码文件和PDF说明文件。 详细说明了代码含义,三相逆变电路电路电压闭环分析,电路设计步骤,软件设计流程,软件调试步骤等。

最近在搞三相逆变电源的项目,用DSP28335做电压闭环控制真是酸爽。这玩意儿既要懂电力电子又要会写代码,调试时被炸过几次管子的兄弟应该都懂。今天咱就唠唠这个数字电源开发里的门道,关键代码直接贴出来分析。

硬件部分建议先拿现成驱动板练手,重点注意母线电容的ESR参数。我见过有人拿普通电解电容硬上,结果闭环震荡直接炸出烟花。软件层面最核心的是ADC同步采样,用EPWM触发采样序列这个配置特别关键:

c 复制代码
void Init_ADC(void) {
    AdcRegs.ADCTRL1.bit.ACQ_PS = 0xF; //采样窗口16个SYSCLK
    AdcRegs.ADCTRL3.bit.ADCCLKPS = 3; //HSPCLK四分频
    AdcRegs.ADCMAXCONV.bit.MAX_CONV = 2; //转换3个通道
    AdcRegs.ADCCHSELSEQ1.bit.CONV00 = 0; //A相电压
    AdcRegs.ADCCHSELSEQ1.bit.CONV01 = 1; //B相电压 
    AdcRegs.ADCCHSELSEQ1.bit.CONV02 = 2; //C相电压
}

这段配置实现了三相电压同步采样,注意ADC的采样保持时间要和PWM载波周期匹配。之前有个坑是采样窗口设太小导致结果抖动,后来发现是没考虑PCB走线的分布电容。

闭环控制的核心在PID算法实现,这里用增量式PID防止积分饱和。特别要注意Q格式处理,DSP的定点运算得做好防溢出:

c 复制代码
int32 PID_Calc(PID_Struct *pid, int32 error) {
    int32 p_term = _IQmpy(pid->Kp, error);
    int32 i_term = _IQmpy(pid->Ki, pid->integral);
    int32 d_term = _IQmpy(pid->Kd, error - pid->last_error);
    
    pid->integral += error;
    pid->last_error = error;
    
    //输出限幅防止过调
    int32 output = p_term + i_term + d_term;
    output = (output > pid->max_out) ? pid->max_out : output;
    output = (output < pid->min_out) ? pid->min_out : output;
    return output;
}

调试时建议先开环跑SPWM,用示波器看死区时间是否正常。重点检查EPWM模块的CMPA/CMPB配置,特别是动作限定模块AQ的设置:

c 复制代码
EPwm1Regs.AQCTLA.bit.CAU = AQ_SET;  //CTR=CAU时置高
EPwm1Regs.AQCTLA.bit.CAD = AQ_CLEAR;//CTR=CAD时拉低
EPwm1Regs.DBCTL.bit.OUT_MODE = DB_FULL_ENABLE; //使能死区
EPwm1Regs.DBFED = 100; //死区上升沿延迟
EPwm1Regs.DBRED = 100; //死区下降沿延迟

有个骚操作是拿CCS的Graph功能实时看电压波形,比用串口打印快得多。遇到闭环震荡别慌,先把Ki设0调纯比例,然后慢慢加积分项。记得在软件里埋几个观测变量,实时监控PID输出和电压误差值。

最后说个血泪教训:PCB的地线处理不好会导致ADC采样漂移。有次调了三天发现是数字地和功率地之间形成了环路,后来在ADC基准脚加了个π型滤波才解决。硬件软件真是打断骨头连着筋,缺哪边都玩不转。

相关推荐
平行云5 天前
建筑BIM/3D可视化轻量级实时评审与分享方案
unity·ue5·3dsmax·实时云渲染·云桌面·云游戏·建筑bim
sbjdhjd11 天前
从参考图到可复用门窗:3ds Max 建筑场景建模的比例校准与结构拆分
3d·图形渲染·3dsmax·几何学·建模·三维建模·3dcoat
BIM云平台开发21 天前
3dsmax脚本中文乱码为??的解决办法
3dsmax
hey2020052823 天前
Maya怎么云渲染?云渲染使用教程详解!
3dsmax·动画·maya·3d渲染
BIM云平台开发1 个月前
Straighten Edge 3dsmax直边处理脚本
3dsmax
BIM云平台开发1 个月前
3dsmax 的symmetry,我选中一个面作为对称物体,为什么会产生距离的偏差,别的东西用这个面来对称是好的,是不是物体本身的坐标有问题?
3dsmax
在下胡三汉1 个月前
max转fbx,gltf,glb,obj,stl等通用格式文件,无需安装3dsmax和任何软件,直接转换
3dsmax·gltf·osgb
唯_ww2 个月前
3ds max导入场景材质
3dsmax·贴图
im长街4 个月前
UE 课程介绍 - 1. 3DMax软件建模基础
ue5·3dsmax
不知名的老吴6 个月前
VRay7.10 for 3ds Max网盘资源下载与安装教程指南
3d·3dsmax