24 lines
1.2 KiB
Plaintext
24 lines
1.2 KiB
Plaintext
# The fields "RBV" of the "seleneOffsetAxis" motor record are relative positions
|
|
# (see README.md). THis PV provides in addition the "raw" encoder value read
|
|
# directly from the motor controller. Due to the way the motor record and asyn
|
|
# motor code is architectured, this PV is also provided for the virtual
|
|
# "seleneLiftAxis" and "seleneAngleAxis". However, it has no meaning for these
|
|
# two axes, hence the record value is undefined.
|
|
record(ai, "$(INSTR)$(M):AbsolutePositionRBV")
|
|
{
|
|
field(DTYP, "asynFloat64")
|
|
field(INP, "@asyn($(CONTROLLER),$(AXIS)) MOTOR_ABSOLUTE_POSITION_RBV")
|
|
field(SCAN, "I/O Intr")
|
|
}
|
|
|
|
# Setting this PV to "1" causes a "normalization" of the virtual and offset axes:
|
|
# Lift and angle are recalculated based on the position of the central offset
|
|
# axes 3 and 4 (whose value is then correspondingly set to 0) and the other offset
|
|
# axes positions are recalculated accordingly. The normalization can be triggered
|
|
# from any of the offset or the lift or the angle axis.
|
|
record(longout, "$(INSTR)$(M):Normalize") {
|
|
field(DTYP, "asynInt32")
|
|
field(OUT, "@asyn($(CONTROLLER),$(AXIS),1) NORMALIZE")
|
|
field(VAL, "1")
|
|
field(PINI, "NO")
|
|
} |