資源簡介
simulink中的SVPWM仿真模型文件及m代碼,含有兩個simulink模型及m文件,使用時注意存放路徑,matlab版本應(yīng)該無影響,具體使用說明及詳解可見本人博文。

代碼片段和文件信息
%計時器比較法輸出SVPWM
%輸入變量:5個
%1.電壓矢量幅值
%2.電壓矢量相位
%3.電壓矢量作用時間
%4.直流電壓Ud
%5.三角載波(三角載波幅值等于Ud)
function?y?=?SVPWM_TimeCounterCompare(u)
Ve?=?u(1);
Ph?=?u(2);
te?=?u(3);
Udc?=?u(4);
du?=?pi/3;
%定義每個矢量開關(guān)信號
u0?=?[0?0?0];
u1?=?[1?0?0];
u2?=?[1?1?0];
u3?=?[0?1?0];
u4?=?[0?1?1];
u5?=?[0?0?1];
u6?=?[1?0?1];
u7?=?[1?1?1];
%判斷矢量位于哪個扇區(qū),從而選擇對應(yīng)的ua、ub、Phe(為計算ta、tb、t0)
if?Ph>0?&&?Ph<=du
????Phe?=?Ph;
????h?=?1;
????ua?=?u1;
????ub?=?u2;
elseif?Ph>du?&&?Ph<=2*du
????Phe=2*du-Ph;
????h?=?2;
????ua?=?u3;
????ub?=?u2;
elseif?Ph>2*du?&&?Ph<=3*du
????Phe?=?Ph-2*du;
????h?=?3;
????ua?=?u3;
????ub?=?u4;
elseif?Ph>-3*du?&&?Ph<=-2*du
????Phe?=?-Ph-2*du;
????h?=?4;
????ua?=?u5;
????ub?=?u4;
elseif?Ph>-2*du?&&?Ph<=-du
????Phe?=?Ph+2*du;
????h?=?5;
????ua?=?u5;
????ub?=?u6;
else
????Phe?=?-Ph;
????h?=?6;
????ua?=?u1;
????ub?=?u6;
end
%計算ta,tb,t0(ms)
A?=?Udc;
ta?=?1.5*(cos(Phe)-1/sqrt(3)*sin(Phe))*Ve*te/A;
tb?=?sqrt(3)*Ve*sin(Phe)*te/A;
t0?=?te-ta-tb;
if?t0<0
????ta?=?ta/(ta/tb)*te;
????tb?=?te-ta;
end
%時間折算成電壓值
usw1?=?Udc*t0/te/2;
usw2?=?Udc*ta/te+usw1;
usw3?=?Udc*tb/te+usw2;
%判斷并輸出
if?u(5)>=0?&&?u(5) ????y?=?u0;
elseif?u(5)>=usw1?&&?u(5) ????y?=?ua;
elseif?u(5)>=usw2?&&?u(5) ????y?=?ub;
else?y?=?u7;
end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????23208??2017-12-04?20:00??模型文件\SVPWM2Inverter_TimerCompare.slx
?????文件???????1389??2017-12-08?08:42??模型文件\SVPWM_TimeCounterCompare.m
?????文件??????22377??2017-12-07?19:36??模型文件\SVPWM_TimerCompare.slx
?????文件????????760??2017-12-07?19:36??模型文件\SVPW_TimeCounterCompare003.m
?????文件???????1994??2017-12-08?08:28??模型文件\SVPW_TimeCounterCompare004.m
?????目錄??????????0??2017-12-08?11:33??模型文件
-----------?---------??----------?-----??----
????????????????49728????????????????????6
評論
共有 條評論