DishManager Python API

This module implements the dish manager device for DishLMC.

It exposes the attributes and commands which control the dish and the subservient devices

class DishManager(*args, **kwargs)[source]

The Dish Manager of the Dish LMC subsystem.

Abort()[source]

Empty out long running commands in queue.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status. The message is for information purpose only.

AbortCommands()

Empty out long running commands in queue.

Return type:

tuple[list[ResultCode], list[str]]

Returns:

A tuple containing a return code and a string message indicating status. The message is for information purpose only.

ApplyPointingModel(value)[source]

Updates a band’s coefficient parameters with a given JSON input. Note, all 18 coefficients need to be present in the JSON object,the Dish ID should be correct, the appropriate unit should be present and coefficient values should be in range. Each time the command is called all parameters will get updated not just the ones that have been modified.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

B5DCDeviceFqdn

TANGO property

CheckLongRunningCommandStatus(argin)

Check the status of a long running command by ID.

Parameters:

argin (str) – the command id

Return type:

str

Returns:

command status

ConfigureBand(json_string)[source]

Configure band according to JSON string supplied. :rtype: Tuple[List[ResultCode], List[Optional[str]]]

This command triggers the Dish to transition to the CONFIG Dish Element Mode, re-applies the associated band<n>pointingmodelparams, and returns to the caller.

.

return:

A tuple containing a return code and a string message indicating status.

ConfigureBand1(synchronise)[source]

This command triggers the Dish to transition to the CONFIG Dish Element Mode, re-applies the associated band<n>pointingmodelparams, and returns to the caller. To configure the Dish to operate in frequency band 1 and re-apply the last updated band1pointingmodelparams. On completion of the band configuration, Dish will automatically transition to Dish mode OPERATE.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status.

ConfigureBand2(synchronise)[source]

Implemented as a Long Running Command.

This command triggers the Dish to transition to the CONFIG Dish Element Mode, re-applies the associated band<n>pointingmodelparams, and returns to the caller. To configure the Dish to operate in frequency band 2 and re-apply the last updated band2pointingmodelparams. On completion of the band configuration, Dish will automatically transition to Dish mode OPERATE.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status.

ConfigureBand3(synchronise)[source]

This command triggers the Dish to transition to the CONFIG Dish Element Mode, re-applies the associated band<n>pointingmodelparams, and returns to the caller. To configure the Dish to operate in frequency band 3 and re-apply the last updated band2pointingmodelparams. On completion of the band configuration, Dish will automatically transition to Dish mode OPERATE.

ConfigureBand4(synchronise)[source]

This command triggers the Dish to transition to the CONFIG Dish Element Mode, re-applies the associated band<n>pointingmodelparams, and returns to the caller. To configure the Dish to operate in frequency band 4 and re-apply the last updated band4pointingmodelparams. On completion of the band configuration, Dish will automatically transition to Dish mode OPERATE.

ConfigureBand5a(synchronise)[source]

This command triggers the Dish to transition to the CONFIG Dish Element Mode, re-applies the associated band<n>pointingmodelparams, and returns to the caller. To configure the Dish to operate in frequency band 5a and re-apply the last updated band5apointingmodelparams. On completion of the band configuration, Dish will automatically transition to Dish mode OPERATE.

ConfigureBand5b(synchronise)[source]

This command triggers the Dish to transition to the CONFIG Dish Element Mode, re-applies the associated band<n>pointingmodelparams, and returns to the caller. To configure the Dish to operate in frequency band 5b and re-apply the last updated band5bpointingmodelparams. On completion of the band configuration, Dish will automatically transition to Dish mode OPERATE.

DSDeviceFqdn

TANGO property

DebugDevice()

Enable remote debugging of this device.

To modify behaviour for this command, modify the do() method of the command class: DebugDeviceCommand.

Return type:

int

Returns:

the port the debugger is listening on

DefaultActionTimeoutSeconds

The default timeout value (in seconds) for each fanned out action.

DefaultWatchdogTimeout

TANGO property

DishId

TANGO property

EndScan()[source]

This command clears out the scan_id.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

ExecutePendingOperations()

Execute any Tango operations that have been pushed on the queue.

The poll time is initially 5ms, to circumvent the problem of device initialisation, but is reset to 100ms after the first pass.

