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: Generating a 'binary output pulse' by processing an ao record?
From: "Arnold, Ned D." <[email protected]>
To: Nicklas <[email protected]>, "[email protected]" <[email protected]>
Date: Thu, 19 Jun 2014 00:10:12 +0000
Welcome to the EPICS world, Nicklas -

I'll assume that you *really* need the AO record, if you just want a .5 sec pulse all you need is the bo (record ZZ below).

You got the right idea about using the YY.HIGH field, but you'll need an intervening bo record to write the "one" (setting DOL=1 and OMSL=closed loop will set the bo to 1 every time it processes).

Try this :

record (ao, "XX") {
  ...
  field(FLNK, "YY")
}

record (bo, "YY") {
  ...
  field (DOL, "1")
  field (OMSL, "closed_loop")
#  field (HIGH, "0.5")
  field (OUT, "ZZ.VAL PP NMS")
}

record (bo, "ZZ") {
  ...
field (HIGH, "0.5")
}


  Ned


From: [email protected] [[email protected]] on behalf of Nicklas [[email protected]]
Sent: Wednesday, June 18, 2014 05:07 PM
To: [email protected]
Subject: Generating a 'binary output pulse' by processing an ao record?

Dear all,

my name is Nicklas and I am a student at Uppsala University, Sweden, who is currently working for the research facility FREIA, which is designed for research and development of accelerators and instrumentation for accelerator based research.

I am new to epics so I would really appreciate some help.

Now to my question; as the subject line suggests, I need help/tips on how to generate a binary output pulse by processing an analog output record, i.e. I want the bo value to be 1 for 0.5 seconds (and then return to 0) each time the analog output is processed. My idea of the database setup was the following:

record (ao, "XX") {
  ...
  field(FLNK, "YY")
}

record (bo, "YY") {
  ...
  field (DOL, "1")
  field (OMSL, "closed_loop")
  field (HIGH, "0.5")
}

This works fine the first time "XX" is processed (using dbpf), but the next time "XX" is processed (using dbpf), it doesn't work.

Any tips/thoughts on this would be highly appreciated.

Best regards,

Nicklas Bjärnhall Prytz,
Engineering Physics Student at FREIA
Uppsala University
Sweden

References:
Generating a 'binary output pulse' by processing an ao record? Nicklas

Navigate by Date:
Prev: RE: Generating a 'binary output pulse' by processing an ao record? [SEC=UNCLASSIFIED] LYNCH, Damien
Next: saveData vs 2G file size limit Mark Davis
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: Generating a 'binary output pulse' by processing an ao record? Nicklas
Next: RE: Generating a 'binary output pulse' by processing an ao record? [SEC=UNCLASSIFIED] LYNCH, Damien
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 ·