SKASubarray Tango Device

A generic subarray device for SKA.

SKASubarray inherits from the SKAObsDevice and AbstractSubarrayInterface, and expects a component manager to be provided by implementing the create_component_manager() method.

Properties

SKASubarray.CapabilityTypes

Types of capability supported by this subarray.

Data type:

DevVarStringArray

SKASubarray.GroupDefinitions

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.

Data type:

DevVarStringArray

SKASubarray.LoggingLevelDefault

Default logging level at device startup.

Data type:

DevUShort

Default value:

4

SKASubarray.LoggingTargetsDefault

Default logging targets at device startup.

Data type:

DevVarStringArray

Default value:

[‘tango::logger’]

SKASubarray.SkaLevel

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

Data type:

DevShort

Default value:

4

SKASubarray.SubID

Unique identifier for this subarray.

Data type:

DevString

Attributes

SKASubarray.State

The operational state of the device as enumeration.

Access:

READ

Data type:

DevState

Data format:

SCALAR

SKASubarray.Status

More detailed textual information about the device’s status.

Access:

READ

Data type:

DevString

Data format:

SCALAR

SKASubarray.activationTime

The time of activation in seconds since Unix epoch.

Access:

READ

Data type:

DevDouble

Data format:

SCALAR

Unit:

s

SKASubarray.adminMode

The Admin Mode of the device.

It may interpret the current device condition and condition of all managed devices to set this.

Access:

READ_WRITE

Data type:

DevEnum

Data format:

SCALAR

SKASubarray.assignedResources

The resources assigned to the device.

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

512

SKASubarray.buildState

Read the Build State of the device.

Access:

READ

Data type:

DevString

Data format:

SCALAR

SKASubarray.commandedObsState

The last commanded stable Observation State of the device.

Initial value is EMPTY. The only stable states it can change to are EMPTY, IDLE, READY or ABORTED, following the start of any state transition command.

Access:

READ

Data type:

DevEnum

Data format:

SCALAR

SKASubarray.commandedState

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 Off(), Standby() or On() commands. If the state transition commands are long running commands the commanded state will only update when the long running command starts executing.

Access:

READ

Data type:

DevString

Data format:

SCALAR

SKASubarray.configurationDelayExpected

The expected configuration delay of the device in seconds.

Access:

READ

Data type:

DevUShort

Data format:

SCALAR

Unit:

seconds

SKASubarray.configurationProgress

The percentage configuration progress of the device.

Access:

READ

Data type:

DevUShort

Data format:

SCALAR

Unit:

%

SKASubarray.configuredCapabilities

The configured capabilities of the device.

For example, [“Correlators:512”, “PssBeams:4”, “PstBeams:4”, “VlbiBeams:0”].

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

10

SKASubarray.controlMode

The control mode of the device.

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

Access:

READ_WRITE

Data type:

DevEnum

Data format:

SCALAR

SKASubarray.healthInfo

(‘Read the Health Info of the device.nnIt provides an explanation for the currently reported Health State’,)

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

256

SKASubarray.healthState

Read the Health State of the device.

It interprets the current device condition and condition of all managed devices to set this.

Access:

READ

Data type:

DevEnum

Data format:

SCALAR

SKASubarray.loggingLevel

Read the logging level of the device.

Initialises to LoggingLevelDefault on startup. See LoggingLevel

Access:

READ_WRITE

Data type:

DevEnum

Data format:

SCALAR

SKASubarray.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.

Access:

READ_WRITE

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

4

SKASubarray.longRunningCommandIDsInQueue

Read the IDs of the long running commands in the queue.

Every client that executes a command will receive a command ID as response. Keep track of IDs currently allocated. Entries are removed self._command_tracker._removal_time seconds after they have finished.

DEPRECATED: A client can check for the queued command(s) in ‘lrcQueue’.

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

32

SKASubarray.longRunningCommandInProgress

Read the name(s) of the currently executing long running command(s).

Name(s) of command and possible abort in progress or empty string(s).

DEPRECATED: A client can check for the command(s) in progress in ‘lrcExecuting’.

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

2

SKASubarray.longRunningCommandProgress

Read the progress of the currently executing long running command(s).

ID, progress of the currently executing command(s). Clients can subscribe to on change event and wait for the ID they are interested in.

DEPRECATED: A client can check the progress of command(s) in ‘lrcExecuting’.

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

4

SKASubarray.longRunningCommandResult

Read the result of the completed long running command.

Reports unique ID and json-encoded result. Clients can subscribe to on change event and wait for the ID they are interested in.

DEPRECATED: A client can check for the result of a command in ‘lrcFinished’.

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

2

SKASubarray.longRunningCommandStatus

Read the status of the currently executing long running commands.

