From f725c2d2d89e4991310e775614f7b4fa34591539 Mon Sep 17 00:00:00 2001 From: Milan Hanajik Date: Tue, 5 Oct 2021 15:39:28 +0200 Subject: [PATCH] FixedStartMassCollection fixes, ver. 2.26.1770 --- .../DataEntry/S620/FormForMechanicalMeters.cs | 4 +- TBF/BenchControl/Elde/StartMeasurementOp.cs | 38 ++++++++++--------- .../FixedStartMassCollectionSeq.cs | 19 ++++++++-- TBF/Properties/AssemblyInfo.cs | 4 +- 4 files changed, 41 insertions(+), 24 deletions(-) diff --git a/TBF/BenchControl/DataEntry/S620/FormForMechanicalMeters.cs b/TBF/BenchControl/DataEntry/S620/FormForMechanicalMeters.cs index 615edb446..378d0de2c 100644 --- a/TBF/BenchControl/DataEntry/S620/FormForMechanicalMeters.cs +++ b/TBF/BenchControl/DataEntry/S620/FormForMechanicalMeters.cs @@ -630,8 +630,8 @@ namespace TBF.BenchControl.DataEntry.S620 foundMeters.Clear(); - OracleCommand cmd2 = new OracleCommand("select VT_FERNUM, ZAEHLERNUMMER, HYDR_PRUEFUNG from VT_ZAEHLER_PD" + - " where ANBID=:1 AND AUFTRAGSNUMMER=:2 order by ZAEHLERNUMMER asc", connection); + OracleCommand cmd2 = new OracleCommand("SELECT vt_fernum, zaehlernummer, hydr_pruefung FROM vt_zaehler_pd" + + " WHERE anbid=:1 AND auftragsnummer=:2 ORDER BY zaehlernummer ASC", connection); cmd2.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = ProcessData.OracleDB.Anbid_Producer }); ///:1 cmd2.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = orderNr }); ///:2 diff --git a/TBF/BenchControl/Elde/StartMeasurementOp.cs b/TBF/BenchControl/Elde/StartMeasurementOp.cs index 01a11af0e..31bcc1130 100644 --- a/TBF/BenchControl/Elde/StartMeasurementOp.cs +++ b/TBF/BenchControl/Elde/StartMeasurementOp.cs @@ -211,24 +211,28 @@ namespace TBF.BenchControl.Elde double freqLo = 2000.0 * reqFlowLo / nominalFlow; double freqHi = 2000.0 * reqFlowHi / nominalFlow; - if (regulValve.IsCoax) + if ((testMethod & TestMethods.FixedStart) == 0) { - controlBoard.ValveMove(regulValveNr, RegulValveMode.TargetFrequency, - new float[2] { (float)((freqLo + freqHi) / 2), (float)((freqLo + freqHi) / 2) }, - regulValveStableTime); - } - else if (regulValve is RegulValveMilwaukee.RegulValve) - { - controlBoard.ValveMove(regulValveNr, RegulValveMode.TargetFrequency, - new float[2] { (float)freqLo, (float)freqHi }, - regulValveStableTime, - true); - } - else - { - controlBoard.ValveMove(regulValveNr, RegulValveMode.TargetFrequency, - new float[2] { (float)freqLo, (float)freqHi }, - regulValveStableTime); + /// This is not a fixed start method => Start flow regulation + if (regulValve.IsCoax) + { + controlBoard.ValveMove(regulValveNr, RegulValveMode.TargetFrequency, + new float[2] { (float)((freqLo + freqHi) / 2), (float)((freqLo + freqHi) / 2) }, + regulValveStableTime); + } + else if (regulValve is RegulValveMilwaukee.RegulValve) + { + controlBoard.ValveMove(regulValveNr, RegulValveMode.TargetFrequency, + new float[2] { (float)freqLo, (float)freqHi }, + regulValveStableTime, + true); + } + else + { + controlBoard.ValveMove(regulValveNr, RegulValveMode.TargetFrequency, + new float[2] { (float)freqLo, (float)freqHi }, + regulValveStableTime); + } } opState = OpState.OpCompleted; diff --git a/TBF/BenchControl/TestMethods/FixedStartMassCollection/FixedStartMassCollectionSeq.cs b/TBF/BenchControl/TestMethods/FixedStartMassCollection/FixedStartMassCollectionSeq.cs index 17349d095..c95038a69 100644 --- a/TBF/BenchControl/TestMethods/FixedStartMassCollection/FixedStartMassCollectionSeq.cs +++ b/TBF/BenchControl/TestMethods/FixedStartMassCollection/FixedStartMassCollectionSeq.cs @@ -427,6 +427,20 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection temperature_set: + State.Create(string.Format("{0}({1}) : Starting the test", test.Method, test.Name)) + .AddOperation(checkUiOp) + .AddOperations(readTempPressOps) + .AddOperation(cBrd.StartMeasurementOp(outPath, (Elde.TestMethods.Diverter | Elde.TestMethods.FixedStart), + test.Qfrom, test.Qto, 2 * totalPulses, 10)) + .EnterState(); + do + { + e = StateMachine.WaitRunDevsRunOps(); + if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; } + if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; } + } + while (!e.Contains(Event.MeasurementStarted)); + //----------------------------------------------------------------- Bridge.OnActivity(this, Strings.Stopping_flow_for_the_fixed_start); //----------------------------------------------------------------- @@ -620,15 +634,14 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection .AddOperation(checkUiOp) .AddOperations(readTempPressOps) .AddOperation(new TBF.BenchControl.Elde.SetValvesOp(cBrd, false, outPath)) /// This line should precede StartMeasureentOp (sending commands) - .AddOperation(cBrd.StartMeasurementOp(outPath, (Elde.TestMethods.Diverter | Elde.TestMethods.FixedStart), - test.Qfrom, test.Qto, 2 * totalPulses, 10)) + .AddOperation(outPath.RegulValve.SetFlowOp(outPath.FlowMeter, test.Qfrom, test.Qto, RefFlow, int.MaxValue)) .EnterState(); do { e = StateMachine.WaitRunDevsRunOps(); if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; } if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; } } - while (!e.Contains(Event.MeasurementStarted) || !e.Contains(Event.ValvesSet)); + while (!e.Contains(Event.ValvesSet)); switchTimeStart = 0.001f * cBrd.ValveOpenCloseTime; log.WarnFormat("Start valve switch time on test start = {0} ms", cBrd.ValveOpenCloseTime); diff --git a/TBF/Properties/AssemblyInfo.cs b/TBF/Properties/AssemblyInfo.cs index ca1bde6ce..955ec811c 100644 --- a/TBF/Properties/AssemblyInfo.cs +++ b/TBF/Properties/AssemblyInfo.cs @@ -29,5 +29,5 @@ using System.Runtime.InteropServices; // Build Number // Revision // -[assembly: AssemblyVersion("2.26.1769.0")] -[assembly: AssemblyFileVersion("2.26.1769.0")] +[assembly: AssemblyVersion("2.26.1770.0")] +[assembly: AssemblyFileVersion("2.26.1770.0")]