实验样机的系统软件用结构化程序设计,采用C语言编制完成。整个控制系统的软件主要由主程序和若干个功能模块以及中断服务程序组成,在程序设计上,力求结构清晰、功能完善、具有良好的维护性以及较高执行效率。
图7-5 IGBT驱动保护原理电路
其中,主程序主要完成系统的初始化以及对各功能模块、中断服务程序进行调配,实现系统整体控制。中断程序是整个控制系统控制过程实现的关键,系统主要的控制过程均由中断来完成。功能服务子程序分别完成具体的任务,例如锁相环(Phase Locked Loop,PLL)、坐标系变换、PI调节器、SPWM算法等功能。
1.主程序设计
系统主程序流程图如图7-6所示。主程序主要完成系统的初始化以及外围设备的配置操作,然后进入循环等待状态,当中断到来时,响应并执行相应的中断服务子程序。
系统初始化是对DSP资源初始配置的重要环节,系统的初始化操作在主程序和使程序主循环要用到的资源处于准备状态,完成参数的给定、系统各变量的定义以及寄存器的初始化工作。初始化完成后,主程序进入一个死循环,其功能是响应中断,调用中断服务子程序。
内部中断1(INT2)的程序流程框图如图7-7所示。INT2中断为A/D采样中断,主要完成A/D转换以及电压、电流数据的处理。INT2中断采用的是定时器T1的下溢中断,其控制频率为2.5kHz。
内部中断2(INT3)的程序流程框图如图7-8所示。INT3中断为控制算法,主要完成数据运算以及PWM脉冲的产生,该中断是控制系统的关键部分。INT3中断采用的是定时器T2的下溢中断,其控制频率为2kHz。
2.系统各部分程序设计
在三相PWM整流器控制程序中,主要用到A/D采样、PLL、电流电压坐标变换、PI调节器、SPWM控制等程序模块等。
1)A/D采样
实验样机系统中A/D采样数据主要有5路,分别为网侧线电压eab、ebc,相电流ia、ib,直流母线电压Udc。将采集的数据送到DSP做运算之前要进行处理,即标幺化和滤波处理,其程序流程框图如图7-9所示。其中,输入参数有:线电压整定值setE,相电流整定值setI,直流母线电压整定值setU,分别为标幺化的基值。
图7-6 主程序流程框图
(www.xing528.com)
程序流程框图
程序流程框图
2)PLL
PLL是三相PWM整流器十分关键的环节,如果锁相不准确就会造成母线电压不稳定以及网侧电压、电流相位不同相。系统中锁相环的程序流程图如图7-10所示。其中A/D采样处理后的三相电网电压分别为ea、eb、ec,初始给定相位角theta,延迟时间参数TDpara(该参数是延迟一定个数中断后,再判断锁相环是否锁定),延迟时间标志位TDflag,三相电压在q轴上的分量PLLEq,经PI调节后为PIEq,电网角速度Omige0,采样周期Ts,Omige=Omige0+PIEq,最后输出锁相角正余弦值cos_theta,sin_theta。判断上电正常后第一次进入锁相环标志First(初始值为1,复位后为0)。
图7-9 A/D采样程序流程框图
图7-10 PLL程序流程框图
3)SPWM控制
实验样机系统所采用的PWM控制方式为双极性规则采样SPWM。为了提高电压利用率,在调制电压中注入了3次谐波分量。
SPWM控制的基本原理:先计算脉宽值,再送入计数器进行比较得到PWM脉冲,其程序流程图如图7-11所示。其中,输入参数为调制电压pwmUd、pwmUq、锁相角正余弦值sin_theta、cos_theta,载波周期为Ts。
图7-11 SPWM控制程序流程框图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。