:tocdepth: 3 ####### Rotator ####### .. note:: This page is generated by the following python script ``generate_cet.py``. :ref:`Back to table ` Commands -------- .. _Rotator: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 rotator. :EFDB_Topic: Rotator_command_clearError .. _Rotator:Commands:clearError:state: state ***** :IDL_Type: boolean :Units: unitless **Description**: state .. _Rotator:Commands:configureAcceleration: configureAcceleration ~~~~~~~~~~~~~~~~~~~~~ **Description**: Limit the minimum and maximum acceleration level of the rotator to be set within the global limit of +/- 1 deg/s2. :EFDB_Topic: Rotator_command_configureAcceleration .. _Rotator:Commands:configureAcceleration:alimit: alimit ****** :IDL_Type: double :Units: deg/s2 **Description**: acceleration limit .. _Rotator:Commands:configureVelocity: configureVelocity ~~~~~~~~~~~~~~~~~ **Description**: The configure Velocity command limits the minimum and maximum velocity level of the rotator to be set within the global limit of +/- 3.5 deg/s. :EFDB_Topic: Rotator_command_configureVelocity .. _Rotator:Commands:configureVelocity:vlimit: vlimit ****** :IDL_Type: double :Units: deg/s **Description**: Velocity limit .. _Rotator:Commands:move: move ~~~~ **Description**: Move the rotator to the specified position and stop. During the move the enabled substate will be MovingPointToPoint, then it will return to Stationary. :EFDB_Topic: Rotator_command_move .. _Rotator:Commands:move:position: position ******** :IDL_Type: double :Units: deg **Description**: Desired position. .. _Rotator:Commands:stop: stop ~~~~ **Description**: Stop the rotator and go to enabled substate Stationary. :EFDB_Topic: Rotator_command_stop .. _Rotator:Commands:stop:state: state ***** :IDL_Type: int :Units: unitless **Description**: Not used. .. _Rotator:Commands:track: track ~~~~~ **Description**: Specify desired rotator position and velocity "slewing or tracking" mode, which is started with the trackStart command and concluded with the stop command. :EFDB_Topic: Rotator_command_track .. _Rotator:Commands:track:angle: angle ***** :IDL_Type: double :Units: deg **Description**: Desired position at the time specified by "tai". .. _Rotator:Commands:track:velocity: velocity ******** :IDL_Type: double :Units: deg/second **Description**: Desired velocity at the time specified by "tai". .. _Rotator:Commands:track:tai: tai *** :IDL_Type: double :Units: second **Description**: TAI time of the "position" and "velocity" fields. .. _Rotator: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: Rotator_command_trackStart .. _Rotator:Commands:trackStart:state: state ***** :IDL_Type: boolean :Units: unitless **Description**: state abort ~~~~~ :EFDB_Topic: SALGeneric_command_abort .. _Rotator:abort:value: value ***** :IDL_Type: boolean :Units: unitless **Description**: Not used disable ~~~~~~~ **Description**: Transition from state Enabled to Disabled. :EFDB_Topic: SALGeneric_command_disable .. _Rotator:disable:value: value ***** :IDL_Type: boolean :Units: unitless **Description**: Not used enable ~~~~~~ **Description**: Transition from state Disabled to Enabled. :EFDB_Topic: SALGeneric_command_enable .. _Rotator:enable:value: value ***** :IDL_Type: boolean :Units: unitless **Description**: Not used enterControl ~~~~~~~~~~~~ **Description**: Transition from state Offline to Standby. Only "externally commandable" CSCs support this command; other CSCs start in Standby state and quit when they go to Offline. :EFDB_Topic: SALGeneric_command_enterControl .. _Rotator:enterControl:value: value ***** :IDL_Type: boolean :Units: unitless **Description**: Not used exitControl ~~~~~~~~~~~ **Description**: Transition from state Standby to Offline. For CSCs that are not "externally commandable" this makes the CSC quit. :EFDB_Topic: SALGeneric_command_exitControl .. _Rotator:exitControl:value: value ***** :IDL_Type: boolean :Units: unitless **Description**: Not used setAuthList ~~~~~~~~~~~ :EFDB_Topic: SALGeneric_command_setAuthList .. _Rotator: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. .. _Rotator: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 .. _Rotator: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 .. _Rotator: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 .. _Rotator:standby:value: value ***** :IDL_Type: boolean :Units: unitless **Description**: Not used start ~~~~~ **Description**: Transition from state Standby to Disable, in a specified configuration. :EFDB_Topic: SALGeneric_command_start .. _Rotator: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: * HEX * HEX * COMMAND * SAFTEY * EXTEND * RETRACT * ETHERCAT * DDS * MOTION * DRIVE * SIMULINK * ENCODER Events ------ .. _Rotator:Events:commandableByDDS: commandableByDDS ~~~~~~~~~~~~~~~~ **Description**: Can the CSC can control the rotator? :EFDB_Topic: Rotator_logevent_commandableByDDS .. _Rotator:Events:commandableByDDS:state: state ***** :IDL_Type: boolean :Units: unitless **Description**: If true the CSC can control the rotator; else the Engineering User Interface has control. .. _Rotator:Events:configuration: configuration ~~~~~~~~~~~~~ **Description**: Rotator configuration. :EFDB_Topic: Rotator_logevent_configuration .. _Rotator: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) .. _Rotator:Events:configuration:velocityLimit: velocityLimit ************* :IDL_Type: double :Units: deg/s **Description**: Velocity limit .. _Rotator:Events:configuration:accelerationLimit: accelerationLimit ***************** :IDL_Type: double :Units: deg/s2 **Description**: Acceleration limit .. _Rotator:Events:configuration:positionErrorThreshold: positionErrorThreshold ********************** :IDL_Type: double :Units: deg **Description**: Position error threshold .. _Rotator: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) .. _Rotator:Events:configuration:followingErrorThreshold: followingErrorThreshold *********************** :IDL_Type: double :Units: deg **Description**: Deviation between commanded position and actual rotator position that triggers following error event/fault .. _Rotator:Events:configuration:trackingSuccessPositionThreshold: trackingSuccessPositionThreshold ******************************** :IDL_Type: double :Units: deg **Description**: RMS deviation over 150ms interval between position command and actual rotator position for triggering tracking and tracklost events .. _Rotator: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 .. _Rotator:Events:connected: connected ~~~~~~~~~ **Description**: State of TCP/IP connection to the low level controller. :EFDB_Topic: Rotator_logevent_connected .. _Rotator:Events:connected:command: command ******* :IDL_Type: boolean :Units: unitless **Description**: Is the command socket connected (true=yes, false=no)? .. _Rotator:Events:connected:telemetry: telemetry ********* :IDL_Type: boolean :Units: unitless **Description**: Is the telemetry/config socket connected (true=yes, false=no)? .. _Rotator: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: Rotator_logevent_controllerState .. _Rotator: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. .. _Rotator:Events:controllerState:offlineSubstate: offlineSubstate *************** :IDL_Type: long :Units: unitless **Description**: Substate in OFFLINE mode. An OfflineSubstate enumeration value. .. _Rotator:Events:controllerState:enabledSubstate: enabledSubstate *************** :IDL_Type: long :Units: unitless **Description**: Substate in ENABLED mode. An EnabledSubstate enumeration value. .. _Rotator:Events:controllerState:applicationStatus: applicationStatus ***************** :IDL_Type: long :Units: unitless **Description**: Application state. A bitmask of ApplicationStatus enumeration values. .. _Rotator:Events:inPosition: inPosition ~~~~~~~~~~ **Description**: Event to indicate rotator is in position or not :EFDB_Topic: Rotator_logevent_inPosition .. _Rotator:Events:inPosition:inPosition: inPosition ********** :IDL_Type: boolean :Units: unitless **Description**: Rotator in position .. _Rotator:Events:interlock: interlock ~~~~~~~~~ **Description**: Rotator interlock: This event is generated when safety interlock is engaged or disengaged :EFDB_Topic: Rotator_logevent_interlock .. _Rotator:Events:interlock:detail: detail ****** :IDL_Type: string :IDL_Size: 256 :Units: unitless **Description**: detail .. _Rotator:Events:target: target ~~~~~~ **Description**: Commanded target position, velocity and time. :EFDB_Topic: Rotator_logevent_target .. _Rotator:Events:target:position: position ******** :IDL_Type: double :Units: deg **Description**: Target position at the time specified by "tai". .. _Rotator:Events:target:velocity: velocity ******** :IDL_Type: double :Units: deg/second **Description**: Target velocity at the time specified by "tai". .. _Rotator:Events:target:tai: tai *** :IDL_Type: double :Units: second **Description**: TAI time of the "position" and "velocity" fields. .. _Rotator:Events:tracking: tracking ~~~~~~~~ **Description**: Specify whether the rotator is tracking. :EFDB_Topic: Rotator_logevent_tracking .. _Rotator:Events:tracking:tracking: tracking ******** :IDL_Type: boolean :Units: unitless **Description**: Is the rotator tracking? True whenever 3 consecutive 50 ms track commands have been applied. .. _Rotator:Events:tracking:lost: lost **** :IDL_Type: boolean :Units: unitless **Description**: Did tracking fail? True if system tracks into a limit or we do not receive a new track command within 150ms (three iterations) following the last track command. appliedSettingsMatchStart ~~~~~~~~~~~~~~~~~~~~~~~~~ :EFDB_Topic: SALGeneric_logevent_appliedSettingsMatchStart .. _Rotator:appliedSettingsMatchStart:appliedSettingsMatchStartIsTrue: appliedSettingsMatchStartIsTrue ******************************* :IDL_Type: boolean :Units: unitless **Description**: True when the configuration matches the start conditions authList ~~~~~~~~ :EFDB_Topic: SALGeneric_logevent_authList .. _Rotator:authList:authorizedUsers: authorizedUsers *************** :IDL_Type: string :Units: unitless **Description**: Comma seperated list of authorized users currently allowed to command this CSC. .. _Rotator: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 .. _Rotator:errorCode:errorCode: errorCode ********* :IDL_Type: long :Units: unitless **Description**: A numeric error code .. _Rotator:errorCode:errorReport: errorReport *********** :IDL_Type: string :Units: unitless **Description**: An string providing detailed information about the error .. _Rotator:errorCode:traceback: traceback ********* :IDL_Type: string :Units: unitless **Description**: An optional stack trace of the error condition heartbeat ~~~~~~~~~ :EFDB_Topic: SALGeneric_logevent_heartbeat .. _Rotator:heartbeat:heartbeat: heartbeat ********* :IDL_Type: boolean :Units: unitless **Description**: Beats the drum. logLevel ~~~~~~~~ **Description**: Current logging level. :EFDB_Topic: SALGeneric_logevent_logLevel .. _Rotator: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 .. _Rotator:logMessage:name: name **** :IDL_Type: string :Units: unitless **Description**: Log name. .. _Rotator:logMessage:level: level ***** :IDL_Type: int :Units: unitless **Description**: Message level, a Python logging level: error=40, warning=30, info=20, debug=10. .. _Rotator:logMessage:message: message ******* :IDL_Type: string :Units: unitless **Description**: Log message. .. _Rotator:logMessage:traceback: traceback ********* :IDL_Type: string :Units: unitless **Description**: Exception traceback; "" if not an exception. .. _Rotator:logMessage:filePath: filePath ******** :IDL_Type: string :Units: unitless **Description**: Path to source file. .. _Rotator:logMessage:functionName: functionName ************ :IDL_Type: string :Units: unitless **Description**: Function or method name. .. _Rotator:logMessage:lineNumber: lineNumber ********** :IDL_Type: long :Units: unitless **Description**: Line number in the file specified by filePath. .. _Rotator: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 .. _Rotator:settingVersions:recommendedSettingsVersion: recommendedSettingsVersion ************************** :IDL_Type: string :Units: unitless **Description**: List of comma seperated recomended versions of settings sets .. _Rotator:settingVersions:recommendedSettingsLabels: recommendedSettingsLabels ************************* :IDL_Type: string :Units: unitless **Description**: List of comma seperated names of settings sets .. _Rotator: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 .. _Rotator:settingsApplied:settingsVersion: settingsVersion *************** :IDL_Type: string :IDL_Size: 256 :Units: unitless **Description**: The SHA or name corresponding to the published configuration .. _Rotator: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 .. _Rotator: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 .. _Rotator:softwareVersions:salVersion: salVersion ********** :IDL_Type: string :IDL_Size: 16 :Units: unitless **Description**: This is the current version of SAL generation .. _Rotator:softwareVersions:xmlVersion: xmlVersion ********** :IDL_Type: string :IDL_Size: 16 :Units: unitless **Description**: This is the current version of CSC XML .. _Rotator:softwareVersions:openSpliceVersion: openSpliceVersion ***************** :IDL_Type: string :IDL_Size: 16 :Units: unitless **Description**: This is the current version of OpenSplice .. _Rotator:softwareVersions:cscVersion: cscVersion ********** :IDL_Type: string :IDL_Size: 16 :Units: unitless **Description**: This is the top-level version of the CSC .. _Rotator: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 .. _Rotator:summaryState:summaryState: summaryState ************ :IDL_Type: long :Units: unitless **Description**: High level state machine state identifier Telemetry --------- .. _Rotator:Telemetry:Application: Application ~~~~~~~~~~~ **Description**: Commanded and actual rotator position. Note: this will be renamed to "application" once we can update the camera cable wrap system. :EFDB_Topic: Rotator_Application .. _Rotator:Telemetry:Application:Demand: Demand ****** :IDL_Type: double :Units: deg **Description**: Commanded rotator position. .. _Rotator:Telemetry:Application:Position: Position ******** :IDL_Type: double :Units: deg **Description**: Actual rotator position. .. _Rotator:Telemetry:Application:Error: Error ***** :IDL_Type: double :Units: deg **Description**: Rotator following error. .. _Rotator:Telemetry:electrical: electrical ~~~~~~~~~~ :EFDB_Topic: Rotator_electrical .. _Rotator:Telemetry:electrical:copleyStatusWordDrive: copleyStatusWordDrive ********************* :IDL_Type: unsigned short :Units: unitless :Count: 2 **Description**: Copley drive status word. .. _Rotator:Telemetry:electrical:copleyLatchingFaultStatus: copleyLatchingFaultStatus ************************* :IDL_Type: unsigned short :Units: unitless :Count: 2 **Description**: Copley latching fault status register. .. _Rotator:Telemetry:motors: motors ~~~~~~ **Description**: Encoder readings from each rotator motor :EFDB_Topic: Rotator_motors .. _Rotator:Telemetry:motors:calibrated: calibrated ********** :IDL_Type: double :Units: deg :Count: 2 **Description**: Encoder readings scaled to degrees of motion of the rotator. .. _Rotator:Telemetry:motors:raw: raw *** :IDL_Type: double :Units: unitless :Count: 2 **Description**: Encoder readings in raw counts.