ID, status pairs of the currently executing commands. Clients can subscribe to on change event and wait for the ID they are interested in.

DEPRECATED: A client can check for the status of a command in the ‘lrcQueue’, ‘lrcExecuting’ and ‘lrcFinished’ attributes.

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

64

SKASubarray.longRunningCommandsInQueue

Read the long running commands in the queue.

Keep track of which commands are that are currently known about. Entries are removed self._command_tracker._removal_time seconds after they have finished.

DEPRECATED: A client can check for the queued command(s) in ‘lrcQueue’.

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

32

SKASubarray.lrcExecuting

A list of info JSON blobs of the currently executing commands.

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

2

SKASubarray.lrcFinished

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

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

Max_dim_x:

100

SKASubarray.lrcProtocolVersions

Return supported protocol versions.

Access:

READ

Data type:

DevLong64

Data format:

SPECTRUM

Max_dim_x:

2

SKASubarray.lrcQueue

A list of info JSON blobs of the commands in queue.

Access:

READ

Data type:

DevString

Data format:

SPECTRUM

SKASubarray.obsMode

The Observation Mode of the device.

Access:

READ

Data type:

DevEnum

Data format:

SCALAR

SKASubarray.obsState

The Observation State of the device.

Access:

READ

Data type:

DevEnum

Data format:

SCALAR

SKASubarray.simulationMode

When TRUE the device is using a simulator.

Access:

READ_WRITE

Data type:

DevEnum

Data format:

SCALAR

SKASubarray.testMode

If TEST the device is using testing logic.

Access:

READ_WRITE

Data type:

DevEnum

Data format:

SCALAR

SKASubarray.versionId

Read the Version Id of the device.

Access:

READ

Data type:

DevString

Data format:

SCALAR

Commands

SKASubarray.Abort() DevVarLongStringArray

Abort any executing long running command(s) and empty the queue.

Returns:

[ResultCode.STARTED][Command ID]

SKASubarray.AbortCommands() DevVarLongStringArray

Empty out long running commands in queue.

DEPRECATED: A client should call the tracked ‘Abort’ long running command instead.

Returns:

[ResultCode.STARTED][‘Aborting commands’]

SKASubarray.AssignResources(DevString) DevVarLongStringArray

Assign resources to this subarray.

Parameter:

The resources to be assigned

Returns:

[ResultCode][Status message or command ID]

SKASubarray.CheckLongRunningCommandStatus(DevString) DevString

Check the status of a long running command by ID.

Returns:

Status of the asynchronous task.

SKASubarray.Configure(DevString) DevVarLongStringArray

Configure the capabilities of this subarray.

Parameter:

The scan configuration specification

Returns:

[ResultCode][Status message or command ID]

SKASubarray.DebugDevice() DevUShort

Enable remote debugging of this device.

Returns:

The TCP port the debugger is listening on.

SKASubarray.End() DevVarLongStringArray

End the scan block of this subarray.

Returns:

[ResultCode][Status message or command ID]

SKASubarray.EndScan() DevVarLongStringArray

End the current scan with this subarray.

Returns:

[ResultCode][Status message or command ID]

SKASubarray.GetVersionInfo() DevVarStringArray

Get the version information of the device.

Returns:

The device class name and its package information.

SKASubarray.Init() DevVoid

Reinitialise the Tango device.

SKASubarray.ObsReset() DevVarLongStringArray

Reset the current observation process.

Returns:

[ResultCode][Status message or command ID]

SKASubarray.Off() DevVarLongStringArray

Turn the device off.

Returns:

[ResultCode][Status message or command ID]

SKASubarray.On() DevVarLongStringArray

Turn the device on.

Returns:

[ResultCode][Status message or command ID]

SKASubarray.ReleaseAllResources() DevVarLongStringArray

Release all resources to tear down to an empty subarray.

Returns:

[ResultCode][Status message or command ID]

SKASubarray.ReleaseResources(DevString) DevVarLongStringArray

Delta release of assigned resources from this subarray.

Parameter:

The resources to be released

Returns:

[ResultCode][Status message or command ID]

SKASubarray.Reset() DevVarLongStringArray

Reset the device.

Returns:

[ResultCode][Status message or command ID]

SKASubarray.Restart() DevVarLongStringArray

Restart the subarray by deconfiguring and releasing all resources.

Returns:

[ResultCode][Status message or command ID]

SKASubarray.Scan(DevString) DevVarLongStringArray

Start scanning with this configured subarray.

Parameter:

The per-scan configuration

Returns:

[ResultCode][Status message or command ID]

SKASubarray.Standby() DevVarLongStringArray

Put the device into standby mode.

Returns:

[ResultCode][Status message or command ID]