Discrete transfer function show different results in Simulink and in Matlab!

조회 수: 7 (최근 30일)
Murat Gozu
Murat Gozu 2019년 12월 8일
답변: Navya Seelam 2019년 12월 11일
I have a discrete transfer function,
s = tf('s')
Gs=(5*s+1)/(s^2+2*s+1)
The step response of Gs is;
Step_Resp_Gs.jpg
then descritize Gs with Zoh with T=0.001,
Gz_inv =
z^2 - 1.998 z + 0.998
---------------------
0.004996 z - 0.004995
Step response of Gz is;
Step_Resp_Gz.jpg
Both results are the same, that is good.
Let s do the same thing in Simulink;
simulink_model.JPG
As you see below, the the step responses of Gs and Gz DO NOT match each other! Gs's response is the same as the one in Matlab, but the Gz's response is like a ramp output!
Simulink_step_response.JPG
Where is the problem? Why the discrete Gz's response does not match to either Matlab's result or Gs's step response? Can you please help on that?
Thank you
Murat Gozu

답변 (1개)

Navya Seelam
Navya Seelam 2019년 12월 11일
Hi,
This might be because of the unstable poles in discrete transfer function. Try using LTI block instead of discrete transfer function block.

카테고리

Help CenterFile Exchange에서 Simulink에 대해 자세히 알아보기

제품


릴리스

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by