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

7 visualizzazioni (ultimi 30 giorni)
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 Commento
Reyad El-Khazali
Reyad El-Khazali il 16 Gen 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.

Accedi per commentare.

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 8 Lug 2015
Modificato: Azzi Abdelmalek il 8 Lug 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.

Più risposte (0)

Categorie

Scopri di più su General Applications in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by