Added insertion device proxy
This commit is contained in:
parent
82a37ceb38
commit
19f5f728cc
@ -1,10 +1,10 @@
|
||||
idgap:
|
||||
desc: 'Undulator gap size [mm]'
|
||||
acquisition: {schedule: sync}
|
||||
config: {name: idgap, read_pv: 'X12SA-ID-GAP:READ'}
|
||||
config: {name: idgap, prefix: 'X12SA-ID'}
|
||||
deviceGroup: monitor
|
||||
status: {enabled: true}
|
||||
type: EpicsSignalRO
|
||||
type: InsertionDevice
|
||||
bm1trx:
|
||||
desc: 'FrontEnd XBPM 1 horizontal movement'
|
||||
acquisition: {schedule: sync}
|
||||
|
43
ophyd_devices/epics/proxies/InsertionDevice.py
Normal file
43
ophyd_devices/epics/proxies/InsertionDevice.py
Normal file
@ -0,0 +1,43 @@
|
||||
from ophyd import PVPositioner, Component, EpicsSignal, EpicsSignalRO, Kind
|
||||
|
||||
|
||||
class InsertionDevice(PVPositioner):
|
||||
""" Python wrapper for the CSAXS insertion device control
|
||||
|
||||
This wrapper provides a positioner interface for the ID control.
|
||||
is completely custom XBPM with templates directly in the
|
||||
VME repo. Thus it needs a custom ophyd template as well...
|
||||
|
||||
WARN: The x and y are not updated by the IOC
|
||||
"""
|
||||
status = Component(EpicsSignalRO, "-USER:STATUS", auto_monitor=True)
|
||||
errorSource = Component(EpicsSignalRO, "-USER:ERROR-SOURCE", auto_monitor=True)
|
||||
isOpen = Component(EpicsSignalRO, "-GAP:ISOPEN", auto_monitor=True)
|
||||
|
||||
# PVPositioner interface
|
||||
setpoint = Component(EpicsSignal, "-GAP:SET", auto_monitor=True)
|
||||
readback = Component(EpicsSignalRO, "-GAP:READ", auto_monitor=True, kind=Kind.hinted)
|
||||
done = Component(EpicsSignalRO, ":DONE", auto_monitor=True)
|
||||
stop_signal = Component(EpicsSignal, "-GAP:STOP", kind=Kind.omitted)
|
||||
|
||||
# Automatically start simulation if directly invoked
|
||||
# (NA for important devices)
|
||||
if __name__ == "__main__":
|
||||
pass
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -2,3 +2,4 @@ from .DelayGeneratorDG645 import DelayGeneratorDG645
|
||||
from .slits import SlitH, SlitV
|
||||
from .XbpmBase import XbpmBase, XbpmCsaxsOp
|
||||
from .SpmBase import SpmBase
|
||||
from .InsertionDevice import InsertionDevice
|
||||
|
Loading…
x
Reference in New Issue
Block a user