Hi Andrew,
I used a dfanout record as you said and it works fine!!
Thanks for the help, Adrián.
El jue, 15 jul 2021 a las 18:55, Johnson, Andrew N. (< anj at anl.gov>) escribió:
Hi Adrián,
On Jul 15, 2021, at 12:45 AM, Adrian Martinez < adrian.martinez at sevensols.com> wrote:
I knew the DISP field but I need to disable UCrTcrLimitUsSet
and UCrTcrLimitUsRd when StartUpOn =! 1, not all the time.
Is it possible with DISP?
Yes, you have an EPICS database at your disposal which was designed to do that kind of thing. You would need to add two records, one to invert the value from StartUpOn (since it’s 0 when you want to disable those records) and the second
to copy the result into the DISP fields of the records to be disabled. I would probably use a dfanout for the latter, but a seq record would also work. Something like this should
do it:
record(calc, "$(user):UCrTcrDISP")
{
field(CALC, "!A")
field(INPA, "$(user):StartUpOn CP")
field(FLNK, "$(user):UCrTcrDisable")
record(dfanout, "$(user):UCrTcrDisable")
{
field(DOL, "$(user):UCrTcrDISP")
field(OMSL, "closed_loop")
field(SELM, "All")
field(OUTA, "$(user):UCrTcrLimitUsSet.DISP MS")
field(OUTB, "$(user):UCrTcrLimitUsRd.DISP MS")
}
The CP flag on the calc INPA link will cause it to process whenever the value of StartUpOn changes. Its forward-link field will then trigger the dfanout to copy the inverted value to the DISP fields of the other records, thus preventing
them from being modified by any CA clients while StartUpOn is zero (although DISP will not prevent those records from processing if they get triggered by some other means). You can disable up to 6 more records with this if you want, using the
dfanout links OUTC through OUTH.
- Andrew
El mié, 14 jul 2021 a las 16:04, Johnson, Andrew N. (< anj at anl.gov>) escribió:
Hi Adrian,
Take a look at the DISP field (described here), when non-zero it disables puts to any field of the record except for the DISP field itself.
- Andrew
Hello,
I need to block the setting function for some PVs. I was using SDIS and DISV fields:
record(ao, "$(user):UCrTcrLimitUsSet")
{
field(DTYP, "asynInt32")
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))ucr_tcr_us")
field(VAL, "0")
field(EGU, "us")
field(HOPR, "10000")
field(LOPR, "0")
field(DRVH, "10000")
field(DRVL, "0")
field(SDIS, "$(user):StartUpOn.VAL CP MS")
field(DISV, "0")
info(autosaveFields, "VAL")
}
record(calc, "$(user):UCrTcrLimitUsRd")
{
field(CALC, "((A / 10^-6) / 300000000)")
field(INPA, "$(user):UCrTcrLimRd.VAL CP MS")
field(EGU, "us")
field(SDIS, "$(user):StartUpOn.VAL CP MS")
field(DISV, "0")
}
This only works for the graphical user interface CSS (I am not able to modify the Pv value in the gui) but, if I use CAPUT, I can modify the PV value.
Is there any way to completely block setting function?
Thanks in advance, Adrián.
--
This e-mail and any materials attached hereto, including, without limitation, all content hereof and thereof are confidential
and proprietary to Seven Solutions,S.L and/or its affiliates, and are *confidential*. Without the prior written consent of Seven Solutions, this content may not (i) be disclosed to any third party, (ii) be reproduced, modified or otherwise used by anyone other
than current employees of Seven Solutions or its affiliates. If you are not the intended recipient or if this message has been received in error, please notify us immediately via e-mail and delete it.
--
Complexity comes for free, simplicity you have to work for.
--
This e-mail and any materials attached hereto, including, without limitation, all content hereof and thereof are confidential
and proprietary to Seven Solutions,S.L and/or its affiliates, and are *confidential*. Without the prior written consent of Seven Solutions, this content may not (i) be disclosed to any third party, (ii) be reproduced, modified or otherwise used by anyone other
than current employees of Seven Solutions or its affiliates. If you are not the intended recipient or if this message has been received in error, please notify us immediately via e-mail and delete it.
--
Complexity comes for free, simplicity you have to work for.
--
This e-mail and any materials attached hereto, including, without limitation, all content hereof and thereof are confidential and proprietary to Seven Solutions,S.L and/or its affiliates, and are *confidential*. Without the prior written consent of Seven Solutions, this content may not (i) be disclosed to any third party, (ii) be reproduced, modified or otherwise used by anyone other than current employees of Seven Solutions or its affiliates. If you are not the intended recipient or if this message has been received in error, please notify us immediately via e-mail and delete it.
- References:
- Block CAPUT to not be able to modify PV value Adrian Martinez via Tech-talk
- Re: Block CAPUT to not be able to modify PV value Johnson, Andrew N. via Tech-talk
- Re: Block CAPUT to not be able to modify PV value Adrian Martinez via Tech-talk
- Re: Block CAPUT to not be able to modify PV value Johnson, Andrew N. via Tech-talk
- Navigate by Date:
- Prev:
Re: linking in IOC makefile for RTEMS Michael Davidsaver via Tech-talk
- Next:
Re: linking in IOC makefile for RTEMS Siddons, David via Tech-talk
- 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
- Navigate by Thread:
- Prev:
Re: Block CAPUT to not be able to modify PV value Johnson, Andrew N. via Tech-talk
- Next:
Re: Block CAPUT to not be able to modify PV value Mark Rivers via Tech-talk
- 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
|