Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.arch.embedded > #29692

Re: PID controller: dummy questions

From Hans-Bernhard Bröker <HBBroeker@t-online.de>
Newsgroups comp.arch.embedded
Subject Re: PID controller: dummy questions
Date 2020-06-25 21:14 +0200
Message-ID <hlkbd5Fkd9kU1@mid.dfncis.de> (permalink)
References <rd2odq$oiv$1@dont-email.me>

Show all headers | View raw


Am 25.06.2020 um 19:55 schrieb pozz:

> Goal = 80°C. Kp = 0.1V/°C.
> 
> FIRST STEP
> T = 20°C. Error = 60°C. P = 6V.
> Should I set the power supply output voltage to 6V? I think so.
> 
> SECOND STEP
> T = 30°C. Error = 50°C. P = 5V.
> Should I set Vout=5V or increase Vout by 5V so setting it to 11V?

5 V

> The mathematics say the output of PID controller *is* Kp*err, but I'm 
> not sure. With the increase of temperature, the errore decreases to a 
> minimum, so the Vout. At the steady state the error should be zero, but 
> the voltage from the power supply can't be zero.

It can be, if your heater overshoots --- for a while.  Then your water 
will begin to loose heat, and the P controller will reactivate your 
heater.  Lather, rinse, repeat.  Voila, oscillation: your P controller 
devolved into the even simpler 2-point controller:

	Apply heat when too cold, otherwise don't.  That's it

But more likely, it'll just reach a state a couple degrees below your 
target, where Kp times that difference yields a heating power that just 
about compensates the heat loss.  In the absence of actual disturbances, 
that's the state this system will remain at indefinitely.

In other words: congratulations, you've just understood what they mean 
when they say a pure P controller will never actually reach a steady 
zero-error state.  And if the control is sign-constrained (you only have 
a heater, but you cannot cool), that may apply even more strongly.

One somewhat hand-wavy possibility to avoid the latter trap is to 
artificially bias your control.  E.g. define that "control output zero" 
means "50% of the actual swing of the output", so negative control 
outputs can have an effect, too.  That 50% point may later profit from 
some more strategic positioning, a.k.a. tweaking.

Back to comp.arch.embedded | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

PID controller: dummy questions pozz <pozzugno@gmail.com> - 2020-06-25 19:55 +0200
  Re: PID controller: dummy questions Hans-Bernhard Bröker <HBBroeker@t-online.de> - 2020-06-25 21:14 +0200
  Re: PID controller: dummy questions DJ Delorie <dj@delorie.com> - 2020-06-25 15:29 -0400
    Re: PID controller: dummy questions David Brown <david.brown@hesbynett.no> - 2020-06-26 08:43 +0200
  Re: PID controller: dummy questions Richard Damon <Richard@Damon-Family.org> - 2020-06-25 22:21 -0400
  Re: PID controller: dummy questions pozz <pozzugno@gmail.com> - 2020-06-26 10:59 +0200
    Re: PID controller: dummy questions David Brown <david.brown@hesbynett.no> - 2020-06-26 11:07 +0200
    Re: PID controller: dummy questions Rick C <gnuarm.deletethisbit@gmail.com> - 2020-06-26 09:10 -0700
    Re: PID controller: dummy questions Richard Damon <Richard@Damon-Family.org> - 2020-06-26 12:29 -0400
      Re: PID controller: dummy questions Rick C <gnuarm.deletethisbit@gmail.com> - 2020-06-26 12:00 -0700
        Re: PID controller: dummy questions Richard Damon <Richard@Damon-Family.org> - 2020-06-26 22:24 -0400
          Re: PID controller: dummy questions Paul Rubin <no.email@nospam.invalid> - 2020-06-26 21:41 -0700
            Re: PID controller: dummy questions DJ Delorie <dj@delorie.com> - 2020-06-27 01:15 -0400
              Re: PID controller: dummy questions Paul Rubin <no.email@nospam.invalid> - 2020-06-26 23:12 -0700
                Re: PID controller: dummy questions Rick C <gnuarm.deletethisbit@gmail.com> - 2020-06-27 00:07 -0700
                Re: PID controller: dummy questions pozz <pozzugno@gmail.com> - 2020-06-27 16:53 +0200
                Re: PID controller: dummy questions David Brown <david.brown@hesbynett.no> - 2020-06-27 17:31 +0200
                Re: PID controller: dummy questions Rick C <gnuarm.deletethisbit@gmail.com> - 2020-06-27 10:09 -0700
                Re: PID controller: dummy questions Rick C <gnuarm.deletethisbit@gmail.com> - 2020-06-27 15:44 -0700
                Re: PID controller: dummy questions Richard Damon <Richard@Damon-Family.org> - 2020-06-27 12:34 -0400
                Re: PID controller: dummy questions DJ Delorie <dj@delorie.com> - 2020-06-27 11:51 -0400
            Re: PID controller: dummy questions Rick C <gnuarm.deletethisbit@gmail.com> - 2020-06-26 23:06 -0700
              Re: PID controller: dummy questions Paul Rubin <no.email@nospam.invalid> - 2020-06-26 23:18 -0700
                Re: PID controller: dummy questions Rick C <gnuarm.deletethisbit@gmail.com> - 2020-06-27 00:23 -0700
            Re: PID controller: dummy questions Tauno Voipio <tauno.voipio@notused.fi.invalid> - 2020-06-27 10:28 +0300
            Re: PID controller: dummy questions Richard Damon <Richard@Damon-Family.org> - 2020-06-27 18:13 -0400
    Re: PID controller: dummy questions Hans-Bernhard Bröker <HBBroeker@t-online.de> - 2020-06-26 22:30 +0200
      Re: PID controller: dummy questions Phil Martel <pomartel@comcast.net> - 2020-06-28 13:10 -0400

csiph-web