|
@@ -20,8 +20,10 @@ namespace Venus_RT.Modules.PMs
|
|
|
kTurboN2Purge,
|
|
|
kVATValve,
|
|
|
kOpenTurboPumpPurgeGasFinal,
|
|
|
+ kOpenTurboPump,
|
|
|
+ kGasFinal,
|
|
|
kFinalStep,
|
|
|
- kEnd,
|
|
|
+ kEnd,
|
|
|
}
|
|
|
|
|
|
//private int _ventTime;
|
|
@@ -30,7 +32,7 @@ namespace Venus_RT.Modules.PMs
|
|
|
private int _vHe2FlowPressure = 200;
|
|
|
private int _basePressure = 10;
|
|
|
private JetChamber jetChamber = JetChamber.None;
|
|
|
- private bool needsoft=true;
|
|
|
+ private bool needsoft = true;
|
|
|
public PumpDownRoutine(JetPMBase chamber) : base(chamber)
|
|
|
{
|
|
|
jetChamber = (JetChamber)SC.GetValue<int>($"{chamber.Name}.ChamberType");
|
|
@@ -73,16 +75,33 @@ namespace Venus_RT.Modules.PMs
|
|
|
public RState Monitor()
|
|
|
{
|
|
|
|
|
|
- Runner.Delay(PumpStep.kDelay_2s, _delay_2s)
|
|
|
- .Run(PumpStep.kCloseISOValve, HOFs.WrapAction(_chamber.OpenValve, ValveType.TurboPumpPumping, false), _delay_2s)
|
|
|
- .RunIf(PumpStep.kSoftPump, needsoft, HOFs.WrapAction(_chamber.OpenValve, ValveType.SoftPump, true), () => { return _chamber.ChamberPressure < _roughPumpPressure; })
|
|
|
- .Run(PumpStep.kFastPump, OpenFastPump, () => { return _chamber.ChamberPressure < _vHe2FlowPressure; })
|
|
|
- .Run(PumpStep.kPVHe2, OpenHe2Valve, _delay_2s)
|
|
|
- .Run(PumpStep.kISOValve, OpenISOValve, _delay_2s)
|
|
|
- .Run(PumpStep.kVATValve, OpenVATValve, _delay_5s)
|
|
|
- .Run(PumpStep.kOpenTurboPumpPurgeGasFinal, OpenTurboPumpPurgeGasFinalValve, _delay_3s)
|
|
|
- .Run(PumpStep.kFinalStep, FinalStep, () => { return _chamber.ChamberPressure < _basePressure; })
|
|
|
- .End(PumpStep.kEnd, NullFun, _delay_1s);
|
|
|
+ if (jetChamber == JetChamber.VenusDE)
|
|
|
+ {
|
|
|
+ Runner.Delay(PumpStep.kDelay_2s, _delay_2s)
|
|
|
+ .Run(PumpStep.kCloseISOValve, HOFs.WrapAction(_chamber.OpenValve, ValveType.TurboPumpPumping, false), _delay_2s)
|
|
|
+ .Run(PumpStep.kPVHe2, OpenHe2Valve, _delay_5s)
|
|
|
+ .Run(PumpStep.kFastPump, OpenFastPump, () => { return _chamber.ChamberPressure < _vHe2FlowPressure; })
|
|
|
+ .Run(PumpStep.kISOValve, OpenISOValve, _delay_5s)
|
|
|
+ .Run(PumpStep.kOpenTurboPump, OpenTurboValve, _delay_3s)
|
|
|
+ .Run(PumpStep.kVATValve, OpenVATValve, _delay_2s)
|
|
|
+ .Run(PumpStep.kOpenTurboPump, OpenGuageGasFinalValve, _delay_3s)
|
|
|
+ .Run(PumpStep.kFinalStep, FinalStep, () => { return _chamber.ChamberPressure < _basePressure; })
|
|
|
+ .End(PumpStep.kEnd, NullFun, _delay_1s);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ Runner.Delay(PumpStep.kDelay_2s, _delay_2s)
|
|
|
+ .Run(PumpStep.kCloseISOValve, HOFs.WrapAction(_chamber.OpenValve, ValveType.TurboPumpPumping, false), _delay_2s)
|
|
|
+ .RunIf(PumpStep.kSoftPump, needsoft, HOFs.WrapAction(_chamber.OpenValve, ValveType.SoftPump, true), () => { return _chamber.ChamberPressure < _roughPumpPressure; })
|
|
|
+ .Run(PumpStep.kFastPump, OpenFastPump, () => { return _chamber.ChamberPressure < _vHe2FlowPressure; })
|
|
|
+ .Run(PumpStep.kPVHe2, OpenHe2Valve, _delay_2s)
|
|
|
+ .Run(PumpStep.kISOValve, OpenISOValve, _delay_2s)
|
|
|
+ .Run(PumpStep.kVATValve, OpenVATValve, _delay_5s)
|
|
|
+ .Run(PumpStep.kOpenTurboPumpPurgeGasFinal, OpenTurboPumpPurgeGasFinalValve, _delay_3s)
|
|
|
+ .Run(PumpStep.kFinalStep, FinalStep, () => { return _chamber.ChamberPressure < _basePressure; })
|
|
|
+ .End(PumpStep.kEnd, NullFun, _delay_1s);
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
return Runner.Status;
|
|
|
}
|
|
@@ -92,6 +111,17 @@ namespace Venus_RT.Modules.PMs
|
|
|
_chamber.OpenValve(ValveType.GasFinal, true);
|
|
|
return true;
|
|
|
}
|
|
|
+ private bool OpenTurboValve()
|
|
|
+ {
|
|
|
+ _chamber.OpenValve(ValveType.TurboPumpPurge, true);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ private bool OpenGuageGasFinalValve()
|
|
|
+ {
|
|
|
+ _chamber.OpenValve(ValveType.GasFinal, true);
|
|
|
+ _chamber.OpenValve(ValveType.Guage, true);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
private bool OpenFastPump()
|
|
|
{
|
|
|
_chamber.OpenValve(ValveType.SoftPump, false);
|
|
@@ -110,7 +140,7 @@ namespace Venus_RT.Modules.PMs
|
|
|
|
|
|
private bool OpenISOValve()
|
|
|
{
|
|
|
-
|
|
|
+
|
|
|
_chamber.OpenValve(ValveType.PVHe2, false);
|
|
|
|
|
|
// ISO Valve
|