TMS320F28335/DSP28335 光伏逆变器 设计方案资料 原理图 PCB AD19格式 PROTEL99SE格式 程序源代码 设计说明 资料包括设计说明/原理图 PCB/源代码 只做参考,需要一定的基础。 不提供解说,谢谢! 资料具有可复制性,售出不退不换,请看清再买! 本装置DC-DC采用Boost升压,DCAC采用单相全桥逆变电路结构,以TI公司的浮点数字信号控制器TMS320F28335 DSP为控制电路核心,采用规则采样法和DSP片内ePWM模块功能实现PWM和SPWM波。 PV功率点跟踪(MPPT)采用了恒压跟踪法(CVT法)来实现,并用软件锁相环进行系统的同频、同相控制,控制灵活简单。 注:系统DCDC和DCAC的驱动PWM都由TMS320F28335提供,并网运行。

最近在搞光伏逆变器设计的朋友可能会对TMS320F28335的方案感兴趣。这个DSP芯片自带浮点运算单元,搞电力电子控制确实比传统定点DSP顺手不少。咱们直接看干货,系统采用Boost升压+全桥逆变结构,重点说几个硬件佬最关心的代码实现细节。

先看PWM生成部分,DSP的ePWM模块配置是关键。下面这段初始化代码配置了载波频率和死区时间:

void InitEPwm1(void)
{
    EPwm1Regs.TBPRD = SYSTEM_FREQ / (2 * PWM_FREQ); //20kHz载波
    EPwm1Regs.TBPHS.half.TBPHS = 0;
    EPwm1Regs.TBCTL.bit.CTRMODE = TB_COUNT_UPDOWN; //上下计数模式
    EPwm1Regs.DBFED = DEAD_TIME;  //死区时间400ns
    EPwm1Regs.DBCTL.bit.OUT_MODE = DB_FULL_ENABLE;
    EPwm1Regs.CMPA.half.CMPA = EPwm1Regs.TBPRD / 2; //占空比初始化50%
}

这里用对称PWM模式的好处是谐波特性更好,特别适合逆变器应用。注意TBPRD寄存器决定了PWM周期,实际调试时要根据开关管特性调整死区时间参数。

MPPT部分用了恒压跟踪法,代码实现比扰动观测法简单。核心逻辑在电压环控制:

float CVT_Control(float Vpv, float Vref)
{
    static float DutyStep = 0.001;
    float duty;
    
    if(Vpv < Vref - 0.5)  //电压偏低时加大占空比
        duty += DutyStep;
    else if(Vpv > Vref + 0.5)
        duty -= DutyStep;
    
    return constrain(duty, 0.05, 0.95); //限制Boost电路占空比范围
}

虽然现在更流行增量电导法,但CVT法在光照稳定的场景下完全够用,关键是计算量小,对DSP资源占用少。注意这里的步进值要根据实际光伏板特性调整,太大会震荡,太小响应慢。

TMS320F28335/DSP28335 光伏逆变器 设计方案资料 原理图 PCB AD19格式 PROTEL99SE格式 程序源代码 设计说明 资料包括设计说明/原理图 PCB/源代码 只做参考,需要一定的基础。 不提供解说,谢谢! 资料具有可复制性,售出不退不换,请看清再买! 本装置DC-DC采用Boost升压,DCAC采用单相全桥逆变电路结构,以TI公司的浮点数字信号控制器TMS320F28335 DSP为控制电路核心,采用规则采样法和DSP片内ePWM模块功能实现PWM和SPWM波。 PV功率点跟踪(MPPT)采用了恒压跟踪法(CVT法)来实现,并用软件锁相环进行系统的同频、同相控制,控制灵活简单。 注:系统DCDC和DCAC的驱动PWM都由TMS320F28335提供,并网运行。

软件锁相环部分用了DSP的捕获单元配合算法实现:

void SPLL_Update(float gridVoltage)
{
    static float theta = 0.0;
    float error = gridVoltage - sin(theta);
    
    theta += 0.01 * error + 0.0001; //比例积分调节
    if(theta > 2*PI) theta -= 2*PI;
    
    EPwm2Regs.CMPA.half.CMPA = (EPwm2Regs.TBPRD/2) * (1 + m*sin(theta)); //SPWM调制
}

这个简化版锁相环通过不断修正相位角θ实现同步。实际工程中需要加入低通滤波和频率跟踪,但基本框架就是这样。注意m为调制比,一般不超过0.9留点安全裕量。

原理图里有个细节要注意:驱动电路建议用光耦隔离+自举电路方案,PWM信号从DSP输出后先经过TC4427这类驱动芯片再推MOS管。PCB布局时注意功率地和信号地分开,在Boost电感下方铺铜散热效果更好。AD19格式的文件可以直接查看叠层设置,四层板中间两层做电源层挺合理。

最后提醒下,这套代码需要配合TI的controlSUITE库使用,编译前记得包含DSP2833x_Project.h头文件。中断服务程序里记得清除PIE组标志位,不然会卡死。实测发现当PWM占空比突变时,适当加入斜坡函数能有效避免电流冲击。

更多推荐