pcdsdevices.smarpod.SmarPod
- class pcdsdevices.smarpod.SmarPod(prefix='', *, name, kind=None, read_attrs=None, configuration_attrs=None, parent=None, **kwargs)
SmarPod is a hexapod-like positioning system from SmarAct
Attribute
Class
Suffix
Docs
Kind
Notes
init
EpicsSignal
:CMD:INIT
normal
status
:STATUS
normal
cmd_unit
EpicsSignal
:CMD:UNIT
normal
unit
EpicsSignal
:UNIT
Selected SmarPod unit
normal
ver_sn
EpicsSignalRO
:VER:SN
omitted
ver_product
EpicsSignalRO
:VER:PRODUCT
omitted
ver_firmware
EpicsSignalRO
:VER:FIRMWARE
omitted
cmd_ref
EpicsSignal
:CMD:REF
normal
ref
EpicsSignalRO
:REF
Readback referenced state
normal
_ref
EpicsSignal
:_REF
Async reference response
normal
cmd_ref_method
EpicsSignal
:CMD:REF_METHOD
Set reference method
normal
ref_method
EpicsSignalRO
:REF_METHOD
Readback reference method
normal
cmd_ref_x_direct
EpicsSignal
:CMD:REF_X_DIRECT
Set reference x-direction
normal
ref_x_direct
EpicsSignalRO
:REF_X_DIRECT
Readback reference x-direction
normal
cmd_ref_y_direct
EpicsSignal
:CMD:REF_Y_DIRECT
Set reference y-direction
normal
ref_y_direct
EpicsSignalRO
:REF_Y_DIRECT
Readback reference y-direction
normal
cmd_ref_z_direct
EpicsSignal
:CMD:REF_Z_DIRECT
Set reference z-direction
normal
ref_z_direct
EpicsSignalRO
:REF_Z_DIRECT
Readback reference z-direction
normal
cmd_move
EpicsSignal
:CMD:MOVE
normal
cmd_x
EpicsSignal
:CMD:X
normal
cmd_y
EpicsSignal
:CMD:Y
normal
cmd_z
EpicsSignal
:CMD:Z
normal
cmd_rx
EpicsSignal
:CMD:RX
normal
cmd_ry
EpicsSignal
:CMD:RY
normal
cmd_rz
EpicsSignal
:CMD:RZ
normal
cmd_stop
EpicsSignal
:CMD:STOP
Stops SmarPod Movements
normal
cmd_reachable
EpicsSignal
:CMD:REACHABLE
normal
reachable
EpicsSignalRO
:REACHABLE
Test if the SP can reach a pose. Does not move the SP
normal
cmd_pos_rbv
EpicsSignal
:CMD:POS_RBV
Readback current pose position
normal
x_m
EpicsSignalRO
:X_M
normal
y_m
EpicsSignalRO
:Y_M
normal
z_m
EpicsSignalRO
:Z_M
normal
x
EpicsSignalRO
:X
normal
y
EpicsSignalRO
:Y
normal
z
EpicsSignalRO
:Z
normal
rx
EpicsSignalRO
:RX
normal
ry
EpicsSignalRO
:RY
normal
rz
EpicsSignalRO
:RZ
normal
moving
EpicsSignal
:MOVING
Movement status
normal
cmd_sync
EpicsSignal
:CMD:SYNC
normal
error_code
EpicsSignalRO
:ERROR_CODE
normal
error_desc
EpicsSignalRO
:ERROR_DESC
normal
cmd_pivot_rbv
EpicsSignal
:CMD:PIVOT_RBV
Readback pivot point
normal
cmd_set_pivot
EpicsSignal
:CMD:SET_PIVOT
normal
cmd_sync_pivot
EpicsSignal
:CMD:SYNC_PIVOT
normal
cmd_pivot_mode
EpicsSignal
:CMD:PIVOT_MODE
normal
pivot_mode
EpicsSignal
:PIVOT_MODE
Pivot mode
normal
px_m
EpicsSignal
:PX_M
normal
py_m
EpicsSignal
:PY_M
normal
pz_m
EpicsSignal
:PZ_M
normal
px
EpicsSignal
:PX
normal
py
EpicsSignal
:PY
normal
pz
EpicsSignal
:PZ
normal
cmd_px
EpicsSignal
:CMD:PX
normal
cmd_py
EpicsSignal
:CMD:PY
normal
cmd_pz
EpicsSignal
:CMD:PZ
normal
cmd_sensor_mode
EpicsSignal
:CMD:SENSOR_MODE
normal
sensor_mode
EpicsSignal
:SENSOR_MODE
Sensor mode
normal
cmd_freq
EpicsSignal
:CMD:FREQ
normal
freq
EpicsSignal
:FREQ
normal
cmd_vel
EpicsSignal
:CMD:VEL
sets movement velocity
normal
vel
EpicsSignal
:VEL
current speed-control and speed settings
normal
cmd_accel
EpicsSignal
:CMD:ACCEL
sets movement acceleration
normal
accel
EpicsSignal
:ACCEL
current acceleration-control and acceleration settings
normal
pose_1
:POSE_1
normal
pose_2
:POSE_2
normal
pose_3
:POSE_3
normal
pose_4
:POSE_4
normal
pose_5
:POSE_5
normal
cmd_read_status
EpicsSignal
:CMD:READ_STATUS
normal
cmd_calibrate
EpicsSignal
:CMD:CALIBRATE
normal
cmd_read_ver
EpicsSignal
:CMD:READ_VER
normal
ver_sys
EpicsSignalRO
:VER:SYS
omitted
Methods
- configure(d: Dict[str, Any]) Tuple[Dict[str, Any], Dict[str, Any]]
Configure the device for something during a run
This default implementation allows the user to change any of the
configuration_attrs
. Subclasses might override this to perform additional input validation, cleanup, etc.- Parameters:
d (dict) – The configuration dictionary. To specify the order that the changes should be made, use an OrderedDict.
- Returns:
(old, new) tuple of dictionaries
Where old and new are pre- and post-configure configuration states.
- describe() OrderedDictType[str, Dict[str, Any]]
Provide schema and meta-data for
read()
.This keys in the
OrderedDict
this method returns must match the keys in theOrderedDict
return byread()
.This provides schema related information, (ex shape, dtype), the source (ex PV name), and if available, units, limits, precision etc.
- Returns:
data_keys (OrderedDict) – The keys must be strings and the values must be dict-like with the
event_model.event_descriptor.data_key
schema.
- get(**kwargs)
Get the value of all components in the device
Keyword arguments are passed onto each signal.get(). Components beginning with an underscore will not be included.
- read() OrderedDictType[str, Dict[str, Any]]
Read data from the device.
This method is expected to be as instantaneous as possible, with any substantial acquisition time taken care of in
trigger()
.The
OrderedDict
returned by this method must have identical keys (in the same order) as theOrderedDict
returned bydescribe()
.By convention, the first key in the return is the ‘primary’ key and maybe used by heuristics in
bluesky
.The values in the ordered dictionary must be dict (-likes) with the keys
{'value', 'timestamp'}
. The'value'
may have any type, the timestamp must be a float UNIX epoch timestamp in UTC.- Returns:
data (OrderedDict) – The keys must be strings and the values must be dict-like with the keys
{'value', 'timestamp'}
- read_configuration() OrderedDictType[str, Dict[str, Any]]
Dictionary mapping names to value dicts with keys: value, timestamp
To control which fields are included, change the Component kinds on the device, or modify the
configuration_attrs
list.
- stop(*, success=False)
Stop the Device and all (instantiated) subdevices
- summary()
- trigger() StatusBase
Trigger the device and return status object.
This method is responsible for implementing ‘trigger’ or ‘acquire’ functionality of this device.
If there is an appreciable time between triggering the device and it being able to be read (via the
read()
method) then this method is also responsible for arranging that theStatusBase
object returned by this method is notified when the device is ready to be read.If there is no delay between triggering and being readable, then this method must return a
StatusBase
object which is already completed.- Returns:
status (StatusBase) –
StatusBase
object which will be marked as complete when the device is ready to be read.
Attributes
- configuration_attrs
- connected
- hints
- kind