Station Calibrator Component Manager

This module implements component management for station calibrators.

class StationCalibratorComponentManager(*args: Any, **kwargs: Any)[source]

A component manager for a station calibrator.

__init__(logger: Logger, station_name: str, station_id: int, calibration_store_name: str, calibration_solver_trl: str, communication_state_callback: Callable[[ska_control_model.CommunicationStatus], None], component_state_callback: Callable[[...], None]) None[source]

Initialise a new instance.

Parameters:
  • logger – the logger to be used by this object.

  • station_name – the name of this calibrator’s station

  • station_id – the id of the station.

  • calibration_store_name – the name of this calibrator’s calibration store

  • calibration_solver_trl – the trl of the solver device.

  • communication_state_callback – callback to be called when the status of the communications channel between the component manager and its component changes.

  • component_state_callback – callback to be called when the component state changes.

get_calibration(channel: int) list[float][source]

Get a calibration from the calibration store.

Parameters:

channel – the frequency channel to calibrate for

Raises:

ValueError – if the outside temperature has not been read yet

Returns:

A list of calibration values

start_calibration_loop(kwargs: dict[str, Any]) tuple[list[ska_control_model.ResultCode], list[str | None]][source]

Start the calibration loop.

Parameters:

kwargs – kwargs to define calibration.

Returns:

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

start_communicating() None[source]

Establish communication with the StationCalibrator components.

stop_calibration_loop() tuple[list[ska_control_model.ResultCode], list[str | None]][source]

Stop the calibration loop from running.

Returns:

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

stop_communicating() None[source]

Break off communication with the StationCalibrator components.