How can i create a discrete system with defined delays zeros and pole?

2 views (last 30 days)
I need to create a discrete system with defined delays zeros and poles i know we can create systems with tf() and add delays with 'InputDelay' but dont have a idea how to modify zeros and poles.

Accepted Answer

Star Strider
Star Strider on 16 Jan 2022
If you are starting with the pole and zero locations, you can get the transfer function representation easily by using the zpk function. Then see InputDelay further down the same documentation page. Specify ts to define a discrete system.
  2 Comments
Arda Canbas
Arda Canbas on 16 Jan 2022
zeros= 2;
poles= 3;
gain= 5;
ts=2;
sys = zpk(zeros,poles,gain,ts);
this gives me a discrete time gain model. My main purpose here giving it a signal and analyze it with ARMAX and i couldnt find a way how to shape it for ARMAX
Star Strider
Star Strider on 16 Jan 2022
This is new information.
If the intent is to identify the system from data, use the armax funciton in the System Identification Toolbox. (I have used the System Identification Toolbox, however not the armax function.) Use the InputDelay name-value pair to provide the delay.
Use the compare function to graphically determine how well the estiamted system matches the data.
Provide the data and I can help to identify the system, if necessary.
.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!