EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: ePID deadband on output
From: "Pearson, Matthew R." <[email protected]>
To: "[email protected] list" <[email protected]>
Date: Thu, 14 Aug 2014 18:13:15 +0000
Hi,

I'm using the ePID record to control a needle valve filling a cryostat with helium. The needle valve is controlled by a stepper motor. The ePID is giving good results, but I found the need for a deadband on the PID output. This is to avoid continually driving the motor to and fro by just a few steps. I implemented it via set of database records, and included a timer to tell me how long the helium pressure has been within a deadband, and then I disable the PID output (by setting FBON).

However, I'm wondering if's a common enough use-case to be implemented in the ePID record. It would mean adding some additional fields, something like:

DBS - the deadband size
DBTS - settling time in the deadband (to avoid sitting on the edge of the deadband)
DBT - time in seconds since we entered the deadband window
DBIN - binary flag to indicate we are in the deadband

If ABS(CVAL-VAL)<=DBS, and DBT>=DBTS seconds, then disable FBON. 

If ABS(CVAL-VAL)>DBS then reset DBTS and enable FBON.

And to maintain current behavior, keep DBS=0 (the default).

The database version is working fine, but it's quite a few records and I suspect it would be much simpler in the soft device support.


Cheers,
Matt


Data Acquisition and Control Engineer
Spallation Neutron Source
Oak Ridge National Lab






Replies:
Re: ePID deadband on output Benjamin Franksen

Navigate by Date:
Prev: Re: How to tag soft channels as undefined/disconnected Andrew Johnson
Next: Re: How to tag soft channels as undefined/disconnected Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Device Support for VME controller SIS3100 Florian Feldbauer
Next: Re: ePID deadband on output Benjamin Franksen
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 17 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·