diff --git a/App/Modules/SicModules/TMs/Routines/TMBaseRoutine.cs b/App/Modules/SicModules/TMs/Routines/TMBaseRoutine.cs index c34cb7f..40d44ea 100644 --- a/App/Modules/SicModules/TMs/Routines/TMBaseRoutine.cs +++ b/App/Modules/SicModules/TMs/Routines/TMBaseRoutine.cs @@ -62,6 +62,8 @@ namespace SicModules.TMs.Routines private IoLift4 _loadLift; private IoLift4 _unLoadLift; + private IoValve PM1ToTm_V70; + public TMBaseRoutine() : base(ModuleName.TM.ToString()) { Module = ModuleName.TM.ToString(); @@ -82,6 +84,8 @@ namespace SicModules.TMs.Routines _reactorSuspectorCheckPM1 = DEVICE.GetDevice($"PM1.SensorReactorSuspectorCheck"); _reactorSuspectorCheckPM2 = DEVICE.GetDevice($"PM2.SensorReactorSuspectorCheck"); + + PM1ToTm_V70 = DEVICE.GetDevice($"PM1.V70"); } public virtual Result Start(params object[] objs) @@ -1694,6 +1698,32 @@ namespace SicModules.TMs.Routines } } + public void ClosePM1ToTMV70(int id) + { + Tuple ret = Execute(id, () => + { + Notify($"Close V70 valve"); + + if (!PM1ToTm_V70.TurnValve(false, out string reason)) + { + Stop(reason); + return false; + } + + return true; + }); + + if (ret.Item1) + { + if (ret.Item2 == Result.FAIL) + { + throw (new RoutineFaildException()); + } + else + throw (new RoutineBreakException()); + } + } + public void SetMFCToSetPoint(int id, IoMFC _mfc, double setPoint) { Tuple ret = Execute(id, () => diff --git a/App/Modules/SicModules/TMs/Routines/TMHomeRoutine.cs b/App/Modules/SicModules/TMs/Routines/TMHomeRoutine.cs index 036db99..7fb254c 100644 --- a/App/Modules/SicModules/TMs/Routines/TMHomeRoutine.cs +++ b/App/Modules/SicModules/TMs/Routines/TMHomeRoutine.cs @@ -8,7 +8,8 @@ namespace SicModules.TMs.Routines { enum RoutineStep { - CloseV77, + CloseV77, + CloseV70, CloseV80, CloseV85, TMRobotHome @@ -47,7 +48,7 @@ namespace SicModules.TMs.Routines CloseTMVent((int)RoutineStep.CloseV77); //没有V78 SetTMLLBalanceValve((int)RoutineStep.CloseV85, TMDevice,false); - //没有V70 + ClosePM1ToTMV70((int)RoutineStep.CloseV70); ExecuteRoutine((int)RoutineStep.TMRobotHome, _tmRobotHomeRoutine); } catch (RoutineBreakException) diff --git a/App/Modules/SicModules/TMs/Routines/TMPumpRoutine.cs b/App/Modules/SicModules/TMs/Routines/TMPumpRoutine.cs index bd8e5c7..3397ee6 100644 --- a/App/Modules/SicModules/TMs/Routines/TMPumpRoutine.cs +++ b/App/Modules/SicModules/TMs/Routines/TMPumpRoutine.cs @@ -171,9 +171,6 @@ namespace SicModules.TMs.Routines //关闭V77 CloseTMVent((int)RoutineStep.CloseV77); - //关闭V80 - //CloseBufferVent((int)RoutineStep.CloseV80); - //打开V82,等待压力低于200mbar(可配置) OpenSlowPump((int)RoutineStep.SlowPump, TMDevice, _slowFastPumpSwitchPressure, _slowPumpTimeout); diff --git a/App/Modules/SicModules/TMs/Routines/TMVentRoutine.cs b/App/Modules/SicModules/TMs/Routines/TMVentRoutine.cs index f41d333..5172be3 100644 --- a/App/Modules/SicModules/TMs/Routines/TMVentRoutine.cs +++ b/App/Modules/SicModules/TMs/Routines/TMVentRoutine.cs @@ -28,6 +28,7 @@ namespace SicModules.TMs.Routines CloseVentValveDelay, TimeDelay, OpenV80, + OpenV77, CloseV80, CloseV81, CloseV82, @@ -195,13 +196,13 @@ namespace SicModules.TMs.Routines SetMFCToSetPoint((int)RoutineStep.SetMFC1, _mfc60, _mfc60Default1); ////打开V77,等待压力大于200mbar - //OpenSlowVent((int)RoutineStep.OpenSlowVent, _tm, _slowFastVentSwitchPressure, _slowVentTimeout); + OpenSlowVent((int)RoutineStep.OpenSlowVent, _tm, _slowFastVentSwitchPressure, _ventTimeOut); ////设定MFC60快充流量 - //SetMFCToSetPoint((int)RoutineStep.SetMFC2, _mfc60, _mfc60Default2); + SetMFCToSetPoint((int)RoutineStep.SetMFC2, _mfc60, _mfc60Default2); ////等待压力大于1020mbar - //OpenFastVent((int)RoutineStep.OpenFastVent, _tm, _ventBasePressure, _fastVentTime); + OpenFastVent((int)RoutineStep.OpenFastVent, _tm, _ventBasePressure, _ventTimeOut); //充气过程中检查是否到达打开快充流量的条件 OpenVent((int)RoutineStep.OpenVent, _tm, _ventBasePressure, _slowFastVentSwitchPressure, _mfc60Default2, _ventTimeOut); @@ -211,9 +212,6 @@ namespace SicModules.TMs.Routines //关闭V77 CloseSlowVentValve((int)RoutineStep.CloseSlowVent, _tm); - - //关闭V80 - //CloseBufferVent((int)RoutineStep.CloseV80); } catch (RoutineBreakException) {