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: Key Event with CSS/BOY or how to avoid triggering loop
From: Benoit <[email protected]>
To: EPICS mailing list <[email protected]>
Date: Wed, 19 Mar 2014 13:38:42 +0100
Hi everybody,

I have created a small script that perform quick conversion between V, kW and dBm in our system and I would like to apply it using internal PV however I have some infinite triggering loop problem.

Quick question: Is it possible to trigger a keyboard event?

Long explanation:

My idea is to have 3 input fields and when a user write a value in one of them, it change the value in the others and send the value to the corresponding PV.
The thing if that my script is correctly working If only one field get the trigger from the other otherwise it doesn't work. Below I quickly explain how my script proceed:

  • ValAmpVolt widget is connected to the real PV, the other two widgets are connected to local PV (loc://xxx)
  • The ValAmpVolt field have trigger from ValPowkW and ValPowdBm
  • The ValPowkW field have trigger from ValAmpVolt and ValPowdBm
  • The ValPowdBm field have trigger from ValAmpVolt and ValPowkW 
So when I:
  1. Write a new value in my ValAmpVolt field
  2. ValPowkW get triggered and update its value using widget.setPropertyValue("text","%.3f" % (kW))
  3. ValPowdBm get triggered and update its value using widget.setPropertyValue("text","%.3f" % (dBm))
  4. This should stop here but however we have an inifinite loop because
  5. When ValPowkW widget updates it value, it send a trigger to ValAmpVolt and ValPowDbm
  6. Thus we gow back to loop 1
  7. The same apply for ValPowdBm
I did try to check the "Skip executions triggered by PVs' first" but it doesn't apply to this case.

So If someone have an idea how I should proceed, the best way in my opinion should be to trigger only on a key action (when someone press enter) not when the value change but I have no idea if it's possible to do it.

Thanks in advance for your help

Regards,

--
 

Benoit RAT LAMY

fix. (+34) 958 285 024

cel. (+34) 617 989 123

e-mail: [email protected]

www.sevensols.com 


Navigate by Date:
Prev: Re: Multiple Queries(on Sequencer and IOC) Ralph Lange
Next: LIGO project software engineer position Jameson Graef Rollins
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: RE: how to ... in CSS BOY? Kasemir, Kay
Next: LIGO project software engineer position Jameson Graef Rollins
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 ·