前两篇PSIM仿真展示了Buck的单双环控制实现过程,当然了BOOST与之类似,细节的就不再多赘述和仿真展示,想要BOOST的可以自行搭建尝试,只有自己多动手,才会收益多多,本人不善言谈,具体的就不多说了。这次主要是展示一下PSIM环境中Buck电路数字化实现仿真的过程,特别适合新手学习哦!主拓扑电路没变如下图1所示:
图1 Buck主拓扑结构
控制环路如下图2所示:
图2 数字化仿真的控制环路
现在主要说控制环路实现,如图2,首先采样输出电压作为反馈控制量,ZOH是仿真过程中加的一个采样频率模块,实质性没什么深意。后边方框是一个C BLOCK功能模块,用于控制语言的编写,这里主要是C语言。还有一个C语言编写模块比这个C BLOCK应用要复杂一些,有兴趣可以自行研究使用。双击C BLOCK模块打开后如下图3所示:
图3 C BLOCK模块
在C BLOCK模块中可以设置输入输出端口数量,里面C 语言编写不必要申明主函数,只要控制逻辑正确,点击Check Code 编译不出错就行。
本控制程序只需要一个采样输入一个输出即可,如图3中红圈所示。
程序开始定义变量:
//变量定义
static double Vout = 0;
static double Vref = 100;//输出电压基准值;
static double K1 = 10;//PI参数;
static double K2 = 1000;//PI参数;
static double Ts = 0.0001;//工作频率周期;
//2.计算过程
Xn = Vref-Vout;//error
Yn = Yn_1+K1*(Xn-Xn_1)+K2*Ts*X*(Xn+Xn_1);//得到控制量
//3.限幅输出
if(Yn >=1)
{
Yn = 1;
}
if(Yn< (0))
{
Yn = (0);
}
.....................................................
y1 = Yn;//输出
OK!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
仿真结果:图4
图4输出电压结果
图5 电感电流波形
好了,就是这么回事!
全部0条评论
快来发表一下你的评论吧 !