continued with auto alignment and laser tracker
This commit is contained in:
@@ -200,10 +200,10 @@ class OMNY_rt_client:
|
||||
min_begin = self.mirror_parameters[mirror_channel]["opt_signal_min_begin"]
|
||||
if previous_signal < min_begin:
|
||||
#raise OMNY_rt_clientError("error1") #(f"Minimum signal of axis {self.mirror_parameters[mirror_channel]["opt_mirrorname"]} to start alignment not present.")
|
||||
print(f"Minimum signal for auto alignment {min_begin} not reached.")
|
||||
print(f"\rMinimum signal for auto alignment {min_begin} not reached.")
|
||||
return
|
||||
elif previous_signal > self.mirror_parameters[mirror_channel]["opt_signal_stop"]:
|
||||
print(f"Interferometer signal of axis is good") # {self.mirror_parameters[mirror_channel]["opt_mirrorname"]} is good.")
|
||||
print(f"\rInterferometer signal of axis is good") # {self.mirror_parameters[mirror_channel]["opt_mirrorname"]} is good.")
|
||||
return
|
||||
else:
|
||||
direction = 1
|
||||
@@ -409,3 +409,24 @@ class OMNY_rt_client:
|
||||
|
||||
self.mirror_channel=-1
|
||||
|
||||
def laser_tracker_check_and_wait_for_signalstrength(self):
|
||||
#first check on target
|
||||
dev.rtx.controller.laser_tracker_wait_on_target()
|
||||
signal = dev.rtx.controller._omny_interferometer_get_signalsample("ssi_4",0.1)
|
||||
min_signal = self.OMNYTools._get_user_param_safe("rtx","min_signal")
|
||||
low_signal = self.OMNYTools._get_user_param_safe("rtx","low_signal")
|
||||
wait_counter = 0
|
||||
while signal < min_signal and wait_counter<10:
|
||||
print(
|
||||
f"The signal of the tracker {signal} is below the minimum required signal of {min_signal}. Waiting..."
|
||||
)
|
||||
wait_counter+=1
|
||||
time.sleep(0.4)
|
||||
self.feedback_get_status_and_ssi()
|
||||
signal = dev.rtx.controller._omny_interferometer_get_signalsample("ssi_4",0.1)
|
||||
|
||||
if signal < low_signal:
|
||||
print(
|
||||
f"\x1b[91mThe signal of the tracker {signal} is below the low limit of {low_signal}. Auto readjustment...\x1b[0m"
|
||||
)
|
||||
self.omny_interferometer_align_tracking()
|
||||
@@ -68,6 +68,8 @@ class RtOMNYController(Controller):
|
||||
"laser_tracker_galil_enable",
|
||||
"laser_tracker_galil_disable",
|
||||
"laser_tracker_print_intensity_for_otrack_tweaking",
|
||||
"laser_tracker_check_on_target",
|
||||
"laser_tracker_wait_on_target",
|
||||
]
|
||||
|
||||
def __init__(
|
||||
@@ -315,30 +317,7 @@ class RtOMNYController(Controller):
|
||||
raise RtError("Failed to reach laser target position.")
|
||||
|
||||
|
||||
def laser_tracker_check_and_wait_for_signalstrength(self):
|
||||
#first check on target
|
||||
self.laser_tracker_wait_on_target(self)
|
||||
self.feedback_get_status_and_ssi()
|
||||
signal = self.ssi["ssi_3"]
|
||||
rtx = self.get_device_manager().devices.rtx
|
||||
min_signal = rtx.user_parameter.get("min_signal")
|
||||
low_signal = rtx.user_parameter.get("low_signal")
|
||||
wait_counter = 0
|
||||
while signal < min_signal and wait_counter<10:
|
||||
print(
|
||||
f"The signal of the tracker {signal} is below the minimum required signal of {min_signal}. Waiting..."
|
||||
)
|
||||
wait_counter+=1
|
||||
time.sleep(1)
|
||||
self.feedback_get_status_and_ssi()
|
||||
signal = self.ssi["ssi_3"]
|
||||
|
||||
if signal < low_signal:
|
||||
print(
|
||||
f"\x1b[91mThe signal of the tracker {signal} is below the low limit of {low_signal}. Auto readjustment...\x1b[0m"
|
||||
)
|
||||
#todo
|
||||
self.interferometer_align_tracking()
|
||||
|
||||
|
||||
def laser_tracker_print_intensity_for_otrack_tweaking(self):
|
||||
@@ -348,19 +327,6 @@ class RtOMNYController(Controller):
|
||||
|
||||
def laser_tracker_show_all(self):
|
||||
self.laser_update_tracker_info()
|
||||
# self.tracker_info = {
|
||||
# "beampos_y": tracker_values[5],
|
||||
# "beampos_z": tracker_values[0],
|
||||
# "tracker_intensity": tracker_values[2],
|
||||
# "target_y": tracker_values[6],
|
||||
# "threshold_intensity_y": tracker_values[8],
|
||||
# "piezo_voltage_y": tracker_values[9],
|
||||
# "enabled_y": tracker_values[10],
|
||||
# "target_z": tracker_values[1],
|
||||
# "threshold_intensity_z": tracker_values[3],
|
||||
# "piezo_voltage_z": tracker_values[4],
|
||||
# "enabled_z": bool(tracker_values[10]),
|
||||
# }
|
||||
enabled_y = self.tracker_info["enabled_y"]
|
||||
print(f"Tracker enabled: {bool(enabled_y)}")
|
||||
if self.tracker_info["tracker_intensity"] < self.tracker_info["threshold_intensity_y"]:
|
||||
@@ -414,13 +380,14 @@ class RtOMNYController(Controller):
|
||||
print(f"Galil Trackcounters y={trackyct}, z={trackzct}")
|
||||
|
||||
def show_signal_strength_interferometer(self):
|
||||
channelnames={1:"OSA FZP Y",2:"ST OSA Y",3:"OSA FZP X",4:"ST OSA X",5:"Angle"}
|
||||
self.feedback_get_status_and_ssi()
|
||||
t = PrettyTable()
|
||||
t.title = f"Interferometer signal strength"
|
||||
t.field_names = ["Axis", "Value"]
|
||||
t.field_names = ["Channel", "Name", "Value"]
|
||||
for i in range(1,6):
|
||||
ssi = self.ssi[f"ssi_{i}"]
|
||||
t.add_row([i, ssi])
|
||||
t.add_row([i,channelnames[i], ssi])
|
||||
print(t)
|
||||
|
||||
def _omny_interferometer_switch_open_socket(self):
|
||||
|
||||
Reference in New Issue
Block a user