フィルターのクリア

How to fix up my s function?

1 回表示 (過去 30 日間)
Maidul Islam
Maidul Islam 2016 年 6 月 12 日
コメント済み: Walter Roberson 2016 年 6 月 13 日
function [sys,x0,str,ts,simStateCompliance] = fcnuav_1d_sfun(t,x,u,flag)
switch flag,
case 0,
[sys,x0,str,ts,simStateCompliance]=mdlInitializeSizes;
case 1,
sys=mdlDerivatives(t,x,u);
case 2,
sys=mdlUpdate(t,x,u);
case 3,
sys=mdlOutputs(t,x,u);
case 4,
sys=mdlGetTimeOfNextVarHit(t,x,u);
case 9,
sys=mdlTerminate(t,x,u);
otherwise
DAStudio.error('Simulink:blocks:unhandledFlag', num2str(flag));
end
function [sys,x0,str,ts,simStateCompliance]=mdlInitializeSizes
sizes = simsizes;
sizes.NumContStates = 0;
sizes.NumDiscStates = 0;
sizes.NumOutputs = 1;
sizes.NumInputs = 2;
sizes.DirFeedthrough = 0;
sizes.NumSampleTimes = 1;
sys = simsizes(sizes);
x0 = [];
str = [];
ts = [0 0];
simStateCompliance = 'UnknownSimState';
function sys=mdlDerivatives(t,x,u)
sys = [];
function sys=mdlUpdate(t,x,u)
sys = [];
function sys=mdlOutputs(t,x,u)
m = 0.18;
g = 9.81;
kp = 18;
kd = 175;
zdot2_des = 0;
e = u;
U = m*(zdot2_des+kp*e(2)+kd*e(1)+g);
sys = [U];
function sys=mdlGetTimeOfNextVarHit(t,x,u)
sampleTime = 1;
sys = t + sampleTime;
function sys=mdlTerminate(t,x,u)
sys = [];
  1 件のコメント
Walter Roberson
Walter Roberson 2016 年 6 月 13 日
We might be able to suggest a dating site for lonely functions, but I think it would probably be even better if you described the difficulty you are encountering with the code including any error message.

サインインしてコメントする。

回答 (0 件)

カテゴリ

Help Center および File ExchangeBlock and Blockset Authoring についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by