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: Re: Is it possible for an Asyn output record to be, also, an (I/O Intr - driven) input?
From: Ralph Lange <[email protected]>
To: EPICS Tech-Talk <[email protected]>
Date: Fri, 28 Nov 2014 13:08:11 +0100
Hi Peter,

In general, this is possible, and I have seen a number of device supports implementing this behaviour. (E.g. OPC Device Support that connects to PLCs. [1])

This works very nicely for all devices that have a "local control" mode: the IOC still gets updates of all set point and switch changes, so that all displays are always up-to-date, locally introduced changes are properly archived, and the transition from "local" to "remote" is very simple and smooth. (Up to a design where that transition does not require any change on the IOC - it only means the device will stop ignoring remote commands.)

I don't think the ASYN standard EPICS device support implements that model. All ASYN based stuff I know uses pairs of variables (often called e.g. ...set and ...set_RBV), which adds the ability to see the difference of requested and actual set points, but requires careful sequencing (disable/set/enable) on the "local"-to-"remote" transition.
Where applicable, I prefer the two-way pattern, as it removes a lot of complexity and smoothly fits the "local control" (or - more general - multi-master) architecture.

I would love to see the transparent two-way set point pattern implemented for ASYN device supports. (hint, hint...)

Cheers,
~Ralph

[1] http://www-csr.bessy.de/control/SoftDist/OPCsupport/


On 28/11/2014 12:38, Heesterman, Peter J wrote:

Hi,

 

I’d like to be able to use an output record in this way, if possible, but my tests show that it doesn’t work.

 

From code comments like:

/* This code is for I/O Intr scanned output records, which are not tested yet. */

I suspect that I’m asking for a feature/behaviour that isn’t implemented, or is at any rate not commissioned.

 

An example of the usage I’ve been looking for:

 

It is possible for the software user to switch the equipment off by means of a caput (or similar) command.

 

But, it is also possible for the equipment user to switch the equipment off physically.

In which case, this is detected by the software, and can be detected by the software user through a caget (or similar), of the same record.

 

It would be possible to use two different records for this purpose, of course.

 

Many thanks,

 

Peter.

 



References:
Is it possible for an Asyn output record to be, also, an (I/O Intr - driven) input? Heesterman, Peter J

Navigate by Date:
Prev: Is it possible for an Asyn output record to be, also, an (I/O Intr - driven) input? Heesterman, Peter J
Next: RE: Is it possible for an Asyn output record to be, also, an (I/O Intr - driven) input? nick.rees
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: Is it possible for an Asyn output record to be, also, an (I/O Intr - driven) input? Heesterman, Peter J
Next: RE: Is it possible for an Asyn output record to be, also, an (I/O Intr - driven) input? nick.rees
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 ·