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.
|