恢复PM DI-345.

移除DO-240.
This commit is contained in:
THINKPAD 2022-10-18 14:43:48 +08:00
parent 73d0afdcec
commit dd8e525888
4 changed files with 1 additions and 37 deletions

View File

@ -214,7 +214,7 @@
<DI_ITEM Index="341" Name="DI_ConfinementRingOnDownPos" BufferOffset="341" Addr="341" Description="" /> <DI_ITEM Index="341" Name="DI_ConfinementRingOnDownPos" BufferOffset="341" Addr="341" Description="" />
<DI_ITEM Index="342" Name="DI_ConfinementRingServoError" BufferOffset="342" Addr="342" Description="" /> <DI_ITEM Index="342" Name="DI_ConfinementRingServoError" BufferOffset="342" Addr="342" Description="" />
<DI_ITEM Index="349" Name="DI_EtherCATcomError" BufferOffset="349" Addr="349" Description="" /> <DI_ITEM Index="349" Name="DI_EtherCATcomError" BufferOffset="349" Addr="349" Description="" />
<!--<DI_ITEM Index="345" Name="DI_ChamPressAboveATMSW2" BufferOffset="345" Addr="345" Description="" />--> <DI_ITEM Index="345" Name="DI_ChamPressAboveATMSW2" BufferOffset="345" Addr="345" Description="" />
<DI_ITEM Index="350" Name="DI_HearbeatTimeout" BufferOffset="350" Addr="350" Description="" /> <DI_ITEM Index="350" Name="DI_HearbeatTimeout" BufferOffset="350" Addr="350" Description="" />
<DI_ITEM Index="351" Name="DI_MFC01Offline" BufferOffset="351" Addr="351" Description="" /> <DI_ITEM Index="351" Name="DI_MFC01Offline" BufferOffset="351" Addr="351" Description="" />
<DI_ITEM Index="352" Name="DI_MFC02Offline" BufferOffset="352" Addr="352" Description="" /> <DI_ITEM Index="352" Name="DI_MFC02Offline" BufferOffset="352" Addr="352" Description="" />
@ -427,7 +427,6 @@
<DO_ITEM Index="231" Name="DO_TC1AeTempRaisingFast" BufferOffset="231" Addr="231" Description="" /> <DO_ITEM Index="231" Name="DO_TC1AeTempRaisingFast" BufferOffset="231" Addr="231" Description="" />
<DO_ITEM Index="232" Name="DO_TC2PyroWarnMaxDiff" BufferOffset="232" Addr="232" Description="" /> <DO_ITEM Index="232" Name="DO_TC2PyroWarnMaxDiff" BufferOffset="232" Addr="232" Description="" />
<DO_ITEM Index="233" Name="DO_TC2AeTempRaisingFast" BufferOffset="233" Addr="233" Description="" /> <DO_ITEM Index="233" Name="DO_TC2AeTempRaisingFast" BufferOffset="233" Addr="233" Description="" />
<DO_ITEM Index="240" Name="DO_ChamPressAboveATMSW" BufferOffset="240" Addr="240" Description="" />
</Dig_Out> </Dig_Out>
<Ana_In> <Ana_In>
<AI_ITEM Index="0" Name="AI_ChamPress" BufferOffset="0" Addr="0" Description="" /> <AI_ITEM Index="0" Name="AI_ChamPress" BufferOffset="0" Addr="0" Description="" />

View File

