zhoupingjin 发表于 2007-6-15 13:06

急求:正确的逆变器S-函数!

ASS与UI的S-函数程序错在哪里了啊

求救高手啊!!!
高手在哪里呀?
帮我看看这个程序为什么不能运行呀


%csfunc.m
function=table(t,x,u,flag)
function =mdlInitializeSizes
      sizes = simsizes;
      sizes.NumContStates =0;
      sizes.NumDiscStates =0;
      sizes.NumOutputs    =1;
      sizes.NumInputs   =3;
      sizes.DirFeedthrough=1;
      sizes.NumSampleTimes=1;
      sys = simsizes(sizes);
      x0 =[];
      str =[];
      ts =;
%逆变器功能的S-函数
function=table(t,x,u,flag,E)
E=500;
Ktable=;
Ksa=;
Ksb=;
Ksc=;
if flag==3
    X=4*u(2)+u(3)+1;
    Y=u(1);
    u(s)=Ktable(X,Y);
    Kus=us+1;
    Sa=Ksa(Kus);
    Sb=Ksb(Kus);
    Sc=Ksc(Kus);
    Sys(1)=(2*Sa-Sb-Sc)*E/3;
    Sys(2)=(2*Sb-Sa-Sc)*E/3;
    Sys(3)=(2*Sc-Sa-Sb)*E/3;
elseif flag==0
      sys=;
    else
      sys=[];
      end


提示错误是这样的:
      Error getting arg counts for S-Function 'table' in'untitled/S-Function'.
      ERROR mesagge: Line 39 Column12'
      This statemen is incomplete

cdwxg 发表于 2007-6-15 17:55

自己查阅本版面S函数的帖子,已经比较完善
S函数的模板以及相关解释
你的这个连flag都没给出的嘛

zhoupingjin 发表于 2007-6-16 09:13

请问您指的flag没有给出是什么意思?

请问您指的flag没有给出是什么意思啊?
函数里面不是有那个if flag==3......else if flag==0.......else 函数吗??

如果要给出,应该怎么给啊
怎么编,还要编什么样的程序呀?

zhoupingjin 发表于 2007-6-16 09:40

我是指在我用simulink中用这个S-函数出现了错误,
因为我编程的时候好像不用给出flag,不是吗?

cdwxg 发表于 2007-6-18 10:57

如果不用flag的,为什么要用S函数,用个M文件嵌入到matlab fcn不就可以了么?
页: [1]
查看完整版本: 急求:正确的逆变器S-函数!