Files
mxsc/script/motion/scan_pin.py
gac-S_Changer 3d86c27140
2018-10-16 18:05:43 +02:00

48 lines
1.2 KiB
Python

def scan_pin(segment, puck, sample, force=False):
pin_name = get_sample_name(segment, puck, sample)
print "scan pin", pin_name
#Initial checks
assert_valid_address(segment, puck, sample)
assert_puck_detected(segment, puck)
robot.assert_no_task()
robot.reset_motion()
robot.wait_ready()
robot.assert_cleared()
#robot.assert_in_known_point()
#Enabling
set_status("Scanning pin: " + str(pin_name))
enable_motion()
set_hexiposi(segment)
if not force:
visual_check_hexiposi(segment)
if not robot.is_dewar():
robot.move_dewar()
robot.get_dewar(segment, puck, sample)
(detected, dm) = move_scanner()
update_samples_info_sample_scan(get_puck_name(segment, puck), sample, detected, dm)
robot.move_dewar()
robot.put_dewar(segment, puck, sample)
ret = "Empty"
if detected:
if (dm is None) or (len(dm.strip())==0):
ret = "Present"
else:
ret = str(dm)
return ret
def scan_puck(segment, puck, force=False):
ret = []
for i in range(16):
ret.append(scan_pin (segment, puck, i+1, force))
return ret