| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275 | using Aitex.Core.Util;using MECF.Framework.Common.DataCenter;using MECF.Framework.Common.OperationCenter;using OpenSEMI.ClientBase;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using VirgoUI.Client.Models.Sys;namespace VirgoUI.Client.Models.PMs{    public class PMPIDViewModel : ModuleUiViewModelBase, ISupportMultipleSystem    {        #region CHB Wall        public float CHBTemperatureSetpoint { get; set; }        public void CHBSetHeaterOn()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_CHB_Wall_Heater_On", true);        }        public void CHBSetHeaterOff()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_CHB_Wall_Heater_On", false);        }        public void CHBSetTemperature(object oj)        {            InvokeClient.Instance.Service.DoOperation("System.SetAoValue32", $"{SystemName.Split('.')[1]}.AO_CHB_Wall_Temperature_Setpoint", CHBTemperatureSetpoint);        }        public void CHBHeatPIDATStop()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_CHB_Heat_PID_AT_Star", false);            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_CHB_Heat_PID_AT_Stop", true);        }        public void CHBHeatPIDATStart()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_CHB_Heat_PID_AT_Stop", false);            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_CHB_Heat_PID_AT_Star", true);        }        [Subscription("DI_CHB_Wall_Heater_On_FB")]        public bool CHBHeaterOn { get; set; }        [Subscription("DI_CHB_Heat_PID_AT_Running")]        public bool CHBHeaterPIDATRunning { get; set; }        [Subscription("DI_CHB_Heat_PID_AT_Finished")]        public bool CHBHeaterPIDATFinished { get; set; }        private bool _CHBHeaterPIDATStarFB;        [Subscription("DI_CHB_Heat_PID_AT_Star_Fb")]        public bool CHBHeaterPIDATStarFB        {            get            {                return _CHBHeaterPIDATStarFB;            }            set            {                _CHBHeaterPIDATStarFB = value;                if (value)                {                    InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_CHB_Heat_PID_AT_Star", false);                }            }        }        private bool _CHBHeaterPIDATStopFB;        [Subscription("DI_CHB_Heat_PID_AT_Stop_Fb")]        public bool CHBHeaterPIDATStopFB        {            get            {                return _CHBHeaterPIDATStopFB;            }            set            {                _CHBHeaterPIDATStopFB = value;                if (value)                {                    InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_CHB_Heat_PID_AT_Stop", false);                }            }        }        public float CHBControlTCTemp        {            get            {                return (float)QueryDataClient.Instance.Service.GetData($"IO32.{SystemName.Split('.')[1]}.AI_CHB_Wall_Control_TC_Temp");            }        }        public float CHBMonitorTCTemp        {            get            {                return (float)QueryDataClient.Instance.Service.GetData($"IO32.{SystemName.Split('.')[1]}.AI_CHB_Wall_Monitor_TC_Temp");            }        }        #endregion        #region Foreline        public float ForelineTemperatureSetpoint { get; set; }        public void ForelineSetHeaterOn()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Forline_Heater_On", true);        }        public void ForelineSetHeaterOff()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Forline_Heater_On", false);        }        public void ForelineSetTemperature(object oj)        {            InvokeClient.Instance.Service.DoOperation("System.SetAoValue32", $"{SystemName.Split('.')[1]}.AO_Foreline_Temperature_Setpoint", ForelineTemperatureSetpoint);        }        public void ForelineHeatPIDATStop()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Foreline_Heat_PID_AT_Star", false);            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Foreline_Heat_PID_AT_Stop", true);        }        public void ForelineHeatPIDATStart()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Foreline_Heat_PID_AT_Stop", false);            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Foreline_Heat_PID_AT_Star", true);        }        [Subscription("DI_Foreline_Heater_On_FB")]        public bool ForelineHeaterOn { get; set; }        [Subscription("DI_Foreline_Heat_PID_AT_Running")]        public bool ForelineHeaterPIDATRunning { get; set; }        [Subscription("DI_Foreline_Heat_PID_AT_Finished")]        public bool ForelineHeaterPIDATFinished { get; set; }        private bool _forelineHeaterPIDATStarFB;        [Subscription("DI_Foreline_Heat_PID_AT_Star_FB")]        public bool ForelineHeaterPIDATStarFB        {            get            {                return _forelineHeaterPIDATStarFB;            }            set            {                _forelineHeaterPIDATStarFB = value;                if (value)                {                    InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Foreline_Heat_PID_AT_Star", false);                }            }        }        private bool _forelineHeaterPIDATStopFB;        [Subscription("DI_Foreline_Heat_PID_AT_Stop_FB")]        public bool ForelineHeaterPIDATStopFB        {            get            {                return _forelineHeaterPIDATStopFB;            }            set            {                _forelineHeaterPIDATStopFB = value;                if (value)                {                    InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Foreline_Heat_PID_AT_Stop", false);                }            }        }        public float ForelineControlTCTemp        {            get            {                return (float)QueryDataClient.Instance.Service.GetData($"IO32.{SystemName.Split('.')[1]}.AI_Foreline_Control_TC_Temp");            }        }        public float ForelineMonitorTCTemp        {            get            {                return (float)QueryDataClient.Instance.Service.GetData($"IO32.{SystemName.Split('.')[1]}.AI_Foreline_Monitor_TC_Temp");            }        }        #endregion        #region 1_LE        public float LE1TemperatureSetpoint { get; set; }        public void LE1SetHeaterOn()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Substrate_Heater_On", true);        }        public void LE1SetHeaterOff()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Substrate_Heater_On", false);        }        public void LE1SetTemperature(object oj)        {            InvokeClient.Instance.Service.DoOperation("System.SetAoValue32", $"{SystemName.Split('.')[1]}.AO_Substrate_Temperature_Setpoint", LE1TemperatureSetpoint);        }        public void LE1HeatPIDATStop()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Substrate_Heat_PID_AT_Star", false);            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Substrate_Heat_PID_AT_Stop", true);        }        public void LE1HeatPIDATStart()        {            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Substrate_Heat_PID_AT_Stop", false);            InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Substrate_Heat_PID_AT_Star", true);        }        [Subscription("DI_Substrate_Heater_On_FB")]        public bool LE1HeaterOn { get; set; }        [Subscription("DI_Substrate_Heat_PID_AT_Running")]        public bool LE1HeaterPIDATRunning { get; set; }        [Subscription("DI_Substrate_Heat_PID_AT_Finished")]        public bool LE1HeaterPIDATFinished { get; set; }        private bool _substrateHeaterPIDATStarFB;        [Subscription("DI_Substrate_Heat_PID_AT_Star_FB")]        public bool SubstrateHeaterPIDATStarFB        {            get            {                return _substrateHeaterPIDATStarFB;            }            set            {                _substrateHeaterPIDATStarFB = value;                if (value)                {                    InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Substrate_Heat_PID_AT_Star", false);                }            }        }        private bool _substrateHeaterPIDATStopFB;        [Subscription("DI_Substrate_Heat_PID_AT_Stop_FB")]        public bool SubstrateHeaterPIDATStopFB        {            get            {                return _substrateHeaterPIDATStopFB;            }            set            {                _substrateHeaterPIDATStopFB = value;                if (value)                {                    InvokeClient.Instance.Service.DoOperation("System.SetDoValue", $"{SystemName.Split('.')[1]}.DO_Substrate_Heat_PID_AT_Stop", false);                }            }        }        public float LE1ControlTCTemp        {            get            {                return (float)QueryDataClient.Instance.Service.GetData($"IO32.{SystemName.Split('.')[1]}.AI_Substrate_Control_TC_Temp");            }        }        public float LE1MonitorTCTemp        {            get            {                return (float)QueryDataClient.Instance.Service.GetData($"IO32.{SystemName.Split('.')[1]}.AI_Substrate_Monitor_TC_Temp");            }        }        #endregion    }}
 |