MTRotator¶
Note
This page is generated by python script generate_cet.py
.
Commands¶
configureAcceleration¶
Description: Limit the minimum and maximum acceleration level of the MTRotator to be set within the global limit of +/- 1 deg/s2.
- EFDB_Topic
MTRotator_command_configureAcceleration
alimit¶
- IDL_Type
double
- Units
deg/s2
Description: acceleration limit
configureVelocity¶
Description: The configure Velocity command limits the minimum and maximum velocity level of the MTRotator to be set within the global limit of +/- 3.5 deg/s.
- EFDB_Topic
MTRotator_command_configureVelocity
vlimit¶
- IDL_Type
double
- Units
deg/s
Description: Velocity limit
fault¶
Description: Stop the rotator and send the system to the FAULT state. This is primarily for testing the low-level controller’s fault command.
- EFDB_Topic
MTRotator_command_fault
move¶
Description: Move the MTRotator to the specified position and stop. During the move the enabled substate will be MovingPointToPoint, then it will return to Stationary.
- EFDB_Topic
MTRotator_command_move
position¶
- IDL_Type
double
- Units
deg
Description: Desired position.
stop¶
Description: Stop the MTRotator and go to enabled substate Stationary.
- EFDB_Topic
MTRotator_command_stop
track¶
Description: Specify desired MTRotator position and velocity “slewing or tracking” mode, which is started with the trackStart command and concluded with the stop command.
- EFDB_Topic
MTRotator_command_track
angle¶
- IDL_Type
double
- Units
deg
Description: Desired position at the time specified by “tai”.
velocity¶
- IDL_Type
double
- Units
deg/second
Description: Desired velocity at the time specified by “tai”.
tai¶
- IDL_Type
double
- Units
second
Description: TAI time of the “position” and “velocity” fields.
trackStart¶
Description: Enter slewing/tracking mode (enabled substate SlewingOrTracking): follow a path specified by repeated track commands. Issue the stop command when you are done tracking.
- EFDB_Topic
MTRotator_command_trackStart
disable¶
Description: Transition from state Enabled to Disabled.
- EFDB_Topic
SALGeneric_command_disable
- Category
csc
enable¶
Description: Transition from state Disabled to Enabled.
- EFDB_Topic
SALGeneric_command_enable
- Category
csc
exitControl¶
Description: Transition from state Standby to Offline. For CSCs that start in Standby state this makes the CSC quit. CSCs that start in Offline state, they remain active.
- EFDB_Topic
SALGeneric_command_exitControl
- Category
csc
setAuthList¶
- EFDB_Topic
SALGeneric_command_setAuthList
- Category
csc
setLogLevel¶
Description: Set the logging level.
- EFDB_Topic
SALGeneric_command_setLogLevel
- Category
csc
level¶
- IDL_Type
int
- Units
unitless
Description: Logging level, as a Python logging level: error=40, warning=30, info=20, debug=10.
subsystem¶
- IDL_Type
string
- Units
unitless
Description: If the CSC itself has sub-ordinate components, they may be listed here. An empty string means the setting applies to all such sub-ordinate components, or just to the CSC itself.
standby¶
Description: Transition from state Offline, Disabled or Fault to Standby.
- EFDB_Topic
SALGeneric_command_standby
- Category
csc
start¶
Description: Transition from state Standby to Disable, in a specified configuration.
- EFDB_Topic
SALGeneric_command_start
- Category
csc
configurationOverride¶
- IDL_Type
string
- Units
unitless
- Description:
Configuration override in the form [{name}][:{version}]. For salobj-based CSCs: name is a filename with “.yaml” suffix and version is a git hash; for example:
“foo.yaml” specifies just a file. Two or three config files are loaded: “_init.yaml”, “_{site}.yaml” (if present), and “foo.yaml”.
“:37bf936” specifies just a git hash. One or two config files are loaded from the specified git commit: “_init.yaml” and “_{site}.yaml” (if present.
“bar.yaml:HEAD~2” specifies both a file and a git hash. Two or three config files are read from the specified git commit: “_init.yaml”, “_{site}.yaml” (if present), and “bar.yaml”.
Enumerations¶
- ControllerState
Standby=0
Disabled=1
Enabled=2
Offline=3
Fault=4
- OfflineSubstate
PublishOnly=0
Available=1
- EnabledSubstate
Stationary=0
MovingPointToPoint=1
SlewingOrTracking=2
ControlledStopping=3
Initializing=4
Relative=5
ConstantVelocity=6
- ApplicationStatus
EUI_CONNECTED = 0x4
COMMAND_REJECTED = 0x20
SAFETY_INTERLOCK = 0x40
EXTEND_LIMIT_SWITCH = 0x80
RETRACT_LIMIT_SWITCH = 0x100
ETHERCAT_PROBLEM = 0x200
DDS_COMMAND_SOURCE = 0x400
DDS_CONNECTED = 0x1000
DRIVE_FAULT = 0x2000
SIMULINK_FAULT = 0x4000
ENCODER_FAULT = 0x8000
Events¶
commandableByDDS¶
Description: Can the CSC can control the MTRotator?
- EFDB_Topic
MTRotator_logevent_commandableByDDS
state¶
- IDL_Type
boolean
- Units
unitless
Description: If true the CSC can control the MTRotator; else the Engineering User Interface has control.
configuration¶
Description: MTRotator configuration.
- EFDB_Topic
MTRotator_logevent_configuration
positionAngleUpperLimit¶
- IDL_Type
double
- Units
deg
Description: Position difference between the commanded position and the actual position that triggers system to switch between slew mode and track mode. Positive range limit (must be less than +90)
velocityLimit¶
- IDL_Type
double
- Units
deg/s
Description: Velocity limit
accelerationLimit¶
- IDL_Type
double
- Units
deg/s2
Description: Acceleration limit
positionErrorThreshold¶
- IDL_Type
double
- Units
deg
Description: Position error threshold
positionAngleLowerLimit¶
- IDL_Type
double
- Units
deg
Description: Position difference between the commanded position and the actual position that triggers system to switch between slew mode and track mode. Negative range limit (must be greater than -90)
followingErrorThreshold¶
- IDL_Type
double
- Units
deg
Description: Deviation between commanded position and actual MTRotator position that triggers following error event/fault
trackingSuccessPositionThreshold¶
- IDL_Type
double
- Units
deg
Description: RMS deviation over 150ms interval between position command and actual MTRotator position for triggering tracking and tracklost events
trackingLostTimeout¶
- IDL_Type
double
- Units
s
Description: Duration between receiving slewing and tracking commands over DDS before tracklost event/fault is declared
connected¶
Description: State of TCP/IP connection to the low level controller.
- EFDB_Topic
MTRotator_logevent_connected
connected¶
- IDL_Type
boolean
- Units
unitless
Description: Is the socket connected (true=yes, false=no)?
controllerState¶
Description: State reported by the low level controller. All values except applicationStatus are 1 greater than those reported by the controller for temporary and historical reasons.
- EFDB_Topic
MTRotator_logevent_controllerState
controllerState¶
- IDL_Type
long
- Units
unitless
Description: Basic state. A ControllerState enumeration value. The state names and meanings are the same as standard CSC summaryState, but the numeric values are ordered differently. We report the controller state in addition to summaryState because we need to report a summaryState even when the controller is not connected, and to aid diagnostics, e.g. in case the controller reports an unrecognized state.
offlineSubstate¶
- IDL_Type
long
- Units
unitless
Description: Substate in OFFLINE mode. An OfflineSubstate enumeration value.
enabledSubstate¶
- IDL_Type
long
- Units
unitless
Description: Substate in ENABLED mode. An EnabledSubstate enumeration value.
applicationStatus¶
- IDL_Type
long
- Units
unitless
Description: Application state. A bitmask of ApplicationStatus enumeration values.
inPosition¶
Description: Event to indicate MTRotator is in position or not
- EFDB_Topic
MTRotator_logevent_inPosition
inPosition¶
- IDL_Type
boolean
- Units
unitless
Description: MTRotator in position
interlock¶
Description: Safety interlock engaged (preventing motion) or disengaged.
- EFDB_Topic
MTRotator_logevent_interlock
engaged¶
- IDL_Type
boolean
- Units
unitless
Description: Is the interlock engaged (true) or not (false)?
target¶
Description: Commanded target position, velocity and time.
- EFDB_Topic
MTRotator_logevent_target
position¶
- IDL_Type
double
- Units
deg
Description: Target position at the time specified by “tai”.
velocity¶
- IDL_Type
double
- Units
deg/second
Description: Target velocity at the time specified by “tai”.
tai¶
- IDL_Type
double
- Units
second
Description: TAI time of the “position” and “velocity” fields.
tracking¶
Description: Specify whether the MTRotator is tracking.
- EFDB_Topic
MTRotator_logevent_tracking
tracking¶
- IDL_Type
boolean
- Units
unitless
Description: Is the MTRotator tracking accurately? The value of Flags_trackingSuccess from the low-level controller.
lost¶
- IDL_Type
boolean
- Units
unitless
Description: Is the MTRotator doing badly at tracking? This uses a different algorithm than “tracking”. The value of Flags_trackingLost from the low-level controller.
noNewCommand¶
- IDL_Type
boolean
- Units
unitless
Description: No new tracking command was received in time; tracking fails. The value of Flags_noNewTrackCmdError from the low-level controller.
authList¶
- EFDB_Topic
SALGeneric_logevent_authList
- Category
csc
configurationApplied¶
Description: Information about CSC’s configuration.
- EFDB_Topic
SALGeneric_logevent_configurationApplied
- Category
configurable
configurations¶
- IDL_Type
string
- Units
unitless
Description: A comma-separated list of configurations applied. If configuration comes from a clone of a git repo, or similar directory, then it will be a list of file names, without the file extension. Ignore whitespace after commas.
version¶
- IDL_Type
string
- Units
unitless
Description: Version of the configuration source. For a clone of a git repo it will be a git hash.
url¶
- IDL_Type
string
- Units
unitless
Description: URL of the configuration source. For a clone of a git repo this will be a file URL. For a database it will be a standard database URL. This should always match the same-named field in configurationsAvailable.
schemaVersion¶
- IDL_Type
string
- Units
unitless
Description: Version of config schema used by the CSC. For a configuration git repo, this is the name of a folder in the config package, and is typically something like “v1”. This should always match the same-named field in configurationsAvailable.
otherInfo¶
- IDL_Type
string
- Units
unitless
Description: A comma-separated list of event topics (without the logevent prefix) used to publish the entire set of configuration parameters loaded by the CSC, and any other pertinent information. Ignore whitespace after commas.
configurationsAvailable¶
Description: Information about the source of configuration information for the CSC.
- EFDB_Topic
SALGeneric_logevent_configurationsAvailable
- Category
configurable
overrides¶
- IDL_Type
string
- Units
unitless
Description: Available overrides as a comma-separated list. Each entry is a possible value of the configurationOverride
field of the start
command. Ignore whitespace after commas.
version¶
- IDL_Type
string
- Units
unitless
Description: Version of the configuration source. For a clone of a git repo it will be a git hash.
url¶
- IDL_Type
string
- Units
unitless
Description: URL of the configuration source. For a clone of a git repo this will be a file URL. For a database it will be a standard database URL.
schemaVersion¶
- IDL_Type
string
- Units
unitless
Description: Version of config schema used by the CSC. For a configuration git repo, this is the name of a folder in the config package, and is typically something like “v1”.
errorCode¶
Description: Output when a CSC goes into the Fault state as an explanation of the problem.
- EFDB_Topic
SALGeneric_logevent_errorCode
- Category
csc
errorCode¶
- IDL_Type
long
- Units
unitless
Description: A numeric error code
errorReport¶
- IDL_Type
string
- Units
unitless
Description: An string providing detailed information about the error
traceback¶
- IDL_Type
string
- Units
unitless
Description: An optional stack trace of the error condition
heartbeat¶
- EFDB_Topic
SALGeneric_logevent_heartbeat
- Category
mandatory
heartbeat¶
- IDL_Type
boolean
- Units
unitless
Description: Beats the drum.
logLevel¶
Description: Current logging level.
- EFDB_Topic
SALGeneric_logevent_logLevel
- Category
mandatory
level¶
- IDL_Type
int
- Units
unitless
Description: Current logging level, a Python logging level: error=40, warning=30, info=20, debug=10.
subsystem¶
- IDL_Type
string
- Units
unitless
Description: If the CSC itself has sub-ordinate components, they may be listed here. An empty string means the setting applies to all such sub-ordinate components, or just to the CSC itself.
logMessage¶
Description: A log message.
- EFDB_Topic
SALGeneric_logevent_logMessage
- Category
mandatory
name¶
- IDL_Type
string
- Units
unitless
Description: Log name.
level¶
- IDL_Type
int
- Units
unitless
Description: Message level, a Python logging level: error=40, warning=30, info=20, debug=10.
message¶
- IDL_Type
string
- Units
unitless
Description: Log message.
traceback¶
- IDL_Type
string
- Units
unitless
Description: Exception traceback; “” if not an exception.
filePath¶
- IDL_Type
string
- Units
unitless
Description: Path to source file.
functionName¶
- IDL_Type
string
- Units
unitless
Description: Function or method name.
lineNumber¶
- IDL_Type
long
- Units
unitless
Description: Line number in the file specified by filePath.
process¶
- IDL_Type
long
- Units
unitless
Description: Process ID.
timestamp¶
- IDL_Type
double
- Units
second
Description: The time at which the condition being reported was observed (TAI unix seconds). 0 if unspecified.
simulationMode¶
Description: Current simulation mode.
- EFDB_Topic
SALGeneric_logevent_simulationMode
- Category
csc
mode¶
- IDL_Type
int
- Units
unitless
Description: Current simulation mode; 0 for normal operation (no simulation); other supported values are specific to each CSC.
softwareVersions¶
Description: Current versions of software in use by CSC.
- EFDB_Topic
SALGeneric_logevent_softwareVersions
- Category
mandatory
salVersion¶
- IDL_Type
string
- IDL_Size
256
- Units
unitless
Description: This is the current version of SAL generation
xmlVersion¶
- IDL_Type
string
- IDL_Size
256
- Units
unitless
Description: This is the current version of CSC XML
openSpliceVersion¶
- IDL_Type
string
- IDL_Size
256
- Units
unitless
Description: This is the current version of OpenSplice
cscVersion¶
- IDL_Type
string
- IDL_Size
256
- Units
unitless
Description: This is the top-level version of the CSC
subsystemVersions¶
- IDL_Type
string
- Units
unitless
Description: A comma delimited list of key=value pairs relating subsystem name (key) to its version number (value). This may be left blank if there are no subsystems within a CSC
summaryState¶
Description: Current summary state of the CSC
- EFDB_Topic
SALGeneric_logevent_summaryState
- Category
csc
summaryState¶
- IDL_Type
long
- Units
unitless
Description: High level state machine state identifier
Telemetry¶
ccwFollowingError¶
Description: Camera cable wrap following error.
- EFDB_Topic
MTRotator_ccwFollowingError
positionError¶
- IDL_Type
double
- Units
deg
Description: Rotator actual position - camera cable wrap actual position.
velocityError¶
- IDL_Type
double
- Units
deg/second
Description: Rotator actual velocity - camera cable wrap actual velocity.
timestamp¶
- IDL_Type
double
- Units
second
- Description: The time at which the rotation telemetry was measured (TAI, unix seconds).
The CCW position is extrapolated to this time.
electrical¶
- EFDB_Topic
MTRotator_electrical
copleyStatusWordDrive¶
- IDL_Type
unsigned short
- Units
unitless
- Count
2
Description: Copley drive status word.
copleyLatchingFaultStatus¶
- IDL_Type
unsigned short
- Units
unitless
- Count
2
Description: Copley latching fault status register.
motors¶
Description: Data about the two rotator motors, in order A, B
- EFDB_Topic
MTRotator_motors
calibrated¶
- IDL_Type
double
- Units
deg
- Count
2
Description: Motor encoder readings, scaled to degrees of motion of the rotator.
raw¶
- IDL_Type
double
- Units
unitless
- Count
2
Description: Motor encoder readings in raw counts.
torque¶
- IDL_Type
double
- Units
N m
- Count
2
Description: Motor torque.
current¶
- IDL_Type
double
- Units
A
- Count
2
Description: Motor current.
busVoltage¶
- IDL_Type
double
- Units
V
Description: Bus voltage for the pair of motors.
rotation¶
Description: Demand and actual rotator position and velocity.
- EFDB_Topic
MTRotator_rotation
demandPosition¶
- IDL_Type
double
- Units
deg
Description: Rotator position computed by the path generator.
demandVelocity¶
- IDL_Type
double
- Units
deg/second
Description: Rotator velocity computed by the path generator.
demandAcceleration¶
- IDL_Type
double
- Units
deg/second
Description: Rotator acceleration computed by the path generator.
actualPosition¶
- IDL_Type
double
- Units
deg
Description: Rotator position computed from the encoders.
actualVelocity¶
- IDL_Type
double
- Units
deg/second
Description: Rotator velocity computed from the two linear encoders. Warning: not yet trustworthy.
debugActualVelocityA¶
- IDL_Type
double
- Units
deg/second
Description: Rotator velocity computed from linear encoder A. Warning: this field is purely for debugging the low-level controller. Do not rely on it.
debugActualVelocityB¶
- IDL_Type
double
- Units
deg/second
Description: Rotator velocity computed from linear encoder B. Warning: this field is purely for debugging the low-level controller. Do not rely on it.
odometer¶
- IDL_Type
double
- Units
deg
Description: Cumulative distance the rotator has traveled.
timestamp¶
- IDL_Type
double
- Units
second
Description: Time at which telemetry was obtained. Will not be fully accurate until DM-26382 is implemented and the CSC updated to use it.