:tocdepth: 3 ######### MTRotator ######### .. note:: This page is generated by python script ``generate_cet.py``. :ref:`Back to table ` Commands -------- .. _MTRotator:Commands:clearError: clearError ~~~~~~~~~~ **Description**: Clear the Fault state, sending the controller into Offline substate PublishOnly. You must use the engineering user interface to transition from that to Offline substate Available before the CSC can control the MTRotator. :EFDB_Topic: MTRotator_command_clearError .. _MTRotator:Commands:configureAcceleration: 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 .. _MTRotator:Commands:configureAcceleration:alimit: alimit ****** :IDL_Type: double :Units: deg/s2 **Description**: acceleration limit .. _MTRotator:Commands:configureVelocity: 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 .. _MTRotator:Commands:configureVelocity:vlimit: vlimit ****** :IDL_Type: double :Units: deg/s **Description**: Velocity limit .. _MTRotator:Commands:fault: 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 .. _MTRotator:Commands:move: 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 .. _MTRotator:Commands:move:position: position ******** :IDL_Type: double :Units: deg **Description**: Desired position. .. _MTRotator:Commands:stop: stop ~~~~ **Description**: Stop the MTRotator and go to enabled substate Stationary. :EFDB_Topic: MTRotator_command_stop .. _MTRotator:Commands:track: 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 .. _MTRotator:Commands:track:angle: angle ***** :IDL_Type: double :Units: deg **Description**: Desired position at the time specified by "tai". .. _MTRotator:Commands:track:velocity: velocity ******** :IDL_Type: double :Units: deg/second **Description**: Desired velocity at the time specified by "tai". .. _MTRotator:Commands:track:tai: tai *** :IDL_Type: double :Units: second **Description**: TAI time of the "position" and "velocity" fields. .. _MTRotator:Commands:trackStart: 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 abort ~~~~~ :EFDB_Topic: SALGeneric_command_abort disable ~~~~~~~ **Description**: Transition from state Enabled to Disabled. :EFDB_Topic: SALGeneric_command_disable enable ~~~~~~ **Description**: Transition from state Disabled to Enabled. :EFDB_Topic: SALGeneric_command_enable enterControl ~~~~~~~~~~~~ **Description**: Transition from state Offline to Standby. Only that start in Offline state CSCs support this command; other CSCs start in Standby state and quit when they go to Offline. :EFDB_Topic: SALGeneric_command_enterControl 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 setAuthList ~~~~~~~~~~~ :EFDB_Topic: SALGeneric_command_setAuthList .. _MTRotator:setAuthList:authorizedUsers: authorizedUsers *************** :IDL_Type: string :Units: unitless **Description**: Comma seperated list of authorized users currently allowed to command this CSC, in the form user@host. If the first character is +/- then the specified users are added/removed. Duplicates are silently ignored. The CSC's own user@host is silently ignored, because it is always authorized. For removal, CSCs that are not in the list are silently ignored. Whitespace is allowed after the optional initial +/- and after each comma. .. _MTRotator:setAuthList:nonAuthorizedCSCs: nonAuthorizedCSCs ***************** :IDL_Type: string :Units: unitless **Description**: Comma seperated list of CSC's not currently allowed to command this CSC, in the form name[:index]. An index of 0 is stripped (name:0 becomes name). If the first character is +/- then the specified CSCs are added/removed. Duplicates are silently ignored. For removal, CSCs that are not in the list are silently ignored. Whitespace is allowed after the optional initial +/- and after each comma. setLogLevel ~~~~~~~~~~~ **Description**: Set the logging level. :EFDB_Topic: SALGeneric_command_setLogLevel .. _MTRotator:setLogLevel:level: level ***** :IDL_Type: int :Units: unitless **Description**: Logging level, as a Python logging level: error=40, warning=30, info=20, debug=10. setValue ~~~~~~~~ :EFDB_Topic: SALGeneric_command_setValue .. _MTRotator:setValue:parametersAndValues: parametersAndValues ******************* :IDL_Type: string :IDL_Size: 256 :Units: unitless **Description**: List of parameters and their values as a Json string standby ~~~~~~~ **Description**: Transition from state Offline, Disabled or Fault to Standby. :EFDB_Topic: SALGeneric_command_standby start ~~~~~ **Description**: Transition from state Standby to Disable, in a specified configuration. :EFDB_Topic: SALGeneric_command_start .. _MTRotator:start:settingsToApply: settingsToApply *************** :IDL_Type: string :IDL_Size: 256 :Units: unitless **Description**: Name of the selected settings set 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 * COMMAND * SAFETY * EXTEND * RETRACT * ETHERCAT * DDS * DDS * DRIVE * SIMULINK * ENCODER Events ------ .. _MTRotator:Events:commandableByDDS: commandableByDDS ~~~~~~~~~~~~~~~~ **Description**: Can the CSC can control the MTRotator? :EFDB_Topic: MTRotator_logevent_commandableByDDS .. _MTRotator:Events:commandableByDDS:state: state ***** :IDL_Type: boolean :Units: unitless **Description**: If true the CSC can control the MTRotator; else the Engineering User Interface has control. .. _MTRotator:Events:configuration: configuration ~~~~~~~~~~~~~ **Description**: MTRotator configuration. :EFDB_Topic: MTRotator_logevent_configuration .. _MTRotator:Events:configuration:positionAngleUpperLimit: 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) .. _MTRotator:Events:configuration:velocityLimit: velocityLimit ************* :IDL_Type: double :Units: deg/s **Description**: Velocity limit .. _MTRotator:Events:configuration:accelerationLimit: accelerationLimit ***************** :IDL_Type: double :Units: deg/s2 **Description**: Acceleration limit .. _MTRotator:Events:configuration:positionErrorThreshold: positionErrorThreshold ********************** :IDL_Type: double :Units: deg **Description**: Position error threshold .. _MTRotator:Events:configuration:positionAngleLowerLimit: 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) .. _MTRotator:Events:configuration:followingErrorThreshold: followingErrorThreshold *********************** :IDL_Type: double :Units: deg **Description**: Deviation between commanded position and actual MTRotator position that triggers following error event/fault .. _MTRotator:Events:configuration:trackingSuccessPositionThreshold: 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 .. _MTRotator:Events:configuration:trackingLostTimeout: trackingLostTimeout ******************* :IDL_Type: double :Units: s **Description**: Duration between receiving slewing and tracking commands over DDS before tracklost event/fault is declared .. _MTRotator:Events:connected: connected ~~~~~~~~~ **Description**: State of TCP/IP connection to the low level controller. :EFDB_Topic: MTRotator_logevent_connected .. _MTRotator:Events:connected:command: command ******* :IDL_Type: boolean :Units: unitless **Description**: Is the command socket connected (true=yes, false=no)? .. _MTRotator:Events:connected:telemetry: telemetry ********* :IDL_Type: boolean :Units: unitless **Description**: Is the telemetry/config socket connected (true=yes, false=no)? .. _MTRotator:Events:controllerState: 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 .. _MTRotator:Events:controllerState: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. .. _MTRotator:Events:controllerState:offlineSubstate: offlineSubstate *************** :IDL_Type: long :Units: unitless **Description**: Substate in OFFLINE mode. An OfflineSubstate enumeration value. .. _MTRotator:Events:controllerState:enabledSubstate: enabledSubstate *************** :IDL_Type: long :Units: unitless **Description**: Substate in ENABLED mode. An EnabledSubstate enumeration value. .. _MTRotator:Events:controllerState:applicationStatus: applicationStatus ***************** :IDL_Type: long :Units: unitless **Description**: Application state. A bitmask of ApplicationStatus enumeration values. .. _MTRotator:Events:inPosition: inPosition ~~~~~~~~~~ **Description**: Event to indicate MTRotator is in position or not :EFDB_Topic: MTRotator_logevent_inPosition .. _MTRotator:Events:inPosition:inPosition: inPosition ********** :IDL_Type: boolean :Units: unitless **Description**: MTRotator in position .. _MTRotator:Events:interlock: interlock ~~~~~~~~~ **Description**: MTRotator interlock: This event is generated when safety interlock is engaged or disengaged :EFDB_Topic: MTRotator_logevent_interlock .. _MTRotator:Events:interlock:detail: detail ****** :IDL_Type: string :IDL_Size: 256 :Units: unitless **Description**: detail .. _MTRotator:Events:target: target ~~~~~~ **Description**: Commanded target position, velocity and time. :EFDB_Topic: MTRotator_logevent_target .. _MTRotator:Events:target:position: position ******** :IDL_Type: double :Units: deg **Description**: Target position at the time specified by "tai". .. _MTRotator:Events:target:velocity: velocity ******** :IDL_Type: double :Units: deg/second **Description**: Target velocity at the time specified by "tai". .. _MTRotator:Events:target:tai: tai *** :IDL_Type: double :Units: second **Description**: TAI time of the "position" and "velocity" fields. .. _MTRotator:Events:tracking: tracking ~~~~~~~~ **Description**: Specify whether the MTRotator is tracking. :EFDB_Topic: MTRotator_logevent_tracking .. _MTRotator:Events:tracking:tracking: tracking ******** :IDL_Type: boolean :Units: unitless **Description**: Is the MTRotator tracking accurately? The value of Flags_trackingSuccess from the low-level controller. .. _MTRotator:Events:tracking:lost: 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. .. _MTRotator:Events:tracking:noNewCommand: 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. appliedSettingsMatchStart ~~~~~~~~~~~~~~~~~~~~~~~~~ :EFDB_Topic: SALGeneric_logevent_appliedSettingsMatchStart .. _MTRotator:appliedSettingsMatchStart:appliedSettingsMatchStartIsTrue: appliedSettingsMatchStartIsTrue ******************************* :IDL_Type: boolean :Units: unitless **Description**: True when the configuration matches the start conditions authList ~~~~~~~~ :EFDB_Topic: SALGeneric_logevent_authList .. _MTRotator:authList:authorizedUsers: authorizedUsers *************** :IDL_Type: string :Units: unitless **Description**: Comma seperated list of authorized users currently allowed to command this CSC. .. _MTRotator:authList:nonAuthorizedCSCs: nonAuthorizedCSCs ***************** :IDL_Type: string :Units: unitless **Description**: Comma seperated list of CSC's not currently allowed to command this CSC. errorCode ~~~~~~~~~ **Description**: Output when a CSC goes into the Fault state as an explanation of the problem. :EFDB_Topic: SALGeneric_logevent_errorCode .. _MTRotator:errorCode:errorCode: errorCode ********* :IDL_Type: long :Units: unitless **Description**: A numeric error code .. _MTRotator:errorCode:errorReport: errorReport *********** :IDL_Type: string :Units: unitless **Description**: An string providing detailed information about the error .. _MTRotator:errorCode:traceback: traceback ********* :IDL_Type: string :Units: unitless **Description**: An optional stack trace of the error condition heartbeat ~~~~~~~~~ :EFDB_Topic: SALGeneric_logevent_heartbeat .. _MTRotator:heartbeat:heartbeat: heartbeat ********* :IDL_Type: boolean :Units: unitless **Description**: Beats the drum. logLevel ~~~~~~~~ **Description**: Current logging level. :EFDB_Topic: SALGeneric_logevent_logLevel .. _MTRotator:logLevel:level: level ***** :IDL_Type: int :Units: unitless **Description**: Current logging level, a Python logging level: error=40, warning=30, info=20, debug=10. logMessage ~~~~~~~~~~ **Description**: A log message. :EFDB_Topic: SALGeneric_logevent_logMessage .. _MTRotator:logMessage:name: name **** :IDL_Type: string :Units: unitless **Description**: Log name. .. _MTRotator:logMessage:level: level ***** :IDL_Type: int :Units: unitless **Description**: Message level, a Python logging level: error=40, warning=30, info=20, debug=10. .. _MTRotator:logMessage:message: message ******* :IDL_Type: string :Units: unitless **Description**: Log message. .. _MTRotator:logMessage:traceback: traceback ********* :IDL_Type: string :Units: unitless **Description**: Exception traceback; "" if not an exception. .. _MTRotator:logMessage:filePath: filePath ******** :IDL_Type: string :Units: unitless **Description**: Path to source file. .. _MTRotator:logMessage:functionName: functionName ************ :IDL_Type: string :Units: unitless **Description**: Function or method name. .. _MTRotator:logMessage:lineNumber: lineNumber ********** :IDL_Type: long :Units: unitless **Description**: Line number in the file specified by filePath. .. _MTRotator:logMessage:process: process ******* :IDL_Type: long :Units: unitless **Description**: Process ID. settingVersions ~~~~~~~~~~~~~~~ **Description**: Information about settings which can be specified in the start command. :EFDB_Topic: SALGeneric_logevent_settingVersions .. _MTRotator:settingVersions:recommendedSettingsVersion: recommendedSettingsVersion ************************** :IDL_Type: string :Units: unitless **Description**: List of comma seperated recomended versions of settings sets .. _MTRotator:settingVersions:recommendedSettingsLabels: recommendedSettingsLabels ************************* :IDL_Type: string :Units: unitless **Description**: List of comma seperated names of settings sets .. _MTRotator:settingVersions:settingsUrl: settingsUrl *********** :IDL_Type: string :Units: unitless **Description**: The URL where the settings sets definitions can be found settingsApplied ~~~~~~~~~~~~~~~ **Description**: Base settings applied. :EFDB_Topic: SALGeneric_logevent_settingsApplied .. _MTRotator:settingsApplied:settingsVersion: settingsVersion *************** :IDL_Type: string :IDL_Size: 256 :Units: unitless **Description**: The SHA or name corresponding to the published configuration .. _MTRotator:settingsApplied:otherSettingsEvents: otherSettingsEvents ******************* :IDL_Type: string :Units: unitless **Description**: A comma delimited list of other specific CSC configuration events. This may be blank if no other CSC specific events are necessary simulationMode ~~~~~~~~~~~~~~ **Description**: Current simulation mode. :EFDB_Topic: SALGeneric_logevent_simulationMode .. _MTRotator:simulationMode:mode: 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 .. _MTRotator:softwareVersions:salVersion: salVersion ********** :IDL_Type: string :IDL_Size: 256 :Units: unitless **Description**: This is the current version of SAL generation .. _MTRotator:softwareVersions:xmlVersion: xmlVersion ********** :IDL_Type: string :IDL_Size: 256 :Units: unitless **Description**: This is the current version of CSC XML .. _MTRotator:softwareVersions:openSpliceVersion: openSpliceVersion ***************** :IDL_Type: string :IDL_Size: 256 :Units: unitless **Description**: This is the current version of OpenSplice .. _MTRotator:softwareVersions:cscVersion: cscVersion ********** :IDL_Type: string :IDL_Size: 256 :Units: unitless **Description**: This is the top-level version of the CSC .. _MTRotator:softwareVersions:subsystemVersions: 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 .. _MTRotator:summaryState:summaryState: summaryState ************ :IDL_Type: long :Units: unitless **Description**: High level state machine state identifier Telemetry --------- .. _MTRotator:Telemetry:ccwFollowingError: ccwFollowingError ~~~~~~~~~~~~~~~~~ **Description**: Camera cable wrap following error. :EFDB_Topic: MTRotator_ccwFollowingError .. _MTRotator:Telemetry:ccwFollowingError:positionError: positionError ************* :IDL_Type: double :Units: deg **Description**: Rotator actual position - camera cable wrap actual position. .. _MTRotator:Telemetry:ccwFollowingError:velocityError: velocityError ************* :IDL_Type: double :Units: deg/second **Description**: Rotator actual velocity - camera cable wrap actual velocity. .. _MTRotator:Telemetry:ccwFollowingError:timestamp: 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. .. _MTRotator:Telemetry:electrical: electrical ~~~~~~~~~~ :EFDB_Topic: MTRotator_electrical .. _MTRotator:Telemetry:electrical:copleyStatusWordDrive: copleyStatusWordDrive ********************* :IDL_Type: unsigned short :Units: unitless :Count: 2 **Description**: Copley drive status word. .. _MTRotator:Telemetry:electrical:copleyLatchingFaultStatus: copleyLatchingFaultStatus ************************* :IDL_Type: unsigned short :Units: unitless :Count: 2 **Description**: Copley latching fault status register. .. _MTRotator:Telemetry:motors: motors ~~~~~~ **Description**: Encoder readings from each rotator motor :EFDB_Topic: MTRotator_motors .. _MTRotator:Telemetry:motors:calibrated: calibrated ********** :IDL_Type: double :Units: deg :Count: 2 **Description**: Encoder readings scaled to degrees of motion of the rotator. .. _MTRotator:Telemetry:motors:raw: raw *** :IDL_Type: double :Units: unitless :Count: 2 **Description**: Encoder readings in raw counts. .. _MTRotator:Telemetry:rotation: rotation ~~~~~~~~ **Description**: Demand and actual rotator position and velocity. :EFDB_Topic: MTRotator_rotation .. _MTRotator:Telemetry:rotation:demandPosition: demandPosition ************** :IDL_Type: double :Units: deg **Description**: Rotator position computed by the path generator. .. _MTRotator:Telemetry:rotation:demandVelocity: demandVelocity ************** :IDL_Type: double :Units: deg/second **Description**: Rotator velocity computed by the path generator. .. _MTRotator:Telemetry:rotation:demandAcceleration: demandAcceleration ****************** :IDL_Type: double :Units: deg/second **Description**: Rotator acceleration computed by the path generator. .. _MTRotator:Telemetry:rotation:actualPosition: actualPosition ************** :IDL_Type: double :Units: deg **Description**: Rotator position computed from the encoders. .. _MTRotator:Telemetry:rotation:actualVelocity: actualVelocity ************** :IDL_Type: double :Units: deg/second **Description**: Rotator velocity computed from the two linear encoders. Warning: not yet trustworthy. .. _MTRotator:Telemetry:rotation:debugActualVelocityA: 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. .. _MTRotator:Telemetry:rotation:debugActualVelocityB: 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. .. _MTRotator:Telemetry:rotation:timestamp: 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.