From 8bd46da0c9fbfe39a65d75b1d85692d8783f5905 Mon Sep 17 00:00:00 2001
From: patrick.xu <patrick.xu@broconcentric.com>
Date: 星期三, 15 九月 2021 10:50:54 +0800
Subject: [PATCH] 现场修改

---
 src/Bro.Common.Device/DeviceBase/MotionCardBase.cs |   40 +++++++++++++++++++++++++++++++++++++---
 1 files changed, 37 insertions(+), 3 deletions(-)

diff --git a/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs b/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
index 4e539a0..ef22a40 100644
--- a/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
+++ b/src/Bro.Common.Device/DeviceBase/MotionCardBase.cs
@@ -22,7 +22,8 @@
         public event Action<DateTime, IDevice, IWarningSet> OnMonitorAlarm;
         public event Action<int, string> OnAxisAlarmRaised;
         public event Action<int, int, int> OnAxisStatusChanged;
-
+        public event Action<int, int> OnAxisPositionChanged;
+        
         public void AxisAlarmRaised(int axisIndex, string msg)
         {
             OnAxisAlarmRaised?.Invoke(axisIndex, msg);
@@ -33,6 +34,27 @@
             OnAxisStatusChanged?.Invoke(axisIndex, preStatus, curStatus);
         }
 
+        public void AxisPositionChanged(int axisIndex, int currentPosition)
+        {
+            OnAxisPositionChanged?.Invoke(axisIndex, currentPosition);
+        }
+
+        protected override void Start()
+        {
+            AxisStatusList = IConfig.AxisSettings.Where(a => a.IsAxisEnabled).ToList().ConvertAll(a =>
+            {
+                AxisMovingStatus axisSts = new AxisMovingStatus();
+                axisSts.AxisIndex = a.AxisIndex;
+                axisSts.AxisName = a.AxisName;
+
+                return axisSts;
+            });
+
+            Task.Run(() =>
+            {
+                Monitor();
+            });
+        }
         public abstract List<AxisInfo> GetCurrentAxisInfo(params string[] axisName);
         public abstract void Monitor();
         public abstract ResponseMessage MoveToPoint(IOperationConfig opConfig);
@@ -124,7 +146,7 @@
         /// <summary>
         /// 鎭㈠绔嬪嵆鏆傚仠
         /// </summary>
-        public abstract void ResetImmediatePause();
+        public abstract void ResetImmediatePause(bool isResumeMoving);
         #endregion
     }
 
@@ -133,7 +155,7 @@
         [Category("鏉垮崱閰嶇疆")]
         [DisplayName("鍗″彿")]
         [Description("CardNum锛氬崱鍙�")]
-        public int CardNum { get; set; }
+        public int CardNum { get; set; } = 1;
 
         [Category("鏉垮崱閰嶇疆")]
         [DisplayName("鍒濆閰嶇疆鏂囦欢璺緞")]
@@ -175,6 +197,10 @@
         [TypeConverter(typeof(CollectionCountConvert))]
         [Editor(typeof(ComplexCollectionEditor<IODefinition>), typeof(UITypeEditor))]
         public List<IODefinition> IODefinitionCollection { get; set; } = new List<IODefinition>();
+
+        [Category("IO閰嶇疆")]
+        [Description("true锛氳緭鍑哄彇鍙� false锛氳緭鍑轰笉鍙栧弽")]
+        public bool IsOutputReversed { get; set; } = true;
 
         #region IMonitorConfig
         [Category("鐩戝惉璁剧疆")]
@@ -299,6 +325,14 @@
         [Editor(typeof(MovingOpsCollectionEditor), typeof(UITypeEditor))]
         public List<MovingOption> MovingOps { get; set; } = new List<MovingOption>();
 
+        [Category("3.杩愬姩寤舵椂")]
+        [Description("鎿嶄綔鍓嶅欢鏃讹紝鍗曚綅ms")]
+        public int DelayBefore { get; set; } = 0;
+
+        [Category("3.杩愬姩寤舵椂")]
+        [Description("鎿嶄綔鍚庡欢鏃讹紝鍗曚綅ms")]
+        public int DelayAfter { get; set; } = 0;
+
         public string MotionCardId = "";
 
         //[Category("鏉垮崱杩愬姩閰嶇疆")]

--
Gitblit v1.8.0