FspCorrSubarray Class

class ska_mid_cbf_mcs.fsp.fsp_corr_subarray_device.FspCorrSubarray(cl, name)[source]

Bases: CspSubElementObsDevice

FspCorrSubarray TANGO device class for the FspCorrSubarray prototype

SubID

TANGO property

FspID

TANGO property

CbfControllerAddress

FQDN of CBF Controller

CbfSubarrayAddress

FQDN of CBF Subarray

VCC

TANGO property

HpsFspCorrControllerAddress

TANGO property

vccIDs

List of VCCs used for correlation

frequencyBand

Frequency band; an int in the range [0, 5]

band5Tuning

Stream tuning (GHz)

frequencyBandOffsetStream1

Frequency offset for stream 1 (Hz)

frequencyBandOffsetStream2

Frequency offset for stream 2 (Hz)

frequencySliceID

Frequency slice ID

corrBandwidth

Bandwidth to be correlated is <Full Bandwidth>/2^bandwidth

zoomWindowTuning

Zoom window tuning (kHz)

integrationFactor

Integration factor

channelAveragingMap

Channel averaging map

visDestinationAddress

Destination addresses for visibilities, given as a JSON object

fspChannelOffset

ID of the first (lowest bandwidth) channel generated on this FSP. See channel_offset in telescope model for more details.

outputLinkMap

TANGO attribute

scanID

Device attribute.

configID

set when transition to READY is performed

simulationMode

Device attribute.

init_command_objects() None[source]

Sets up the command objects

class InitCommand(target, op_state_model, logger=None)[source]

Bases: InitCommand

A class for the FspCorrSubarray’s init_device() “command”.

do() Tuple[ResultCode, str][source]

Stateless hook for device initialisation.

Returns:

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

Return type:

(ResultCode, str)

always_executed_hook() None[source]

Hook to be executed before any commands.

create_component_manager() FspCorrSubarrayComponentManager[source]

Create and return a component manager for this device.

Returns:

a component manager for this device.

delete_device() None[source]

Hook to delete device.

read_vccIDs() List[int][source]

Read the vccIDs attribute; FSP deals with VCC, not DISH (receptor) IDs.

Returns:

the list of assigned VCC IDs

Return type:

List[int]

read_frequencyBand() tango.DevEnum[source]

Read the frequencyBand attribute.

Returns:

the frequency band

Return type:

tango.DevEnum

read_band5Tuning() List[float][source]

Read the band5Tuning attribute.

Returns:

the band5Tuning attribute (array of float, first element corresponds to the first stream, second to the second stream).

Return type:

List[float]

read_frequencyBandOffsetStream1() int[source]

Read the frequencyBandOffsetStream1 attribute.

Returns:

the frequencyBandOffsetStream1 attribute

Return type:

int

read_frequencyBandOffsetStream2() int[source]

Read the frequencyBandOffsetStream2 attribute.

Returns:

the frequencyBandOffsetStream2 attribute.

Return type:

int

read_frequencySliceID() int[source]

Read the frequencySliceID attribute.

Returns:

the frequencySliceID attribute.

Return type:

int

read_corrBandwidth() int[source]

Read the corrBandwidth attribute.

Returns:

the corrBandwidth attribute (bandwidth to be correlated is <Full Bandwidth>/2^bandwidth).

Return type:

int

read_zoomWindowTuning() int[source]

Read the zoomWindowTuning attribute.

Returns:

the zoomWindowTuning attribute

Return type:

int

read_integrationFactor() int[source]

Read the integrationFactor attribute.

Returns:

the integrationFactor attribute (millisecond).

Return type:

int

read_channelAveragingMap() List[List[int]][source]

Read the channelAveragingMap attribute.

Returns:

the channelAveragingMap attribute. Consists of 2*20 array of integers(20 tupples representing 20* 744 channels). The first element is the ID of the first channel in a channel group. The second element is the averaging factor

Return type:

List[List[int]]

read_visDestinationAddress() str[source]

Read the visDestinationAddress attribute.

Returns:

the visDestinationAddress attribute. (JSON object containing info about current SDP destination addresses being used).

Return type:

str

write_visDestinationAddress(value: str) None[source]

Write the visDestinationAddress attribute.

Parameters:

value – the visDestinationAddress attribute value. (JSON object containing info about current SDP destination addresses being used).

read_fspChannelOffset() int[source]

Read the fspChannelOffset attribute.

Returns:

the fspChannelOffset attribute.

Return type:

int

write_fspChannelOffset(value: int) None[source]

Write the fspChannelOffset attribute.

Parameters:

value – the fspChannelOffset attribute value.

read_outputLinkMap() List[List[int]][source]

Read the outputLinkMap attribute.

Returns:

the outputLinkMap attribute.

Return type:

List[List[int]]

write_outputLinkMap(value: List[List[int]]) None[source]

Write the outputLinkMap attribute.

Parameters:

value – the outputLinkMap attribute value.

read_scanID() int[source]

Read the scanID attribute.

Returns:

the scanID attribute.

Return type:

int

write_scanID(value: int) None[source]

Write the scanID attribute.

Parameters:

value – the scanID attribute value.

read_configID() str[source]

Read the configID attribute.

Returns:

the configID attribute.

Return type:

str

write_configID(value: str) None[source]

Write the configID attribute.

Parameters:

value – the configID attribute value.

write_simulationMode(value: SimulationMode) None[source]

Set the simulation mode of the device.

Parameters:

value – SimulationMode

class OnCommand(target, op_state_model, logger=None)[source]

Bases: OnCommand

A class for the FspCorrSubarray’s On() command.

do() Tuple[ResultCode, str][source]

Stateless hook for On() command functionality.

Returns:

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

Return type:

(ResultCode, str)

