Azzera filtri
Azzera filtri

How to give a step input with special shape?

2 visualizzazioni (ultimi 30 giorni)
Hi everyone, I am trying to give a step tracking input for an aircraft pitch transfer function. Attached you can find the type of input I am looking for. I don't know how to define this input to Matlab. Thanks in advance.

Risposta accettata

John BG
John BG il 12 Gen 2017
1.
As you may have already considered when writing your question, attempting to define the step the way you have, without considering first the system to test, has certain elemental uncertainty:
have you included enough samples so that the system you want to test really sees a step, not a pulse?
is the transition edge sharp enough?
2.
To prevent this, MATLAB has the function step that focuses on correctly defining the system, rather than the step itself:
following, MATLAB start example for command step
define the system
a = [-0.5572,-0.7814;0.7814,0];
b = [1,-1;0,2];
c = [1.9691,6.4493];
sys = ss(a,b,c,0);
test the system with a step
step(sys)
3.
MATLAB includes a Linear System Analyser that you can launch with command linearSystemAnalyzer
4.
Among the many functions of interest in the Control System Toolbox, stepinfo displays the step related parameters at the output of the system, for instance the system defined with the following transfer function (from MATLAB help)
sys = tf([1 5],[1 2 5 7 2]);
S = stepinfo(sys,'RiseTimeLimits',[0.05,0.95])
modifies the ideal input step resulting into a real step with the following parameters
S =
RiseTime: 7.4454
SettlingTime: 13.9378
SettlingMin: 2.3737
SettlingMax: 2.5201
Overshoot: 0.8032
Undershoot: 0
Peak: 2.5201
PeakTime: 15.1869
5.
A few links of interest:
step:
transfer function:
stepinfo
state space model
specify discrete transfer functions with filt
.
if you find these lines useful would you please mark my answer as Accepted Answer?
To any other reader, if you find this answer of any help please click on the thumbs-up vote link,
thanks in advance for time and attention
John BG

Più risposte (1)

hosein Javan
hosein Javan il 12 Gen 2017
hello. I have attached a simulink file. unzip it and open it. you only have to define your transfer function.
  1 Commento
hosein Javan
hosein Javan il 12 Gen 2017
also you can do it by matlab code:
syms s t
laplace(heaviside(-t+10)) %heaviside=u(t):step
tf=1/(s+1) %define your transfer function here
response=ilaplace(((1-exp(-10*s))/s)*tf)
ezplot(t,response)

Accedi per commentare.

Categorie

Scopri di più su Dynamic System Models in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by