Ben:
The epid record has the feature you describe. Set the .I value (it is
writable, too) before you turn it on and it will start from that value.
For others who may want to find the epid record documentation:
https://epics.anl.gov/bcda/synApps/std/epidRecord.html
Pete
On 2/13/2021 5:44 PM, Ben Franksen via Tech-talk wrote:
> Hi Mark
>
> I slightly re-arranged your reply.
>
> Am 13.02.21 um 13:32 schrieb Mark Rivers:
>>> Suppose we have been at the target position for some time, i.e.
>>> VAL=OVAL, so that E(n)=0 for all n. Then all terms become 0 and the
>>> output is OVAL=0 as well. But shouldn't it be OVAL=VAL instead?
>> Your statement that "we have been at the target position for some
>> time, i.e. VAL=OVAL" is also incorrect. When it is at the target
>> position VAL=CVAL, not OVAL.
> Yes, sorry, I have confused OVAL and CVAL here.
>
>> I think your statement that "all terms become 0" is incorrect. The
>> integral term (I) does not become zero even when sitting at the
>> desired setpoint for infinite time, because it is the integral from
>> time=T0, where T0 is the time that the feedback was turned on.
> So that means if we start the feedback when E=VAL-CVAL=0 then we will
> first move the system *away* from the desired VAL (unless it happens to
> be equal to zero). Then we accumulate the errors, increasing I at each
> step, until after a while I is large enough to compensate our initial error.
>
> That means KI must *always* be non-zero. I find it a bit strange that it
> initially has to move away from the correct output value only to arrive
> at that value some steps later. Is it possible to preload the I with a
> non-zero value if one has a good guess what its initial value should be?
>
>> The integral term is what prevents "droop", e.g. it is what supplies
>> the constant power required to keep a furnace at 500 C even when the
>> error is 0.
> Ok, I think I understand this now. Thanks.
>
>> I use the EPID record for lots of tasks and it seems to work fine.
>> Have you observed an issue which led you to post this message?
> Not me personally. Some physicists wanted to understand the behavior of
> one of our control loops better, looked at the formula and came up with
> the above objection. I agree that with a non-zero KI it should work
> (after enough initial cycles).
>
> Cheers
> Ben
>
--
----------------------------------------------------------
Pete R. Jemian, Ph.D. <jemian at anl.gov>
Beam line Controls and Data Acquisition (BC, aka BCDA)
Advanced Photon Source, Argonne National Laboratory
Argonne, IL 60439 630 - 252 - 3189
-----------------------------------------------------------
Education is the one thing for which people
are willing to pay yet not receive.
-----------------------------------------------------------
- Replies:
- Re: EPID Record Mark Rivers via Tech-talk
- References:
- EPICS Record Ben Franksen via Tech-talk
- Re: EPID Record Ben Franksen via Tech-talk
- Re: EPID Record Mark Rivers via Tech-talk
- Re: EPID Record Ben Franksen via Tech-talk
- Navigate by Date:
- Prev:
Re: EPID Record Ben Franksen via Tech-talk
- Next:
Re: LUA: Segmentation fault on Raspberry for IOC being invoked from shell prompt; no problem via gdb execution. Lang, Keenan C. via Tech-talk
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
<2021>
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: EPID Record Ben Franksen via Tech-talk
- Next:
Re: EPID Record Mark Rivers via Tech-talk
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
<2021>
2022
2023
2024
|