1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 <2014> 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 <2014> 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Subroutine invoked only when PV limit exceeded? |
From: | "Poff, Mark A" <[email protected]> |
To: | "[email protected]" <[email protected]> |
Cc: | "Poff, Mark A" <[email protected]> |
Date: | Mon, 28 Jul 2014 15:18:18 +0000 |
Hello all, In my EPICS database, for certain PVs I use forward links and sub records such that, whenever the PV value changes, a subroutine is called. It’s a pretty basic implementation: record(longin, “MY_PV”) { field(SCAN, “Passive”) field(HIHI, “30”) field(HHSV, “MAJOR”) field(FLNK, “MY_PV_sub”) } record(“MY_PV_sub”) { field(INPA, “MY_PV”) field(SNAM, “MY_PV_subroutine”) } What I’d like to do additionally (or instead) is to call a subroutine only when MY_PV goes to the HIHI alarm state (in the example above, when the value of MY_PV goes from less than 30 to 30 or greater). I assumed it could
be done by somehow looking at MY_PV.SEVR, but I can’t figure out how to do it. Is it possible to define the database records so that a subroutine is executed only when the associated PV goes into an alarm state? Thanks! -Mark |