using Aitex.Core.Common.DeviceData; using Aitex.Core.RT.Device; using Aitex.Core.RT.Device.Unit; using Aitex.Core.Util; using Aitex.Core.RT.SCCore; using Aitex.Core.RT.Log; using Aitex.Sorter.Common; using MECF.Framework.Common.Device.Bases; using MECF.Framework.Common.Equipment; using System; using System.Collections.Generic; using Venus_Core; using Venus_RT.Modules; using Venus_RT.Modules.PMs; using Venus_RT.Devices.IODevices; using Venus_RT.Devices.EPD; using Aitex.Core.RT.DataCenter; using Aitex.Core.RT.OperationCenter; using MECF.Framework.Common.SubstrateTrackings; using MECF.Framework.RT.EquipmentLibrary.HardwareUnits.TMs; namespace Venus_RT.Devices { class JetTM : TM { private readonly IoLid _TMLid; private readonly IoLid _LLALid; private readonly IoLid _LLBLid; private readonly IoCylinder _LLASlitDoor; private readonly IoCylinder _LLBSlitDoor; private readonly IoValve _N2Valve; private readonly IoValve _SoftPumpValve; private readonly IoValve _FastPumpValve; private readonly IoValve _PurgeValve; private readonly IoValve _VentValve; private readonly IoValve _WaferRelayValve; private readonly IoSensor _TMPowerOn; private readonly IoSensor _TMInSafty; private readonly IoSensor _WaferLeakSensor; private readonly IoSensor _EFEMSideDoorClosed; private readonly IoSensor _TMPCWFlowSwitch; private readonly IoSensor _TMLidClosed; private readonly IoSensor _CDAPressureSwitch; private readonly IoSensor _VaccumPressureSwitch; private readonly IoSensor _N2PressureSwitch; private readonly IoTMPressureCtrl _presureCtrl; public bool TMLidClosed => _TMLid.OFFFeedback; public bool LLALidClosed => _LLALid.OFFFeedback; public bool LLBLidClosed => _LLBLid.OFFFeedback; public JetTM() : base("TM") { _TMLid = DEVICE.GetDevice($"TM.{VenusDevice.TMLid}"); _LLALid = DEVICE.GetDevice($"TM.{VenusDevice.LLALid}"); _LLBLid = DEVICE.GetDevice($"TM.{VenusDevice.LLBLid}"); _LLASlitDoor = DEVICE.GetDevice($"TM.{VenusDevice.LLATSlitDoor}"); _LLBSlitDoor = DEVICE.GetDevice($"TM.{VenusDevice.LLBTSlitDoor}"); _N2Valve = DEVICE.GetDevice($"TM.{VenusDevice.ValveN2}"); _SoftPumpValve = DEVICE.GetDevice($"TM.{VenusDevice.ValveSoftPump}"); _FastPumpValve = DEVICE.GetDevice($"TM.{VenusDevice.ValveFastPump}"); _PurgeValve = DEVICE.GetDevice($"TM.{VenusDevice.ValvePurge}"); _VentValve = DEVICE.GetDevice($"TM.{VenusDevice.ValveVent}"); _WaferRelayValve = DEVICE.GetDevice($"TM.{VenusDevice.ValveWaterRelay}"); _TMPowerOn = DEVICE.GetDevice($"TM.{VenusDevice.TMPowerOn}"); _TMInSafty = DEVICE.GetDevice($"TM.{VenusDevice.TMInSafty}"); _WaferLeakSensor = DEVICE.GetDevice($"TM.{VenusDevice.WaferLeakSensor}"); _EFEMSideDoorClosed = DEVICE.GetDevice($"TM.{VenusDevice.EFEMSideDoorClosed}"); _TMPCWFlowSwitch = DEVICE.GetDevice($"TM.{VenusDevice.TMPCWFlowSwitch}"); _TMLidClosed = DEVICE.GetDevice($"TM.{VenusDevice.TMLidClosed}"); _CDAPressureSwitch = DEVICE.GetDevice($"TM.{VenusDevice.CDAPressureSwitch}"); _VaccumPressureSwitch = DEVICE.GetDevice($"TM.{VenusDevice.VaccumPressureSwitch}"); _N2PressureSwitch = DEVICE.GetDevice($"TM.{VenusDevice.N2PressureSwitch}"); _presureCtrl = DEVICE.GetDevice($"TM.{VenusDevice.TMPressureCtrl}"); } public override void Monitor() { } } }