hvl_ccb.dev.technix.device
digraph inheritance7d3232f46f { bgcolor=transparent; rankdir=TB; size=""; "ABC" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",tooltip="Helper class that provides a standard way to create an ABC using"]; "ConfigurationMixin" [URL="../hvl_ccb.configuration.html#hvl_ccb.configuration.ConfigurationMixin",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Mixin providing configuration to a class."]; "ABC" -> "ConfigurationMixin" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Device" [URL="../hvl_ccb.dev.base.html#hvl_ccb.dev.base.Device",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Base class for devices. Implement this class for a concrete device,"]; "ConfigurationMixin" -> "Device" [arrowsize=0.5,style="setlinewidth(0.5)"]; "ABC" -> "Device" [arrowsize=0.5,style="setlinewidth(0.5)"]; "SingleCommDevice" [URL="../hvl_ccb.dev.base.html#hvl_ccb.dev.base.SingleCommDevice",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Base class for devices with a single communication protocol."]; "Device" -> "SingleCommDevice" [arrowsize=0.5,style="setlinewidth(0.5)"]; "ABC" -> "SingleCommDevice" [arrowsize=0.5,style="setlinewidth(0.5)"]; "Technix" [URL="../hvl_ccb.dev.technix.device.html#hvl_ccb.dev.technix.device.Technix",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Device class to control capacitor chargers from Technix"]; "SingleCommDevice" -> "Technix" [arrowsize=0.5,style="setlinewidth(0.5)"]; "TechnixConfig" [URL="../hvl_ccb.dev.technix.device.html#hvl_ccb.dev.technix.device.TechnixConfig",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="TechnixConfig(communication_channel: Union[type[hvl_ccb.dev.technix.base.TechnixSerialCommunication], type[hvl_ccb.dev.technix.base.TechnixTelnetCommunication]], max_voltage: Union[int, float], max_current: Union[int, float], polling_interval_sec: Union[int, float] = 4, post_stop_pause_sec: Union[int, float] = 1, register_pulse_time: Union[int, float] = 0.1, read_output_while_polling: bool = False)"]; }The device class Technix and its corresponding configuration class
- class Technix(com, dev_config)[source]
Bases:
SingleCommDevice
Device class to control capacitor chargers from Technix
- static config_cls()[source]
Return the default configdataclass class.
- Returns:
a reference to the default configdataclass class
- default_com_cls() type[hvl_ccb.dev.technix.base.TechnixSerialCommunication] | type[hvl_ccb.dev.technix.base.TechnixTelnetCommunication] [source]
Get the class for the default communication protocol used with this device.
- Returns:
the type of the standard communication protocol for this device
- property inhibit: bool | None
Is the output of the voltage inhibited? The output stage can still be active.
- property is_started: bool
Is the device started?
- property max_current: int | float
Maximal output current of the hardware in A
- property max_voltage: int | float
Maximal output voltage of the hardware in V
- query_status(*, _retry: bool = False)[source]
Query the status of the device.
- Returns:
This function returns nothing
- start()[source]
Start the device and set it into the remote controllable mode. The high voltage is turn off, and the status poller is started.
- class TechnixConfig(communication_channel: type[hvl_ccb.dev.technix.base.TechnixSerialCommunication] | type[hvl_ccb.dev.technix.base.TechnixTelnetCommunication], max_voltage: int | float, max_current: int | float, polling_interval_sec: int | float = 4, post_stop_pause_sec: int | float = 1, register_pulse_time: int | float = 0.1, read_output_while_polling: bool = False)[source]
Bases:
object
- clean_values()
Cleans and enforces configuration values. Does nothing by default, but may be overridden to add custom configuration value checks.
- communication_channel: type[hvl_ccb.dev.technix.base.TechnixSerialCommunication] | type[hvl_ccb.dev.technix.base.TechnixTelnetCommunication]
communication channel between computer and Technix
- force_value(fieldname, value)
Forces a value to a dataclass field despite the class being frozen.
NOTE: you can define post_force_value method with same signature as this method to do extra processing after value has been forced on fieldname.
- Parameters:
fieldname – name of the field
value – value to assign
- is_configdataclass = True
- classmethod keys() Sequence[str]
Returns a list of all configdataclass fields key-names.
- Returns:
a list of strings containing all keys.
- max_current: int | float
Maximal Output current
- max_voltage: int | float
Maximal Output voltage
- classmethod optional_defaults() dict[str, object]
Returns a list of all configdataclass fields, that have a default value assigned and may be optionally specified on instantiation.
- Returns:
a list of strings containing all optional keys.
- polling_interval_sec: int | float = 4
Polling interval in s to maintain to watchdog of the device
- post_stop_pause_sec: int | float = 1
Time to wait after stopping the device
- read_output_while_polling: bool = False
Read output voltage and current within the polling event
- register_pulse_time: int | float = 0.1
Time for pulsing a register
- classmethod required_keys() Sequence[str]
Returns a list of all configdataclass fields, that have no default value assigned and need to be specified on instantiation.
- Returns:
a list of strings containing all required keys.