Field station component manager
This module implements the component management for FieldStation.
- class FieldStationComponentManager(logger, station_name, fndh_name, smartbox_names, nof_blocks, communication_state_callback, component_state_changed, event_serialiser=None, _fndh_proxy=None, _smartbox_proxys=None)
A component manager for MccsFieldStation.
- __init__(logger, station_name, fndh_name, smartbox_names, nof_blocks, communication_state_callback, component_state_changed, event_serialiser=None, _fndh_proxy=None, _smartbox_proxys=None)
Initialise a new instance.
- Parameters:
logger (
Logger) – a logger for this object to usestation_name (
str) – the station name.fndh_name (
str) – the name of the fndh this field station encompassessmartbox_names (
list[str]) – the names of the smartboxes this field station encompassesnof_blocks (
int) – the number of blocks to split smartboxes into for ON command execution.communication_state_callback (
Callable[...,None]) – callback to be called when the status of the communications channel between the component manager and its component changescomponent_state_changed (
Callable[...,None]) – callback to be called when the component state changesevent_serialiser (
Optional[EventSerialiser]) – the event serialiser to be used by this object._fndh_proxy (
Optional[DeviceComponentManager]) – a injected fndh proxy for purposes of testing only._smartbox_proxys (
Optional[dict[str,DeviceComponentManager]]) – injected smartbox proxys for purposes of testing only.
- abort(task_callback=None)
Abort in-flight tasks and propagate to the PaSD bus via the FNDH.
Calls the base class abort to signal the task abort event, then calls Abort on the FNDH device, which in turn aborts pending port power changes on the PaSD bus.
- configure(configure_args, task_callback, task_abort_event=None)
Configure the field station.
Currently this only supports configuring FNDH alarm thresholds.
- do_off(task_callback, task_abort_event=None)
Turn off the FieldStation.
Turning off the FieldStation will cut off power to all antennas that make up that FieldStation.
- do_on(task_callback, task_abort_event=None)
Turn on the FieldStation.
Turning on the FieldStation will distribute power to all antennas that make up that FieldStation.
- do_standby(task_callback, task_abort_event=None)
Turn the FieldStation to Standby.
Turning the FieldStation to Standby will turn on all smartboxes, but leave their ports turned off.
- power_off_antenna(antenna_name, task_callback, task_abort_event=None)
Turn off an antenna.
The Field station knows what ports need to be turned on and what fndh and smartboxes it is connected to.
- power_on_antenna(antenna_name, task_callback, task_abort_event=None)
Turn on an antenna on this station.
- set_antenna_masking(antenna_mask, task_callback, task_abort_event=None)
Set the masking status for antennas across smartboxes.
Completes with
REJECTEDif none of the supplied antenna names are found on any smartbox.
- smartbox_state_change(smartbox_trl, power)
Register a state change for a smartbox.
- Parameters:
smartbox_trl (
str) – the name of the smartbox with a state changepower (
PowerState) – the power state of the smartbox.
- Return type: