Browse Source

fix 加热带报警 统一用overTempalarm

jiangjy 6 days ago
parent
commit
b200b95a42

+ 1 - 0
Furnace/FurnaceRT/Config/FurnaceGemModel.xml

@@ -62,6 +62,7 @@
     <SVID id="10010008" valueType="Boolean" logicalName="System.IsIdle" value="" eventTrigger="" units="" description="" isArray="false" />
     <SVID id="10010009" valueType="Boolean" logicalName="System.IsInitialized" value="" eventTrigger="" units="" description="" isArray="false" />
     <SVID id="10010010" valueType="Ascii" logicalName="System.SpoolingState" value="" eventTrigger="" units="" description="" isArray="false" />
+    <SVID id="10010011" valueType="Boolean" logicalName="System.IsSpoolingEnable" value="" eventTrigger="" units="" description="" isArray="false" />
     <SVID id="10020001" valueType="Boolean" logicalName="System.AlarmSignalHeaterCCascadePVSBrk.Value" value="" eventTrigger="" units="" description="" isArray="false" />
     <SVID id="10030001" valueType="Boolean" logicalName="System.AlarmSignalHeaterCHeaterPVSBrk.Value" value="" eventTrigger="" units="" description="" isArray="false" />
     <SVID id="10040001" valueType="Boolean" logicalName="System.AlarmSignalHeaterCLCascadePVSBrk.Value" value="" eventTrigger="" units="" description="" isArray="false" />

BIN
Furnace/FurnaceRT/Config/VIDs/Equipment_VIDs_20250801.xlsx


File diff suppressed because it is too large
+ 1 - 1
Furnace/FurnaceRT/Config/VIDs/_SVID.xml


+ 25 - 2
Furnace/FurnaceRT/Equipments/PMs/PMModuleAlarmDefine.cs

@@ -191,10 +191,12 @@ namespace FurnaceRT.Equipments.PMs
         public AlarmEventItem ExecuteAbortRecipeFailAlarm { get; set; }
         public AlarmEventItem ShutterMoveFailedForInterlock { get; set; }
         public AlarmEventItem N2PurgeFaileAlarm { get; set; }
+
+        public AlarmEventItem GasLineOverTempAlarm { get; set; }
         public AlarmEventItem GasLineTcBrokenAlarm { get; set; }
         public AlarmEventItem GasLineCapsOverFlownAlarm { get; set; }
         public AlarmEventItem GasLineFloorOverFlowAlarm { get; set; }
-
+        public AlarmEventItem ForLineOverTempAlarm { get; set; }
         public AlarmEventItem ForLineTcBrokenAlarm { get; set; }
         public AlarmEventItem ForLineCapsOverFlownAlarm { get; set; }
         public AlarmEventItem ForLineFloorOverFlowAlarm { get; set; }
@@ -7592,7 +7594,28 @@ namespace FurnaceRT.Equipments.PMs
                 Action = EventAction.Clear,
                 Category = "TubeAlarm",
             }, () => { return true; });
-
+            GasLineOverTempAlarm = SubscribeAlarm(new AlarmEventItem()
+            {
+                EventEnum = $"{Name}.GasLineOverTempAlarm",
+                Description = $"",
+                Solution = "No information available. Press[Clear] to delete alarm message.",
+                Explaination = "No information available.",
+                AutoRecovery = true,
+                Level = EventLevel.Alarm,
+                Action = EventAction.Clear,
+                Category = "TubeAlarm",
+            }, () => { return true; });
+            ForLineOverTempAlarm = SubscribeAlarm(new AlarmEventItem()
+            {
+                EventEnum = $"{Name}.ForLineOverTempAlarm",
+                Description = $"",
+                Solution = "No information available. Press[Clear] to delete alarm message.",
+                Explaination = "No information available.",
+                AutoRecovery = true,
+                Level = EventLevel.Alarm,
+                Action = EventAction.Clear,
+                Category = "TubeAlarm",
+            }, () => { return true; });
             ForLineCapsOverFlownAlarm = SubscribeAlarm(new AlarmEventItem()
             {
                 EventEnum = $"{Name}.ForLineCapsOverFlownAlarm",

+ 3 - 3
Furnace/FurnaceRT/Extraction/MinicsManager.cs

@@ -121,17 +121,17 @@ namespace FurnaceRT.Extraction
                 {
                     case RTCommunicatorBase.AlarmType.CapsOverFlow:
                         message = $"Unit{alarm.Mini8Index}CH{alarm.ChannelIndex} Feedback:{alarm.PV} limit is ({alarm.Caps}~{alarm.Floor}) ";
-                        var alarmEvent = alarm.HeaterType == HeaterType.GaseLine ? pm.GasLineCapsOverFlownAlarm : pm.ForLineCapsOverFlownAlarm;
+                        var alarmEvent = alarm.HeaterType == HeaterType.GaseLine ? pm.GasLineOverTempAlarm : pm.ForLineOverTempAlarm;
                         alarmEvent.Set(message);
                         break;
                     case RTCommunicatorBase.AlarmType.FloorOverFlow:
                         message = $"Unit{alarm.Mini8Index}CH{alarm.ChannelIndex} Feedback:{alarm.PV} limit is ({alarm.Caps}~{alarm.Floor}) ";
-                        alarmEvent = alarm.HeaterType == HeaterType.GaseLine ? pm.GasLineFloorOverFlowAlarm : pm.ForLineFloorOverFlowAlarm;
+                        alarmEvent = alarm.HeaterType == HeaterType.GaseLine ? pm.GasLineOverTempAlarm : pm.ForLineOverTempAlarm;
                         alarmEvent.Set(message);
                         break;
                     case RTCommunicatorBase.AlarmType.TcBroken:
                         message = $"Unit{alarm.Mini8Index}CH{alarm.ChannelIndex} is TcBroken";
-                        alarmEvent = alarm.HeaterType == HeaterType.GaseLine ? pm.GasLineTcBrokenAlarm : pm.ForLineTcBrokenAlarm;
+                        alarmEvent = alarm.HeaterType == HeaterType.GaseLine ? pm.GasLineOverTempAlarm : pm.ForLineOverTempAlarm;
                         alarmEvent.Set(message);
                         break;
                     default: