From 736256900698b7120847732b92aed99dbde9b589 Mon Sep 17 00:00:00 2001 From: appleb_m Date: Thu, 15 Jan 2026 17:09:16 +0100 Subject: [PATCH] DAQ: devices added functionality for aerotech omega and zoom control --- src/aare/daq/devices.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/aare/daq/devices.py b/src/aare/daq/devices.py index a7957d70..70f13710 100644 --- a/src/aare/daq/devices.py +++ b/src/aare/daq/devices.py @@ -13,8 +13,9 @@ from epics import PV from aare.common.beamline import MXBeamline from aare.common.coordinate import Coordinate, SmargonCoordinate from aare.common.models import SampleCameraSettings, StagePositionEnum -from aare.devices import smargon +from aare.devices import smargon, aerotech from aare.devices.area_detector import epicsAD +from aare.devices.enum_pv import EnumPv from aare.devices.my_motor import MyMotor @@ -26,6 +27,9 @@ class BeamlineDevices: self.__ring_current_pv = PV(f"ARS07-DPCT-0100:CURR") self.__dtz = MyMotor(f"{BEAMLINE}-ES-DET:TRZ") self.__sample_cam = epicsAD(f"{BEAMLINE}-SAMCAM:") + self.__back_light = EnumPv(f"{BEAMLINE}-ES-BL") + self.__zoom = PV("{BEAMLINE}-ES-SAMCAM:ZOOM") + self.__aerotech = aerotech.AerotechControllerEpics(beamline) # Transmission @property @@ -50,14 +54,14 @@ class BeamlineDevices: # Zoom @property def zoom(self) -> float: - return 0 + return self.__zoom.get() @zoom.setter def zoom(self, value: float): self.set_zoom(value, wait=False) def set_zoom(self, value: float, /, wait: bool = True): - pass + self.__zoom.put(value, wait=wait) # Collimator @property @@ -189,14 +193,14 @@ class BeamlineDevices: @property def aerotech_omega(self) -> float: - return 0.0 + return self.__aerotech.omega.readback @aerotech_omega.setter def aerotech_omega(self, val: float): self.set_omega(val, wait=True) def set_aerotech_omega(self, val: float, /, wait: bool = True): - pass + self.__aerotech.omega.move(val, wait=wait) @property def aerotech_lock(self) -> bool: