📄 table.m
字号:
function sys=mdlOutputs(t,x,u) % u(1)为磁链开关信号 u(2)转矩开关信号 u(3)为磁链区域信号
if(u(2)==0) % 如果转矩开关信号为0,则输出电压开关信号(0, 0, 0)
sys(1)=0;
sys(2)=0;
sys(3)=0;
else % 如果转矩开关信号为1
if(u(1)==1) % 如果磁链开关信号为1
switch u(3)
case 1 % 如果磁链在区域1
sys(1)=1;
sys(2)=1;
sys(3)=0;
case 2 % 如果磁链在区域2
sys(1)=0;
sys(2)=1;
sys(3)=0;
case 3 % 如果磁链在区域3
sys(1)=0;
sys(2)=1;
sys(3)=1;
case 4 % 如果磁链在区域4
sys(1)=0;
sys(2)=0;
sys(3)=1;
case 5 % 如果磁链在区域5
sys(1)=1;
sys(2)=0;
sys(3)=1;
case 6 % 如果磁链在区域6
sys(1)=1;
sys(2)=0;
sys(3)=0;
otherwise
error(['SS!=1 2 3 4 5 6']); % 如果磁链不在区域1-6则发生错误,终止程序
end
else % u(1)==0
switch u(3)
case 1 % 如果磁链在区域1
sys(1)=0;
sys(2)=1;
sys(3)=0;
case 2 % 如果磁链在区域2
sys(1)=0;
sys(2)=1;
sys(3)=1;
case 3 % 如果磁链在区域3
sys(1)=0;
sys(2)=0;
sys(3)=1;
case 4 % 如果磁链在区域4
sys(1)=1;
sys(2)=0;
sys(3)=1;
case 5 % 如果磁链在区域5
sys(1)=1;
sys(2)=0;
sys(3)=0;
case 6 % 如果磁链在区域6
sys(1)=1;
sys(2)=1;
sys(3)=0;
otherwise
error(['SS!=1 2 3 4 5 6']); % 如果磁链不在区域1-6则发生错误,终止程序
end
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -