7. Buck逆变器控制信号设计
本次Buck逆变器采用的SPWM调制,发出调制信号的是DSP28335,编写程序太复杂,采用PSIM代码自动生成,在代码自动生成的基础上,还是要理解SPWM的原理和DSP 28335 EPWM的工作原理。
首先说下什么是SPWM。
SPWM
SPWM就是正弦脉宽调制。调制波为正弦波,载波为三角载波。将调制波和三角波进行比较,当调制波大于三角波时,调制信号输出为高电平,当调制信号小于三角波时,调制信号输出为低电平。matlab仿真如下:
仿真结果如下:
总结PWM的几个要素如下:
1.载波
载波的类型,是三角波还是锯齿波等等;
载波的频率;
2.调制波
调制波的种类,SPWM时调制波为正弦波。
3.三角波与调制波比较
做差比较
4.根据比较结果发出调制信号
当差为正时,调制信号为高电平还是低电平。
根据以上这几个要素讲解下DSP28335的EPWM模块
DSP28335 EPWM
由于本次采用开环控制,对EPWM的应用处于最最最最基本的层次,下面内容按照我的理解,让没有接触过28335的同学有一个粗略的了解。
首先最基础的是基准时钟TBCLK,他相当于一个计时单位,就像我们生活中的1s,只不过工作频率很高,这个计时单位很小很小。28335有一个150MHZ的系统时钟,EPWM的基准时钟是根据这个系统始终分频得到。
载波
其次是对载波类型的设定时基计数器TBCTR,他会对基准始终进行基数,TBCLK时钟每走一下,TBCTR进行计数,计数规则的不同,会生成不同的波形,这就是载波类型的确定。
可以分为上升计数,下降计数,还有增减计数。
载波的周期由TBPRD确定,TBPRD为计数器的最大值,根据TBPRD和TBCLK就可以计算出载波的周期TPWM。
调制波
调制波的作用是用来与载波进行比较。EPWM模块存在比较功能的子模块CC。可以在CC中设置比较值CMPA,CMPB。当计数器TBCTR与CMPA,CMPB相同时会发出信号。
根据比较结果发出调制信号
动作限定子模块AQ,这是决定引脚发出脉冲的重要模块。AQ会根据CC模块发出来的信号,输出不同电平。如计数器上升时TBCTR与CMPA相同输出为高电平,如计数器下降时TBCTR与CMPA相同输出为低电平。
最最最最基本的PWM生成情况已经完成。附赠一篇自己写的程序以及标注(里面的程序用于工程,代码比较完整,有对系统的初始化,中断的设置,SPWM的循环等)。
3.PSIM代码生成
PSIM对于DSP 28335的程序的生成起了至关作用。再也不用担心哪个地方代码敲错,直接通过仿真即可生成代码。简直是我的救星,而且PSIM操作简单,上手容易。简单的控制系统用低版本的PSIM9.0即可。(高版本没有破解还需要花钱)
PSIM的代码生成仿真如下(真是方便,仿真文件在附件中):
仿真结果如下
对28335的EPWM模块进行讲解
主要的参数为: Dead time 死区时间
Sampling Frequency 载波频率
Carry Wave Type 载波类型 分为三角波和锯齿波
Peak-to-Peak Wave 峰峰值
Offset value 补偿值
输入为 调制波
输出为 控制信号
此设置没有复杂的闭环,没有涉及中断。
仿真成功即可生成代码,导入ccs,下载到DSP28335中。
代码自动生成的教程及导入到ccs的方法网上就有,我把认为好的资料放在附件里面。如有表述不清楚的地方或者不明白的地方欢迎大家评论区留言交流。