Return type:

None

FlushCommandQueue()[source]

Flushes the queue of time stamped commands.

GetComponentStates()[source]

Get the current component states of subservient devices.

Subservient devices constiture SPF, SPFRx, DS and WMS. Used for debugging.

GetVersionInfo()

Return the version information of the device.

To modify behaviour for this command, modify the do() method of the command class.

Return type:

list[str]

Returns:

The result code and the command unique ID

GroupDefinitions

Device property.

Each string in the list is a JSON serialised dict defining the group_name, devices and subgroups in the group. A Tango Group object is created for each item in the list, according to the hierarchy defined. This provides easy access to the managed devices in bulk, or individually.

The general format of the list is as follows, with optional devices and subgroups keys:

[ {"group_name": "<name>",
   "devices": ["<dev name>", ...]},
  {"group_name": "<name>",
   "devices": ["<dev name>", "<dev name>", ...],
   "subgroups" : [{<nested group>},
                    {<nested group>}, ...]},
  ...
  ]

For example, a hierarchy of racks, servers and switches:

[ {"group_name": "servers",
   "devices": ["elt/server/1", "elt/server/2",
                 "elt/server/3", "elt/server/4"]},
  {"group_name": "switches",
   "devices": ["elt/switch/A", "elt/switch/B"]},
  {"group_name": "pdus",
   "devices": ["elt/pdu/rackA", "elt/pdu/rackB"]},
  {"group_name": "racks",
   "subgroups": [
        {"group_name": "rackA",
         "devices": ["elt/server/1", "elt/server/2",
                       "elt/switch/A", "elt/pdu/rackA"]},
        {"group_name": "rackB",
         "devices": ["elt/server/3", "elt/server/4",
                       "elt/switch/B", "elt/pdu/rackB"],
         "subgroups": []}
   ]} ]
class InitCommand(device, logger=None, validator=None)[source]

A class for the Dish Manager’s init_device() method.

do()[source]

Initializes the attributes and properties of the DishManager.

InterlockAck()[source]

Clear the interlock status once interlocks or E-Stops have been cleared on the DSC.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status.

IsCapabilityAchievable(argin)

Check if provided capabilities can be achieved by the resource(s).

To modify behaviour for this command, modify the do() method of the command class.

Parameters:

argin (tuple[list[int], list[str]]) –

An array consisting pair of

  • [nrInstances]: DevLong. Number of instances of the capability.

  • [Capability types]: DevString. Type of capability.

Return type:

bool

Returns:

True or False

LoggingLevelDefault

Device property.

Default logging level at device startup. See LoggingLevel

LoggingTargetsDefault

Device property.

Default logging targets at device startup. See the project readme for details.

MaxCapabilities

TANGO property

MeanWindSpeedThreshold

Threshold value for mean wind speed (in m/s) used to trigger stow.

Off()[source]

The Off command inherited from base classes.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

On()[source]

The On command inherited from base classes.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Reset()[source]

The Reset command inherited from base classes.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

ResetComponentConnection(value)[source]

This command Reset the connections to sub devices.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

ResetTrackTable()[source]

Resets the program track table on the controller.

Track table is cleared on the controller in RESET load mode

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

ResetWatchdogTimer()[source]

This command resets the watchdog timer.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

SPFDeviceFqdn

TANGO property

SPFRxDeviceFqdn

TANGO property

Scan(scanid)[source]

The Dish records the scanID for an ongoing scan.

Parameters:

args – the scanID in string format

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

SetFrequency(value)[source]

Set the frequency on the band 5 down converter.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

SetHPolAttenuation(value)[source]

Set the horizontal polarization attenuation on the band 5 down converter.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

SetKValue(value)[source]

This command sets the kValue on SPFRx. Note that it will only take effect after SPFRx has been restarted.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

SetMaintenanceMode()[source]

This command triggers the Dish to transition to the MAINTENANCE Dish Element Mode, and returns to the caller. To go into a state that is safe to approach the Dish by a maintainer, and to enable the Engineering interface to allow direct access to low level control and monitoring by engineers and maintainers. This mode will also enable engineers and maintainers to upgrade SW and FW. Dish also enters this mode when an emergency stop button is pressed.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

SetOperateMode()[source]

