Skip to content

Commit 9c50cb9

Browse files
committed
Added a need_homed property to the stage ABC to indicate if stages need homing
1 parent 2788015 commit 9c50cb9

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

microscope/abc.py

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1468,6 +1468,27 @@ def axes(self) -> typing.Mapping[str, StageAxis]:
14681468
"""
14691469
raise NotImplementedError()
14701470

1471+
@property
1472+
def need_homed(self) -> bool:
1473+
"""Boolean flag to say if the stage needs to be homed. Many stages
1474+
need to be driven to their limts at startup to find a repeatable zero
1475+
position and sometimes to find their limits as well.
1476+
1477+
By default this function returns "False". If the stage needs
1478+
to be homed then this function should be overwritten to return
1479+
"True" until the homing operation has been performed.
1480+
Additionaly a stage that needs to be homed should implement a
1481+
home() fucntion that performs the home move, sets limits and
1482+
leaves the stage somewhere sensible. This function should
1483+
also set the need_homed propety to False.
1484+
1485+
Stages that dont need homing can leave this default function
1486+
and dont need to implment the home() function.
1487+
1488+
"""
1489+
return False
1490+
1491+
14711492
@property
14721493
def position(self) -> typing.Mapping[str, float]:
14731494
"""Map of axis name to their current position.

0 commit comments

Comments
 (0)