nomad_camels_driver_PID package

Submodules

nomad_camels_driver_PID.PID module

class nomad_camels_driver_PID.PID.PID_wait_for_stable(name='', parent_step=None, step_info=None, **kwargs)

Bases: Loop_Step

get_add_main_string()

Adds for example a call to the protocol function to the steps_add_main function of the script.

get_protocol_string(n_tabs=1)

Returns the string that is written into the protocol-file. To make use of the time_weight and status bar, it should start with printing, that the loop_step starts.

Parameters:

n_tabs (int) – (Default value = 1) Number of tabs for indentation inside the script

Returns:

protocol_string – The string representing the step

Return type:

str

update_used_devices()

Should update used_devices to include all necessary devices.

class nomad_camels_driver_PID.PID.PID_wait_for_stable_config(loop_step: PID_wait_for_stable, parent=None)

Bases: Loop_Step_Config

staticMetaObject = PySide6.QtCore.QMetaObject("PID_wait_for_stable_config" inherits "Loop_Step_Config": )
update_step_config()

Overwrite this for specific step-configuration. It should provide the loop_step object with all necessary data.

class nomad_camels_driver_PID.PID.subclass(**kwargs)

Bases: Device

get_config()

returns self.config, should be overwritten for special purposes (e.g. leaving out some keys of the dictionary)

Returns:

self.config

Return type:

dict

get_necessary_devices()

Returns a list of the devices that this device needs to function (e.g. for a PID controller).

get_special_steps()

returns a dictionary containing containing device-specific loopsteps. The key is the loopstep’s name, the value a list containing the Class of the step, and its config-widget.

Returns:

steps

Return type:

dict{‘<step_name>’: [Step_Class, Step_Config]}

class nomad_camels_driver_PID.PID.subclass_config(parent=None, data='', settings_dict=None, config_dict=None, additional_info=None)

Bases: Device_Config

get_config()

Returns the config_dict of the device. Overwrite this function for each device to specify the config.

get_settings()

Updates the settings_dict with the current settings. Overwrite this function for each device to specify the settings. It is recommended to still call the super() method for the connection-settings.

staticMetaObject = PySide6.QtCore.QMetaObject("subclass_config" inherits "Device_Config": )

nomad_camels_driver_PID.PID_config_sub module

class nomad_camels_driver_PID.PID_config_sub.subclass_config_sub(settings_dict=None, parent=None, config_dict=None)

Bases: Device_Config_Sub

file_changed()
get_config()
get_settings()
staticMetaObject = PySide6.QtCore.QMetaObject("subclass_config_sub" inherits "Device_Config_Sub": )
val_choice_switch()

nomad_camels_driver_PID.PID_manual_control module

class nomad_camels_driver_PID.PID_manual_control.PID_Manual_Control_Config(parent=None, control_data=None)

Bases: Manual_Control_Config

accept()
staticMetaObject = PySide6.QtCore.QMetaObject("PID_Manual_Control_Config" inherits "Manual_Control_Config": )
class nomad_camels_driver_PID.PID_manual_control.PID_manual_control(parent=None, control_data=None)

Bases: Manual_Control

change_on_state(on)
change_setpoint()
change_show_plot()
change_state()
change_update_time()
close(self) bool
closeEvent(a0) None

Overwritten, so that self.closing is emitted, telling the main UI window that this manual control is no longer opened.

data_update(setp, pid_val, output, on)
device_ready()

Called when the devices are ready to be used, i.e. when the instantiate_devices_thread is finished.

show_settings()
staticMetaObject = PySide6.QtCore.QMetaObject("PID_manual_control" inherits "Manual_Control": )
update_settings()
class nomad_camels_driver_PID.PID_manual_control.PID_update_thread(parent=None, device=None)

Bases: QThread

