Go Down

Topic: PID tuning POLL - starting point -> P as a multiple of unit of measurement? (Read 636 times) previous topic - next topic

TheMonkey

Searched several topics, but in particular have not found how I'm thinking about this.

Intuition suggests:

- Each P, I, D should be minimized to tighten the control.

- P (proportional gain - potential height of oscillations) should require a minimum multiple of the precision of measurement (if input measurement has 1 decimal of precision eg- 35.3°c, then P could be +/- 2.0°c or something, but if precision is no decimal eg- 35°c, then 2° P would not be reasonable and should be bigger. Of course P would also need a minimum based on the potential rate of change and ability to control the set point.

- I (integral change - length of time between measurements) is also dependent on the oscillation wave. The higher the P, the longer the I, so they are correlated, and generally accepted that I should be 1.5x the oscillation frequency resulting from the P chosen. I'm thinking that 'I' also requires a minimum to take into account the latency between changes made to output and the resulting measured change to input, as well as any latency in ability to measuring input.

- D generally accepted to start with I / 5.

Not sure if a poll is possible in this forum platform, but for those that have an effective PID tune, what is your P as a multiple of unit of measurement? Any other comments on this thinking?

** Edited to add: My particular application is automotive electric fan controller for radiator. I will measure 0.1° precision and I have not yet datalogged to determine latency of change to temp based on change from fan.

jremington

PID has been around for several decades and as a result, experts have provided a number of on line guides for proper selection of the constants.

Of course, PID is just one of the many possible control schemes. Google "control theory" for an overview.

MarkT

Searched several topics, but in particular have not found how I'm thinking about this.

Intuition suggests:

- Each P, I, D should be minimized to tighten the control.
No, you tune the values for good performance, ie _maximizing_ without bounds set by unstability and noise
Quote
- P (proportional gain - potential height of oscillations) should require a minimum multiple of the precision of measurement (if input measurement has 1 decimal of precision eg- 35.3°c, then P could be +/- 2.0°c or something, but if precision is no decimal eg- 35°c, then 2° P would not be reasonable and should be bigger. Of course P would also need a minimum based on the potential rate of change and ability to control the set point.
Have you played with PID control and seen how each parameter works in reality?  I'm struggling to understand
this posting.

Typical approach is start P only, increase till marginally stable, backoff.  Add D until noise becomes an issue,
backoff.  Repeat till P+D are maximized without those constraints.  Add I to improve accuracy and settling
(but this affects stability so P and D need re-tweaking to control oscillation).

With a non-linear system like heater control, everything is a big compromise because cooling response is not
the same as heating response.  More advanced modelling of state can improve things, but your basic way to get things to work is to turn down the overall gain to regain stability at the expense of settling time - so long as
you have some I-term the system's steady state will converge.

For simple linear control like with a servomotor, tuning is pretty intuitive once you understand what each term
does.

You soon discover using PIDs that you have to handle integral-windup intelligently if there are step
changes of setpoint - the I term is only useful in settling performance and works against you when
out of equilibrium.  Either have special handling to cancel integral windup, or prevent step changes
in setpoint (ie turn them into slew-rate limited ramps that don't generate unlimited wind-up).
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

hammy


wildbill

** Edited to add: My particular application is automotive electric fan controller for radiator. I will measure 0.1° precision and I have not yet datalogged to determine latency of change to temp based on change from fan.
Why then do you need PID? Run the fan at max speed when the coolant is way too hot, turn if off when it's too cool, run it in proportion to how hot the coolant is when you're in the 'just right' zone.

hammy

If this is a car cooling fan ( a topic that came up a week or so ago) , then on /off control is sufficient .
Have you looked at the videos on setting up PID ?

Go Up