123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- 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.OperationCenter;
- using Aitex.Core.RT.SCCore;
- using Aitex.Core.Util;
- using Aitex.Core.Utilities;
- using Aitex.Sorter.Common;
- using FurnaceRT.Devices;
- using FurnaceRT.Equipments.PMs;
- using FurnaceRT.Equipments.Systems;
- using MECF.Framework.Common.Alarms;
- using MECF.Framework.Common.Equipment;
- using MECF.Framework.Common.Event;
- using MECF.Framework.Common.Schedulers;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace FurnaceRT.Equipments.FIMSs
- {
- public partial class FIMSModule
- {
-
- #region fields
- private List<AlarmEventItem> _triggeredAlarmList = new List<AlarmEventItem>();
- private List<IoAlarmSignal> _alarmSignals = new List<IoAlarmSignal>();
- private List<IDevice> _allModuleDevice = new List<IDevice>();
- private int _alarmNumber;
- #endregion
- public IoFIMS FIMSDevice { get; set; }
- public IoSensor SensorWaferRobotEX1AxisHomePosition { get; set; }
- public IoSensor SensorWaferRobotEX2AxisHomePosition { get; set; }
- public bool IsMapping { get; set; }
- public bool IsDoorOpen
- {
- get
- {
- if (!SC.GetValue<bool>("System.IsSimulatorMode"))
- {
- if (FIMSDevice != null)
- {
- return FIMSDevice.DoorOpenCloseStatus == DeviceStatus.Open;
- }
- }
- return true;
- }
- }
- public bool IsWaferOnRobot => FIMSDevice == null ? false : FIMSDevice.IsWaferOnRobot;
- public void InitDevice()
- {
- FIMSDevice = DEVICE.GetDevice<IoFIMS>($"PM1.{Module}");
- SensorWaferRobotEX1AxisHomePosition = DEVICE.GetDevice<IoSensor>($"PM1.SensorWaferRobotEX1AxisHomePosition");
- SensorWaferRobotEX2AxisHomePosition = DEVICE.GetDevice<IoSensor>($"PM1.SensorWaferRobotEX2AxisHomePosition");
- this.OnDeviceAlarmStateChanged += OnModuleDeviceAlarmStateChanged;
- }
- public void OnModuleDeviceAlarmStateChanged(string deviceId, AlarmEventItem alarmItem)
- {
- if (alarmItem.IsTriggered)
- {
- EventLevel level = alarmItem.Level;
- _triggeredAlarmList.Add(alarmItem);
- if (level == EventLevel.Alarm)
- {
- try
- {
- EV.PostAlarmLog(Module, alarmItem);
- }
- catch (Exception ex)
- {
- EV.WriteEvent(ex.Message.ToString());
- }
- }
- else
- {
- EV.PostWarningLog(Module, alarmItem);
- }
- }
- else
- {
- }
- }
- public void Stop()
- {
- FIMSDevice.Stop();
- (Singleton<EquipmentManager>.Instance.Modules[ModuleName.PM1] as PMModule)?.SetN2PurgeProcess(false);
- return;
- }
- }
- }
|