Deprecated command.

This command initiates the transition to OPERATE dish mode. This command will trigger the transition from STANDBY_FP to OPERATE dish mode as an alternative to using the ConfigureBand or ConfigureBand<N> command.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status.

SetStandbyFPMode()[source]

Implemented as a Long Running Command.

This command triggers the Dish to transition to the STANDBY‐FP Dish Element Mode, and returns to the caller. To prepare all subsystems for active observation, once a command is received by TM to go to the FULL_POWER mode.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status.

SetStandbyLPMode()[source]

Implemented as a Long Running Command.

This command triggers the Dish to transition to the STANDBY‐LP Dish Element Mode, and returns to the caller. Standby_LP is the default mode when the Dish is configured for low power consumption, and is the mode wherein Dish ends after a start-up procedure. All subsystems go into a low power state to power only the essential equipment. Specifically the Helium compressor will be set to a low power consumption, and the drives will be disabled. When issued a STOW command while in LOW power, the DS controller should be able to turn the drives on, stow the dish and turn the drives off again. The purpose of this mode is to enable the observatory to perform power management (load curtailment), and also to conserve energy for non‐operating dishes.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status.

SetStowMode()[source]

Implemented as a Long Running Command.

This command immediately triggers the Dish to transition to STOW Dish Element Mode. It subsequently aborts all queued LRC tasks and then returns to the caller. It points the dish in a direction that minimises the wind loads on the structure, for survival in strong wind conditions. The Dish is able to observe in the STOW position, for the purpose of transient detection.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status.

SetVPolAttenuation(value)[source]

Set the vertical polarization attenuation on the band 5 down converter.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

SkaLevel

Device property.

Indication of importance of the device in the SKA hierarchy to support drill-down navigation: 1..6, with 1 highest.

Slew(values)[source]

Trigger the Dish to start moving to the commanded (Az,El) position.

Parameters:

argin – the az, el for the pointing in stringified json format

Returns:

A tuple containing a return code and a string message indicating status.

Standby()[source]

The Standby command inherited from base classes.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

StartCommunication()[source]

Start communicating with monitored devices.

StopCommunication()[source]

Stop communicating with monitored devices.

SyncComponentStates()[source]

Sync each subservient device component state with its tango device to refresh the dish manager component state.

Return type:

None

Synchronise()[source]

Reset configured band sample counters. Command only valid in SPFRx OPERATE mode.

TangoClassClass

alias of DishManagerClass

Track()[source]

Implemented as a Long Running Command.

When the Track command is received the Dish will start tracking the commanded positions. The pointingState attribute will report SLEW while the Dish is settling onto a target and is still not within the specified pointing accuracy. As soon as the pointing accuracy is within specifications, the pointingState attribute will report TRACK. Track data source (TABLE-A, TABLE-B, POLY) used for tracking is pre‐ configured using trackProgramMode attribute. Tracking using program table (A, B) is pre‐configured using the following attributes: 1. trackInterpolationMode: to select type of interpolation, Newton (default) or Spline. 2. programTrackTable: to load program table data (Az,El,timestamp sets) on selected ACU table 3. trackTableLoadMode: to add/append/reset track table data

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status.

TrackLoadStaticOff(values)[source]

Loads the given static pointing model offsets.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status.

TrackStop()[source]

Implemented as a Long Running Command.

When the TrackStop command is received the Dish will stop moving but will not apply brakes.

Return type:

Tuple[List[ResultCode], List[Optional[str]]]

Returns:

A tuple containing a return code and a string message indicating status.

WMSDeviceNames

TANGO property

WindGustThreshold

Threshold value for wind gust speed (in m/s) used to trigger stow.

achievedPointing

[0] Timestamp [1] Azimuth [2] Elevation

achievedTargetLock

Indicates whether the Dish is on target or not based on the pointing error and time period parameters defined in configureTargetLock.

actStaticOffsetValueEl

Actual elevation static offset (arcsec)

actStaticOffsetValueXel

Actual cross-elevation static offset (arcsec)

actionTimeoutSeconds

Timeout (in seconds) to be used for each action. On each action DishManager will wait for the timeout duration for expected subservient device attribute updates. A value <= 0 will disable waiting and no monitoring will occur, commands will be fanned out to their respective subsevient devices and then the DishManager command will return as COMPLETED immediately.

