Difference in simulation results of continuous and discrete transfer function in simulink

조회 수: 7 (최근 30일)
Hi,
I am trying to compare the continuous (s-domain) and discrete (z-domain) implementation of a system in simulink. My model is simple as shown.
My input signal is a sine of amplitude = '1' and frequency = '2*pi*1e3' rad/sec. The discrete domain TF is obtained by using 'c2d' function of Matlab with a sampling time of '1e-5' seconds. But I am getting entirely different responses to the same. It would be of great help if someone can clarify why this is happening.
Many thanks in advance
Karthik R
  댓글 수: 1
Reyad El-Khazali
Reyad El-Khazali 2018년 1월 16일
Your discrete-time transfer function is wrong. The correct one is: G(z) = [ 0.000986 z^2 + 0.001972 z + 0.000986 ]/[z^2 -1.996z + 0.9999 ] obtained using c2d (N,D, 10^-5, 'Tustin') The simulation of both the continuous and the discrete one were identical.

댓글을 달려면 로그인하십시오.

채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2015년 7월 8일
편집: Azzi Abdelmalek 2015년 7월 8일
Check the poles of your discrete model, they are unstable while your continuous model is stable. That means the discretization was unsuccessful. I think it's due to numeric calculation error. The denominator of your continuous model, maybe is the cause. D=[1 a b] with b very big then 1 and a. Try to make a discretization manually.

추가 답변 (0개)

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by