How to give a step input with special shape?
1 次查看(过去 30 天)
显示 更早的评论
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.
0 个评论
采纳的回答
John BG
2017-1-12
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
0 个评论
更多回答(1 个)
hosein Javan
2017-1-12
hello. I have attached a simulink file. unzip it and open it. you only have to define your transfer function.
1 个评论
hosein Javan
2017-1-12
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)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Classical Control Design 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!