forked from epics_driver_modules/motorBase
70 lines
1.9 KiB
Plaintext
70 lines
1.9 KiB
Plaintext
# Database for profile moves with asynMotor
|
|
# This is the database for the each axis, profileMoveController is the file
|
|
# for the controller.
|
|
#
|
|
# Mark Rivers
|
|
# April 3, 2011
|
|
#
|
|
#
|
|
# Macro paramters:
|
|
# $(P) - PV name prefix
|
|
# $(R) - PV base record name
|
|
# $(M) - PV motor name
|
|
# $(NPOINTS) - Maximum profile points
|
|
# $(NREADBACK) - Maximum number of readback positions
|
|
# $(PORT) - asyn port for this controller
|
|
# $(ADDR) - asyn addr for this axis
|
|
# $(TIMEOUT) - asyn timeout for this axis
|
|
# $(PREC) - Precision for this axis
|
|
|
|
#
|
|
# Is this axis involved in the profile move?
|
|
#
|
|
record(bo,"$(P)$(R)M$(M)UseAxis") {
|
|
field(DESC, "Use axis $(ADDR)?")
|
|
field(PINI, "YES")
|
|
field(DTYP, "asynInt32")
|
|
field(OUT, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_USE_AXIS")
|
|
field(VAL, "0")
|
|
field(ZNAM, "No")
|
|
field(ONAM, "Yes")
|
|
}
|
|
#
|
|
# Target position array for this axis
|
|
#
|
|
record(waveform,"$(P)$(R)M$(M)Positions") {
|
|
field(DESC, "Axis $(ADDR) positions")
|
|
field(DTYP, "asynFloat64ArrayOut")
|
|
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_POSITIONS")
|
|
field(NELM, "$(NPOINTS)")
|
|
field(FTVL, "DOUBLE")
|
|
field(PREC, "$(PREC)")
|
|
}
|
|
|
|
#
|
|
# Readback position array for this axis
|
|
#
|
|
record(waveform,"$(P)$(R)M$(M)Readbacks") {
|
|
field(DESC, "Axis $(ADDR) readbacks")
|
|
field(DTYP, "asynFloat64ArrayIn")
|
|
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_READBACKS")
|
|
field(NELM, "$(NREADBACK)")
|
|
field(FTVL, "DOUBLE")
|
|
field(PREC, "$(PREC)")
|
|
field(SCAN, "I/O Intr")
|
|
}
|
|
|
|
#
|
|
# Following error array for this axis
|
|
#
|
|
record(waveform,"$(P)$(R)M$(M)FollowingErrors") {
|
|
field(DESC, "Axis $(ADDR) following errors")
|
|
field(DTYP, "asynFloat64ArrayIn")
|
|
field(INP, "@asyn($(PORT),$(ADDR),$(TIMEOUT))PROFILE_FOLLOWING_ERRORS")
|
|
field(NELM, "$(NREADBACK)")
|
|
field(FTVL, "DOUBLE")
|
|
field(PREC, "$(PREC)")
|
|
field(SCAN, "I/O Intr")
|
|
}
|
|
|