1.在PreProcess、Procss、PostProcess过程中检查对应的DO-PreProcessRunning、DO-ProcessRunning、DO-PostProcessRunning信号,

- 若为false则PM宕机
This commit is contained in:
HCL 2024-04-29 16:50:34 +08:00
parent 3442df5741
commit e2625462e3
1 changed files with 46 additions and 8 deletions

View File

@ -35,8 +35,11 @@ namespace Aitex.Core.RT.Device.Devices
private DOAccessor _doLidOpenRoutineSucceed = null;
private DOAccessor _doLidCloseRoutineSucceed = null;
private DOAccessor _doProcessRunning = null;
private DOAccessor _doPreprocessRunning = null;
private DOAccessor _doProcessRunning = null;
private DOAccessor _doPostProcessRunning = null;
private DOAccessor _doCyclePurgeRoutineRunning = null;
private DOAccessor _doExchangeMoRoutineRunning = null;
private DOAccessor _doLidCloseRoutineRunning = null;
@ -45,7 +48,6 @@ namespace Aitex.Core.RT.Device.Devices
private DOAccessor _doVentRoutineRunning = null;
private DOAccessor _doVACTransferAllowed = null;
private DOAccessor _doATMTransferAllowed = null;
private DOAccessor _doPostProcessRunning = null;
private DOAccessor _doProcessIdleRunning = null;
private DOAccessor _doATMIdleRoutineRunning = null;
private DOAccessor _doVACIdleRoutineRunning = null;
@ -284,9 +286,10 @@ namespace Aitex.Core.RT.Device.Devices
_doTCSSupply = ParseDoNode("doTCSSupply", node, ioModule);
_aiTempCtrl1 = ParseAiNode("aiTempCtrl1", node, ioModule);
_doProcessRunning = ParseDoNode("doProcessRunning", node, ioModule);
_doPreprocessRunning = ParseDoNode("doPreprocessRunning", node, ioModule);
_doProcessRunning = ParseDoNode("doProcessRunning", node, ioModule);
_doPostProcessRunning = ParseDoNode("doPostProcessRunning", node, ioModule);
_doCyclePurgeRoutineRunning = ParseDoNode("doCyclePurgeRoutineRunning", node, ioModule);
_doExchangeMoRoutineRunning = ParseDoNode("doExchangeMoRoutineRunning", node, ioModule);
_doLidCloseRoutineRunning = ParseDoNode("doLidCloseRoutineRunning", node, ioModule);
@ -483,6 +486,22 @@ namespace Aitex.Core.RT.Device.Devices
return true;
}
public bool SetPMPostProcessRunning(bool eValue, out string reason)
{
reason = String.Empty;
if (!_doPostProcessRunning.Check(eValue, out reason))
{
return false;
}
if (!_doPostProcessRunning.SetValue(eValue, out reason))
{
return false;
}
return true;
}
public bool SetPMCyclePurgeRoutineRunning(bool eValue, out string reason)
{
@ -871,6 +890,25 @@ namespace Aitex.Core.RT.Device.Devices
}
}
public bool DoPreprocessRunning
{
get
{
if (_doPreprocessRunning != null)
{
return _doPreprocessRunning.Value;
}
return false;
}
set
{
if (_doPreprocessRunning != null)
{
_doPreprocessRunning.Value = value;
}
}
}
public bool DoProcessRunning
{
@ -891,21 +929,21 @@ namespace Aitex.Core.RT.Device.Devices
}
}
public bool DoPreprocessRunning
public bool DoPostProcessRunning
{
get
{
if (_doPreprocessRunning != null)
if (_doPostProcessRunning != null)
{
return _doPreprocessRunning.Value;
return _doPostProcessRunning.Value;
}
return false;
}
set
{
if (_doPreprocessRunning != null)
if (_doPostProcessRunning != null)
{
_doPreprocessRunning.Value = value;
_doPostProcessRunning.Value = value;
}
}
}