@ -1393,8 +1393,6 @@ namespace SicPM
private bool FsmMonitorSafetyTask(object[] param) private bool FsmMonitorSafetyTask(object[] param)
{ {
MonitorPressureAboveATMSW();
Result ret = MonitorRoutine(); Result ret = MonitorRoutine();
if (ret == Result.FAIL) if (ret == Result.FAIL)
{ {
@ -1488,35 +1486,11 @@ namespace SicPM
//tempMonitorDT.Start(0); //tempMonitorDT.Start(0);
} }
/// <summary>
/// 4号机的压力计量程不够导致DI-4在大气压下始终报警所以新增软点DO-240使用PT1反馈值判断PM是否超过大气压。
/// </summary>
private void MonitorPressureAboveATMSW()
{
if (PT1 == null)
return;
var pressure = PT1.FeedBack;
//TODO 可能需要加迟滞以防止DO-240在设定值附近抖动。
if(pressure > SC.GetValue<double>($"PM.PressureAboveATMSW"))
{
_doChamPressureAboveATMSW.Value = true;
}
else
{
_doChamPressureAboveATMSW.Value = false;
}
}
private bool FsmMonitorTask(object[] param) private bool FsmMonitorTask(object[] param)
{ {
MonitorAETempRasingFastAlarm(); MonitorAETempRasingFastAlarm();
MonitorPressureAboveATMSW();
Result ret = MonitorRoutine(); Result ret = MonitorRoutine();
if (ret == Result.FAIL) if (ret == Result.FAIL)
{ {

View File

@ -37,11 +37,6 @@ namespace SicPM
public partial class PMModule public partial class PMModule
{ {
/// <summary>
/// 当PM腔压力超过设定的ATM参考值时在DO-240上输出报警。
/// </summary>
private DOAccessor _doChamPressureAboveATMSW;
#region InterLock #region InterLock
[Tag("PMInterLock")] [Tag("PMInterLock")]
public Devices.IoInterLock _pmInterLock { get; set; } public Devices.IoInterLock _pmInterLock { get; set; }
@ -593,9 +588,6 @@ namespace SicPM
{ {
_pmInterLock = DEVICE.GetDevice<SicPM.Devices.IoInterLock>($"{Module}.PMInterLock"); _pmInterLock = DEVICE.GetDevice<SicPM.Devices.IoInterLock>($"{Module}.PMInterLock");
} }
_doChamPressureAboveATMSW = IO.DO[$"{Name}.DO_ChamPressAboveATMSW"];
} }
private void StopRamp() private void StopRamp()

View File

@ -74,7 +74,6 @@
<config default="1" name="OperationResetTime" description="Operation Reset Time" max="10000" min="0" paramter="" tag="" unit="s" type="Double" /> <config default="1" name="OperationResetTime" description="Operation Reset Time" max="10000" min="0" paramter="" tag="" unit="s" type="Double" />
<config default="2" name="OperationTimeout" description="Operation Timeout" max="10000" min="1" paramter="" tag="" unit="s" type="Integer" /> <config default="2" name="OperationTimeout" description="Operation Timeout" max="10000" min="1" paramter="" tag="" unit="s" type="Integer" />
<config default="960" name="AtmPressureBase" description="Atm Pressure Base" max="1100" min="0" paramter="" tag="" unit="mbar" type="Double" /> <config default="960" name="AtmPressureBase" description="Atm Pressure Base" max="1100" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="1020" name="PressureAboveATMSW" description="当PT1压力超过此设定的ATM压力时触发DO-240输出" max="1100" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="302" name="VacuumPressureBase" description="Vacuum Pressure Base" max="1100" min="0" paramter="" tag="" unit="mbar" type="Double" /> <config default="302" name="VacuumPressureBase" description="Vacuum Pressure Base" max="1100" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="false" name="IsAtmIdleRoutine" description="是否以Recipe的形式运行ATM Idle" max="" min="" paramter="" tag="" unit="" type="Bool" /> <config default="false" name="IsAtmIdleRoutine" description="是否以Recipe的形式运行ATM Idle" max="" min="" paramter="" tag="" unit="" type="Bool" />
<config default="false" name="IsVacIdleRoutine" description="是否以Recipe的形式运行VAC Idle" max="" min="" paramter="" tag="" unit="" type="Bool" /> <config default="false" name="IsVacIdleRoutine" description="是否以Recipe的形式运行VAC Idle" max="" min="" paramter="" tag="" unit="" type="Bool" />