adminMode

Read the Admin Mode of the device.

It may interpret the current device condition and condition of all managed

devices to set this. Most possibly an aggregate attribute.

Returns:

Admin Mode of the device

attenuation1PolHX

The current attenuation value for attenuator 1 on the H/X polarization.

attenuation1PolVY

The current attenuation value for attenuator 1 on the V/Y polarization.

attenuation2PolHX

The current attenuation value for attenuator 2 on the H/X polarization.

attenuation2PolVY

The current attenuation value for attenuator 2 on the V/Y polarization.

attenuationPolHX

The current total attenuation value across both attenuators on the H/X polarization.

attenuationPolVY

The current total attenuation value across both attenuators on the V/Y polarization.

autoWindStowEnabled

Flag to enable or disable auto wind stow on wind speed or wind gust for values exeeding the configured threshold.

availableCapabilities

A list of available number of instances of each capability type, e.g. ‘CORRELATOR:512’, ‘PSS-BEAMS:4’.

azimuthOverWrap

Indicates that the Dish has moved beyond an azimuth wrap limit.

b1CapabilityState

Report the device b1CapabilityState

b1LnaHPowerState

Status of the Band 1 SPFC LNA H polarization power state.

b1LnaVPowerState

Status of the Band 1 SPFC LNA V polarization power state.

b2CapabilityState

Report the device b2CapabilityState

b2LnaHPowerState

Status of the Band 2 SPFC LNA H polarization power state.

b2LnaVPowerState

Status of the Band 2 SPFC LNA V polarization power state.

b3CapabilityState

Report the device b3CapabilityState

b3LnaPowerState

Status of the Band 3 SPFC LNA polarization power state.

b4CapabilityState

Report the device b4CapabilityState

b4LnaPowerState

Status of the Band 4 SPFC LNA H & V polarization power state.

b5aCapabilityState

Report the device b5aCapabilityState

b5aLnaPowerState

Status of the Band 5a SPFC LNA H & V polarization power state.

b5bCapabilityState

Report the device b5bCapabilityState

b5bLnaPowerState

Status of the SPFC LNA H & V polarization power state.

b5dcConnectionState

Return the status of the connection to the B5DC proxy.

b5dcServerConnectionState

Return the status of the connection of the B5dc Proxy device to the B5dc server.

band0PointingModelParams

Parameters for (local) Band 0 pointing models used by Dish to do pointing corrections.

When writing to this attribute, the selected band for correction will be set to B0.

Band pointing model parameters are: [0] IA, [1] CA, [2] NPAE, [3] AN, [4] AN0, [5] AW, [6] AW0, [7] ACEC, [8] ACES, [9] ABA, [10] ABphi, [11] IE, [12] ECEC, [13] ECES, [14] HECE4, [15] HESE4, [16] HECE8, [17] HESE8

band1PointingModelParams

Parameters for (local) Band 1 pointing models used by Dish to do pointing corrections.

When writing to this attribute, the selected band for correction will be set to B1.

Band pointing model parameters are: [0] IA, [1] CA, [2] NPAE, [3] AN, [4] AN0, [5] AW, [6] AW0, [7] ACEC, [8] ACES, [9] ABA, [10] ABphi, [11] IE, [12] ECEC, [13] ECES, [14] HECE4, [15] HESE4, [16] HECE8, [17] HESE8

band1SamplerFrequency

BAND1 absolute sampler clock frequency (base plus offset).

band2PointingModelParams

Parameters for (local) Band 2 pointing models used by Dish to do pointing corrections.

When writing to this attribute, the selected band for correction will be set to B2.

Band pointing model parameters are: [0] IA, [1] CA, [2] NPAE, [3] AN, [4] AN0, [5] AW, [6] AW0, [7] ACEC, [8] ACES, [9] ABA, [10] ABphi, [11] IE, [12] ECEC, [13] ECES, [14] HECE4, [15] HESE4, [16] HECE8, [17] HESE8

band2SamplerFrequency

BAND2 absolute sampler clock frequency (base plus offset).

band3PointingModelParams

Parameters for (local) Band 3 pointing models used by Dish to do pointing corrections.

When writing to this attribute, the selected band for correction will be set to B3.

