Home > classes > @ssm > model_delay.m

model_delay

PURPOSE ^

defines a delay block, discrete

SYNOPSIS ^

function [sys, VERSION] = model_delay

DESCRIPTION ^

 defines a delay block, discrete
 ONLY THE CONSTRUCTOR SHOULD CALL THIS PRIVATE FUNCTION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

 DESCRIPTION: delay block, discrete

 CALL: [sys, VERSION] = model_delay



 VERSION: $Id: $

 HISTORY: 15-05-2008 M Weyrich


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 % defines a delay block, discrete
0002 % ONLY THE CONSTRUCTOR SHOULD CALL THIS PRIVATE FUNCTION
0003 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0004 %
0005 % DESCRIPTION: delay block, discrete
0006 %
0007 % CALL: [sys, VERSION] = model_delay
0008 %
0009 %
0010 %
0011 % VERSION: $Id: $
0012 %
0013 % HISTORY: 15-05-2008 M Weyrich
0014 %
0015 %
0016 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0017 
0018 function [sys, VERSION] = model_delay
0019 
0020   VERSION ='$Id:$';
0021   utils.helper.msg(utils.const.msg.MNAME, ['running ', mfilename]);
0022   
0023   %% creating ssm
0024   sys = ssm ;
0025 
0026   % parameters in subsystem
0027   sys.paramnames ={'Tau'};
0028   sys.paramvalues = [0];
0029   sys.paramsigmas = [0.05];
0030 
0031   %% declaring symbolic parameters
0032   for i_params=1:length(sys.paramnames)
0033     cmd = [sys.paramnames{i_params}, '=sym(''', sys.paramnames{i_params},''');'];
0034     eval(cmd);
0035   end
0036 
0037   %%%%%%%%%%%%%%%%%%%%%%%%%% START BUILDING PARAMETRIC SUBSYTEM %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0038   %  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
0039   Ts = 0.1;
0040   Tt = 0.315;
0041 
0042 
0043   A1 = [...
0044     0 1 0 0 0 ;...
0045     0 0 1 0 0 ; ...
0046     0 0 0 1 0 ; ...
0047     0 0 0 0 1 ; ...
0048     0 0 0 0 0];
0049   B1 = [0; 0; 0; 0; 1];
0050   C1 = [0.15+Tau 0.85-Tau 0 0 0];
0051   D1 = 0;
0052   A = blkdiag(A1,A1,A1,A1,A1,A1,A1,A1,A1,A1,A1,A1,A1,A1,A1,A1,A1,A1);
0053   B = blkdiag(B1,B1,B1,B1,B1,B1,B1,B1,B1,B1,B1,B1,B1,B1,B1,B1,B1,B1);
0054   C = blkdiag(C1,C1,C1,C1,C1,C1,C1,C1,C1,C1,C1,C1,C1,C1,C1,C1,C1,C1);
0055   D = blkdiag(D1,D1,D1,D1,D1,D1,D1,D1,D1,D1,D1,D1,D1,D1,D1,D1,D1,D1);
0056 
0057 
0058   %%%%%%%%%%%%%%%%%%%%%%%%%% END BUILDING PARAMETRIC SUBSYTEM %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0059   %  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
0060 
0061   sys.ssisused = false;
0062   sys.outputisused = false;
0063   sys.name = 'Delay';
0064 
0065   sys.amats    = {A};
0066   sys.bmats    = {B};
0067   sys.cmats    = {C};
0068   sys.dmats    = {D};
0069   sys.ssini    =
0070   sys.timestep = 0.1;
0071 
0072   sys.ssnames    = {'Delay'};
0073   sys.ssisused   = true;
0074 
0075   sys.inputnames    = {'DFACS_command' };
0076   sys.inputvarnames = {'fx_mps_c' 'fy_mps_c' 'fz_mps_c' 'tx_mps_c' 'ty_mps_c' 'tz_mps_c' ...
0077     'fx1_TMAct_c' 'fy1_TMAct_c' 'fz1_TMAct_c' 'tx1_TMAct_c' 'ty1_TMAct_c' 'tz1_TMAct_c' ...
0078     'fx2_TMAct_c' 'fy2_TMAct_c' 'fz2_TMAct_c' 'tx2_TMAct_c' 'ty2_TMAct_c' 'tz2_TMAct_c'};
0079   sys.inputisused   = true;
0080 
0081   sys.outputnames    = {...
0082     'fx_mps_c_delayed' 'fy_mps_c_delayed' 'fz_mps_c_delayed' 'tx_mps_c_delayed' 'ty_mps_c_delayed' 'tz_mps_c_delayed' ...
0083     'fx1_TMAct_c_delayed' 'fy1_TMAct_c_delayed' 'fz1_TMAct_c_delayed' 'tx1_TMAct_c_delayed' 'ty1_TMAct_c_delayed' 'tz1_TMAct_c_delayed' ...
0084     'fx2_TMAct_c_delayed' 'fy2_TMAct_c_delayed' 'fz2_TMAct_c_delayed' 'tx2_TMAct_c_delayed' 'ty2_TMAct_c_delayed' 'tz2_TMAct_c_delayed' ...
0085     };
0086   sys.outputvarnames = {'DFACS_command_delayed'};
0087   sys.outputisused   = true;
0088 
0089 end
0090

Generated on Wed 27-Aug-2008 13:30:29 by m2html © 2003