Valves and Stoppers

GateValves

class pcdsdevices.epics.GateValve(prefix, *, name=None, read_attrs=None, **kwargs)

Basic Vacuum Valve

commands

Enum – Command aliases for valve

command

Component attribute

Component(EpicsSignal, ':OPN_SW')
interlock

Component attribute

Component(EpicsSignalRO, ':OPN_OK')
interlocked

Whether the interlock on the valve is active, preventing the valve from opening

limits

Component attribute

Component(ValveLimits, '')
open(wait=False, timeout=None, **kwargs)

Open the valve

Parameters:
  • wait (bool, optional) – Wait for the command to finish
  • timeout (float, optional) – Default timeout to wait mark the request as a failure
Raises:

InterlockError: – When the gate valve can not be opened due to a vacuum interlock

Returns:

Future that reports the completion of the request

Return type:

StateStatus

Stoppers

class pcdsdevices.epics.Stopper(prefix, *, name=None, read_attrs=None, **kwargs)

Controls Stopper

Similar to the GateValve, the Stopper class provides basic support for Controls stoppers i.e stoppers that can be commanded from outside the PPS system

Parameters:
  • prefix (str) – Full PPS Stopper PV
  • name (str, optional) – Alias for the stopper
close(wait=False, timeout=None)

Close the stopper

Parameters:
  • wait (bool, optional) – Wait for the command to finish
  • timeout (float, optional) – Default timeout to wait mark the request as a failure
Returns:

Future that reports the completion of the request

Return type:

StateStatus

command

Component attribute

Component(EpicsSignal, ':CMD')
commands

alias of Commands

insert(*args, **kwargs)

Alias for close() for lightpath interface

limits

Component attribute

Component(Limits, '')
open(wait=False, timeout=None)

Open the stopper

Parameters:
  • wait (bool, optional) – Wait for the command to finish
  • timeout (float, optional) – Default timeout to wait mark the request as a failure
Returns:

Future that reports the completion of the request

Return type:

StateStatus

remove(*args, **kwargs)

Alias for open() for lightpath interface

subscribe(cb, event_type=None, run=True)

Subscribe to changes of the valve

Parameters:
  • cb (callable) – Callback to be run
  • event_type (str, optional) – Type of event to run callback on
  • run (bool, optional) – Run the callback immediatelly
class pcdsdevices.epics.PPSStopper(prefix, *, name=None, read_attrs=None, in_state='IN', out_state='OUT', mps_prefix=None, **kwargs)

PPS Stopper

Control of this device only available to PPS systems. This class merely interprets the summary of limit switches to let the controls system know the current position

Parameters:
  • prefix (str) – Full PPS Stopper PV
  • name (str, optional) – Alias for the stopper
  • in_state (str, optional) – String associatted with in enum value
  • out_state (str, optional) – String associatted with out enum value
mps

FormattedComponent attribute

FormattedComponent(MPS, '{self._mps_prefix}', veto=True)
subscribe(cb, event_type=None, run=True)

Subscribe to changes of the PPSStopper

Parameters:
  • cb (callable) – Callback to be run
  • event_type (str, optional) – Type of event to run callback on
  • run (bool, optional) – Run the callback immediatelly
summary

Component attribute

Component(EpicsSignalRO, '')