From 217577e6cb9262757f709de89d97582a1fe1e5e5 Mon Sep 17 00:00:00 2001
From: 천호석 <hosuk1418@naver.com>
Date: 금, 16 12월 2022 08:37:38 +0900
Subject: [PATCH] 1. Laser on Interlock에 Power meter 위치 추가 2. Auto power 측정중 pause시 자동 종료 추가.

---
 SHARP_CLAS_UI/100.Screen/Form_Maintenance_Laser.cs |   75 ++++++++++++++++++++++++++++++++-----
 1 files changed, 65 insertions(+), 10 deletions(-)

diff --git a/SHARP_CLAS_UI/100.Screen/Form_Maintenance_Laser.cs b/SHARP_CLAS_UI/100.Screen/Form_Maintenance_Laser.cs
index 870d2d9..aea5e74 100644
--- a/SHARP_CLAS_UI/100.Screen/Form_Maintenance_Laser.cs
+++ b/SHARP_CLAS_UI/100.Screen/Form_Maintenance_Laser.cs
@@ -18,9 +18,13 @@
             S1110_MEASURE_MODE_SET_W,
             S1120_MEASURE_MODE_SET_CHECK,
             S1130_ZERO_SET,
+            S1150_STAY_POSITION_MOVE,
+            S1160_POSITION_CHECK,
 
-            S1210_SCANNER_POSITION_MOVE,
+            S1210_SCANNER_POSITION_X_MOVE,
             S1220_SCANNER_MOVE_WAIT,
+            S1230_SCANNER_POSITION_Z_MOVE,
+            S1240_SCANNER_MOVE_WAIT,
             S1300_SCANNER_INIT,
             S1310_POWER_SET,
             S1320_LASER_ON,
@@ -254,29 +258,80 @@
                 case En_Manual_Measure.S1130_ZERO_SET:
                     {
                         power_meter.Set_Zero();
-                        Measure_Seq = En_Manual_Measure.S1210_SCANNER_POSITION_MOVE;
+                        Measure_Seq = En_Manual_Measure.S1150_STAY_POSITION_MOVE;
                         break;
                     }
-                case En_Manual_Measure.S1210_SCANNER_POSITION_MOVE:
+                case En_Manual_Measure.S1150_STAY_POSITION_MOVE:
+                    {
+                        double position = _Parent._equip.process.ablation.Get_Scanner_Z_A1_Stay_Position();
+
+                        if (_Parent._equip.process.ablation.MotorZ.Move_Absolute_Pos(position, 500))
+                        {
+                            Measure_Seq = En_Manual_Measure.S1160_POSITION_CHECK;
+                        }
+                        break;
+                    }
+                case En_Manual_Measure.S1160_POSITION_CHECK:
+                    {
+                        double position = _Parent._equip.process.ablation.Get_Scanner_Z_A1_Stay_Position();
+
+                        if (_Parent._equip.process.ablation.MotorZ.MotionComplete)
+                        {
+                            if (_Parent._equip.process.ablation.MotorZ.Is_Inposition(position, _Parent._equip.Setting.Inposition_Offset))
+                            {
+                                Measure_Seq = En_Manual_Measure.S1210_SCANNER_POSITION_X_MOVE;
+                            }
+                            else
+                            {
+                                Measure_Seq = En_Manual_Measure.S1150_STAY_POSITION_MOVE;
+                            }
+                        }
+                        break;
+                    }
+                case En_Manual_Measure.S1210_SCANNER_POSITION_X_MOVE:
                     {
                         if (_Parent._equip.process.ablation.Move_X_Power_Meter_Position())
                         {
-                            if (_Parent._equip.process.ablation.Move_Z_Power_Meter_Position())
-                            {
-                                lb_Position_Move.BackColor = System.Drawing.Color.Lime;
-                                Measure_Seq = En_Manual_Measure.S1220_SCANNER_MOVE_WAIT;
-                            }
+                            lb_Position_Move.BackColor = System.Drawing.Color.Lime;
+                            Measure_Seq = En_Manual_Measure.S1220_SCANNER_MOVE_WAIT;
                         }
                         break;
                     }
                 case En_Manual_Measure.S1220_SCANNER_MOVE_WAIT:
                     {
-                        if (_Parent._equip.process.ablation.MotorX.MotionComplete && _Parent._equip.process.ablation.MotorZ.MotionComplete)
+                        if (_Parent._equip.process.ablation.MotorX.MotionComplete)
                         {
-                            if (_Parent._equip.process.ablation.Get_Is_Position_X_Power_Meter() && _Parent._equip.process.ablation.Get_Is_Position_Z_Power_Meter())
+                            if (_Parent._equip.process.ablation.Get_Is_Position_X_Power_Meter())
+                            {
+                                Measure_Seq = En_Manual_Measure.S1230_SCANNER_POSITION_Z_MOVE;
+                            }
+                            else
+                            {
+                                Measure_Seq = En_Manual_Measure.S1210_SCANNER_POSITION_X_MOVE;
+                            }
+                        }
+                        break;
+                    }
+                case En_Manual_Measure.S1230_SCANNER_POSITION_Z_MOVE:
+                    {
+                        if (_Parent._equip.process.ablation.Move_X_Power_Meter_Position())
+                        {
+                            Measure_Seq = En_Manual_Measure.S1240_SCANNER_MOVE_WAIT;
+                        }
+                        break;
+                    }
+                case En_Manual_Measure.S1240_SCANNER_MOVE_WAIT:
+                    {
+                        if (_Parent._equip.process.ablation.MotorZ.MotionComplete)
+                        {
+                            if (_Parent._equip.process.ablation.Get_Is_Position_Z_Power_Meter())
                             {
                                 Measure_Seq = En_Manual_Measure.S1300_SCANNER_INIT;
                             }
+                            else
+                            {
+                                Measure_Seq = En_Manual_Measure.S1230_SCANNER_POSITION_Z_MOVE;
+                            }
                         }
                         break;
                     }

--
Gitblit v1.9.3