data_sig
do_reading()
run(self) None
staticMetaObject = PySide6.QtCore.QMetaObject("PID_update_thread" inherits "QThread": Methods:   #12 type=Signal, signature=data_sig(double,double,double,bool), parameters=double, double, double, bool )

nomad_camels_driver_PID.PID_ophyd module

class nomad_camels_driver_PID.PID_ophyd.PID_Controller(prefix='', *, name, kind=None, read_attrs=None, configuration_attrs=None, parent=None, pid_val_table=None, read_conv_func=None, auto_pid=True, interpolate_auto=True, set_conv_func=None, bias_signal=None, set_signal=None, read_signal=None, show_plot=False, **kwargs)

Bases: Device

change_show_plot(show)
component_names = ('output_value', 'current_value', 'setpoint', 'pid_stable', 'pid_on', 'p_value', 'i_value', 'd_value', 'kp', 'ki', 'kd', 'dt', 'min_value', 'max_value')
current_value

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

current_value_read()
d_value

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

data_update(timestamp, setpoint, current, output, kid)
dt

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

finalize_steps()
get_output()
i_value

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

kd

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

ki

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

kp

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

max_value

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

min_value

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

output_value

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

p_value

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

pid_on

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

pid_stable

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

read_d()
read_i()
read_p()
set_Kd(value)
set_Ki(value)
set_Kp(value)
set_dt(value)
set_maxval(value)
set_minval(value)
set_pid_on(value)
setpoint

A descriptor representing a device component (or signal)

Unrecognized keyword arguments will be passed directly to the component class initializer.

Parameters:
  • cls (class) –

    Class of signal to create. The required signature of cls.__init__ is (if suffix is given):

    def __init__(self, pv_name, parent=None, **kwargs):
    

    or (if suffix is None)

    def __init__(self, parent=None, **kwargs):
    

    The class may have a wait_for_connection() which is called during the component instance creation.

  • suffix (str, optional) – The PV suffix, which gets appended onto parent.prefix to generate the final PV that the instance component will bind to. Also see add_prefix

  • lazy (bool, optional) – Lazily instantiate the signal. If False, the signal will be instantiated upon component instantiation. Defaults to component.lazy_default.

  • trigger_value (any, optional) – Mark as a signal to be set on trigger. The value is sent to the signal at trigger time.

  • add_prefix (sequence, optional) – Keys in the kwargs to prefix with the Device PV prefix during creation of the component instance. Defaults to ('suffix', 'write_pv', )

  • doc (str, optional) – string to attach to component DvcClass.component.__doc__

stable_check()
subscriptions: ClassVar[FrozenSet[str]] = frozenset({'acq_done'})
update_PID_vals(setpoint, force=False)
update_pid_settings(settings)
update_vals_to_thread(setpoint)
class nomad_camels_driver_PID.PID_ophyd.PID_Thread(pid_device, Kp=1.0, Ki=1.0, Kd=1.0, setpoint=0, sample_time=1, output_limits=(None, None), auto_mode=False, proportional_on_measurement=False, error_map=None, **kwargs)

Bases: QThread

new_data
pid_step()
run(self) None
staticMetaObject = PySide6.QtCore.QMetaObject("PID_Thread" inherits "QThread": Methods:   #12 type=Signal, signature=new_data(double,double,double,double,PyObject), parameters=double, double, double, double, PyObject )
update_pid(Kp=None, Ki=None, Kd=None, setpoint=None, sample_time=None, output_limits=None, auto_mode=True, proportional_on_measurement=False, error_map=None)
nomad_camels_driver_PID.PID_ophyd.helper_ptX(x, r, a, b, c)
nomad_camels_driver_PID.PID_ophyd.pt1000(rMeas)
nomad_camels_driver_PID.PID_ophyd.pt1000_inv(T)
nomad_camels_driver_PID.PID_ophyd.ptX(rMeas, rX=1000)
nomad_camels_driver_PID.PID_ophyd.ptX_inv(T, rX=1000)

Module contents