When we know the impulse response of a system, we know all the equations needed to find an output of the closed loop system. So, theoretically we can find the perfect or at least a very good PID tuning since we can simulate or predict how the system will respond.

In practice, when we already know the impulse response of a system, is that easy to find suitable values to the PID coefficientes? Or it will only help but we still will need an iterative method or trials to tune it well?


For a LTI system , knowing more than one of the following descriptions turns out to be redundant (since one can be converted to another ):

  1. Differential equation(s)
  2. Impulse response
  3. Transfer Function

When designing a controller , the typical problem is to get one that reaches multiple performance requirements - eg max. overshoot , settling time, bandwidth , gain margin , phase margin, etc. The problem is further complicated when there are transport delays or the system is not minimum phase . Frequently a PI or PD controller is more appropriate than a PID.

Given a particular controller, it is easy to verify that it meets the requirements . The reverse procedure (find a suitable controller) is more complicated - and it is called tuning . There are several methods available , such as Ziegler - Nichols , Cohen - Coon, Fuzzy -logic based ... Tools like Matlab can also help - with a variety of pre-built scripts . Of course , starting with the assumption that you already know your plant (1, 2 or 3 above) . Otherwise , you have to use System Identification methods.


What you are asking is basically whether the (theoretical or practical) knowledge of a system's transfer function can clearly determine its best controller.

The answer, like for most engineering-related questions is 'it depends'. As you are asking this question in an electrical engineering Q&A website, it depends mostly on what you consider as 'very good'.

Among all what could have an influence on the performance of your predetermined controller, we have:

  • Uncertainties in system's dynamics
  • Uncertainties in actuators' dynamics
  • Disturbances in the system
  • Lag and/or delays in sensors

How bad can any of the above be? How bad the effect would be on the system and how important is it?

If these uncertainties come with no real risk of either damage or performance, then go for your predetermined controller and just fine-tune it from there.

Otherwise the answer to your question passes through Robust Control: the science of making the best performing controller in a conservative world of uncertainties. Then, still, you'll be able to build a controller only given the same initial model, and some additional thinking and judgement of whatever could go wrong. It won't necessarily be 'good enough' but at least it won't break anything or kill anyone.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.