Skip to content

Commit

Permalink
Merge pull request #1289 from jozamudi/new-vfv-device
Browse files Browse the repository at this point in the history
Added new VCN_OpenLoop device class
  • Loading branch information
jozamudi authored Sep 27, 2024
2 parents 5b66edb + 3656689 commit 3495885
Show file tree
Hide file tree
Showing 2 changed files with 72 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
848 create new VCN_OpenLoop device class
#################

API Breaks
----------
- N/A

Library Features
----------------
- N/A

Device Features
---------------
- N/A

New Devices
-----------
- VCN_OpenLoop: similar to VCN w/ the removal of 'open' and 'position_readback'
commands. The 'state' member variable has been renamed to 'control_mode' and
the associated doc string was been updated.

Bugfixes
--------
- N/A

Maintenance
-----------
- N/A

Contributors
------------
- jozamudi
40 changes: 40 additions & 0 deletions pcdsdevices/valve.py
Original file line number Diff line number Diff line change
Expand Up @@ -858,3 +858,43 @@ class VCN_VAT590(BaseInterface, Device):
)

status = Cpt(VCN_VAT590_Status, '',)


class VCN_OpenLoop(Device):
"""
VCN = Variable Controlled Needle
VCN w/ open loop control
It corresponds to ST_VCN in the lcls-twincat-vacuum library.
"""
position_control = Cpt(
EpicsSignalWithRBV,
':POS_REQ',
kind='normal',
doc=('requested positition to control the valve '
'0-100%')
)
upper_limit = Cpt(
EpicsSignalWithRBV,
':Limit',
kind='normal',
doc=('max upper limit position to open the valve '
'0-100%')
)
interlock_ok = Cpt(
EpicsSignalRO,
':ILK_OK_RBV',
kind='normal',
doc='interlock ok status'
)
control_mode = Cpt(
EpicsSignalWithRBV,
':STATE',
kind='normal',
doc='Open mode will open valve to upper limit'
)
pos_ao = Cpt(
EpicsSignalRO,
':POS_AO_R_RBV',
kind='normal'
)

0 comments on commit 3495885

Please sign in to comment.