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: | Re: motorSymetrie issue |
From: | Mark Rivers via Tech-talk <tech-talk at aps.anl.gov> |
To: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov>, Pedro Gigoux <pedro.gigoux at noirlab.edu> |
Date: | Tue, 3 Dec 2024 14:39:22 +0000 |
Hi Pedro,
It is OK for DOL fields to be constants, they don't need to be links. However, if they are constants then I think they need to be numeric, since they are converted to doubles in the DOn field (DO7 in this case). The intention here is to write the choice CURRENT
POSITION to the following mbbo record. Since that has the enum value 0, I think the solution is to replace CURRENT POSITION with 0 in the DOL7 field, which will make the selection with a numeric value, rather than the string equivalent.
Mark
From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Pedro Gigoux via Tech-talk <tech-talk at aps.anl.gov>
Sent: Tuesday, December 3, 2024 7:56 AM To: tech-talk at aps.anl.gov <tech-talk at aps.anl.gov> Subject: motorSymetrie issue Hi,
I encountered an issue in the
motorSymetrie support module. The record SYM:HEX01:Drv:ValidateMove:CopyAndExecute has an invalid severity (NAMSG: field DOL7) because DOL7 is set to "CURRENT POSITION" in instead of a valid record name. This makes the field to be
set to "DOL7: CA_LINK CURRENT NPP NMS" at boot time. The problem is located in the following section of
SymetriePmac.template:
record(seq, "$(P)$(R)Drv:ValidateMove:CopyAndExecute") {
field(PINI, "NO") field(DOL1, "$(P)$(R)MOVE_PTP:Tx") field(LNK1, "$(P)$(R)VALID_PTP:Tx PP") field(DLY1, "0.0") field(DOL2, "$(P)$(R)MOVE_PTP:Ty") field(LNK2, "$(P)$(R)VALID_PTP:Ty PP") field(DLY2, "0.0") field(DOL3, "$(P)$(R)MOVE_PTP:Tz") field(LNK3, "$(P)$(R)VALID_PTP:Tz PP") field(DLY3, "0.0") field(DOL4, "$(P)$(R)MOVE_PTP:Rx") field(LNK4, "$(P)$(R)VALID_PTP:Rx PP") field(DLY4, "0.0") field(DOL5, "$(P)$(R)MOVE_PTP:Ry") field(LNK5, "$(P)$(R)VALID_PTP:Ry PP") field(DLY5, "0.0") field(DOL6, "$(P)$(R)MOVE_PTP:Rz") field(LNK6, "$(P)$(R)VALID_PTP:Rz PP") field(DLY6, "0.0") field(DOL7, "CURRENT POSITION") field(LNK7, "$(P)$(R)VALID_PTP:ValidationMode PP") field(DLY7, "0.0") field(DOL8, "$(P)$(R)MOVE_PTP:MoveType") field(LNK8, "$(P)$(R)VALID_PTP:MoveType PP") field(DLY8, "0.0") field(DOL9, "1") field(LNK9, "$(P)$(R)VALID_PTP.PROC PP") field(DLY9, "0.0") } It should be easy to fix, but I'm not sure what record/field DOL7 should be set to. Any suggestions?
Thank you,
Pedro.
|