How to give a step input with special shape?

1 Ansicht (letzte 30 Tage)
Kyana Shayan
Kyana Shayan am 11 Jan. 2017
Beantwortet: John BG am 12 Jan. 2017
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.

Akzeptierte Antwort

John BG
John BG am 12 Jan. 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

Weitere Antworten (1)

hosein Javan
hosein Javan am 12 Jan. 2017
hello. I have attached a simulink file. unzip it and open it. you only have to define your transfer function.
  1 Kommentar
hosein Javan
hosein Javan am 12 Jan. 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)

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by