class OffCommand(target, op_state_model, logger=None)[source]

Bases: OffCommand

A class for the FspCorrSubarray’s Off() command.

do() Tuple[ResultCode, str][source]

Stateless hook for Off() command functionality.

Returns:

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

Return type:

(ResultCode, str)

class StandbyCommand(target, op_state_model, logger=None)[source]

Bases: StandbyCommand

A class for the FspCorrSubarray’s Standby() command.

do() Tuple[ResultCode, str][source]

Stateless hook for Standby() command functionality.

Returns:

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

Return type:

(ResultCode, str)

class ConfigureScanCommand(target, op_state_model, obs_state_model, logger=None)[source]

Bases: ConfigureScanCommand

A class for the FspCorrSubarray’s ConfigureScan() command.

do(argin: str) Tuple[ResultCode, str][source]

Stateless hook for ConfigureScan() command functionality.

Parameters:

argin (str) – The configuration as JSON formatted string

Returns:

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

Return type:

(ResultCode, str)

Raises:

CommandError if the configuration data validation fails.

validate_input(argin: str) Tuple[bool, str][source]

Validate the configuration parameters against allowed values, as needed.

Parameters:

argin – The JSON formatted string with configuration for the device. :type argin: ‘DevString’

Returns:

A tuple containing a boolean and a string message.

Return type:

(bool, str)

ConfigureScan(argin: str) None[source]

Configure the observing device parameters for the current scan.

Parameters:

argin ('DevString') – JSON formatted string with the scan configuration.

Returns:

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

Return type:

(ResultCode, str)

class ScanCommand(target, op_state_model, obs_state_model, logger=None)[source]

Bases: ScanCommand

A class for the FspCorrSubarrFspCorrSubarrayay’s Scan() command.

do(argin: int) Tuple[ResultCode, str][source]

Stateless hook for Scan() command functionality.

Parameters:

argin (int) – The scan ID

Returns:

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

Return type:

(ResultCode, str)

Raises:

CommandError if the configuration data validation fails.

Scan(argin)[source]

Start an observing scan.

Parameters:

argin ('DevShort') – A string with the scan ID

Returns:

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

Return type:

(ResultCode, str)

class EndScanCommand(target, op_state_model, obs_state_model, logger=None)[source]

Bases: EndScanCommand

A class for the FspCorrSubarray’s Scan() command.

do() Tuple[ResultCode, str][source]

Stateless hook for Scan() command functionality.

Returns:

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

Return type:

(ResultCode, str)

Raises:

CommandError if the configuration data validation fails.

class GoToIdleCommand(target, op_state_model, obs_state_model, logger=None)[source]

Bases: GoToIdleCommand

A class for the FspCorrSubarray’s GoToIdle command.

do() Tuple[ResultCode, str][source]

Stateless hook for GoToIdle() command functionality.

Returns:

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

Return type:

(ResultCode, str)

class ObsResetCommand(target, op_state_model, obs_state_model, logger=None)[source]

Bases: ObsResetCommand

A class for the FspCorrSubarray’s ObsReset() command.

do()[source]

Stateless hook for the ObsReset() command functionality.

Returns:

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

Return type:

(ResultCode, str)

class AbortCommand(target, op_state_model, obs_state_model, logger=None)[source]

Bases: AbortCommand

A class for FspCorrSubarray’s Abort() command.

do()[source]

Calls component manager abort() command functionality.

Returns:

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

Return type:

(ResultCode, str)

is_getLinkAndAddress_allowed() bool[source]

Determine if getLinkAndAddress is allowed (allowed if destination addresses are received, meaning outputLinkMap also received (checked in subarray validate scan)).

Returns:

if getLinkAndAddress is allowed

Return type:

bool

getLinkAndAddress(argin: int) str[source]

Get output link and destination addresses in JSON based on a channel ID.

Parameters:

argin – the channel id.

Returns:

the output link and destination addresses in JSON.

Return type:

str

Abort()

Abort the current observing process and move the device to ABORTED obsState.

Returns:

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

Return type:

(ResultCode, str)

DebugDevice()

Enable remote debugging of this device.

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

DeviceID

TANGO property

EndScan()

End a running scan.

Returns:

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

Return type:

(ResultCode, str)

GetVersionInfo()

Return the version information of the device.

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

Returns:

Version details of the device.

GoToIdle()

Transit the device from READY to IDLE obsState.

Returns:

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

Return type:

(ResultCode, str)

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": []}
   ]} ]
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.

ObsReset()

Reset the observing device from a FAULT/ABORTED obsState to IDLE.

Returns:

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

Return type:

(ResultCode, str)

Off()

Turn the device off.

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

Returns:

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

Return type:

(ResultCode, str)

On()

Turn device on.

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

Returns:

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

Return type:

(ResultCode, str)

Reset()

Reset the device from the FAULT state.

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

Returns:

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

Return type:

(ResultCode, str)

SkaLevel

Device property.

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

Standby()

Put the device into standby mode.

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

Returns:

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

Return type:

(ResultCode, str)

TangoClassClass

alias of FspCorrSubarrayClass

TangoClassName = 'FspCorrSubarray'
adminMode

Device attribute.

buildState

Device attribute.

configurationDelayExpected

Device attribute.

configurationID

Device attribute.

configurationProgress

Device attribute.

controlMode

Device attribute.

deviceID

Device attribute.

healthFailureMessage

Device attribute.

healthState

Device attribute.

lastScanConfiguration

Device attribute.

loggingLevel

Device attribute.

See LoggingLevel

loggingTargets

Device attribute.

obsMode

Device attribute.

obsState

Device attribute.

sdpDestinationAddresses

Device attribute.

sdpLinkActive

Device attribute.

sdpLinkCapacity

Device attribute.

testMode

Device attribute.

versionId

Device attribute.