get u0 and y0 to operating point

2 次查看(过去 30 天)
Frank
Frank 2012-3-9
Hi,
I am linearizing a system at a certain time. Is there an option to get the input and output values at this specified point in time?
I know that I could add some elements in the system to write the values. But I thought there could be a smarter solution. (?)
Cheers, Frank.
My code:
%%Specify the model name
model = 'sysToLinOneD';
%%Create the linearization I/O as specified in sysToLinOneD
ios(2) = linio('sysToLinOneD/Lookup 1800',1,'out');
ios(1) = linio('sysToLinOneD/Constant',1,'in');
%%Linearize the model
sys = linearize(model,ios);
%%Plot the resulting linearization.
figure(1)
step(sys)

回答(1 个)

Arkadiy Turevskiy
In your code you are linearizing at default model operating point. If you want to linearize a model at a speciific simulation time or at specific operating condition (for example, your model states are at steady state, and output is equal to number x), you need to trim the model first, using findop command.
To trim at a simulation time of 5 secs and then linearize the model at that condition:
>>op=findop(model,5);
>>sys=linearize(model,op,ios)
To see inputs and outputs, add inports and outports accordingly. Then simply do
>>op
See this demo and this demo for more details.
HTH.
Arkadiy

类别

Help CenterFile Exchange 中查找有关 Linearization 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by