MCCSSubarray

Overview

MCCS configuration and scan control is achieved via communication with a MCCSSubarray Tango device. Additionally, the MCCSSubarray device presents a device attribute that lists the resources allocated to that subarray.

The diagram below shows the packages and high-level object model used for communication with an MCCSSubarray device.

High-level overview of MCCSSubarray packages and classes

High-level object model for communication with a MCCSSubarray device.

Classes in the assigned_resources.py module model the resource allocation status JSON string returned by the MCCSSubarray.assigned_resources attribute.

Classes in the configure.py module model the arguments for the MCCSSubarray.Configure() command.

Classes in the scan.py module model the arguments for the MCCSSubarray.Scan() command.

assigned_resources.py

Overview of the assigned_resources module

High-level overview of the assigned_resources module

The assigned_resources.py module models the the JSON returned by reading the MCCSSubarray.assigned_resources attribute.

Example JSON returned by MCCSSubarray.assigned_resources:

{
  "interface": "https://schema.skatelescope.org/ska-low-mccs-assignedresources/1.0",
  "subarray_beam_ids": [1],
  "station_ids": [[1,2]],
  "channel_blocks": [3]
}

configure.py

Overview of the configure module

High-level overview of the configure module

The configure.py module models the the JSON input for an MCCSSubarray.configure() command.

Example JSON input for an MCCSSubarray.Configure call:

{
  "interface": "https://schema.skatelescope.org/ska-low-mccs-configure/1.0",
  "stations":[
    {
      "station_id": 1
    },
    {
      "station_id":2
    }
  ],
  "subarray_beams": [
    {
      "subarray_beam_id":1,
      "station_ids": [1, 2],
      "update_rate": 0.0,
      "channels": [
        [0,8,1,1],
        [8,8,2,1],
        [24,16,2,1]
      ],
      "sky_coordinates": [0.0, 180.0, 0.0, 45.0, 0.0],
      "antenna_weights": [1.0, 1.0, 1.0],
      "phase_centre": [0.0, 0.0]
    }
  ]
}

scan.py

scan.py object model

scan.py object model

The scan.py module models the argument for the MCCSSubarray.scan() command.

Example JSON input for an MCCSSubarray.scan() call:

{
  "interface": "https://schema.skatelescope.org/ska-low-mccs-scan/1.0",
  "scan_id":1,
  "start_time": 0.0
}