修正PyroFollow模式下PSU1和PSU3没有跟随PSU2的问题。

This commit is contained in:
SL 2024-03-01 13:52:52 +08:00
parent f48ee93ec7
commit fc7cbe3b53
1 changed files with 12 additions and 33 deletions

View File

@ -1032,22 +1032,12 @@ namespace Aitex.Core.RT.Device.Devices
if (!IsFloatEqual(L2TargetOPSetPoint, L2WorkingOPFeedBack))
L2TargetOPSetPoint = L2WorkingOPFeedBack;
if (!IsFloatEqual(ref _ssL2WorkingOPFeedBack, L2WorkingOPFeedBack)
|| !IsFloatEqual(ref _ssL1RatioSetPoint, L1RatioSetPoint)
|| !IsFloatEqual(ref _ssL2RatioSetPoint, L2RatioSetPoint))
{
_ssL2WorkingOPFeedBack = L2WorkingOPFeedBack;
var l1 = L2RatioSetPoint > 0 ? L2WorkingOPFeedBack * L1RatioSetPoint / L2RatioSetPoint : 0;
L1TargetOPSetPoint = l1 > 100 ? 100 : l1;
}
if (!IsFloatEqual(ref _ssL2WorkingOPFeedBack, L2WorkingOPFeedBack)
|| !IsFloatEqual(ref _ssL3RatioSetPoint, L3RatioSetPoint)
|| !IsFloatEqual(ref _ssL2RatioSetPoint, L2RatioSetPoint))
{
var l3 = L2RatioSetPoint > 0 ? L2WorkingOPFeedBack * L3RatioSetPoint / L2RatioSetPoint : 0;
L3TargetOPSetPoint = l3 > 100 ? 100 : l3;
}
}
else //Power
{
@ -1065,26 +1055,15 @@ namespace Aitex.Core.RT.Device.Devices
{
if (HeaterModeSetPoint == HeaterControlMode.PyroFollow) //Pyro和TC
{
if (!IsFloatEqual(L3TargetOPSetPoint, L3WorkingOPFeedBack))
L3TargetOPSetPoint = L3WorkingOPFeedBack;
if (!IsFloatEqual(ref _ssL3WorkingOPFeedBack, L3WorkingOPFeedBack)
|| !IsFloatEqual(ref _ssL1RatioSetPoint, L1RatioSetPoint)
|| !IsFloatEqual(ref _ssL3RatioSetPoint, L3RatioSetPoint))
{
var l1 = L3RatioSetPoint > 0 ? L3WorkingOPFeedBack * L1RatioSetPoint / L3RatioSetPoint : 0;
L1TargetOPSetPoint = l1 > 100 ? 100 : l1;
}
if (!IsFloatEqual(ref _ssL3WorkingOPFeedBack, L3WorkingOPFeedBack)
|| !IsFloatEqual(ref _ssL2RatioSetPoint, L2RatioSetPoint)
|| !IsFloatEqual(ref _ssL3RatioSetPoint, L3RatioSetPoint))
{
var l2 = L3RatioSetPoint > 0 ? L3WorkingOPFeedBack * L2RatioSetPoint / L3RatioSetPoint : 0;
L2TargetOPSetPoint = l2 > 100 ? 100 : l2;
}
}
else //Power
{
if(!IsFloatEqual(ref _ssL1RatioSetPoint, L1RatioSetPoint))