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  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 
<== Date ==> <== Thread ==>

Subject: Re: AsynPortDriver setting DRVH of ao?
From: Florian Feldbauer <florian@ep1.ruhr-uni-bochum.de>
To: Mark Rivers <rivers@cars.uchicago.edu>, EPICS Tech Talk <tech-talk@aps.anl.gov>
Date: Thu, 16 Oct 2014 08:37:35 +0200
Hey Mark,

I knew the possibility of using such a record chain as you are suggesting, but
this is a bit more difficult in my case (I will need 17 records).
Our power supply has one maximum voltage value, but 16 channels which all needs the DRVH....
Therefore I had hoped, that there is some mechanism within asynDriver
(like in streamDevice using the @init and redirection mechanisms)
I will use the records chains then.
Thanks for your quick answer!

Cheers,
Florian

On 10/15/2014 05:00 PM, Mark Rivers wrote:
Hi Florian,

This can easily be done by using 2 additional records.

Define a new asynFloat64 parameter in your driver which is the maximum voltage that you read back from the remote control interface.  This could have a drvInfo field of MAX_VOLTAGE, for example.  Make sure your driver sets the flag that registers it as an interrupt source on the asynFloat64 interface.

Your database would then look like this:

record(ai, "$(P)$(R)MaxVoltage")
{
     field(DTYP, "asynFloat64")
     field(INP, "@asyn($(PORT),0,1)MAX_VOLTAGE
     field(SCAN, "I/O Intr")
     field(FLNK, "$(P)$(R)SetMaxVoltage")
}

record(ao, "$(P)$(R)SetMaxVoltage")
     field(DOL, "$(P)$(R)MaxVoltage NPP")
     field(OMSL, "closed_loop")
     field(OUT, "$(P)$(R)Voltage.DRVH NPP")
}

So the MaxVoltage will process whenever your driver sets a new value for the MAX_VOLTAGE parameter.  That will cause the SetMaxVoltage record to process, which copies the value of MaxVoltage to the DRVH field of your existing Voltage ao record.

Mark



-----Original Message-----
From: Florian Feldbauer [mailto:florian@ep1.ruhr-uni-bochum.de]
Sent: Wednesday, October 15, 2014 8:11 AM
To: Mark Rivers; EPICS Tech Talk
Subject: AsynPortDriver setting DRVH of ao?

Hey Mark,

I'm using the asynPortDriver for some of my device support routines.
Now we have a power supply were the maximum voltage can be limited via a
poti.
The actual value can be read out via the remote control interface.
We would like to use this value for the DRVH field of the ao records
used to set the output voltage.

Is it possible (e.g. during initialization) to set the DRVH fields via
the asynPortDriver?

Best regards,
Florian



--
----------------------------------------
| Dr. Florian Feldbauer                |
|                                      |
| Helmholtz-Institut Mainz /           |
| Johannes Gutenberg-Universität Mainz |
| Johann-Joachim-Becher-Weg 36         |
| D-55128 Mainz                        |
|                                      |
| Office: SB1 / 00-213                 |
| Phone:  (+49)6131 / 39-29605         |
----------------------------------------


References:
AsynPortDriver setting DRVH of ao? Florian Feldbauer
RE: AsynPortDriver setting DRVH of ao? Mark Rivers

Navigate by Date:
Prev: Re: areadetector, iocSimDetector can not be started on OS X due to dyld: Symbol not found: _xmlFree Heinz Junkes
Next: Usage of the dbNameToAddr funciton ZHANG Zhaohong
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 
Navigate by Thread:
Prev: RE: AsynPortDriver setting DRVH of ao? Mark Rivers
Next: Re: AsynPortDriver setting DRVH of ao? Scott Baily
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 
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 ·