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  2014  <20152016  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  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: scalcout fails to write to bo
From: Isabella Rey <[email protected]>
To: "[email protected]" <[email protected]>
Date: Fri, 15 May 2015 17:21:02 +0100
Hi All,

I have a scalcout record whose output should go into a bo record, as follows:


record(scalcout, "BS:CAMS_OK") {
  field(SCAN, ".1 second")
  field(CALC, "AA==CC")
  field(INAA, "CAM1:TRAFFIC_LIGHT")
  field(OUT, "BS:AUTO PP")
  field(OOPT, "When Zero")
  field(CC, "OK")
}

record(bo, "BS:AUTO") {
  field(PINI, "YES")
  field(VAL, "0")
  field(ZNAM, "OFF")
  field(ONAM, "ON")
}

When I run the IOC, I get this error message:
Illegal choice PV: BS:AUTO 0.00000000

After looking at other posts, I think the scalcout is trying to write a string in the bo, which generates the error. But my understanding of the scalcout documentation is that the conversion to int should be done automatically, and this should just work.

Interestingly, this workaround does the job:

record(scalcout, "BS:CAMS_OK") {
  field(CALC, "AA==CC")
  field(INAA, "CAM1:TRAFFIC_LIGHT")
  field(CC, "OK")
}

record(calcout, "BS:CAMS_OK_FAN") {
  field(SCAN, ".1 second")
  field(INPA, "BS:CAMS_OK PP")
  field(OUT, "BS:AUTO PP")
  field(OOPT, "When Zero")
}

record(bo, "BS:AUTO") {
  field(PINI, "YES")
  field(VAL, "0")
  field(ZNAM, "OFF")
  field(ONAM, "ON")
}

So it looks like if a record "pulls" the result from scalcout it's OK, but scalcout doesn't "push" it correctly.

I could live with the workaround, but it's a bit of a hack...

Any thoughts on why this is not working?

Cheers,
Isabella

Replies:
RE: scalcout fails to write to bo Mooney, Tim M.

Navigate by Date:
Prev: Re: A issue when trying to use modbus module Mark Rivers
Next: RE: scalcout fails to write to bo Mooney, Tim M.
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: A issue when trying to use modbus module Mark Rivers
Next: RE: scalcout fails to write to bo Mooney, Tim M.
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 16 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·