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


Groups > comp.arch.embedded > #29708

Re: PID controller: dummy questions

From Paul Rubin <no.email@nospam.invalid>
Newsgroups comp.arch.embedded
Subject Re: PID controller: dummy questions
Date 2020-06-26 23:12 -0700
Organization A noiseless patient Spider
Message-ID <871rm111h9.fsf@nightsong.com> (permalink)
References (2 earlier) <DnpJG.46868$5_4.33259@fx40.iad> <559b8f50-7e32-4e92-8d2d-7cad53f19095o@googlegroups.com> <R5yJG.196$cc1.128@fx29.iad> <875zbd15oo.fsf@nightsong.com> <xnwo3tccnd.fsf@delorie.com>

Show all headers | View raw


DJ Delorie <dj@delorie.com> writes:
> Typical systems will limit the I term to some range so it won't go out
> of bounds (or "wind up" as they say).  It doesn't decay on its own, but
> the system can cause its value to reduce to zero due to the Ki math.

Do you mean it saturates (controller stops increasing it once it reaches
some maximum)?  Ok, but won't it reach the maximum and stay there?  The
Ki math I think was:

  I += Ki * err   (note += not = )
  Vout = P + I

So if the error is almost always positive, I will keep increasing.

>> E.g. in a thermal system, you have to keep adding heat
>
> Yes, but the amount of extra energy you put in is constant in that case,
> and when the extra energy balances so that you stay at your set point,
> the I term stops increasing, because the error is now zero.  Drain more
> hot water, the I term goes up.  Insulate the tank, the I term goes down.

I'm imagining a tank starting with 20 degree water and you want to heat
it to 50 degrees.  Now the error is 30 degrees, or am I interpreting the
wrong thing as the error?  You turn on the heat and the error decreases
as the water gets hotter.  Eventually the water reaches 50 degrees and
the error is 0, but I is some positive number (the integral of the error
over the time it took to reach 50 degrees).

Now you draw out some hot water, say to wash dishes; you replace it with
more 20 degree water, so the system is say at 40 degrees now (error is
10).  You turn the heat back on, but again, I keeps increasing.  You
might overshoot a little (say to 51 degrees, error is -1) in which case
I might decrease a little until the tank cools back down.  But really,
the error will always be either positive or near 0.  So I keeps increasing.

I have to be missing something.  Thanks.

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