Modification of sequences to use ProcessData.TempRefWarm(Cold)1(2) and ReadTempOp operations, ver. 2.10.343
This commit is contained in:
+55
-32
@@ -213,17 +213,13 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection
|
||||
int lastTimeSec = StateMachine.Time;
|
||||
float Tw_last = 0;
|
||||
float Tc_last = 0;
|
||||
FloatBox Tw1 = new FloatBox();
|
||||
FloatBox Tw2 = new FloatBox();
|
||||
FloatBox Tc1 = new FloatBox();
|
||||
FloatBox Tc2 = new FloatBox();
|
||||
|
||||
State.Create("FixedStartMassCollection : Check temperature stabilized.")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(heatMetersPath.TMeterRefWarm1.ReadTempOp(ref Tw1))
|
||||
.AddOperation(heatMetersPath.TMeterRefWarm2.ReadTempOp(ref Tw2))
|
||||
.AddOperation(heatMetersPath.TMeterRefCold1.ReadTempOp(ref Tc1))
|
||||
.AddOperation(heatMetersPath.TMeterRefCold2.ReadTempOp(ref Tc2))
|
||||
.AddOperation(heatMetersPath.TMeterRefWarm1.ReadTempOp(ref TempRefWarm1))
|
||||
.AddOperation(heatMetersPath.TMeterRefWarm2.ReadTempOp(ref TempRefWarm2))
|
||||
.AddOperation(heatMetersPath.TMeterRefCold1.ReadTempOp(ref TempRefCold1))
|
||||
.AddOperation(heatMetersPath.TMeterRefCold2.ReadTempOp(ref TempRefCold2))
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
@@ -231,24 +227,27 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (e.Contains(Event.Next)) goto temperature_set;
|
||||
|
||||
if (StateMachine.Time - lastTimeSec > 10 || StateMachine.Time - lastTimeSec < 0)
|
||||
{
|
||||
float Tw = (Tw1.Val + Tw2.Val) / 2.0f;
|
||||
float Tc = (Tc1.Val + Tc2.Val) / 2.0f;
|
||||
if (heatMetersTestParams.TempWarmLo <= Tw && Tw <= heatMetersTestParams.TempWarmHi &&
|
||||
heatMetersTestParams.TempColdLo <= Tc && Tc <= heatMetersTestParams.TempColdHi &&
|
||||
Math.Abs(Tw - Tw_last) <= heatMetersTestParams.ChangeInTimeWarm &&
|
||||
Math.Abs(Tc - Tc_last) <= heatMetersTestParams.ChangeInTimeCold &&
|
||||
Math.Abs(Tw1.Val - Tw2.Val) <= heatMetersTestParams.DeltaTempWarm &&
|
||||
Math.Abs(Tc1.Val - Tc2.Val) <= heatMetersTestParams.DeltaTempCold)
|
||||
{
|
||||
goto temperature_set;
|
||||
}
|
||||
if (TempRefWarm1.Val != 0 && TempRefWarm2.Val != 0 && TempRefCold1.Val != 0 && TempRefCold2.Val != 0)
|
||||
{
|
||||
if (StateMachine.Time - lastTimeSec > 10 || StateMachine.Time - lastTimeSec < 0)
|
||||
{
|
||||
float Tw = (TempRefWarm1.Val + TempRefWarm2.Val) / 2.0f;
|
||||
float Tc = (TempRefCold1.Val + TempRefCold2.Val) / 2.0f;
|
||||
if (heatMetersTestParams.TempWarmLo <= Tw && Tw <= heatMetersTestParams.TempWarmHi &&
|
||||
heatMetersTestParams.TempColdLo <= Tc && Tc <= heatMetersTestParams.TempColdHi &&
|
||||
Math.Abs(Tw - Tw_last) <= heatMetersTestParams.ChangeInTimeWarm &&
|
||||
Math.Abs(Tc - Tc_last) <= heatMetersTestParams.ChangeInTimeCold &&
|
||||
Math.Abs(TempRefWarm1.Val - TempRefWarm2.Val) <= heatMetersTestParams.DeltaTempWarm &&
|
||||
Math.Abs(TempRefCold1.Val - TempRefCold2.Val) <= heatMetersTestParams.DeltaTempCold)
|
||||
{
|
||||
goto temperature_set;
|
||||
}
|
||||
|
||||
lastTimeSec = StateMachine.Time;
|
||||
Tw_last = Tw;
|
||||
Tc_last = Tc;
|
||||
}
|
||||
lastTimeSec = StateMachine.Time;
|
||||
Tw_last = Tw;
|
||||
Tc_last = Tc;
|
||||
}
|
||||
}
|
||||
}
|
||||
while (true);
|
||||
}
|
||||
@@ -323,6 +322,10 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection
|
||||
.AddOperation(outPath.TempDiv.ReadTempOp(ref TempDiv))
|
||||
.AddOperation(benchPath.PressIn.ReadPressureOp(ref PressureUp))
|
||||
.AddOperation(benchPath.PressOut.ReadPressureOp(ref PressureDown))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm1.ReadTempOp(ref TempRefWarm1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm2.ReadTempOp(ref TempRefWarm2))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold1.ReadTempOp(ref TempRefCold1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold2.ReadTempOp(ref TempRefCold2))
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
? StateMachine.Ambient.ReadAmbientOp(AmbientTemp, AmbientPressure, AmbientHumidity) : null)
|
||||
.AddOperations(measureOperations)
|
||||
@@ -346,7 +349,11 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection
|
||||
State.Create("FixedStartMassCollection : Starting the test")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperations(measureOperations)
|
||||
.AddOperation(cBrd.StartMeasurementOp(outPath, Elde.TestMethods.Diverter | Elde.TestMethods.Synchro,
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm1.ReadTempOp(ref TempRefWarm1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm2.ReadTempOp(ref TempRefWarm2))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold1.ReadTempOp(ref TempRefCold1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold2.ReadTempOp(ref TempRefCold2))
|
||||
.AddOperation(cBrd.StartMeasurementOp(outPath, Elde.TestMethods.Diverter | Elde.TestMethods.Synchro,
|
||||
test.Qfrom, test.Qto, 2 * totalPulses, (float)test.TolerRed))
|
||||
.EnterState();
|
||||
do
|
||||
@@ -360,7 +367,11 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection
|
||||
|
||||
State.Create("FixedStartMassCollection : Opening the start/stop valve at the beginning of the fixed start test")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.SetValvesOp(outPath.StartValve, null))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm1.ReadTempOp(ref TempRefWarm1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm2.ReadTempOp(ref TempRefWarm2))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold1.ReadTempOp(ref TempRefCold1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold2.ReadTempOp(ref TempRefCold2))
|
||||
.AddOperation(StateMachine.ControlBoard.SetValvesOp(outPath.StartValve, null))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do
|
||||
@@ -420,8 +431,8 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection
|
||||
else
|
||||
{
|
||||
//double deltaTime = (double)(StateMachine.Time - lastEnergyUpdateTime);
|
||||
float T_in = (heatMetersPath.TMeterRefWarm1.ReadTemperature() + heatMetersPath.TMeterRefWarm2.ReadTemperature()) / 2; /// [°C]
|
||||
float T_out = (heatMetersPath.TMeterRefCold1.ReadTemperature() + heatMetersPath.TMeterRefCold2.ReadTemperature()) / 2; /// [°C]
|
||||
float T_in = (TempRefWarm1.Val + TempRefWarm2.Val) / 2; /// [°C]
|
||||
float T_out = (TempRefCold1.Val + TempRefCold2.Val) / 2; /// [°C]
|
||||
double deltaVolume = LtrPerRefPulse * RefPulsesDelta; /// [l]
|
||||
double deltaEnergy = 0.001 * deltaVolume * (T_in - T_out) * Formulas.HeatCoefficientWater(16, T_in, T_out, heatMetersTestParams.FlowMeasuredAtHiTempPipe); /// [J] = [m3] * [K] * [J/(m3 K)]
|
||||
Energy.Update(deltaEnergy);
|
||||
@@ -456,7 +467,11 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection
|
||||
|
||||
State.Create("FixedStartMassCollection : Closing the start/stop valve at the end of the fixed start test")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.SetValvesOp(null, outPath.StartValve))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm1.ReadTempOp(ref TempRefWarm1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm2.ReadTempOp(ref TempRefWarm2))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold1.ReadTempOp(ref TempRefCold1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold2.ReadTempOp(ref TempRefCold2))
|
||||
.AddOperation(StateMachine.ControlBoard.SetValvesOp(null, outPath.StartValve))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do
|
||||
@@ -474,7 +489,11 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection
|
||||
.AddOperation(outPath.TempDiv.ReadTempOp(ref TempDiv))
|
||||
.AddOperation(benchPath.PressIn.ReadPressureOp(ref PressureUp))
|
||||
.AddOperation(benchPath.PressOut.ReadPressureOp(ref PressureDown))
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm1.ReadTempOp(ref TempRefWarm1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm2.ReadTempOp(ref TempRefWarm2))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold1.ReadTempOp(ref TempRefCold1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold2.ReadTempOp(ref TempRefCold2))
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
? StateMachine.Ambient.ReadAmbientOp(AmbientTemp, AmbientPressure, AmbientHumidity) : null)
|
||||
.AddOperation(outPath.Balance.ReadMassOp(ref Mass))
|
||||
.AddOperation(cBrd.UpdateTankWeightOp())
|
||||
@@ -500,7 +519,11 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection
|
||||
.AddOperation(outPath.TempDiv.ReadTempOp(ref TempDiv))
|
||||
.AddOperation(benchPath.PressIn.ReadPressureOp(ref PressureUp))
|
||||
.AddOperation(benchPath.PressOut.ReadPressureOp(ref PressureDown))
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm1.ReadTempOp(ref TempRefWarm1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefWarm2.ReadTempOp(ref TempRefWarm2))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold1.ReadTempOp(ref TempRefCold1))
|
||||
.AddOperation(heatMetersPath == null ? null : heatMetersPath.TMeterRefCold2.ReadTempOp(ref TempRefCold2))
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
? StateMachine.Ambient.ReadAmbientOp(AmbientTemp, AmbientPressure, AmbientHumidity) : null)
|
||||
.AddOperation(outPath.Balance.ReadStableMassOp(ref EndMass, test.MassRepeats, test.MassSpread, test.MassMethod))
|
||||
.AddOperation(cBrd.UpdateTankWeightOp())
|
||||
|
||||
Reference in New Issue
Block a user