MIMOI ss2tf, how to apply input to TF?
32 views (last 30 days)
Show older comments
ken thompson
on 24 Feb 2012
Commented: fariba
on 10 Mar 2015
I have a system with 2 inputs and 2 outputs in the form of a state space model in simulink. i want to be able to represent cross coupling in the system by generating 4 transfer functions. However when using "ss2tf(A,B,C,D,iu)" i am only able to use "iu" values of 1 or 2. So how do i generate four tf's?
Next i want to apply a step input to TF11 (the transfer function representing relationship between input 1 and output1) and with nothing appplied to TF22 i want to be able to plot/observe the output at y1 and y2. How do i do this?
Do i need to get differential eqn of TF in order to apply an input to it?
I am very new to matlab so step by step help would be much appreciated (inc any codes that might be useful).
Thanks
0 Comments
Accepted Answer
Arkadiy Turevskiy
on 24 Feb 2012
Assuming you have your variables a,b,c,d defined in MATLAB workspace, so that
>>size(ss(a,b,c,d))
returns:
State-space model with 2 outputs, 2 inputs, and n states.
(where n is the number of states you have), all you need to do is this:
>>sys=ss(a,b,c,d); % create a 2*2 ss system
>>systf=tf(sys); convert to a 2x2 transfer function
>>step(systf(1,1)); % compute and plot step response of output 1 to input 1
>>step(systf(2,1)); % compute and plot step response of output 2 to input 1
Or, if you do not like to type:
>> step(tf(ss(a,b(:,1),c,d(:,1))))
2 Comments
More Answers (0)
See Also
Categories
Find more on Dynamic System Models in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!