Discrete control #3: Designing for the zero-order hold

Discrete control #3: Designing for the zero-order hold

Introduction to Discrete Control

In this video, the speaker clears up confusion regarding the zero order hold method to discretize a continuous controller and expands on knowledge of hold logic in general.

Zero Order Hold Method

  • The zero order hold is a type of digital-to-analog converter used to fill in missing information between discrete samples.
  • With the zero order hold, the last sample value is kept constant or with zero slope until the next sample, resulting in a series of step inputs.
  • While it's technically true that you can use any discretization method to get a discrete transfer function, it's misleading to imply that we'll use the zero order hold method to get the discrete controller transfer function that we want.

Model-Based Design

  • Model-based design involves designing and tuning your controller using a model or simulation of the system rather than real physical hardware.
  • To accurately model everything that the controller has to interact with, including continuous plant models, continuous sensor models, hold logic, and samplers, we need to convert them into a discrete transfer.

Continuous vs Discrete Controllers

In this section, the speaker discusses the differences between designing a continuous controller with a completely continuous model and discretizing it using different methods.

Designing a Continuous Controller

  • A continuous controller is designed using continuous domain control techniques like root locus or bode plots.
  • The solution obtained from designing a continuous controller needs to be converted into a discrete controller for use in digital computers.

Discretization Methods

  • The zero order hold method is practical when discretizing the plant but not when converting the continuous controller to a discrete one.
  • Other popular methods include the impulse method, Tustin method, and matched pole-zero method.

Hybrid Models in Simulink

In this section, the speaker talks about hybrid models in Simulink and how they are affected by an implied zero order hold between discrete and continuous systems.

Implied Zero Order Hold

  • When building hybrid models or mixed domain models in Simulink, there is an implied zero order hold between discrete and continuous systems.
  • If you're using the hybrid model to tune your discrete controller, then the zero order hold is already accounted for.

Continuous Transfer Function

  • If you replace the discrete transfer function with a continuous transfer function in Simulink, then the entire model becomes continuous and the zero order hold goes away.

Effects of Discretization on Stability

In this section, the speaker discusses the effects of discretizing a continuous controller using the Tustin method and how it affects stability.

Discretizing with Tustin Method

  • Discretizing a continuous controller using the Tustin method can result in less stability than intended due to the extra delay in the system caused by the zero order hold.
  • Simulating a response to a step input shows that overshoot jumps to over 50% and settling time is now around three or four seconds.

Including Zero Order Hold Effects in Controller Design

In this section, the speaker explains how to include the effects of zero order hold when designing a continuous controller so that it will have better performance once discretized. The speaker also discusses how to approximate the zero order hold effects with an S domain transfer function.

Approximating Zero Order Hold Effects

  • To include the effects of zero order hold when designing a continuous controller, we need to approximate it with an S domain transfer function.
  • A Pade approximation of the hold can be used to get the transfer function. This is an expansion of the delay term e^-st and then applied to the s and T domain representations of the zero order hold.
  • For a first-order Pade approximation of the zero order hold, the new response to step input is in green and while it's not perfect, both methods are much closer to the hybrid model than just ignoring the effects of the hold altogether.

Designing Discrete Controllers

  • There are three approaches for designing discrete controllers:
  • If we want to design a discrete controller directly using classical Z domain control techniques, we can discretize the plant with a method that includes zero order hold.
  • If we want to design a continuous controller first using classical s domain control techniques, we can mimic zero order hold with a Pade approximation S domain transfer function, then design our controller and finally discretize it with a method that doesn't include zero order hold like Tustin method.
  • If we want to design our controller using a hybrid model, there's no discretization needed. We can design and tune a discrete controller with a continuous plant directly in Simulink. However, different techniques are required.

Conclusion

In this section, the speaker concludes the video by summarizing the approaches for designing discrete controllers and how to account for zero order hold effects in controller design.

  • The speaker hopes that this video has cleared up some confusion about when to discretize with the zero order hold method and how to account for the hold defects in controller design.
  • In the next video, the speaker will cover Tustin and matched discretization methods and walk through a couple of examples of discreet controller design. If you have any questions or comments on this video, please leave them below.
Video description

Get the map of control theory: https://www.redbubble.com/shop/ap/55089837 Download eBook on the fundamentals of control theory (in progress): https://engineeringmedia.com This is the third video on discrete control and in this video, I want to clear up a confusion that I caused last time regarding using the ZOH method to discretize a continuous controller and in doing so, we’ll also expand our knowledge on hold logic. Let’s get to it. Patreon - https://www.patreon.com/briandouglas Twitter - @brianbdouglas Email - controlsystemlectures@gmail.com Discrete control #1: Introduction and overview - https://youtu.be/14cMhrp5wlk Discrete control #2: Discretize! Going from continuous to discrete domain - https://youtu.be/rL_1oWrOplk Errata: Let me know if you find anything and I'll add it here. Don't forget to subscribe! If you have any questions on it leave them in the comment section below or on Twitter and I'll try my best to answer them. I will be loading a new video whenever I can and welcome suggestions for new topics. Please leave a comment or question below and I will do my best to address it. Thanks for watching!

Discrete control #3: Designing for the zero-order hold | YouTube Video Summary | Video Highlight