Skip to content

Commit 8f42044

Browse files
committed
iswap_rotation_drive_request_y
1 parent cc709ae commit 8f42044

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

pylabrobot/liquid_handling/backends/hamilton/STAR_backend.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3113,7 +3113,7 @@ async def move_channel_y(self, channel: int, y: float):
31133113
)
31143114
else:
31153115
if self.iswap_installed:
3116-
max_y_pos = await self.iswap_request_module_y()
3116+
max_y_pos = await self.iswap_rotation_drive_request_y()
31173117
limit = "iswap module y-position"
31183118
else:
31193119
# STAR machines do not allow channels y > 635 mm
@@ -6472,7 +6472,7 @@ async def move_iswap_y_relative(self, step_size: float, allow_splitting: bool =
64726472
# we only need to check for positive step sizes because the iswap is always behind the first channel
64736473
if step_size < 0:
64746474
y_pos_channel_0 = await self.request_y_pos_channel_n(0)
6475-
current_y_pos_iswap = await self.iswap_request_module_y()
6475+
current_y_pos_iswap = await self.iswap_rotation_drive_request_y()
64766476
if current_y_pos_iswap + step_size < y_pos_channel_0:
64776477
raise ValueError(
64786478
f"iSWAP will hit the first (backmost) channel. Current iSWAP Y position: {current_y_pos_iswap} mm, "
@@ -7216,8 +7216,10 @@ async def request_iswap_position(self) -> Coordinate:
72167216
z=(resp["zj"] / 10) * (1 if resp["zd"] == 0 else -1),
72177217
)
72187218

7219-
async def iswap_request_module_y(self) -> float:
7220-
"""Request iSWAP module (not gripper) Y position in mm"""
7219+
async def iswap_rotation_drive_request_y(self) -> float:
7220+
"""Request iSWAP rotation drive Y position (center) in mm. This is equivalent to the y location of the iSWAP module."""
7221+
if not self.iswap_installed:
7222+
raise RuntimeError("iSWAP is not installed")
72217223
resp = await self.send_command(module="R0", command="RY", fmt="ry##### (n)")
72227224
iswap_y_pos = resp["ry"][1] # 0 = FW counter, 1 = HW counter
72237225
return round(STARBackend.y_drive_increment_to_mm(iswap_y_pos), 1)

0 commit comments

Comments
 (0)