Band pointing model parameters are: [0] IA, [1] CA, [2] NPAE, [3] AN, [4] AN0, [5] AW, [6] AW0, [7] ACEC, [8] ACES, [9] ABA, [10] ABphi, [11] IE, [12] ECEC, [13] ECES, [14] HECE4, [15] HESE4, [16] HECE8, [17] HESE8

band3SamplerFrequency

BAND3 absolute sampler clock frequency (base plus offset).

band4PointingModelParams

Parameters for (local) Band 4 pointing models used by Dish to do pointing corrections.

When writing to this attribute, the selected band for correction will be set to B4.

Band pointing model parameters are: [0] IA, [1] CA, [2] NPAE, [3] AN, [4] AN0, [5] AW, [6] AW0, [7] ACEC, [8] ACES, [9] ABA, [10] ABphi, [11] IE, [12] ECEC, [13] ECES, [14] HECE4, [15] HESE4, [16] HECE8, [17] HESE8

band4SamplerFrequency

BAND4 absolute sampler clock frequency (base plus offset).

band5aPointingModelParams

Parameters for (local) Band 5a pointing models used by Dish to do pointing corrections.

band5aSamplerFrequency

BAND5a absolute sampler clock frequency (base plus offset).

band5bPointingModelParams

Parameters for (local) Band 5b pointing models used by Dish to do pointing corrections.

band5bSamplerFrequency

BAND5b absolute sampler clock frequency (base plus offset).

buildState

Read the Build State of the device.

Returns:

the build state of the device

capturing

Indicates whether Dish is capturing data in the configured band or not.

clkPhotodiodeCurrent

Reports the current flowing through the clock photodiode in the B5DC. Value is in milliamperes (mA).

commandedState

Read the last commanded operating state of the device.

Initial string is “None”. Only other strings it can change to is “OFF”, “STANDBY” or “ON”, following the start of the Off(), Standby(), On() or Reset() long running commands.

Returns:

commanded operating state string.

configureTargetLock

[0] Pointing error [1] Time period

configuredBand

The frequency band that the Dish is configured to capture data in.

controlMode

Read the Control Mode of the device.

The control mode of the device are REMOTE, LOCAL Tango Device accepts only from a ‘local’ client and ignores commands and queries received from TM or any other ‘remote’ clients. The Local clients has to release LOCAL control before REMOTE clients can take control again.

Returns:

Control Mode of the device

create_component_manager()[source]

Create the component manager for DishManager.

Returns:

Instance of DishManagerComponentManager

Return type:

DishManagerComponentManager

delete_device()[source]

Override delete_device to stop communication with sub-devices before deletion.

desiredPointingAz

Azimuth axis desired pointing as reported by the dish structure controller’s Tracking.TrackStatus.p_desired_Az field.

desiredPointingEl

Elevation axis desired pointing as reported by the dish structure controller’s Tracking.TrackStatus.p_desired_El field.

dishMode

Dish rolled-up operating mode in Dish Control Model (SCM) notation

dsConnectionState

Displays connection status to DS device

dscCmdAuth

Indicates who has command authority

dscConnectionState

Return the status of the connection of the DSManager device to the dish controller.

dscCtrlState

DSC Control State - an aggregation of DSC Command Authority and DSC State

dscErrorStatuses

Report the current DSC errors as a semicolon-delimited list. Reports ‘OK’ if no errors are present.

dscPowerLimitKw

DSC Power Limit (kW). Note that this attribute can also be set by calling SetPowerMode. This value does not reflect the power limit in reality because the current PowerLimit(kW) is not reported as it cannot be read from the DSC.

dshMaxShortTermPower

Configures the Max Short Term Average Power (5sec‐10min) in kilowatt that the DSH instance is curtailed to while dshPowerCurtailment is [TRUE]. The default value is 13.5.

dshPowerCurtailment

The Max Short Term Average Power (5sec‐10min) of each DSH instance is curtailed to the value configured in dshMaxShortTermPower. The default condition is [TRUE] ‐ power curtailment is on. With power curtailment [TRUE], all DSH functionality is available but at reduced performance (for example reduced slew rates). With power curtailment [FALSE], all DSH functionality is available at full performance (for example maximum slew rates).

elementAlarmAddress

FQDN of Element Alarm Handlers

elementDatabaseAddress

FQDN of Element Database device

elementLoggerAddress

FQDN of Element Logger

elementTelStateAddress

FQDN of Element TelState device

frequencyResponse

Note: This attribute maps to the spectrum sample attribute from the SPFRxReport the SPFRX spectrum sample data Spectrum sample data from the spectrometer as a packed DevFloat array. The array contains a UTC timestamp followed by multiple spectral datasets. Index layout: [0-1]: UTC timestamp in seconds, [2-1026]: P_on,X (1025 floats), [1027-2051]: P_on,Y (1025 floats), [2052-3076]: P_on,XY real (1025 floats), [3077-4101]: P_on,XY imaginary (1025 floats), [4102-5126]: P_off,X (1025 floats), [5127-6151]: P_off,Y (1025 floats), [6152-7176]: P_off,XY real (1025 floats), [7177-8201]: P_off,XY imaginary (1025 floats).

hPolRfPowerIn

Reports the input RF power level for the Horizontal (H) polarization measured at the B5DC RF Control Module (RFCM). Value is in dBm.

hPolRfPowerOut

Reports the output RF power level for the Horizontal (H) polarization measured at the B5DC RF Control Module (RFCM). Value is in dBm.

healthInfo

Report the reason for healthstate failures.

healthState

Read the Health State of the device.

It interprets the current device condition and condition of all managed devices to set this. Most possibly an aggregate attribute.

Returns:

Health State of the device

ignoreB5dc

Flag to disable B5DC device communication. When ignored, no commands will be issued to the device, it will be excluded from state aggregation, and no device related attributes will be updated.

ignoreSpf

Flag to disable SPF device communication. When ignored, no commands will be issued to the device, it will be excluded from state aggregation, and no device related attributes will be updated.

ignoreSpfrx

Flag to disable SPFRx device communication. When ignored, no commands will be issued to the device, it will be excluded from state aggregation, and no device related attributes will be updated.

init_command_objects()[source]

Initialise the command handlers.

Return type:

None

isKLocked

Check the SAT.RM module to see if the k- value is locked. If not false is returned.

kValue

Returns the kValue for SPFRX

lastCommandInvoked

Stores the name and timestamp (in UNIX UTC format) of the last invoked command.

lastCommandedMode

Reports when and which was the last commanded mode change (not when completed). Time is a UNIX UTC timestamp.

lastCommandedPointingParams

Default empty string when not set, and is a JSON stringof the last requested global pointing model when set.

lastWatchdogReset

Returns the timestamp of the last watchdog reset in unix seconds.

loggingLevel

Read the logging level of the device.

Initialises to LoggingLevelDefault on startup. See LoggingLevel

Returns:

Logging level of the device.

loggingTargets

Read the additional logging targets of the device.

Note that this excludes the handlers provided by the ska_ser_logging library defaults - initialises to LoggingTargetsDefault on startup.

Returns:

Logging level of the device.

longRunningCommandResult

Read the result of the completed long running command.

Reports unique_id, json-encoded result. Clients can subscribe to on_change event and wait for the ID they are interested in.

Returns:

ID, result.

lrcFinished

Read info of the finished long running commands.

Returns:

a list of info JSON blobs of the finished long running commands.

lrcProtocolVersions

Return supported protocol versions.

Returns:

A tuple containing the lower and upper bounds of supported long running command protocol versions.

maxCapabilities

Maximum number of instances of each capability type, e.g. ‘CORRELATOR:512’, ‘PSS-BEAMS:4’.

meanWindSpeed

The average wind speed in m/s of the last 10 minutes calculated from the connected weather stations.

noiseDiodeConfig

Returns the noiseDiodeConfig.

noiseDiodeMode

Noise diode mode.

0: OFF, 1: PERIODIC, 2: PSEUDO-RANDOM

Note: This attribute does not persist after a power cycle. A default value is included as a device property on the SPFRx.

periodicNoiseDiodePars

Periodic noise diode pars (units are in time quanta).

[0]: period, [1]: duty cycle, [2]: phase shift

Note: This attribute does not persist after a power cycle. A default value is included as a device property on the SPFRx.

pointingBufferSize

