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基准脚加了个π型滤波才解决。硬件软件真是打断骨头连着筋,缺哪边都玩不转。

相关推荐
不知名的老吴10 天前
VRay7.10 for 3ds Max网盘资源下载与安装教程指南
3d·3dsmax
2401_8638014614 天前
osgb怎么直接导入3dmax,加载打开osgb格式,模型优化,一键高模生成低模建筑插件
3d·3dsmax·3dmax·3dtiles·osgb
小年糕是糕手14 天前
【Blender】建模篇终章最后一舞!手把手拿捏 Blender 卡通小狐狸建模(带你完整理清建模思路)
3dsmax·blender·maya
小年糕是糕手20 天前
【Blender】Blender 曲线建模全解析:贝塞尔 / NURBS / 蒙皮 / 置换,从原理到实战
3dsmax·blender·maya
小年糕是糕手21 天前
【Blender】Blender 树叶建模全攻略:3 种叶片 + 阵列 / 镜像 / 晶格工具实战精讲
3dsmax·blender·maya
开开心心_Every1 个月前
扫描软件,部分文档文字表格识别功能可免费
运维·服务器·pdf·电脑·excel·3dsmax·houdini
霍志杰1 个月前
3dsmax导出gltf
3dsmax
BIM云平台开发2 个月前
3dsmax Arnold normal map 法线贴图
3dsmax·normalmap·3dsmax arnold法线·arnoldnormalmap
开开心心就好2 个月前
桌面图标乱了怎么办,一键恢复固定位置工具
运维·服务器·windows·pdf·excel·3dsmax·houdini
BIM云平台开发2 个月前
3dsmax Arnold Roughness粗糙度
3dsmax