discrete TF ""the order of the denominator must be greater than or equal to the order of the numerator""

조회 수: 17 (최근 30일)
i am working on designing a repetitive controller in discrete time , one of its component is the low pass filter Q(z)
Q(z)=a1*z^2+ a0+ a1*z^-1
when i use the discrete TF block in simulink it gives the error message "the order of the denominator must be greater than or equal to the order of the numerator"
please, is there any method to implement this function on simulink
  댓글 수: 4
Walter Roberson
Walter Roberson 2022년 9월 12일
When you are using discrete time z notation, positive exponents results refer what the signal would do in the future. For example if you were filtering random tosses of a coin, then z^2 would refer to the results that the coin will have in the second flip that has not been made yet. Unless you are using a signal that is perfectly predictable down to the last bit, that is something you simply cannot know.
Which is to say... you do not implement z^2 in Simulink. Instead you multiply the transfer function by z^(-2) and put in two signal delays, so that your output for time t is not available until at least time t+2*dt
mahmoud fawzi
mahmoud fawzi 2022년 9월 12일
Dear Walter
Thank you for your help
FYI, Q(z) is multiplied by the function Z^-N/1-Z^-N where N is an integer number
i multiplied the two functions and it now works but the simulation is relatively slow.
Regards,
mahmoud

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

답변 (1개)

Paul
Paul 2022년 9월 12일
편집: Paul 2022년 9월 12일
Hi mahmoud.
Q(z) can't be implemented in Simulink. If the model has another element, call it P(z), in series with Q(z), then the product Q(z)*P(z) can be implemented in a single block as long as the order of the denominator of P(z) is at least two higher than the order of its numerator. Doing so preserves the correct output/input relationship in that path, but signals internal to that path will be lost, or at least take on a new meaning.
  댓글 수: 2
Walter Roberson
Walter Roberson 2022년 9월 12일
Good point, if you have a path in which the net transfer function does not have positive powers of z, then if you can build the overall transfer function (or state space model) in MATLAB, ending up with something that does not need to predict the future, then you can use the consolidated function. Might not be as understandable or convenient but potentially do-able.
mahmoud fawzi
mahmoud fawzi 2022년 9월 12일
Dear Paul
Thank you for your help
FYI, Q(z) is multiplied by the function Z^-N/1-Z^-N where N is an integer number
i multiplied the two functions and it now works but the simulation is relatively slow.
Regards,
mahmoud

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

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by