From 56d73b9710766e7acab2e084a6af322175c78f1b Mon Sep 17 00:00:00 2001
From: xcd <834800634@qq.com>
Date: 星期六, 11 七月 2020 11:20:38 +0800
Subject: [PATCH] 添加急停按钮相关处理

---
 src/Bro.M071.Process/M071Process.cs |   22 ++++++++++++++++++++++
 1 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/src/Bro.M071.Process/M071Process.cs b/src/Bro.M071.Process/M071Process.cs
index 26c855d..3305e4b 100644
--- a/src/Bro.M071.Process/M071Process.cs
+++ b/src/Bro.M071.Process/M071Process.cs
@@ -50,6 +50,8 @@
 
             base.Open();
 
+            InitialMotionCardBaseAxisAlarm();
+
             SwitchBeep(false);
             SwitchLightGreen(false);
             SwitchLightRed(false);
@@ -57,6 +59,21 @@
 
             Reset(null, null, null);
             FullReset(null);
+        }
+
+        private void InitialMotionCardBaseAxisAlarm()
+        {
+            if (outputCtrlCard != null)
+            {
+                outputCtrlCard.OnAxisAlarmRaised -= MotionCard_OnAxisAlarmRaised;
+                outputCtrlCard.OnAxisAlarmRaised += MotionCard_OnAxisAlarmRaised;
+            }
+        }
+
+        private void MotionCard_OnAxisAlarmRaised(int axisIndex, string alarmMsg)
+        {
+            RaisedAlarm(alarmMsg); 
+            MachineState = MachineState.Alarm;
         }
 
         private void InitialSetting()
@@ -203,6 +220,11 @@
                   {
                       _pauseHandle.WaitHandle.WaitOne();
 
+                      if (MachineState != MachineState.Running)
+                      {
+                          throw new ProcessException("鏈哄彴鐘舵�佷笉鍦ㄨ繍琛屼腑锛岄��鍑烘娴�");
+                      }
+
                       IDevice device = DeviceCollection.FirstOrDefault(u => u.Id == s.MotionOp.Device);
                       if (device == null)
                           throw new ProcessException($"{s.Name}鎷嶇収鐐逛綅鏈缃繍鍔ㄨ澶�");

--
Gitblit v1.8.0