Spectrum analyser subpackage (ska_ser_test_equipment.spectrum_analyser)
This subpackage implements monitoring and control of spectrum analysers.
- class ska_ser_test_equipment.spectrum_analyser_anritsu.SpectrumAnalyserComponentManagerAnritsu(interface_definition, protocol, host, port, logger, communication_state_callback, component_state_callback, update_rate=5.0)
A component manager for a spectrum analyser.
- __init__(interface_definition, protocol, host, port, logger, communication_state_callback, component_state_callback, update_rate=5.0)
Initialise a new instance.
- Parameters:
interface_definition (
InterfaceDefinitionType
) – definition of the spectrum analyser’s SCPI interface.protocol (
Literal
['tcp'
,'telnet'
]) – the network protocol to be used to communicate with the spectrum analyser.host (
str
) – the host name or IP address of the spectrum analyser.port (
int
) – the port of the spectrum analyser.logger (
Logger
) – a logger for this component manager to use for logging.communication_state_callback (
Callable
) – callback to be called when the status of communications between the component manager and its component changes.component_state_callback (
Callable
) – callback to be called when the state of the component changes.update_rate (
float
) – how often updates to attribute values should be provided. This is not necessarily the same as the rate at which the instrument is polled. For example, the instrument may be polled every 0.1 seconds, thus ensuring that any invoked commands or writes will be executed promptly. However, if the update_rate is 5.0, then routine reads of instrument values will only occur every 50th poll (i.e. every 5 seconds).
- acquire(task_callback=None)
Collect a new trace.
Depending on the configuration of the spectrum analyser, this could be a long-running operation - for instance if the trace is configured to average over a number of samples.
- get_request()
Return the reads and writes to be executed in the next poll.
- Return type:
- Returns:
reads and writes to be executed in the next poll.
- get_trace(task_callback=None)
Get a trace.
- off(task_callback=None)
Turn the component off.
- Parameters:
task_callback (
Optional
[Callable
]) – callback to be called when the status of the command changes.- Raises:
NotImplementedError – because this command is not yet implemented.
- Return type:
- on(task_callback=None)
Turn the component on.
- Parameters:
task_callback (
Optional
[Callable
]) – callback to be called when the status of the command changes.- Raises:
NotImplementedError – because this command is not yet implemented.
- Return type:
- poll(poll_request)
Poll the hardware.
Connect to the hardware, write any values that are to be written, and then read all values.
- Parameters:
poll_request (
AttributeRequest
) – specification of the reads and writes to be performed in this poll.- Return type:
- Returns:
responses to queries in this poll.
- poll_succeeded(poll_response)
Handle the receipt of new polling values.
This is a hook called by the poller when values have been read during a poll.
- Parameters:
poll_response (
AttributeResponse
) – response to the pool, including any values read.- Return type:
- polling_stopped()
Respond to polling having stopped.
This is a hook called by the poller when it stops polling.
- Return type:
- reset(task_callback=None)
Reset the component (from fault state).
- send_receive(attribute_request)
Send an attribute request, and receive an attribute response.
- Parameters:
attribute_request (
AttributeRequest
) – details of the attribute request to be sent.- Return type:
- Returns:
details of the attribute response.
- standby(task_callback=None)
Put the component into low-power standby mode.
- Parameters:
task_callback (
Optional
[Callable
]) – callback to be called when the status of the command changes.- Raises:
NotImplementedError – because this command is not yet implemented.
- Return type:
- write_attribute(**kwargs)
Update spectrum analyser attribute value(s).
This doesn’t actually immediately write to the spectrum analyser. It only stores the details of the requested write where it will be picked up by the next iteration of the polling loop.
- class ska_ser_test_equipment.spectrum_analyser_anritsu.SpectrumAnalyserDeviceAnritsu(*args, **kwargs)
The device.
- attenuation(value)
Set value for Input Attenuation.
- attribute_poll(attr_name)
Check if instrument should be read.
- autoattenuation(value)
Set status of automatic attenuation.
- continuous(value)
Specify whether the sweep/measurement is triggered continuously.
- create_component_manager()
Create and return a component manager for this device.
- Return type:
- flag_when_complete(value)
Set OPC bit of Standard Event Status Register on next transition of No Op.
- identity()
Get manufacturer name, model number, serial number, and firmware package number.
- Return type:
- Returns:
identity string
- init_command_objects()
Register command objects (handlers) for this device’s commands.
- Return type:
- init_device()
Initialize the device.
- Raises:
ValueError – when YAML file can not be read
- Return type:
- marker_find_peak()
Move X value to point in marker’s assigned trace that has highest peak.
- Return type:
- marker_frequency(value)
Set marker frequency.
- marker_power(value)
Set amplitude value.
- maximum_value_check(attr_name, attr_value)
Check attribute value.
- minimum_value_check(attr_name, attr_value)
Check attribute value.
- operation_complete()
Get operation complete.
- preamp_enabled(value)
Set state of the preamp.
- rbw(value)
Set resolution bandwidth.
- rbw_auto(value)
Set state of the coupling of the resolution bandwidth to the frequency span.
- sweep_points(value)
Set number of display points.
- trace1()
Get trace data.
Trace data uses SCPI standard (IEEE 488.2) block data format. The data format is ‘#AXD’, where D is a comma separated list of amplitudes (in ASCII), X is one or more ASCII digits specifying the number of bytes in D, and A is a single ASCII digit specifying the number of digits in X.
- Return type:
- Returns:
list of float values
- trace1_bin()
Get trace data.
- Return type:
DevVarFloatArray
- Returns:
list of float values
- trace_format(value)
Set format in which data is returned.
Valid values are <ASCii|INTeger|REAL>,[<32|64>]
- vbw(value)
Set video bandwidth.
- class ska_ser_test_equipment.spectrum_analyser_anritsu.SpectrumAnalyserSimulatorAnritsu(model, **kwargs)
A spectrum analyser simulator TCP server.
- __init__(model, **kwargs)
Initialise a new spectrum analyser simulator.
- add_marker(mk_flag=None)
Add a marker.
- flag_when_complete(c_flag=None)
Raise a flag when command is complete.
- marker_find_peak()
Set marker_frequency and marker_power based on the current trace’s peak.
- Return type:
- marker_frequency(mark_freq=None)
Return the frequency of the peak.
This method overrides the default behaviour (simply reading the attribute value) to ensure that the number of markers is checked first.
- marker_power(mark_pwr=None)
Return the power at the peak.
This method overrides the default behaviour (simply reading the attribute value) to ensure that the number of markers is checked first.
- operation_complete()
Return whether all previous operations are complete.
This only returns true if
flag_when_complete()
was called while the operation was running, and the operation is now complete.- Return type:
- Returns:
whether all previous operations are complete.