| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 | using System;using System.Collections.Generic;using System.Diagnostics;using Aitex.Core.Common;using Aitex.Core.RT.DataCenter;using Aitex.Core.RT.Device;using Aitex.Core.RT.Device.Unit;using Aitex.Core.RT.Event;using Aitex.Core.RT.Fsm;using Aitex.Core.RT.OperationCenter;using Aitex.Core.RT.Routine;using Aitex.Core.RT.SCCore;using Aitex.Core.Utilities;using Aitex.Sorter.Common;using MECF.Framework.Common.Alarms;using MECF.Framework.Common.Equipment;using MECF.Framework.Common.Event;using MECF.Framework.Common.Schedulers;using MECF.Framework.Common.SubstrateTrackings;using MECF.Framework.RT.EquipmentLibrary.HardwareUnits.LoadPorts;using MECF.Framework.RT.EquipmentLibrary.HardwareUnits.Robot;using FurnaceRT.Equipments.Systems;namespace FurnaceRT.Equipments.LPs{    public partial class LoadPortModule    {        public AlarmEventItem LoadTimeoutAlarm { get; set; }        public AlarmEventItem LoadFailAlarm { get; set; }        public AlarmEventItem UnloadTimeoutAlarm { get; set; }        public AlarmEventItem UnloadFailAlarm { get; set; }        public AlarmEventItem HomeTimeoutAlarm { get; set; }        public AlarmEventItem HomeFailAlarm { get; set; }        public AlarmEventItem SMIFNotReadyWarning { get; set; }        public AlarmEventItem SMIFPodNotPresentWarning { get; set; }        public AlarmEventItem LoadJobFailWarning { get; set; }        private void InitAlarmEvent()        {            LoadFailAlarm = SubscribeAlarm(new AlarmEventItem()            {                EventEnum = $"{Name}.LoadFailAlarm",                Description = $"Load fail reason ",                Solution = "No information available. Press[Retry] to delete alarm message.",                Explaination = "No information available.",                AutoRecovery = false,                Level = EventLevel.Alarm,                Action = EventAction.ClearAndRetry,                Category = "SMIFAlarm",//对应AlarmDefine.xml中SMIFAlarm这个分类的名称            }, () => { /*_spinLeakSensor.Reset()如果有reset代码放这里;*/ return true; });            UnloadFailAlarm = SubscribeAlarm(new AlarmEventItem()            {                EventEnum = $"{Name}.UnloadFailAlarm",                Description = $"Unload fail reason ",                Solution = "No information available. Press[Retry] to delete alarm message.",                Explaination = "No information available.",                AutoRecovery = false,                Level = EventLevel.Alarm,                Action = EventAction.ClearAndRetry,                Category = "SMIFAlarm",            }, () => { return true; });            LoadTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()            {                EventEnum = $"{Name}.LoadTimeoutAlarm",                Description = $"Load timeout ",                Solution = "No information available. Press[Retry] to delete alarm message.",                Explaination = "No information available.",                AutoRecovery = false,                Level = EventLevel.Alarm,                Action = EventAction.ClearAndRetry,                Category = "SMIFAlarm",            }, () => { return true; });            UnloadTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()            {                EventEnum = $"{Name}.UnloadTimeoutAlarm",                Description = $"Unload timeout ",                Solution = "No information available. Press[Retry] to delete alarm message.",                Explaination = "No information available.",                AutoRecovery = false,                Level = EventLevel.Alarm,                Action = EventAction.ClearAndRetry,                Category = "SMIFAlarm",            }, () => { return true; });            HomeFailAlarm = SubscribeAlarm(new AlarmEventItem()            {                EventEnum = $"{Name}.HomeFailAlarm",                Description = $"Home fail reason ",                Solution = "No information available. Press[Retry] to delete alarm message.",                Explaination = "No information available.",                AutoRecovery = false,                Level = EventLevel.Alarm,                Action = EventAction.ClearAndRetry,                Category = "SMIFAlarm",            }, () => { return true; });            HomeTimeoutAlarm = SubscribeAlarm(new AlarmEventItem()            {                EventEnum = $"{Name}.HomeTimeoutAlarm",                Description = $"Home timeout ",                Solution = "No information available. Press[Retry] to delete alarm message.",                Explaination = "No information available.",                AutoRecovery = false,                Level = EventLevel.Alarm,                Action = EventAction.ClearAndRetry,                Category = "SMIFAlarm",            }, () => { return true; });            SMIFNotReadyWarning = SubscribeAlarm(new AlarmEventItem()            {                EventEnum = $"{Name}.SMIFNotReadyWarning",                Description = $"Smif not ready ",                Solution = "No information available. Press[CLEAR] to delete alarm message.",                Explaination = "No information available.",                AutoRecovery = false,                Level = EventLevel.Warning,                Action = EventAction.Clear,                Category = "SMIFAlarm",            }, () => { return true; });            SMIFPodNotPresentWarning = SubscribeAlarm(new AlarmEventItem()            {                EventEnum = $"{Name}.SMIFPodNotPresentWarning",                Description = $"Smif pod not present ",                Solution = "No information available. Press[CLEAR] to delete alarm message.",                Explaination = "No information available.",                AutoRecovery = false,                Level = EventLevel.Warning,                Action = EventAction.Clear,                Category = "SMIFAlarm",            }, () => { return true; });            LoadJobFailWarning = SubscribeAlarm(new AlarmEventItem()            {                EventEnum = $"{Name}.LoadJobFailWarning",                Description = $"Load job fail reason ",                Solution = "No information available. Press[CLEAR] to delete alarm message.",                Explaination = "No information available.",                AutoRecovery = false,                Level = EventLevel.Warning,                Action = EventAction.Clear,                Category = "SMIFAlarm",            }, () => { return true; });        }    }}
 |