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

7 Ansichten (letzte 30 Tage)
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 Kommentar
Reyad El-Khazali
Reyad El-Khazali am 16 Jan. 2018
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.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 8 Jul. 2015
Bearbeitet: Azzi Abdelmalek am 8 Jul. 2015
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.

Weitere Antworten (0)

Kategorien

Mehr zu General Applications finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by