屏蔽iointerlock代码

This commit is contained in:
SIC1016\caipeilun 2026-08-20 09:18:52 +08:00
parent 545b0a689b
commit 0a1965835c

View File

@ -30,11 +30,6 @@ namespace Aitex.Core.RT.Device.Devices
private DOAccessor _doSCR2Enable = null; private DOAccessor _doSCR2Enable = null;
private DOAccessor _doSCR3Enable = null; private DOAccessor _doSCR3Enable = null;
private DOAccessor _doTCSSupply = null;
private DOAccessor _doTCSSupplementing = null;
private DIAccessor _diTCSHighLevel1 = null;
private DIAccessor _diTCSNormalLevel = null;
private DOAccessor _doLidOpenRoutineSucceed = null; private DOAccessor _doLidOpenRoutineSucceed = null;
private DOAccessor _doLidCloseRoutineSucceed = null; private DOAccessor _doLidCloseRoutineSucceed = null;
private DOAccessor _doProcessRunning = null; private DOAccessor _doProcessRunning = null;
@ -164,44 +159,6 @@ namespace Aitex.Core.RT.Device.Devices
_scPmAtmPress = ParseScNode("AtmPressureBase", node, ioModule, $"PM.AtmPressureBase"); _scPmAtmPress = ParseScNode("AtmPressureBase", node, ioModule, $"PM.AtmPressureBase");
_scReactorPressRisingRateLimit = ParseScNode("ReactorPressRisingRateLimit", node, ioModule, $"PM.{Module}.ReactorPressRisingRateLimit"); _scReactorPressRisingRateLimit = ParseScNode("ReactorPressRisingRateLimit", node, ioModule, $"PM.{Module}.ReactorPressRisingRateLimit");
//DO-195 至 DO-208
string sDO195, sDO196, sDO197, sDO198, sDO199, sDO200, sDO201, sDO202, sDO203, sDO204, sDO205, sDO206, sDO207, sDO208;
if (Module == "PM1")
{
sDO195 = "ChamMiddleFlow2Temp";
sDO196 = "SHFlowTemp";
sDO197 = "ChamTopFlowTemp";
sDO198 = "ChamMiddleFlow1Temp";
sDO199 = "ChamBottomFlowTemp";
sDO200 = "Spare1FlowTemp";
sDO201 = "PowerRod1FlowTemp";
sDO202 = "PowerRod2FlowTemp";
sDO203 = "ForelineFlowTemp";
sDO204 = "ElectrodeWFlowTemp";
sDO205 = "TMPump1and2FlowTemp";
sDO206 = "TransformerFlowTemp";
sDO207 = "TMTopLidFlowTemp";
sDO208 = "TMBufferFlowTemp";
}
else
{
//PM2
sDO195 = "ChamMiddleFlow2Temp";
sDO196 = "SHFlowTemp";
sDO197 = "ChamTopFlowTemp";
sDO198 = "ChamMiddleFlow1Temp";
sDO199 = "ChamBottomFlowTemp";
sDO200 = "Spare1FlowTemp";
sDO201 = "PowerRod1FlowTemp";
sDO202 = "PowerRod2FlowTemp";
sDO203 = "ForelineFlowTemp";
sDO204 = "ElectrodeWFlowTemp";
sDO205 = "Spare2FlowTemp";
sDO206 = "TransformerFlowTemp";
sDO207 = "Spare3FlowTemp";
sDO208 = "Spare4FlowTemp";
}
//_scPurgeRoutineSucceedTemp = ParseScNode("PurgeRoutineSucceedTemp", node, ioModule, $"PM.{Module}.Purge.PurgeRoutineSucceedTemp"); //_scPurgeRoutineSucceedTemp = ParseScNode("PurgeRoutineSucceedTemp", node, ioModule, $"PM.{Module}.Purge.PurgeRoutineSucceedTemp");
_scTCSFluidInfusionTime = ParseScNode("TCSSupplyTime", node, ioModule, $"PM.{Module}.TCSFluidInfusionTime"); _scTCSFluidInfusionTime = ParseScNode("TCSSupplyTime", node, ioModule, $"PM.{Module}.TCSFluidInfusionTime");
_scTCSFluidInfusionFeedbackDI = SC.SafeGetValue($"PM.{Module}.TCSFluidInfusionFeedbackDI", false); _scTCSFluidInfusionFeedbackDI = SC.SafeGetValue($"PM.{Module}.TCSFluidInfusionFeedbackDI", false);
@ -229,11 +186,6 @@ namespace Aitex.Core.RT.Device.Devices
_doSCR2Enable = ParseDoNode("doSCR2Enable", node, ioModule); _doSCR2Enable = ParseDoNode("doSCR2Enable", node, ioModule);
_doSCR3Enable = ParseDoNode("doSCR3Enable", node, ioModule); _doSCR3Enable = ParseDoNode("doSCR3Enable", node, ioModule);
_doTCSSupply = ParseDoNode("doTCSSupply", node, ioModule);//?
_doTCSSupplementing = ParseDoNode("doTCSSupplementing", node, ioModule);
_diTCSHighLevel1 = ParseDiNode("diTCSHighLevel1", node, ioModule);
_diTCSNormalLevel = ParseDiNode("diTCSNormalLevel", node, ioModule);//?
_aiTempCtrl1 = ParseAiNode("aiTempCtrl1", node, ioModule); _aiTempCtrl1 = ParseAiNode("aiTempCtrl1", node, ioModule);
_doProcessRunning = ParseDoNode("doProcessRunning", node, ioModule); _doProcessRunning = ParseDoNode("doProcessRunning", node, ioModule);
@ -267,7 +219,6 @@ namespace Aitex.Core.RT.Device.Devices
_doReactorPressRisingRate = ParseDoNode("doReactorPressRisingRate", node, ioModule); _doReactorPressRisingRate = ParseDoNode("doReactorPressRisingRate", node, ioModule);
_doUPSLowBattery = ParseDoNode("doUPSLowBattery", node, ioModule); _doUPSLowBattery = ParseDoNode("doUPSLowBattery", node, ioModule);
//DO195-DO208 ChamMiddleFlow2Temp
_swTimer.Start(); _swTimer.Start();
} }
@ -528,62 +479,62 @@ namespace Aitex.Core.RT.Device.Devices
private void MonitorTCSSupply() private void MonitorTCSSupply()
{ {
string pmStatus = DATA.Poll($"{Module}.Status") == null ? "" : DATA.Poll($"{Module}.Status").ToString(); //string pmStatus = DATA.Poll($"{Module}.Status") == null ? "" : DATA.Poll($"{Module}.Status").ToString();
_tcsSupply.CLK = pmStatus == "ProcessIdle"; //_tcsSupply.CLK = pmStatus == "ProcessIdle";
if (_tcsSupply.Q) //if (_tcsSupply.Q)
{ //{
if (_scTCSFluidInfusionFeedbackDI)//根据配置是否启用使用DI反馈信号 // if (_scTCSFluidInfusionFeedbackDI)//根据配置是否启用使用DI反馈信号
{ // {
if (_doTCSSupplementing?.Value == false) // if (_doTCSSupplementing?.Value == false)
{ // {
EV.PostAlarmLog(Module, "DO_TCSSupplementing(DO-123) is not open,TCS supply failure"); // EV.PostAlarmLog(Module, "DO_TCSSupplementing(DO-123) is not open,TCS supply failure");
return; // return;
} // }
if ((_diTCSNormalLevel?.Value ?? false))//液位已经是Normal时不补液 // if ((_diTCSNormalLevel?.Value ?? false))//液位已经是Normal时不补液
{ // {
EV.PostInfoLog(Module, $"TCS supply , DI_TCSNormalLevel(DI-73) is true"); // EV.PostInfoLog(Module, $"TCS supply , DI_TCSNormalLevel(DI-73) is true");
_doTCSSupply.Value = false; // _doTCSSupply.Value = false;
return; // return;
} // }
} // }
if (!_doTCSSupply.SetValue(true, out string reason)) // if (!_doTCSSupply.SetValue(true, out string reason))
{ // {
EV.PostWarningLog(Module, "Set DO_110 Fail," + reason); // EV.PostWarningLog(Module, "Set DO_110 Fail," + reason);
} // }
else // else
{ // {
_timerTCSSupply.Start(_scTCSFluidInfusionTime.IntValue * 1000);//补液计时 // _timerTCSSupply.Start(_scTCSFluidInfusionTime.IntValue * 1000);//补液计时
} // }
} //}
if (_timerTCSSupply.IsTimeout()) //if (_timerTCSSupply.IsTimeout())
{ //{
_doTCSSupply.Value = false; // _doTCSSupply.Value = false;
EV.PostInfoLog(Module, $"TCS supply, {_scTCSFluidInfusionTime.IntValue} seconds to complete"); // EV.PostInfoLog(Module, $"TCS supply, {_scTCSFluidInfusionTime.IntValue} seconds to complete");
_timerTCSSupply.Stop(); //进入Idle状态 // _timerTCSSupply.Stop(); //进入Idle状态
} //}
if (_scTCSFluidInfusionFeedbackDI && !_timerTCSSupply.IsIdle())//根据配置是否启用使用DI反馈信号, 当定时器启动时才检测 //if (_scTCSFluidInfusionFeedbackDI && !_timerTCSSupply.IsIdle())//根据配置是否启用使用DI反馈信号, 当定时器启动时才检测
{ //{
if ((_diTCSHighLevel1?.Value ?? false) || (_diTCSNormalLevel?.Value ?? false))//两个DI为高液位时主动停止补液 // if ((_diTCSHighLevel1?.Value ?? false) || (_diTCSNormalLevel?.Value ?? false))//两个DI为高液位时主动停止补液
{ // {
_timerTCSSupply.Stop(); //进入Idle状态 // _timerTCSSupply.Stop(); //进入Idle状态
if ((_diTCSHighLevel1?.Value ?? false)) // if ((_diTCSHighLevel1?.Value ?? false))
{ // {
EV.PostInfoLog(Module, $"TCS supply ,DI_TCSHighLevel1(DI-29) is true"); // EV.PostInfoLog(Module, $"TCS supply ,DI_TCSHighLevel1(DI-29) is true");
_doTCSSupply.Value = false; // _doTCSSupply.Value = false;
} // }
if (_diTCSNormalLevel?.Value ?? false) // if (_diTCSNormalLevel?.Value ?? false)
{ // {
EV.PostInfoLog(Module, $"TCS supply , DI_TCSNormalLevel(DI-73) is true"); // EV.PostInfoLog(Module, $"TCS supply , DI_TCSNormalLevel(DI-73) is true");
_doTCSSupply.Value = false; // _doTCSSupply.Value = false;
} // }
} // }
} //}
} }
public void Reset() public void Reset()