修改pmroutine
This commit is contained in:
parent
8653fc01b0
commit
84c34147d3
@ -19,7 +19,7 @@
|
|||||||
<Limit di="PM1.DI_PumpExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-40" />
|
<Limit di="PM1.DI_PumpExhaustDPSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-40" />
|
||||||
<Limit di="PM1.DI_ScrubberIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-41" />
|
<Limit di="PM1.DI_ScrubberIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-41" />
|
||||||
<Limit di="PM1.DI_FacilityIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-42" />
|
<Limit di="PM1.DI_FacilityIntlkSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-42" />
|
||||||
<Limit di="PM1.DI_GN2InletPressSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-55" />
|
<Limit di="PM1.DI_GN2InletPressSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-55"
|
||||||
<Limit di="PM1.DI_GBH2SeDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-57" />
|
<Limit di="PM1.DI_GBH2SeDetectorSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-57" />
|
||||||
<Limit di="PM1.DI_EMOStatusSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-70" />
|
<Limit di="PM1.DI_EMOStatusSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-70" />
|
||||||
<Limit di="PM1.DI_MainCBStatusSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-76" />
|
<Limit di="PM1.DI_MainCBStatusSW" value="true" tip="" tip.zh-CN="" tip.en-US="DI-76" />
|
||||||
|
|||||||
@ -1130,18 +1130,8 @@ namespace SicModules.PMs
|
|||||||
private bool FsmStartExchangeMO(object[] param)
|
private bool FsmStartExchangeMO(object[] param)
|
||||||
{
|
{
|
||||||
Result ret;
|
Result ret;
|
||||||
if (SC.GetValue<bool>($"PM.IsExchangeMO{param[0]}Routine"))
|
_changeMoRoutine.Init(param[0].ToString());
|
||||||
{
|
ret = StartRoutine(_changeMoRoutine);
|
||||||
string RoutineFileName = SC.GetStringValue($"PM.{Module}.ExchangeMO{param[0]}FileName");
|
|
||||||
|
|
||||||
_pMMacroRoutine.Init(RoutineFileName, RoutineType.ExchangeMORoutine);
|
|
||||||
ret = StartRoutine(_pMMacroRoutine);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
_changeMoRoutine.Init(param[0].ToString());
|
|
||||||
ret = StartRoutine(_changeMoRoutine);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (ret == Result.FAIL || ret == Result.DONE)
|
if (ret == Result.FAIL || ret == Result.DONE)
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@ -88,7 +88,7 @@ namespace SicModules.PMs
|
|||||||
M19toM33,
|
M19toM33,
|
||||||
M32toM38,
|
M32toM38,
|
||||||
M36,
|
M36,
|
||||||
M28293140,
|
M27M28293140,
|
||||||
M18toM26,
|
M18toM26,
|
||||||
M19toM26,
|
M19toM26,
|
||||||
All,
|
All,
|
||||||
@ -1031,7 +1031,7 @@ namespace SicModules.PMs
|
|||||||
}
|
}
|
||||||
else if (eGroupName == IoGroupName.Final2)
|
else if (eGroupName == IoGroupName.Final2)
|
||||||
{
|
{
|
||||||
lst = new List<string>() { "V87", "V88", "V89", "V90", "V91", "V97" };
|
lst = new List<string>() { "V87", "V88", "V89", "V90", "V91", "V92", "V97" };
|
||||||
}
|
}
|
||||||
else if (eGroupName == IoGroupName.GasIn1)
|
else if (eGroupName == IoGroupName.GasIn1)
|
||||||
{
|
{
|
||||||
@ -1151,7 +1151,7 @@ namespace SicModules.PMs
|
|||||||
}
|
}
|
||||||
else if (mGroupName == MfcGroupName.M1toM17)
|
else if (mGroupName == MfcGroupName.M1toM17)
|
||||||
{
|
{
|
||||||
lst = new List<int>() { 1, 3, 4, 6, 7, 8, 10, 11, 12, 13, 14, 16, 17 };
|
lst = new List<int>() { 1, 3, 4, 6, 7, 8, 9,10, 11, 12, 13, 14, 15, 16, 17 };
|
||||||
}
|
}
|
||||||
else if (mGroupName == MfcGroupName.M18toM40No303439)
|
else if (mGroupName == MfcGroupName.M18toM40No303439)
|
||||||
{
|
{
|
||||||
@ -1209,9 +1209,9 @@ namespace SicModules.PMs
|
|||||||
{
|
{
|
||||||
lst = new List<int>() { 27, 28, 29, 31, 33, 32, 35, 36, 37, 38, 40 };
|
lst = new List<int>() { 27, 28, 29, 31, 33, 32, 35, 36, 37, 38, 40 };
|
||||||
}
|
}
|
||||||
else if (mGroupName == MfcGroupName.M28293140)
|
else if (mGroupName == MfcGroupName.M27M28293140)
|
||||||
{
|
{
|
||||||
lst = new List<int>() { 28, 29, 31, 40 };
|
lst = new List<int>() { 27 ,28, 29, 31, 40 };
|
||||||
}
|
}
|
||||||
else if (mGroupName == MfcGroupName.M19toM33)
|
else if (mGroupName == MfcGroupName.M19toM33)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -1288,18 +1288,18 @@ namespace SicModules.PMs.Routines.Base
|
|||||||
int cIntLv = (int)level;
|
int cIntLv = (int)level;
|
||||||
if (cIntLv < 100)
|
if (cIntLv < 100)
|
||||||
{
|
{
|
||||||
Notify($"Set MFC28,29,31,40 to pressureLevel [20-100]");
|
Notify($"Set MFC27,28,29,31,40 to pressureLevel [20-100]");
|
||||||
}
|
}
|
||||||
else if (cIntLv >= 950)
|
else if (cIntLv >= 950)
|
||||||
{
|
{
|
||||||
Notify($"Set MFC28,29,31,40 to pressureLevel [950]");
|
Notify($"Set MFC27,28,29,31,40 to pressureLevel [950]");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
Notify($"Set MFC28,29,31,40 to pressureLevel [{cIntLv - 50},{cIntLv + 50})");
|
Notify($"Set MFC27,28,29,31,40 to pressureLevel [{cIntLv - 50},{cIntLv + 50})");
|
||||||
}
|
}
|
||||||
_lastPressureLevel = level;
|
_lastPressureLevel = level;
|
||||||
_pm.SetMfcRampByGroupAndPressure(MfcGroupName.M28293140, Convert.ToDouble((int)level));
|
_pm.SetMfcRampByGroupAndPressure(MfcGroupName.M27M28293140, Convert.ToDouble((int)level));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1772,7 +1772,7 @@ namespace SicModules.PMs.Routines.Base
|
|||||||
},
|
},
|
||||||
() =>
|
() =>
|
||||||
{
|
{
|
||||||
//SetMfcRampByGroupAndPressureAlways(currentPressureUpOrDown);
|
SetMfcRampByGroupAndPressureAlways(currentPressureUpOrDown);
|
||||||
return _IoThrottle.PressureFeedback >= pressure;
|
return _IoThrottle.PressureFeedback >= pressure;
|
||||||
},
|
},
|
||||||
timeout * 1000);
|
timeout * 1000);
|
||||||
|
|||||||
@ -92,6 +92,8 @@ namespace SicModules.PMs.Routines
|
|||||||
SetV75,
|
SetV75,
|
||||||
SetTVto300,
|
SetTVto300,
|
||||||
|
|
||||||
|
SetMfcFinal2gongyi,
|
||||||
|
|
||||||
CheckPM1000,
|
CheckPM1000,
|
||||||
SetMfc28to40Special,
|
SetMfc28to40Special,
|
||||||
WaitPressUpTo1000,
|
WaitPressUpTo1000,
|
||||||
@ -181,19 +183,25 @@ namespace SicModules.PMs.Routines
|
|||||||
WaitPressUpTo950,
|
WaitPressUpTo950,
|
||||||
|
|
||||||
FirstWaitPressureUp,
|
FirstWaitPressureUp,
|
||||||
FirstSetDefault_M18toM40,
|
FirstSetDefault_M18toM40, FirstSetTvPositionToZero, FirstSetEPV2, FirstSetTVEnable_1, FirstSetTVPressMode,
|
||||||
|
FirstSetTVCloseMode,
|
||||||
FirstSet0_M18toM40,
|
FirstSet0_M18toM40,
|
||||||
FirstSetEPV2_1,
|
FirstSetEPV2_1,
|
||||||
FirstSetEPV2_2,
|
FirstSetEPV2_2,
|
||||||
FirstSetTv1,
|
FirstSetTv1,
|
||||||
|
FirstWaitTv1,
|
||||||
|
|
||||||
LoopSetDefault_M18toM40,
|
LoopSetDefault_M18toM40,
|
||||||
LoopSetEPV2_1,
|
LoopSetTVCloseMode,
|
||||||
|
LoopSetTvPositionToZero,
|
||||||
|
LoopSetEPV2,
|
||||||
LoopWaitPressureUp,
|
LoopWaitPressureUp,
|
||||||
LoopSetEPV2_2,
|
LoopSetEPV2_2,
|
||||||
LoopSetTv1,
|
LoopSetTv1,
|
||||||
LoopSet0_M18toM40,
|
LoopSet0_M18toM40,
|
||||||
Loop2Set0_M18toM40,
|
Loop2Set0_M18toM40,
|
||||||
|
LoopSetTVEnable_1,
|
||||||
|
LoopSetTVPressMode,
|
||||||
LoopWaitTv1,
|
LoopWaitTv1,
|
||||||
|
|
||||||
FinishSetM1toM17,
|
FinishSetM1toM17,
|
||||||
@ -348,6 +356,7 @@ namespace SicModules.PMs.Routines
|
|||||||
|
|
||||||
//10、 M27、 M28、 M29、 M31、 M33、 M40 依次设定 3S ramp 到 default 值 ;
|
//10、 M27、 M28、 M29、 M31、 M33、 M40 依次设定 3S ramp 到 default 值 ;
|
||||||
SetMfcToDefaultByGroup((int)RoutineStep.SetMfcFinal2, MfcGroupName.Final2, 3);
|
SetMfcToDefaultByGroup((int)RoutineStep.SetMfcFinal2, MfcGroupName.Final2, 3);
|
||||||
|
SetMfcToDefaultByGroup((int)RoutineStep.SetMfcFinal2gongyi, MfcGroupName.M18toM26, 3);
|
||||||
|
|
||||||
//11、打开 V87( SHPurge.Final)、 V88( OuterGas.Final)、 V89( InnerGas.Final)、 V90(MiddleGas.Final)、 V91(OpticPurge.Final)、 V97(CarryGas.Final);
|
//11、打开 V87( SHPurge.Final)、 V88( OuterGas.Final)、 V89( InnerGas.Final)、 V90(MiddleGas.Final)、 V91(OpticPurge.Final)、 V97(CarryGas.Final);
|
||||||
SetIoValueByGroup((int)RoutineStep.OpenFinal2, IoGroupName.Final2, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.OpenFinal2, IoGroupName.Final2, true, _IoValueOpenCloseTimeout);
|
||||||
@ -362,41 +371,64 @@ namespace SicModules.PMs.Routines
|
|||||||
SetMfcToDefaultByGroup((int)RoutineStep.SetM38, MfcGroupName.M38, 1);
|
SetMfcToDefaultByGroup((int)RoutineStep.SetM38, MfcGroupName.M38, 1);
|
||||||
TimeDelay((int)RoutineStep.TimeDelay4, 3);
|
TimeDelay((int)RoutineStep.TimeDelay4, 3);
|
||||||
//14、打开 V92(GasRingPurge.Final)、 V93(ChamberPurge.Final)、 V95(ConfinementRing.Final);
|
//14、打开 V92(GasRingPurge.Final)、 V93(ChamberPurge.Final)、 V95(ConfinementRing.Final);
|
||||||
//等待 950,,打开 V94(RotationUpPurge.Final)、 等待 3S,打开 V96(HeaterWF.Final) ;
|
//关闭蝶阀, 再关闭 EPV2,等待 950,打开 V94(RotationUpPurge.Final)、 等待 3S,打开 V96(HeaterWF.Final) ;
|
||||||
//蝶阀改为压力模式
|
//打开蝶阀,打开EPV2,蝶阀改为压力模式
|
||||||
SetIoValueByGroup((int)RoutineStep.SetV92V93V95, IoGroupName.V92V93V95, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.SetV92V93V95, IoGroupName.V92V93V95, true, _IoValueOpenCloseTimeout);
|
||||||
WaitChamberPressUpTo((int)RoutineStep.WaitPressUpTo950, 950, 600);
|
SetThrottleToCloseMode((int)RoutineStep.SetTVCloseMode, _IoThrottle, 8);
|
||||||
|
SetThrottleDisable((int)RoutineStep.SetTvPositionToZero, _IoThrottle, 8);
|
||||||
|
SetIoValueByGroup((int)RoutineStep.SetEPV2_1, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
||||||
|
WaitPMPressureAndSetMfcSpecial((int)RoutineStep.WaitPmPressureUp1, 950, 600);
|
||||||
SetIoValueByGroup((int)RoutineStep.SetV94, IoGroupName.V94, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.SetV94, IoGroupName.V94, true, _IoValueOpenCloseTimeout);
|
||||||
TimeDelay((int)RoutineStep.TimeDelay4, 3);
|
TimeDelay((int)RoutineStep.TimeDelay4, 3);
|
||||||
SetIoValueByGroup((int)RoutineStep.SetV96, IoGroupName.V96, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.SetV96, IoGroupName.V96, true, _IoValueOpenCloseTimeout);
|
||||||
SetThrottleToPressModeAndWait((int)RoutineStep.SetTVPressMode1, _IoThrottle, 5);
|
//SetThrottleToPressModeAndWait((int)RoutineStep.SetTVPressMode1, _IoThrottle, 5);
|
||||||
|
|
||||||
//M18 - M40(除 M30\M34\M39)) MFC 3s ramp 到 default 值。
|
//M18 - M40(除 M30\M34\M39)) MFC 3s ramp 到 default 值。
|
||||||
//关闭 EPV2,等待压力达到设定值,压力达到后,打开 EPV2;
|
//关闭蝶阀, 再关闭 EPV2,等待压力达到设定值,压力达到后,打开 EPV2,打开 TV enable, 压力模式,伺服压力默认设定为 0mbar;
|
||||||
//M18 - M40(除 M30\M34\M39)) MFC 5s ramp 到 0。
|
//M18 - M40(除 M30\M34\M39)) MFC 5s ramp 到 0。
|
||||||
//伺服压力到设定值 0(可配置)
|
//伺服压力到设定值 0(可配置)
|
||||||
SetMfcToDefaultByGroup((int)RoutineStep.FirstSetDefault_M18toM40, MfcGroupName.M18toM40No303439, 3);
|
SetMfcToDefaultByGroup((int)RoutineStep.FirstSetDefault_M18toM40, MfcGroupName.M18toM40No303439, 3);
|
||||||
SetIoValueByGroup((int)RoutineStep.FirstSetEPV2_1, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
|
||||||
|
SetPressureUpOrDown((int)RoutineStep.SetPressUpOrDown2, PressureUpOrDown.Uping);
|
||||||
|
SetThrottleToCloseMode((int)RoutineStep.FirstSetTVCloseMode, _IoThrottle, 8);
|
||||||
|
SetThrottleDisable((int)RoutineStep.FirstSetTvPositionToZero, _IoThrottle, 8);
|
||||||
|
SetIoValueByGroup((int)RoutineStep.FirstSetEPV2, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
||||||
|
|
||||||
WaitThrottleToPressureAndSetMfcSpecial((int)RoutineStep.FirstWaitPressureUp, _IoThrottle, _pressureMax, _ventTimeout);
|
WaitThrottleToPressureAndSetMfcSpecial((int)RoutineStep.FirstWaitPressureUp, _IoThrottle, _pressureMax, _ventTimeout);
|
||||||
|
|
||||||
SetIoValueByGroup((int)RoutineStep.FirstSetEPV2_2, IoGroupName.EPV2, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.FirstSetEPV2_2, IoGroupName.EPV2, true, _IoValueOpenCloseTimeout);
|
||||||
SetMfcByGroup((int)RoutineStep.FirstSet0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
|
||||||
|
SetThrottleEnableAndWait((int)RoutineStep.FirstSetTVEnable_1, _IoThrottle, 5);
|
||||||
|
SetThrottleToPressModeAndWait((int)RoutineStep.FirstSetTVPressMode, _IoThrottle, 5);
|
||||||
SetThrottleToTargetAndNoWait((int)RoutineStep.FirstSetTv1, _IoThrottle, _pressureMin);
|
SetThrottleToTargetAndNoWait((int)RoutineStep.FirstSetTv1, _IoThrottle, _pressureMin);
|
||||||
|
|
||||||
|
SetMfcByGroup((int)RoutineStep.FirstSet0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
||||||
|
WaitChamberPressDownTo((int)RoutineStep.FirstWaitTv1, _pressureMin, _pumpTimeout);
|
||||||
//循环开始
|
//循环开始
|
||||||
Loop((int)RoutineStep.StartLoop, _pressureLoopCount);
|
Loop((int)RoutineStep.StartLoop, _pressureLoopCount);
|
||||||
|
|
||||||
//M18 - M40(除 M30\M34\M39)) MFC 3s ramp 到 default 值。
|
//M18 - M40(除 M30\M34\M39)) MFC 3s ramp 到 default 值。
|
||||||
//关闭 EPV2,等待压力达到设定值,压力达到后,打开 EPV2;
|
//关闭蝶阀, 再关闭 EPV2,等待压力达到设定值,压力达到后,打开 EPV2
|
||||||
//M18 - M40(除 M30\M34\M39)) MFC 5s ramp 到 0。
|
//M18 - M40(除 M30\M34\M39)) MFC 5s ramp 到 0。
|
||||||
//伺服压力到设定值 0(可配置)
|
//打开 TV enable, 压力模式,伺服压力默认设定为 0mbar;
|
||||||
//M18 - M40(除 M30\M34\M39)) MFC5s ramp 到 0。
|
|
||||||
//等待压力到达 0(可配置)
|
//等待压力到达 0(可配置)
|
||||||
SetMfcToDefaultByGroup((int)RoutineStep.LoopSetDefault_M18toM40, MfcGroupName.M18toM40No303439, 3);
|
SetMfcToDefaultByGroup((int)RoutineStep.LoopSetDefault_M18toM40, MfcGroupName.M18toM40No303439, 3);
|
||||||
SetIoValueByGroup((int)RoutineStep.LoopSetEPV2_1, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
|
||||||
|
SetPressureUpOrDown((int)RoutineStep.SetPressUpOrDown2, PressureUpOrDown.Uping);
|
||||||
|
SetThrottleToCloseMode((int)RoutineStep.LoopSetTVCloseMode, _IoThrottle, 8);
|
||||||
|
SetThrottleDisable((int)RoutineStep.LoopSetTvPositionToZero, _IoThrottle, 8);
|
||||||
|
SetIoValueByGroup((int)RoutineStep.LoopSetEPV2, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
||||||
|
|
||||||
WaitThrottleToPressureAndSetMfcSpecial((int)RoutineStep.LoopWaitPressureUp, _IoThrottle, _pressureMax, _ventTimeout);
|
WaitThrottleToPressureAndSetMfcSpecial((int)RoutineStep.LoopWaitPressureUp, _IoThrottle, _pressureMax, _ventTimeout);
|
||||||
|
|
||||||
SetIoValueByGroup((int)RoutineStep.LoopSetEPV2_2, IoGroupName.EPV2, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.LoopSetEPV2_2, IoGroupName.EPV2, true, _IoValueOpenCloseTimeout);
|
||||||
|
|
||||||
SetMfcByGroup((int)RoutineStep.LoopSet0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
SetMfcByGroup((int)RoutineStep.LoopSet0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
||||||
|
|
||||||
|
SetThrottleEnableAndWait((int)RoutineStep.LoopSetTVEnable_1, _IoThrottle, 5);
|
||||||
|
SetThrottleToPressModeAndWait((int)RoutineStep.LoopSetTVPressMode, _IoThrottle, 5);
|
||||||
SetThrottleToTargetAndNoWait((int)RoutineStep.LoopSetTv1, _IoThrottle, _pressureMin);
|
SetThrottleToTargetAndNoWait((int)RoutineStep.LoopSetTv1, _IoThrottle, _pressureMin);
|
||||||
SetMfcByGroup((int)RoutineStep.Loop2Set0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
|
||||||
WaitChamberPressDownTo((int)RoutineStep.LoopWaitTv1, _pressureMin, _pumpTimeout);
|
WaitChamberPressDownTo((int)RoutineStep.LoopWaitTv1, _pressureMin, _pumpTimeout);
|
||||||
|
|
||||||
EndLoop((int)RoutineStep.EndLoop);
|
EndLoop((int)RoutineStep.EndLoop);
|
||||||
|
|||||||
@ -129,7 +129,7 @@ namespace SicModules.PMs.Routines
|
|||||||
_lstGroup2 = new List<string>() { "V50", "V50s" };
|
_lstGroup2 = new List<string>() { "V50", "V50s" };
|
||||||
_lstGroup3 = new List<string>() { "V48", "V48s" };
|
_lstGroup3 = new List<string>() { "V48", "V48s" };
|
||||||
break;
|
break;
|
||||||
case "WCO6":
|
case "W(CO)6":
|
||||||
mfc1 = 7;
|
mfc1 = 7;
|
||||||
mfc2 = 8;
|
mfc2 = 8;
|
||||||
pc = 2;
|
pc = 2;
|
||||||
@ -138,7 +138,7 @@ namespace SicModules.PMs.Routines
|
|||||||
_lstGroup2 = new List<string>() { "V46", "V46s" };
|
_lstGroup2 = new List<string>() { "V46", "V46s" };
|
||||||
_lstGroup3 = new List<string>() { "V43", "V43s" };
|
_lstGroup3 = new List<string>() { "V43", "V43s" };
|
||||||
break;
|
break;
|
||||||
case "MORE":
|
case "MOReserved":
|
||||||
mfc1 = 16;
|
mfc1 = 16;
|
||||||
mfc2 = 17;
|
mfc2 = 17;
|
||||||
pc = 9;
|
pc = 9;
|
||||||
@ -147,7 +147,7 @@ namespace SicModules.PMs.Routines
|
|||||||
_lstGroup2 = new List<string>() { "V23", "V23s" };
|
_lstGroup2 = new List<string>() { "V23", "V23s" };
|
||||||
_lstGroup3 = new List<string>() { "V21", "V21s" };
|
_lstGroup3 = new List<string>() { "V21", "V21s" };
|
||||||
break;
|
break;
|
||||||
case "MOCO6":
|
case "MO(CO)6":
|
||||||
mfc1 = 9;
|
mfc1 = 9;
|
||||||
mfc2 = 10;
|
mfc2 = 10;
|
||||||
pc = 8;
|
pc = 8;
|
||||||
|
|||||||
@ -192,7 +192,8 @@ namespace SicModules.PMs.Routines
|
|||||||
LoopSetTv1,
|
LoopSetTv1,
|
||||||
LoopSet0M18toM40,
|
LoopSet0M18toM40,
|
||||||
LoopSetM18Default,
|
LoopSetM18Default,
|
||||||
LoopWaitTv1
|
LoopWaitTv1,
|
||||||
|
LoopSetDefault_M18toM40, LoopSetTVCloseMode, LoopSetTvPositionToZero, LoopSetEPV2, LoopWaitPressureUp, LoopSetEPV2_2, LoopSet0_M18toM40, LoopSetTVEnable_1, LoopSetTVPressMode
|
||||||
}
|
}
|
||||||
|
|
||||||
enum LeakCheckType
|
enum LeakCheckType
|
||||||
@ -356,22 +357,37 @@ namespace SicModules.PMs.Routines
|
|||||||
TimeDelay((int)RoutineStep.TimeDelay11, 3);
|
TimeDelay((int)RoutineStep.TimeDelay11, 3);
|
||||||
SetThrottleSetPosition((int)RoutineStep.SetTVPositionMax, _IoThrottle, 100, _throttleTimeout);
|
SetThrottleSetPosition((int)RoutineStep.SetTVPositionMax, _IoThrottle, 100, _throttleTimeout);
|
||||||
TimeDelay((int)RoutineStep.TimeDelay9, 3);
|
TimeDelay((int)RoutineStep.TimeDelay9, 3);
|
||||||
|
|
||||||
//循环开始
|
//循环开始
|
||||||
Loop((int)RoutineStep.StartLoop, _pressureLoopCount);
|
Loop((int)RoutineStep.StartLoop, _pressureLoopCount);
|
||||||
//蝶阀改为压力模式
|
|
||||||
//M18 - M40(除 M30\M34\M39)) MFC 3s ramp 到 default 值。
|
//M18 - M40(除 M30\M34\M39)) MFC 3s ramp 到 default 值。
|
||||||
//压力 servo 到 300(可配置)
|
//关闭蝶阀, 再关闭 EPV2,等待压力达到设定值,压力达到后,打开 EPV2
|
||||||
//压力达到后, M18 - M40(除 M30\M34\M39)) MFC 5s ramp 到 0。
|
//M18 - M40(除 M30\M34\M39)) MFC 5s ramp 到 0。
|
||||||
|
//打开 TV enable, 压力模式,伺服压力默认设定为 0mbar;
|
||||||
//等待压力到达 0(可配置)
|
//等待压力到达 0(可配置)
|
||||||
SetThrottleToPressModeAndWait((int)RoutineStep.LoopSetTVPressMode1, _IoThrottle, 5);
|
SetMfcToDefaultByGroup((int)RoutineStep.LoopSetDefault_M18toM40, MfcGroupName.M18toM40No303439, 3);
|
||||||
SetMfcToDefaultByGroup((int)RoutineStep.LoopSetM18toM40, MfcGroupName.M18toM40No303439, 3);
|
|
||||||
|
SetPressureUpOrDown((int)RoutineStep.SetPressUpOrDown2, PressureUpOrDown.Uping);
|
||||||
|
SetThrottleToCloseMode((int)RoutineStep.LoopSetTVCloseMode, _IoThrottle, 8);
|
||||||
|
SetThrottleDisable((int)RoutineStep.LoopSetTvPositionToZero, _IoThrottle, 8);
|
||||||
|
SetIoValueByGroup((int)RoutineStep.LoopSetEPV2, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
||||||
|
|
||||||
|
WaitThrottleToPressureAndSetMfcSpecial((int)RoutineStep.LoopWaitPressureUp, _IoThrottle, _pressureMax, _pressureMaxTimeout);
|
||||||
|
|
||||||
|
SetIoValueByGroup((int)RoutineStep.LoopSetEPV2_2, IoGroupName.EPV2, true, _IoValueOpenCloseTimeout);
|
||||||
|
|
||||||
|
SetMfcByGroup((int)RoutineStep.LoopSet0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
||||||
|
|
||||||
|
SetThrottleEnableAndWait((int)RoutineStep.LoopSetTVEnable_1, _IoThrottle, 5);
|
||||||
|
SetThrottleToPressModeAndWait((int)RoutineStep.LoopSetTVPressMode, _IoThrottle, 5);
|
||||||
SetThrottleToTargetAndNoWait((int)RoutineStep.LoopSetTv1, _IoThrottle, _pressureMin);
|
SetThrottleToTargetAndNoWait((int)RoutineStep.LoopSetTv1, _IoThrottle, _pressureMin);
|
||||||
SetMfcByGroup((int)RoutineStep.LoopSet0M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
|
||||||
SetMfcToDefaultByGroup((int)RoutineStep.LoopSetM18Default, MfcGroupName.M18, 3);
|
WaitChamberPressDownTo((int)RoutineStep.LoopWaitTv1, _pressureMin, _pressureMinTimeout);
|
||||||
WaitChamberPressDownTo((int)RoutineStep.LoopWaitTv1, _pressureMin, _pressureMinTimeout);
|
|
||||||
|
|
||||||
EndLoop((int)RoutineStep.EndLoop);
|
EndLoop((int)RoutineStep.EndLoop);
|
||||||
|
|
||||||
|
|
||||||
//11、 依次关闭 Final valves;
|
//11、 依次关闭 Final valves;
|
||||||
//先 关 闭 V93 ( ChamberPurge.Final )、 V94 ( RotationUpPurge.Final )、 V95(ConfinementRing.Final)、 V96(HeaterWF.Final);
|
//先 关 闭 V93 ( ChamberPurge.Final )、 V94 ( RotationUpPurge.Final )、 V95(ConfinementRing.Final)、 V96(HeaterWF.Final);
|
||||||
//再关闭 V87( SHPurge.Final)、 V88( OuterGas.Final)、 V89( InnerGas.Final)、 V90( MiddleGas.Final )、 V91 ( OpticPurge.Final )、 V92 ( GasRingPurge.Final )、 V97(CarryGas.Final);
|
//再关闭 V87( SHPurge.Final)、 V88( OuterGas.Final)、 V89( InnerGas.Final)、 V90( MiddleGas.Final )、 V91 ( OpticPurge.Final )、 V92 ( GasRingPurge.Final )、 V97(CarryGas.Final);
|
||||||
|
|||||||
@ -67,6 +67,7 @@ namespace SicModules.PMs.Routines
|
|||||||
|
|
||||||
SetEPV1,
|
SetEPV1,
|
||||||
SetEPV2,
|
SetEPV2,
|
||||||
|
SetEPV2_1,
|
||||||
SetTvMode,
|
SetTvMode,
|
||||||
|
|
||||||
SetTVEnable_1,
|
SetTVEnable_1,
|
||||||
@ -115,6 +116,12 @@ namespace SicModules.PMs.Routines
|
|||||||
FirstSetEPV2_1,
|
FirstSetEPV2_1,
|
||||||
FirstSetEPV2_2,
|
FirstSetEPV2_2,
|
||||||
FirstSetTv1,
|
FirstSetTv1,
|
||||||
|
FirstSetTVCloseMode,
|
||||||
|
FirstSetTvPositionToZero,
|
||||||
|
FirstSetEPV2,
|
||||||
|
FirstSetTVEnable_1,
|
||||||
|
FirstSetTVPressMode,
|
||||||
|
FirstWaitTv1,
|
||||||
|
|
||||||
SetEPV2_3,
|
SetEPV2_3,
|
||||||
CLoseEPV1,
|
CLoseEPV1,
|
||||||
@ -227,7 +234,13 @@ namespace SicModules.PMs.Routines
|
|||||||
FinishCLoseTV2,
|
FinishCLoseTV2,
|
||||||
FinishSetEPV2_3,
|
FinishSetEPV2_3,
|
||||||
FinishWaitPressUpTo1020,
|
FinishWaitPressUpTo1020,
|
||||||
FinishSet0_M2M9M15M19_M26
|
FinishSet0_M2M9M15M19_M26,
|
||||||
|
LoopSetTVCloseMode,
|
||||||
|
LoopSetTvPositionToZero,
|
||||||
|
LoopSetTVEnable_1,
|
||||||
|
LoopSetTVPressMode,
|
||||||
|
|
||||||
|
SetMfcFinal2gongyi
|
||||||
}
|
}
|
||||||
|
|
||||||
private ModuleName moduleName;
|
private ModuleName moduleName;
|
||||||
@ -372,6 +385,7 @@ namespace SicModules.PMs.Routines
|
|||||||
|
|
||||||
//10、 M27、 M28、 M29、 M31、 M33、 M40 依次设定 3S ramp 到 default 值 ;
|
//10、 M27、 M28、 M29、 M31、 M33、 M40 依次设定 3S ramp 到 default 值 ;
|
||||||
SetMfcToDefaultByGroup((int)RoutineStep.SetMfcFinal2, MfcGroupName.Final2, 3);
|
SetMfcToDefaultByGroup((int)RoutineStep.SetMfcFinal2, MfcGroupName.Final2, 3);
|
||||||
|
SetMfcToDefaultByGroup((int)RoutineStep.SetMfcFinal2gongyi, MfcGroupName.M18toM26, 3);
|
||||||
|
|
||||||
//11、 打 开 V87( SHPurge.Final)、 V88( OuterGas.Final)、 V89( InnerGas.Final )、 V90(MiddleGas.Final)、 V91(OpticPurge.Final)、 V97(CarryGas.Final);
|
//11、 打 开 V87( SHPurge.Final)、 V88( OuterGas.Final)、 V89( InnerGas.Final )、 V90(MiddleGas.Final)、 V91(OpticPurge.Final)、 V97(CarryGas.Final);
|
||||||
SetIoValueByGroup((int)RoutineStep.OpenFinal2, IoGroupName.Final2, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.OpenFinal2, IoGroupName.Final2, true, _IoValueOpenCloseTimeout);
|
||||||
@ -384,42 +398,66 @@ namespace SicModules.PMs.Routines
|
|||||||
SetMfcToDefaultByGroup((int)RoutineStep.SetM32M35M37, MfcGroupName.M32M35M37, 1);
|
SetMfcToDefaultByGroup((int)RoutineStep.SetM32M35M37, MfcGroupName.M32M35M37, 1);
|
||||||
SetMfcToDefaultByGroup((int)RoutineStep.SetM36, MfcGroupName.M36, 1);
|
SetMfcToDefaultByGroup((int)RoutineStep.SetM36, MfcGroupName.M36, 1);
|
||||||
SetMfcToDefaultByGroup((int)RoutineStep.SetM38, MfcGroupName.M38, 1);
|
SetMfcToDefaultByGroup((int)RoutineStep.SetM38, MfcGroupName.M38, 1);
|
||||||
|
|
||||||
//14、打开 V92(GasRingPurge.Final)、 V93(ChamberPurge.Final)、 V95(ConfinementRing.Final);
|
//14、打开 V92(GasRingPurge.Final)、 V93(ChamberPurge.Final)、 V95(ConfinementRing.Final);
|
||||||
//等待 950,打开 V94(RotationUpPurge.Final)、 等待 3S,打开 V96(HeaterWF.Final) ;
|
//关闭蝶阀, 再关闭 EPV2,等待 950,打开 V94(RotationUpPurge.Final)、 等待 3S,打开 V96(HeaterWF.Final) ;
|
||||||
//蝶阀改为压力模式
|
|
||||||
SetIoValueByGroup((int)RoutineStep.SetV92V93V95, IoGroupName.V92V93V95, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.SetV92V93V95, IoGroupName.V92V93V95, true, _IoValueOpenCloseTimeout);
|
||||||
WaitChamberPressUpTo((int)RoutineStep.WaitPressUpTo950, 950, _waitPressureTimeout);
|
|
||||||
|
SetThrottleToCloseMode((int)RoutineStep.SetTVCloseMode, _IoThrottle, 8);
|
||||||
|
SetThrottleDisable((int)RoutineStep.SetTvPositionToZero, _IoThrottle, 8);
|
||||||
|
SetIoValueByGroup((int)RoutineStep.SetEPV2_1, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
||||||
|
|
||||||
|
WaitPMPressureAndSetMfcSpecial((int)RoutineStep.WaitPmPressureUp1, 950, 600);
|
||||||
SetIoValueByGroup((int)RoutineStep.SetV94, IoGroupName.V94, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.SetV94, IoGroupName.V94, true, _IoValueOpenCloseTimeout);
|
||||||
TimeDelay((int)RoutineStep.TimeDelay4, 3);
|
TimeDelay((int)RoutineStep.TimeDelay4, 3);
|
||||||
SetIoValueByGroup((int)RoutineStep.SetV96, IoGroupName.V96, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.SetV96, IoGroupName.V96, true, _IoValueOpenCloseTimeout);
|
||||||
SetThrottleToPressModeAndWait((int)RoutineStep.SetTVPressMode1, _IoThrottle, 5);
|
|
||||||
|
|
||||||
//M18-M40(除 M30\M34\M39)) MFC 3s ramp 到 default 值。
|
//M18-M40(除 M30\M34\M39)) MFC 3s ramp 到 default 值。
|
||||||
//关闭 EPV2,等待压力达到设定值,压力达到后, 打开 EPV2; M18 - M40(除 M30\M34\M39)) MFC 5s ramp 到 0。
|
//关闭蝶阀, 再关闭 EPV2,等待压力达到设定值,压力达到后,打开 EPV2,打开 TV enable, 压力模式,伺服压力默认设定为 0mbar;
|
||||||
//伺服压力到设定值 0(可配置)
|
|
||||||
SetMfcToDefaultByGroup((int)RoutineStep.FirstSetDefault_M18toM40, MfcGroupName.M18toM40No303439, 3);
|
|
||||||
SetIoValueByGroup((int)RoutineStep.FirstSetEPV2_1, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
|
||||||
WaitThrottleToPressureAndSetMfcSpecial((int)RoutineStep.FirstWaitPressureUp, _IoThrottle, _ventBasePressure, _ventTimeout);
|
|
||||||
SetIoValueByGroup((int)RoutineStep.FirstSetEPV2_2, IoGroupName.EPV2, true, _IoValueOpenCloseTimeout);
|
|
||||||
SetMfcByGroup((int)RoutineStep.FirstSet0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
|
||||||
SetThrottleToTargetAndNoWait((int)RoutineStep.FirstSetTv1, _IoThrottle, _pumpBasePressure);
|
|
||||||
|
|
||||||
//循环开始
|
|
||||||
Loop((int)RoutineStep.StartLoop, _pressureLoopCount);
|
|
||||||
|
|
||||||
//M18 - M40(除 M30\M34\M39)) MFC 3s ramp 到 default 值。
|
|
||||||
//关闭 EPV2,等待压力达到设定值,压力达到后,打开 EPV2;
|
|
||||||
//M18 - M40(除 M30\M34\M39)) MFC 5s ramp 到 0。
|
//M18 - M40(除 M30\M34\M39)) MFC 5s ramp 到 0。
|
||||||
//伺服压力到设定值 0(可配置)
|
//伺服压力到设定值 0(可配置)
|
||||||
|
SetMfcToDefaultByGroup((int)RoutineStep.FirstSetDefault_M18toM40, MfcGroupName.M18toM40No303439, 3);
|
||||||
|
|
||||||
|
SetPressureUpOrDown((int)RoutineStep.SetPressUpOrDown2, PressureUpOrDown.Uping);
|
||||||
|
SetThrottleToCloseMode((int)RoutineStep.FirstSetTVCloseMode, _IoThrottle, 8);
|
||||||
|
SetThrottleDisable((int)RoutineStep.FirstSetTvPositionToZero, _IoThrottle, 8);
|
||||||
|
SetIoValueByGroup((int)RoutineStep.FirstSetEPV2, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
||||||
|
|
||||||
|
WaitThrottleToPressureAndSetMfcSpecial((int)RoutineStep.FirstWaitPressureUp, _IoThrottle, _ventBasePressure, _ventTimeout);
|
||||||
|
SetIoValueByGroup((int)RoutineStep.FirstSetEPV2_2, IoGroupName.EPV2, true, _IoValueOpenCloseTimeout);
|
||||||
|
|
||||||
|
|
||||||
|
SetThrottleEnableAndWait((int)RoutineStep.FirstSetTVEnable_1, _IoThrottle, 5);
|
||||||
|
SetThrottleToPressModeAndWait((int)RoutineStep.FirstSetTVPressMode, _IoThrottle, 5);
|
||||||
|
SetThrottleToTargetAndNoWait((int)RoutineStep.FirstSetTv1, _IoThrottle, _pumpBasePressure);
|
||||||
|
|
||||||
|
SetMfcByGroup((int)RoutineStep.FirstSet0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
||||||
|
|
||||||
|
WaitChamberPressDownTo((int)RoutineStep.FirstWaitTv1, _pumpBasePressure, _pumpTimeout);
|
||||||
|
|
||||||
|
//循环开始
|
||||||
|
Loop((int)RoutineStep.StartLoop, _pressureLoopCount);
|
||||||
|
|
||||||
|
//M18 - M40(除 M30\M34\M39)) MFC 3s ramp 到 default 值。
|
||||||
|
//关闭蝶阀, 再关闭 EPV2,等待压力达到设定值,压力达到后,打开 EPV2
|
||||||
|
//M18 - M40(除 M30\M34\M39)) MFC 5s ramp 到 0。
|
||||||
|
//打开 TV enable, 压力模式,伺服压力默认设定为 0mbar;
|
||||||
//M18 - M40(除 M30\M34\M39)) MFC5s ramp 到 0。
|
//M18 - M40(除 M30\M34\M39)) MFC5s ramp 到 0。
|
||||||
//等待压力到达 0(可配置)
|
//等待压力到达 0(可配置)
|
||||||
SetMfcToDefaultByGroup((int)RoutineStep.LoopSetDefault_M18toM40, MfcGroupName.M18toM40No303439, 3);
|
SetMfcToDefaultByGroup((int)RoutineStep.LoopSetDefault_M18toM40, MfcGroupName.M18toM40No303439, 3);
|
||||||
|
|
||||||
|
SetThrottleToCloseMode((int)RoutineStep.LoopSetTVCloseMode, _IoThrottle, 8);
|
||||||
|
SetThrottleDisable((int)RoutineStep.LoopSetTvPositionToZero, _IoThrottle, 8);
|
||||||
SetIoValueByGroup((int)RoutineStep.LoopSetEPV2_1, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.LoopSetEPV2_1, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
||||||
|
|
||||||
WaitThrottleToPressureAndSetMfcSpecial((int)RoutineStep.LoopWaitPressureUp, _IoThrottle, _ventBasePressure, _ventTimeout);
|
WaitThrottleToPressureAndSetMfcSpecial((int)RoutineStep.LoopWaitPressureUp, _IoThrottle, _ventBasePressure, _ventTimeout);
|
||||||
SetIoValueByGroup((int)RoutineStep.LoopSetEPV2_2, IoGroupName.EPV2, true, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.LoopSetEPV2_2, IoGroupName.EPV2, true, _IoValueOpenCloseTimeout);
|
||||||
SetMfcByGroup((int)RoutineStep.LoopSet0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
SetMfcByGroup((int)RoutineStep.LoopSet0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
||||||
|
|
||||||
|
SetThrottleEnableAndWait((int)RoutineStep.LoopSetTVEnable_1, _IoThrottle, 5);
|
||||||
|
SetThrottleToPressModeAndWait((int)RoutineStep.LoopSetTVPressMode, _IoThrottle, 5);
|
||||||
SetThrottleToTargetAndNoWait((int)RoutineStep.LoopSetTv1, _IoThrottle, _pumpBasePressure);
|
SetThrottleToTargetAndNoWait((int)RoutineStep.LoopSetTv1, _IoThrottle, _pumpBasePressure);
|
||||||
|
|
||||||
SetMfcByGroup((int)RoutineStep.Loop2Set0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
SetMfcByGroup((int)RoutineStep.Loop2Set0_M18toM40, MfcGroupName.M18toM40No303439, 0, 5);
|
||||||
WaitChamberPressDownTo((int)RoutineStep.LoopWaitTv1, _pumpBasePressure, _pumpTimeout);
|
WaitChamberPressDownTo((int)RoutineStep.LoopWaitTv1, _pumpBasePressure, _pumpTimeout);
|
||||||
|
|
||||||
@ -432,9 +470,11 @@ namespace SicModules.PMs.Routines
|
|||||||
SetThrottleToCloseMode((int)RoutineStep.FinishSetTVCloseMode2, _IoThrottle, 8);
|
SetThrottleToCloseMode((int)RoutineStep.FinishSetTVCloseMode2, _IoThrottle, 8);
|
||||||
SetThrottleDisable((int)RoutineStep.FinishCLoseTV2, _IoThrottle, 8);
|
SetThrottleDisable((int)RoutineStep.FinishCLoseTV2, _IoThrottle, 8);
|
||||||
TimeDelay((int)RoutineStep.TimeDelay10, 1);
|
TimeDelay((int)RoutineStep.TimeDelay10, 1);
|
||||||
|
|
||||||
|
SetPressureUpOrDown((int)RoutineStep.SetPressUpOrDown2, PressureUpOrDown.Uping);
|
||||||
SetIoValueByGroup((int)RoutineStep.FinishSetEPV2_3, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
SetIoValueByGroup((int)RoutineStep.FinishSetEPV2_3, IoGroupName.EPV2, false, _IoValueOpenCloseTimeout);
|
||||||
NotifyInfo((int)RoutineStep.Notify1, $"Wait pm pressure to 1020 mbar!");
|
NotifyInfo((int)RoutineStep.Notify1, $"Wait pm pressure to 1020 mbar!");
|
||||||
WaitChamberPressUpTo((int)RoutineStep.FinishWaitPressUpTo1020, 1020, _waitPressureTimeout);
|
WaitThrottleToPressureAndSetMfcSpecial((int)RoutineStep.FinishWaitPressUpTo1020, _IoThrottle, 1200, _ventTimeout);
|
||||||
SetMfcByGroup((int)RoutineStep.FinishSet0_M2M9M15M19_M26, MfcGroupName.M2M9M15M19_M26, 0, 3);
|
SetMfcByGroup((int)RoutineStep.FinishSet0_M2M9M15M19_M26, MfcGroupName.M2M9M15M19_M26, 0, 3);
|
||||||
}
|
}
|
||||||
catch (RoutineBreakException)
|
catch (RoutineBreakException)
|
||||||
|
|||||||
@ -611,7 +611,7 @@
|
|||||||
<config default="0" name="ThrottlePositionDefaultValue" description="蝶阀位置模式默认值" max="100" min="0" paramter="" tag="" unit="s" type="Double" />
|
<config default="0" name="ThrottlePositionDefaultValue" description="蝶阀位置模式默认值" max="100" min="0" paramter="" tag="" unit="s" type="Double" />
|
||||||
<config default="1100" name="ThrottlePressureDefaultValue" description="蝶阀压力模式默认值" max="1500" min="0" paramter="" tag="" unit="s" type="Double" />
|
<config default="1100" name="ThrottlePressureDefaultValue" description="蝶阀压力模式默认值" max="1500" min="0" paramter="" tag="" unit="s" type="Double" />
|
||||||
<config default="400" name="ThrottlePositionModeMaxPressure" description="蝶阀允许位置模式需要的最大压力值" max="1100" min="0" paramter="" tag="" unit="mbar" type="Double" />
|
<config default="400" name="ThrottlePositionModeMaxPressure" description="蝶阀允许位置模式需要的最大压力值" max="1100" min="0" paramter="" tag="" unit="mbar" type="Double" />
|
||||||
<config default="1000*10,3000*10,3000*10,4000*10,6000*10,8000*10,10000*10,12000*10,14000*10,2500*10" name="MFC27DynamicFlow" description="MFC27 动态流量" max="" min="" paramter="" tag="" visible="false" unit="" type="String" />
|
<config default="4000*10,7000*10,11000*10,13000*10,16000*10,19000*10,23000*10,28000*10,34000*10,11000*10" name="MFC27DynamicFlow" description="MFC27 动态流量" max="" min="" paramter="" tag="" visible="false" unit="" type="String" />
|
||||||
<config default="1000*10,3000*10,3000*10,4000*10,6000*10,8000*10,10000*10,12000*10,14000*10,2500*10" name="MFC28DynamicFlow" description="MFC28 动态流量" max="" min="" paramter="" tag="" visible="false" unit="" type="String" />
|
<config default="1000*10,3000*10,3000*10,4000*10,6000*10,8000*10,10000*10,12000*10,14000*10,2500*10" name="MFC28DynamicFlow" description="MFC28 动态流量" max="" min="" paramter="" tag="" visible="false" unit="" type="String" />
|
||||||
<config default="500*10,2000*10,2500*10,3500*10,5500*10,7500*10,9500*10,11500*10,13000*10,2000*10" name="MFC29DynamicFlow" description="MFC29 动态流量" max="" min="" paramter="" tag="" visible="false" unit="" type="String" />
|
<config default="500*10,2000*10,2500*10,3500*10,5500*10,7500*10,9500*10,11500*10,13000*10,2000*10" name="MFC29DynamicFlow" description="MFC29 动态流量" max="" min="" paramter="" tag="" visible="false" unit="" type="String" />
|
||||||
<config default="1000*10,3000*10,5000*10,6000*10,8000*10,10000*10,12000*10,14000*10,16000*10,4000*10" name="MFC31DynamicFlow" description="MFC31 动态流量" max="" min="" paramter="" tag="" visible="false" unit="" type="String" />
|
<config default="1000*10,3000*10,5000*10,6000*10,8000*10,10000*10,12000*10,14000*10,16000*10,4000*10" name="MFC31DynamicFlow" description="MFC31 动态流量" max="" min="" paramter="" tag="" visible="false" unit="" type="String" />
|
||||||
|
|||||||
47
App/SicUI/Models/PMs/ExchangeMoSelectDialogView.xaml
Normal file
47
App/SicUI/Models/PMs/ExchangeMoSelectDialogView.xaml
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
<UserControl x:Class="SicUI.Models.PMs.ExchangeMoSelectDialogView"
|
||||||
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||||
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||||
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||||
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||||
|
xmlns:cal="http://www.caliburn.org"
|
||||||
|
xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
|
||||||
|
mc:Ignorable="d"
|
||||||
|
Width="350"
|
||||||
|
Height="200">
|
||||||
|
<UserControl.Resources>
|
||||||
|
|
||||||
|
</UserControl.Resources>
|
||||||
|
<Border BorderBrush="Gray" BorderThickness="0,1,0,0" Background="{DynamicResource Tab_BG}">
|
||||||
|
<Grid Margin="20,30">
|
||||||
|
<Grid.RowDefinitions>
|
||||||
|
<RowDefinition />
|
||||||
|
<RowDefinition Height="auto"/>
|
||||||
|
</Grid.RowDefinitions>
|
||||||
|
<Border BorderBrush="{DynamicResource Table_BD}" BorderThickness="1" Background="{DynamicResource Table_BG_Content_Highlight}">
|
||||||
|
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center" Orientation="Horizontal">
|
||||||
|
<TextBlock VerticalAlignment="Center" FontFamily="Arial" Margin="10 0" FontSize="12" Foreground="{DynamicResource FG_Black}" Text="Select MO:" TextWrapping="Wrap" />
|
||||||
|
<ComboBox Width="150" Height="25" Margin="10 0" ItemsSource="{Binding MoList}" SelectedIndex="0" SelectedItem="{Binding SelectedMO}"/>
|
||||||
|
</StackPanel>
|
||||||
|
|
||||||
|
</Border>
|
||||||
|
<StackPanel Grid.Row="1" Margin="0,10,0,0" Orientation="Horizontal" HorizontalAlignment="Center">
|
||||||
|
<Button Content="OK" Width="90" Height="30">
|
||||||
|
<i:Interaction.Triggers>
|
||||||
|
<i:EventTrigger EventName="Click">
|
||||||
|
<cal:ActionMessage MethodName="OK">
|
||||||
|
</cal:ActionMessage>
|
||||||
|
</i:EventTrigger>
|
||||||
|
</i:Interaction.Triggers>
|
||||||
|
</Button>
|
||||||
|
<Button Content="Cancel" Margin="10,0,0,0" Width="90" Height="30">
|
||||||
|
<i:Interaction.Triggers>
|
||||||
|
<i:EventTrigger EventName="Click">
|
||||||
|
<cal:ActionMessage MethodName="Cancel">
|
||||||
|
</cal:ActionMessage>
|
||||||
|
</i:EventTrigger>
|
||||||
|
</i:Interaction.Triggers>
|
||||||
|
</Button>
|
||||||
|
</StackPanel>
|
||||||
|
</Grid>
|
||||||
|
</Border>
|
||||||
|
</UserControl>
|
||||||
59
App/SicUI/Models/PMs/ExchangeMoSelectDialogView.xaml.cs
Normal file
59
App/SicUI/Models/PMs/ExchangeMoSelectDialogView.xaml.cs
Normal file
@ -0,0 +1,59 @@
|
|||||||
|
using MECF.Framework.Common.DataCenter;
|
||||||
|
using OpenSEMI.ClientBase;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Collections.ObjectModel;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows;
|
||||||
|
using System.Windows.Controls;
|
||||||
|
using System.Windows.Data;
|
||||||
|
using System.Windows.Documents;
|
||||||
|
using System.Windows.Input;
|
||||||
|
using System.Windows.Media;
|
||||||
|
using System.Windows.Media.Imaging;
|
||||||
|
using System.Windows.Navigation;
|
||||||
|
using System.Windows.Shapes;
|
||||||
|
|
||||||
|
namespace SicUI.Models.PMs
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// ExchangeMoSelectDialogView.xaml 的交互逻辑
|
||||||
|
/// </summary>
|
||||||
|
public partial class ExchangeMoSelectDialogView : UserControl
|
||||||
|
{
|
||||||
|
public ExchangeMoSelectDialogView()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ExchangeMoSelectDialogViewModel : DialogViewModel<string>
|
||||||
|
{
|
||||||
|
|
||||||
|
public ExchangeMoSelectDialogViewModel()
|
||||||
|
{
|
||||||
|
MoList = new List<string>() { "CS2", "W(CO)6", "MOReserved", "MO(CO)6" };
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OK()
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(SelectedMO))
|
||||||
|
{
|
||||||
|
this.DialogResult = SelectedMO;
|
||||||
|
IsCancel = false;
|
||||||
|
TryClose(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Cancel()
|
||||||
|
{
|
||||||
|
IsCancel = true;
|
||||||
|
TryClose(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<string> MoList { get; set; }
|
||||||
|
public string SelectedMO { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -125,7 +125,7 @@ namespace SicUI.Models.PMs
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private List<string> _MFCGroup = new List<string>() { "MFC28", "MFC29", "MFC31","MFC40" };
|
private List<string> _MFCGroup = new List<string>() { "MFC27", "MFC28", "MFC29", "MFC31","MFC40" };
|
||||||
public List<string> MFCGroup
|
public List<string> MFCGroup
|
||||||
{
|
{
|
||||||
get { return _MFCGroup; }
|
get { return _MFCGroup; }
|
||||||
|
|||||||
@ -647,11 +647,10 @@
|
|||||||
Margin="5"
|
Margin="5"
|
||||||
Orientation="Horizontal">
|
Orientation="Horizontal">
|
||||||
<Button
|
<Button
|
||||||
x:Name="ID_BTN_Exchange_TCS_Content"
|
|
||||||
Width="100"
|
Width="100"
|
||||||
Height="30"
|
Height="30"
|
||||||
Padding="0"
|
Padding="0"
|
||||||
Content="{lex:Loc}"
|
Content="ExchangeMo"
|
||||||
FontFamily="微软雅黑"
|
FontFamily="微软雅黑"
|
||||||
FontSize="12"
|
FontSize="12"
|
||||||
FontStretch="Normal"
|
FontStretch="Normal"
|
||||||
@ -661,7 +660,7 @@
|
|||||||
<i:Interaction.Triggers>
|
<i:Interaction.Triggers>
|
||||||
<i:EventTrigger EventName="Click">
|
<i:EventTrigger EventName="Click">
|
||||||
<cal:ActionMessage MethodName="PMOperation">
|
<cal:ActionMessage MethodName="PMOperation">
|
||||||
<cal:Parameter Value="ExchangeMOTCS" />
|
<cal:Parameter Value="MOExchange" />
|
||||||
</cal:ActionMessage>
|
</cal:ActionMessage>
|
||||||
</i:EventTrigger>
|
</i:EventTrigger>
|
||||||
</i:Interaction.Triggers>
|
</i:Interaction.Triggers>
|
||||||
|
|||||||
@ -1514,22 +1514,27 @@ namespace SicUI.Models.PMs
|
|||||||
InvokeClient.Instance.Service.DoOperation($"{Module}.{strPMOP}");
|
InvokeClient.Instance.Service.DoOperation($"{Module}.{strPMOP}");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strPMOP.Contains("MOExchange"))
|
||||||
//去除strPMOP中To关键字
|
|
||||||
string strCleanTo = strPMOP.Replace("To", "");
|
|
||||||
var selection = DialogBox.ShowDialog(DialogButton.Yes | DialogButton.Cancel, DialogType.CONFIRM, $"Are you sure perform the operation {strCleanTo}");
|
|
||||||
if (selection == DialogButton.Yes)
|
|
||||||
{
|
{
|
||||||
if (strPMOP.Contains("ExchangeMO"))
|
var vm = new ExchangeMoSelectDialogViewModel();
|
||||||
|
var _windowmanager = new WindowManager();
|
||||||
|
_windowmanager.ShowDialog(vm);
|
||||||
|
if (!vm.IsCancel)
|
||||||
{
|
{
|
||||||
string strMOType = strPMOP.Replace("ExchangeMO", "");
|
InvokeClient.Instance.Service.DoOperation($"{Module}.ExchangeMO", vm.DialogResult);
|
||||||
InvokeClient.Instance.Service.DoOperation($"{Module}.ExchangeMO", $"{strMOType}");
|
|
||||||
}
|
}
|
||||||
else
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//去除strPMOP中To关键字
|
||||||
|
string strCleanTo = strPMOP.Replace("To", "");
|
||||||
|
var selection = DialogBox.ShowDialog(DialogButton.Yes | DialogButton.Cancel, DialogType.CONFIRM, $"Are you sure perform the operation {strCleanTo}");
|
||||||
|
if (selection == DialogButton.Yes)
|
||||||
{
|
{
|
||||||
InvokeClient.Instance.Service.DoOperation($"{Module}.{strPMOP}");
|
InvokeClient.Instance.Service.DoOperation($"{Module}.{strPMOP}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -340,6 +340,9 @@
|
|||||||
<Compile Include="Models\PMs\ContinueSelectDialogView.xaml.cs">
|
<Compile Include="Models\PMs\ContinueSelectDialogView.xaml.cs">
|
||||||
<DependentUpon>ContinueSelectDialogView.xaml</DependentUpon>
|
<DependentUpon>ContinueSelectDialogView.xaml</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
|
<Compile Include="Models\PMs\ExchangeMoSelectDialogView.xaml.cs">
|
||||||
|
<DependentUpon>ExchangeMoSelectDialogView.xaml</DependentUpon>
|
||||||
|
</Compile>
|
||||||
<Compile Include="Models\PMs\PMAlarmView.xaml.cs">
|
<Compile Include="Models\PMs\PMAlarmView.xaml.cs">
|
||||||
<DependentUpon>PMAlarmView.xaml</DependentUpon>
|
<DependentUpon>PMAlarmView.xaml</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
@ -578,6 +581,10 @@
|
|||||||
<Generator>MSBuild:Compile</Generator>
|
<Generator>MSBuild:Compile</Generator>
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</Page>
|
</Page>
|
||||||
|
<Page Include="Models\PMs\ExchangeMoSelectDialogView.xaml">
|
||||||
|
<Generator>MSBuild:Compile</Generator>
|
||||||
|
<SubType>Designer</SubType>
|
||||||
|
</Page>
|
||||||
<Page Include="Models\PMs\PMAlarmView.xaml">
|
<Page Include="Models\PMs\PMAlarmView.xaml">
|
||||||
<Generator>MSBuild:Compile</Generator>
|
<Generator>MSBuild:Compile</Generator>
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user