在做SVPWM仿真时,运行出现下面的错误,怎样解决。按照提示修改后的仿真结果不对,怎样办?望高人指点。

在做SVPWM仿真时,运行出现下面的错误,怎样解决。按照提示修改后的仿真结果不对,怎样办?望高人指点。,第1张

这句话的意思是:'PCHDPI/SVPWM/Subsystem2/Subsystem/Multiport Switch'元件的中的数值不能设定为零帆判,改正方法洞蔽:要么把值改为0-6的数,要么设纳轿州为“none”。

照着改 ,不难

大致弄懂了SVPWM的基本原理之后,下面我就使用MATLAB SIMULINK工具进行仿真

整体的仿真模块如下图所示:

整体的simulink仿真图如上图所示,虽然很多资料上都有,但是在实际按照资料搭建的过程中总是会遇到这样或者是那样的问题,在我经过多次失败的过程中,终于搭建出来正确的模型。下面我就具体介绍一下每个子模块的具体凳早搭建方法以及参数的设定。

在本模型中PWM的开关周期为0.0002s,直流侧电压Udc=700V,仿真算法采用变步长ode23tb算法,且最大仿真步长(MAX STEP SIZE)为0.00001,其余值保持初始值不变。

PWM三角波可以用MATLAB SIMULINK仿真模块中的repeating sequence产生,具体设置如下:

其中对称的等腰三角波的幅值一般取频率的一般,使用示波器观察三角波如下:

需要注意的一点是,注意设定输入正弦波枣态雀的采样时间,如果采样时间过大或者过小都会使得这个三角波失真。这里给出输入的两个正弦波的模块的设置:

接下来就分模块说说如何搭建:

首先是扇区N的判断模块:

扇区N的计算结果如下:

接下来是中闭谈间变量X,Y,Z的计算模块

T1和T2计算模块

切换时间Tcm1,Tcm2,Tcm3模块

切换时间的计算结果:

最后是计算相电压的模块,一般资料这个模块都没有把内部的结构详细给出

相电压Ua的计算结果:

就这样一个完整的SVPWM模块就完成了~

直接用下面的代码

已经得到验证

function CMPR=svpwm(ualfa,ubeta)

global ts udc_ref

%在IF语句中出现的变量必须赋初值

persistent T1on T2on T3on t1 t2 sectorNO

if isempty(T1on)|isempty(T2on)|isempty(T3on)|isempty(t1)|isempty(t2)|isempty(sectorNO)

T1on=0

T2on=0

T3on=0

t1=0

t2=0

sectorNO=0

end

%#################################

%sectorNO 3(0 30')->1->5->4->6->2->3

%#################################

if ubeta>0

a=1

else a=0

end

if sqrt(3)*ualfa-ubeta>0

b=1

else b=0

end

 帆旦 if -sqrt(3)*ualfa-ubeta>0

c=1

else c=0

end

sectorNO=a+2*b+4*c

%#################################

%

%#################################

x=sqrt(3)*ubeta*ts/udc_ref

y=(1.5*ualfa+sqrt(3)/2*ubeta)*ts/udc_ref

z=(-1.5*ualfa+sqrt(3)/2*ubeta)*ts/udc_ref

%#################################

%voltage vector on time

%#################################

switch sectorNO

case 3

t1=-z

t2=x

case 1

t1=z

t2=y

case 5

t1=x

t2=-y

case 4

t1=-x

t2=z

case 6

t1=-y

t2=-z

case 2

t1=y

t2=-x

end

%#################################

%pwm timer value

%#################################

%饱和判断

if ts-t1-t2<0

t1=ts*t1/(t1+t2)

t2=ts-t1

end

ta=(ts-t1-t2)/4

tb=ta+t1/2

tc=tb+t2/2

switch sectorNO

case 3

T1on=ta

T2on=tb

T3on=tc

case 1

T1on=tb

T2on=ta

T3on=tc

case 5

T1on=tc

T2on=ta

T3on=tb

case 4

T1on=tc

 猛知 T2on=tb

T3on=ta

case 6

枝轿消T1on=tb

T2on=tc

T3on=ta

case 2

T1on=ta

T2on=tc

T3on=tb

end

CMPR=[T1on T2on T3on]


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12149146.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存