Number of desiredPointing write values that the buffer has space for. Note: desiredPointing write values are stored by Dish in a buffer for application at the time specified in each desiredPointing record.

pointingState

Returns the pointingState.

polyTrack

[0] Timestamp [1] Azimuth [2] Elevation [3] Azimuth speed [4] Elevation speed [5] Azimuth acceleration [6] Elevation acceleration [7] Azimuth jerk [8] Elevation jerk

powerState

Returns the powerState.

programTrackTable

Timestamp of i-th coordinate in table (max 1000 coordinates) given in milliseconds since TAI epoch, representing time at which Dish should track i-th coordinate. Azimuth of i-th coordinate in table (max 1000 points) given in degrees. Elevation of i-th coordinate in table (max points coordinates) given in degrees

pseudoRandomNoiseDiodePars

Pseudo random noise diode pars (units are in time quanta).

[0]: binary polynomial, [1]: seed, [2]: dwell

Note: This attribute does not persist after a power cycle. A default value is included as a device property on the SPFRx.

rfTemperature

Reports the temperature of the B5DC RF Control Module (RFCM) RF Printed Circuit Board (PCB). Value is in degrees Celsius.

rfcmFrequency

Reports the current output frequency of the B5DC PLL in GHz. The default value is 11.1 GHz.

rfcmHAttenuation

Reports the current attenuation setting for the Horizontal (H) polarization on the B5DC RF Control Module (RFCM). Value is in dB.

rfcmPllLock

Reports the lock status of the B5DC RF Control Module (RFCM) PLL.Returns B5dcPllState enum indicating if locked or lock lost.

rfcmPsuPcbTemperature

Reports the temperature of the B5DC RF Control Module (RFCM) Power Supply Unit (PSU) PCB. Value is in degrees Celsius.

rfcmVAttenuation

Reports the current attenuation setting for the Vertical (V) polarization on the B5DC RF Control Module (RFCM). Value is in dB.

scanID

Report the scanID for Scan

simulationMode

Read the Simulation Mode of the device.

Some devices may implement both modes, while others will have simulators that set simulationMode to True while the real devices always set simulationMode to False.

Returns:

Simulation Mode of the device.

spectralInversion

Spectral inversion to correct the frequency sense of the currently configured band with respect to the RF signal.

Logic 0: Output signal in the same frequency sense as input.

Logic 1: Output signal in the opposite frequency sense as input.

Setting this attribute to true will set the spectrum to be flipped.

spfConnectionState

Displays connection status to SPF device

spfrxConnectionState

Displays connection status to SPFRx device

testMode

Read the Test Mode of the device.

Either no test mode or an indication of the test mode.

Returns:

Test Mode of the device

trackInterpolationMode

Selects the type of interpolation to be used in program tracking.

trackProgramMode

Selects the track program source (table A, table B, polynomial stream) used in the ACU for tracking. Coordinates given in the programTrackTable attribute are loaded in ACU in the selected table.

trackTableCurrentIndex

Actual used index in the track table

trackTableEndIndex

End index in the track table

trackTableLoadMode

Selects track table load mode. With ADD selected, Dish will add the coordinate set given in programTrackTable attribute to the list of pointing coordinates already loaded in ACU. With NEW selected, Dish will delete the list of pointing coordinates previously loaded in ACU when new coordinates are given in the programTrackTable attribute.

vPolRfPowerIn

Reports the input RF power level for the Vertical (V) polarization measured at the B5DC RF Control Module (RFCM). Value is in dBm.

vPolRfPowerOut

Reports the output RF power level for the Vertical (V) polarization measured at the B5DC RF Control Module (RFCM). Value is in dBm.

versionId

Read the Version Id of the device.

Returns:

the version id of the device

watchdogTimeout

Sets dish manager watchdog timeout interval in seconds. By writing a value greater than 0, the watchdog will be enabled. If the watchdog is not reset within this interval, the dish will Stow on expiry of the timer. The watchdog timer can be reset by calling the ResetWatchdog() command. The watchdog can be disabled by writing a value less than or equal to 0.

windGust

The maximum wind speed in m/s of the last 3 seconds calculated from the connected weather stations.

wmsConnectionState

Displays connection status to wms device

main(args=None, **kwargs)[source]

Launch a DishManager device.