فهرست منبع

支持多通道MesCheck状态及去抖处理

将_MesCheck状态变量改为数组,支持10通道独立记录,并在处理时增加去抖逻辑,避免重复处理相同状态。
孝锋 徐 8 ماه پیش
والد
کامیت
9f5c32c6b8
1فایلهای تغییر یافته به همراه10 افزوده شده و 1 حذف شده
  1. 10 1
      TeamAAS-VM/Core/Management.cs

+ 10 - 1
TeamAAS-VM/Core/Management.cs

@@ -1191,7 +1191,7 @@ namespace TeamAAS_VP.Core
         Int16 _LastWorkStart = 0;
         Int16 _LastWorkDone = 0;
         Int16 _LastRequestPosition = 0;
-        Int16 _LastMesCheck = 0;
+        Int16[] _LastMesCheck = new Int16[10];
         Int16 _LastPickINC = 0;
         /// <summary>
         /// PLC命令触发时
@@ -1781,6 +1781,15 @@ namespace TeamAAS_VP.Core
                         {
                             if (tuple.value is Int16 state)
                             {
+                                if (_LastMesCheck[i] != state)
+                                {
+                                    _LastMesCheck[i] = state;
+                                }
+                                else
+                                {
+                                    return;
+                                }
+
                                 if (state == 1)
                                 {
                                     if(i == 0)