From 2eb59634fdfb48cbd8a1e7ee09c2ccd193ccafec Mon Sep 17 00:00:00 2001
From: 천호석 <hosuk1418@naver.com>
Date: 월, 12 12월 2022 15:39:17 +0900
Subject: [PATCH] Laser head X축 구동 시 Laser head Z축 Home위치 확인 후 구동.

---
 SHARP_CLAS_UI/500.Equipment/700.Unit/200.Process/Ablation.cs |   39 +++++++++++++++++++++++++++++++++++++--
 SHARP_CLAS_UI/500.Equipment/Equipment.cs                     |    2 +-
 2 files changed, 38 insertions(+), 3 deletions(-)

diff --git a/SHARP_CLAS_UI/500.Equipment/700.Unit/200.Process/Ablation.cs b/SHARP_CLAS_UI/500.Equipment/700.Unit/200.Process/Ablation.cs
index 8ff9474..497c45e 100644
--- a/SHARP_CLAS_UI/500.Equipment/700.Unit/200.Process/Ablation.cs
+++ b/SHARP_CLAS_UI/500.Equipment/700.Unit/200.Process/Ablation.cs
@@ -128,8 +128,8 @@
             pauseDisableList.Add(AblationSteps.S5470_LASER_OFF);
             pauseDisableList.Add(AblationSteps.S5480_LASER_OFF_CHECK);
 
-            MotorX.Check_Jog_Interlock = Jog_Interlock;
-            MotorX.Check_Move_Interlock = Move_Interlock;
+            MotorX.Check_Jog_Interlock = Jog_Interlock_MotorX;
+            MotorX.Check_Move_Interlock = Move_Interlock_MotorX;
             MotorZ.Check_Jog_Interlock = Jog_Interlock;
             MotorZ.Check_Move_Interlock = Move_Interlock;
 
@@ -140,6 +140,40 @@
         #endregion
 
         #region Function
+        private bool Move_Interlock_MotorX()
+        {
+            if (equipment.User.Level != En_User_Level.Master && equipment.Door_Opened)
+            {
+                return true;
+            }
+
+            double position = Get_Scanner_Z_A1_Stay_Position();
+
+            if (MotorZ.Is_Inposition(position, equipment.Setting.Inposition_Offset) == false)
+            {
+                return true;
+            }
+
+            return false;
+        }
+
+        private bool Jog_Interlock_MotorX(bool positive)
+        {
+            if (equipment.User.Level != En_User_Level.Master && equipment.Door_Opened)
+            {
+                return true;
+            }
+
+            double position = Get_Scanner_Z_A1_Stay_Position();
+
+            if (MotorZ.Is_Inposition(position, equipment.Setting.Inposition_Offset) == false)
+            {
+                return true;
+            }
+
+            return false;
+        }
+
         private bool Move_Interlock()
         {
             if (equipment.User.Level != En_User_Level.Master && equipment.Door_Opened)
@@ -212,6 +246,7 @@
                 if (on)
                 {
                     equipment.scanner.Set_Stop();
+                    equipment.scanner.Set_Laser_Off();
                 }
             }
         }
diff --git a/SHARP_CLAS_UI/500.Equipment/Equipment.cs b/SHARP_CLAS_UI/500.Equipment/Equipment.cs
index 03a63d7..f4b8af3 100644
--- a/SHARP_CLAS_UI/500.Equipment/Equipment.cs
+++ b/SHARP_CLAS_UI/500.Equipment/Equipment.cs
@@ -564,7 +564,7 @@
         private User_Info _user;
         private SequenceTimer _modeChangeTime = new SequenceTimer();
 
-        private string _programVersion = "001.002.001";
+        private string _programVersion = "001.003.000";
         #endregion
 
         #region Construct

--
Gitblit v1.9.3