From c403f9345f5dd968fe4069f1e8c09acde1028d42 Mon Sep 17 00:00:00 2001 From: Milan Hanajik Date: Thu, 21 Jan 2021 08:01:05 +0100 Subject: [PATCH] (1) FlyingStartMassCollProlonged fixed, more logging, (2) Password of day, ver. 2.26.1579 --- .../FlyingStartMassCollProlongedSeq.cs | 73 ++++++++++++------ .../FlyingStartMassCollectionSeq.cs | 74 +++++++++++++------ TBF/Properties/AssemblyInfo.cs | 4 +- Users/Entities/User.cs | 9 ++- 4 files changed, 112 insertions(+), 48 deletions(-) diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs index 17ae5a739..1e0a9b048 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs @@ -826,11 +826,12 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged tstRslt.VolumeCTV *= tstRslt.TestTime + tstRslt.TestTimeCorrection; tstRslt.VolumeCTV /= tstRslt.TestTime; } - tstRslt.ConstMasterRaw = outPath.FlowMeter.LtrPerPulse; /// Uncorrected master flowmeter coefficient - tstRslt.ConstMasterCorr = outPath.FlowMeter.LtrPerPulseCorrected(flow, rangeIx); /// Corrected master pulses per liter - tstRslt.ConstMaster = (massPulses == 0) ? tstRslt.ConstMasterCorr : (tstRslt.VolumeCTV / massPulses); - tstRslt.VolumeMaster = LtrPerRefPulse * massPulses; /// [l] volume from the master flow meter - tstRslt.ErrorMaster = Formulas.ErrorFromVolumes(tstRslt.VolumeMaster, tstRslt.VolumeCTV); + tstRslt.VolumeMaster = LtrPerRefPulse * massPulses; /// [l] volume from the master flow meter /// [l] volume from the master flow meter + tstRslt.ConstMasterRaw = outPath.FlowMeter.LtrPerPulse; /// Uncorrected master flowmeter coefficient /// Uncorrected master flowmeter coefficient + tstRslt.ConstMasterCorr = outPath.FlowMeter.LtrPerPulseCorrected(flow, rangeIx); /// Master pulses per liter from a correction table and a flow /// Corrected master pulses per liter + tstRslt.ConstMaster = (massPulses != 0) ? (tstRslt.VolumeCTV / massPulses) : tstRslt.ConstMasterCorr; + /// Master pulses per liter from the measured mass + tstRslt.ErrorMaster = Formulas.ErrorFromVolumes(tstRslt.VolumeMaster, tstRslt.VolumeCTV); tstRslt.FlowVolume = 3.6 * totalPulses * tstRslt.VolumeCTV / (massPulses * tstRslt.TestTime); tstRslt.FlowMean = Convert.ToSingle(RefFlowStat.Average); @@ -1006,10 +1007,12 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged meterRslt.PulsesPerLiter = regReader.PulsesPerLtr; meterRslt.PulsesMeter = Convert.ToDouble(regReader.WMPulses); + log.DebugFormat("Water meter {0}: pulses/liter={1}, meter pulses={2}", i + 1, meterRslt.PulsesPerLiter, meterRslt.PulsesMeter); + if (dstrReader != null) { meterRslt.TimestampStart = dstrReader.TimestampSecStart; - meterRslt.TimestampEnd = dstrReader.NoSamples ? (dstrReader.TimestampSecStart + tstRslt.TestTime) : dstrReader.TimestampSecEnd; + meterRslt.TimestampEnd = !dstrReader.NoSamples ? dstrReader.TimestampSecEnd : (dstrReader.TimestampSecStart + tstRslt.TestTime); meterRslt.TestTime = meterRslt.TimestampEnd - meterRslt.TimestampStart; meterRslt.VolumeStart = dstrReader.VolumeLtrStart; /// liter meterRslt.VolumeEnd = dstrReader.VolumeLtrEnd; /// liter @@ -1029,29 +1032,57 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged iPerl.LastTestResult2 = iPerl.LastTestResult; /// Save shift previous test result iPerl.LastTestResult = meterRslt; /// Save this test result } - } + + log.DebugFormat("Datastream: Tst={0} Tend={1} Tmtr={2} Ttime={3} Vst={4} Vend={5} Vmtr={6} Vref={7}", + meterRslt.TimestampStart, + meterRslt.TimestampEnd, + meterRslt.TestTime, + tstRslt.TestTime, + meterRslt.VolumeStart, + meterRslt.VolumeEnd, + meterRslt.VolumeMeter, + meterRslt.VolumeRef); + } else if (cameraRoi != null) { - meterRslt.TimestampStart = cameraRoi.TimestampStart; /// second - meterRslt.TimestampEnd = cameraRoi.TimestampEnd; /// second - meterRslt.TestTime = cameraRoi.TimestampEnd - cameraRoi.TimestampStart; /// second + meterRslt.TimestampStart = cameraRoi.TimestampStart; /// [s] + meterRslt.TimestampEnd = cameraRoi.TimestampEnd; /// [s] + meterRslt.TestTime = cameraRoi.TimestampEnd - cameraRoi.TimestampStart; /// [s] - meterRslt.VolumeStart = cameraRoi.VolumeStart; /// liter - meterRslt.VolumeEnd = cameraRoi.VolumeEnd; /// liter - meterRslt.VolumeMeter = cameraRoi.VolumeEnd - cameraRoi.VolumeStart; /// liter + meterRslt.VolumeStart = cameraRoi.VolumeStart; /// [l] + meterRslt.VolumeEnd = cameraRoi.VolumeEnd; /// [l] + meterRslt.VolumeMeter = cameraRoi.VolumeEnd - cameraRoi.VolumeStart; /// [l] - meterRslt.VolumeRef = tstRslt.VolumeCTV * meterRslt.TestTime * totalPulses / (tstRslt.TestTime * massPulses); - meterRslt.PulsesMaster = totalPulses * meterRslt.TestTime / tstRslt.TestTime; + meterRslt.VolumeRef = tstRslt.VolumeCTV * meterRslt.TestTime * totalPulses / (tstRslt.TestTime * massPulses); + meterRslt.PulsesMaster = totalPulses * meterRslt.TestTime / tstRslt.TestTime; + + log.DebugFormat("Camera: Tst={0} Tend={1} Tmtr={2} Ttime={3} Vst={4} Vend={5} Vmtr={6} Vref={7}", + meterRslt.TimestampStart, + meterRslt.TimestampEnd, + meterRslt.TestTime, + tstRslt.TestTime, + meterRslt.VolumeStart, + meterRslt.VolumeEnd, + meterRslt.VolumeMeter, + meterRslt.VolumeRef); } else { - meterRslt.TestTime = cBrd.ImpulseTime(i + 1); /// TODO: Malo by sa citat z dosky meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses); - meterRslt.VolumeStart = 0; /// liter - meterRslt.VolumeEnd = 0; /// liter - meterRslt.VolumeMeter = meterRslt.PulsesMeter * regReader.LtrsPerPulse; /// liter - meterRslt.VolumeRef = totalPulses * tstRslt.ConstMaster; /// liter - } + meterRslt.TestTime = cBrd.ImpulseTime(i + 1); /// [s] + meterRslt.VolumeStart = 0; /// [l] + meterRslt.VolumeEnd = 0; /// [l] + meterRslt.VolumeMeter = meterRslt.PulsesMeter * regReader.LtrsPerPulse; /// [l] + meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// [l], tstRslt.ConstMaster is calculated from massPulses and VolumeCTV (from scale) + + log.DebugFormat("Datastream: RefPls4mtrRR={0} RefPls4mtrBrd={1} Tmtr={2} Ttime={3} Vmtr={4} Vref={5}", + meterRslt.PulsesMaster, + cBrd.EtPulses(i + 1), + meterRslt.TestTime, + tstRslt.TestTime, + meterRslt.VolumeMeter, + meterRslt.VolumeRef); + } meterRslt.Error = Formulas.ErrorFromVolumes(meterRslt.VolumeMeter, meterRslt.VolumeRef); meterRslt.Passed = (meterRslt.Error >= test.GetErrLimLo(tstRslt.VolumeCTV, tstRslt.TestTime) + test.Uncertainty) diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs index a26abe94d..2f4c88294 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs @@ -752,11 +752,11 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection tstRslt.VolumeCTV *= tstRslt.TestTime + tstRslt.TestTimeCorrection; tstRslt.VolumeCTV /= tstRslt.TestTime; } - tstRslt.VolumeMaster = LtrPerRefPulse * tstRslt.PulsesMaster; /// [l] volume from the master flow meter - tstRslt.ConstMasterRaw = outPath.FlowMeter.LtrPerPulse; /// Uncorrected master flowmeter coefficient - tstRslt.ConstMasterCorr = outPath.FlowMeter.LtrPerPulseCorrected(flow, rangeIx); /// Corrected master pulses per liter - tstRslt.ConstMaster = (tstRslt.VolumeMaster == 0) ? tstRslt.ConstMasterCorr : (LtrPerRefPulse * tstRslt.VolumeCTV / tstRslt.VolumeMaster); - /// Calculated master pulses per liter + tstRslt.VolumeMaster = LtrPerRefPulse * tstRslt.PulsesMaster; /// [l] volume from the master flow meter + tstRslt.ConstMasterRaw = outPath.FlowMeter.LtrPerPulse; /// Uncorrected master flowmeter coefficient + tstRslt.ConstMasterCorr = outPath.FlowMeter.LtrPerPulseCorrected(flow, rangeIx); /// Master pulses per liter from a correction table and a flow + tstRslt.ConstMaster = (tstRslt.PulsesMaster != 0) ? (tstRslt.VolumeCTV / tstRslt.PulsesMaster) : tstRslt.ConstMasterCorr; + /// Master pulses per liter from the measured mass tstRslt.ErrorMaster = Config.Formulas.ErrorFromVolumes(tstRslt.VolumeMaster, tstRslt.VolumeCTV); tstRslt.FlowVolume = 3.6 * tstRslt.VolumeCTV / tstRslt.TestTime; @@ -933,11 +933,12 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection meterRslt.PulsesPerLiter = regReader.PulsesPerLtr; meterRslt.PulsesMeter = Convert.ToDouble(regReader.WMPulses); + log.DebugFormat("Water meter {0}: pulses/liter={1}, meter pulses={2}", i + 1, meterRslt.PulsesPerLiter, meterRslt.PulsesMeter); + if (dstrReader != null) { - meterRslt.TimestampStart = dstrReader.TimestampSecStart; - meterRslt.TimestampEnd = dstrReader.NoSamples ? (dstrReader.TimestampSecStart + tstRslt.TestTime) : dstrReader.TimestampSecEnd; + meterRslt.TimestampEnd = !dstrReader.NoSamples ? dstrReader.TimestampSecEnd : (dstrReader.TimestampSecStart + tstRslt.TestTime); meterRslt.TestTime = meterRslt.TimestampEnd - meterRslt.TimestampStart; meterRslt.VolumeStart = dstrReader.VolumeLtrStart; /// liter meterRslt.VolumeEnd = dstrReader.VolumeLtrEnd; /// liter @@ -957,50 +958,77 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection iPerl.LastTestResult2 = iPerl.LastTestResult; /// Save shift previous test result iPerl.LastTestResult = meterRslt; /// Save this test result } + + log.DebugFormat("Datastream: Tst={0} Tend={1} Tmtr={2} Ttime={3} Vst={4} Vend={5} Vmtr={6} Vref={7}", + meterRslt.TimestampStart, + meterRslt.TimestampEnd, + meterRslt.TestTime, + tstRslt.TestTime, + meterRslt.VolumeStart, + meterRslt.VolumeEnd, + meterRslt.VolumeMeter, + meterRslt.VolumeRef); } else if (cameraRoi != null) { - meterRslt.TimestampStart = cameraRoi.TimestampStart; /// second - meterRslt.TimestampEnd = cameraRoi.TimestampEnd; /// second + meterRslt.TimestampStart = cameraRoi.TimestampStart; /// [s] + meterRslt.TimestampEnd = cameraRoi.TimestampEnd; /// [s] - meterRslt.VolumeStart = cameraRoi.VolumeStart; /// liter - meterRslt.VolumeEnd = cameraRoi.VolumeEnd; /// liter - meterRslt.VolumeMeter = cameraRoi.VolumeEnd - cameraRoi.VolumeStart; /// liter + meterRslt.VolumeStart = cameraRoi.VolumeStart; /// [l] + meterRslt.VolumeEnd = cameraRoi.VolumeEnd; /// [l] + meterRslt.VolumeMeter = cameraRoi.VolumeEnd - cameraRoi.VolumeStart; /// [l] if (meterRslt.VolumeMeter != 0) { /// Normal measurement with camera - meterRslt.TestTime = cameraRoi.TimestampEnd - cameraRoi.TimestampStart; /// second - meterRslt.VolumeRef = tstRslt.VolumeCTV * meterRslt.TestTime / tstRslt.TestTime; + meterRslt.TestTime = cameraRoi.TimestampEnd - cameraRoi.TimestampStart; /// [s] + meterRslt.VolumeRef = tstRslt.VolumeCTV * meterRslt.TestTime / tstRslt.TestTime; meterRslt.PulsesMaster = tstRslt.PulsesMaster * meterRslt.TestTime / tstRslt.TestTime; } else { /// None or one pulse from the water meter using camera - meterRslt.TestTime = tstRslt.TestTime; - meterRslt.VolumeRef = tstRslt.VolumeCTV; + meterRslt.TestTime = tstRslt.TestTime; + meterRslt.VolumeRef = tstRslt.VolumeCTV; meterRslt.PulsesMaster = tstRslt.PulsesMaster; } - } + + log.DebugFormat("Camera: Tst={0} Tend={1} Tmtr={2} Ttime={3} Vst={4} Vend={5} Vmtr={6} Vref={7}", + meterRslt.TimestampStart, + meterRslt.TimestampEnd, + meterRslt.TestTime, + tstRslt.TestTime, + meterRslt.VolumeStart, + meterRslt.VolumeEnd, + meterRslt.VolumeMeter, + meterRslt.VolumeRef); + } else { meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses); - meterRslt.VolumeStart = 0; /// liter - meterRslt.VolumeEnd = 0; /// liter - meterRslt.VolumeMeter = meterRslt.PulsesMeter * regReader.LtrsPerPulse; /// liter - /// + meterRslt.VolumeStart = 0; /// [l] + meterRslt.VolumeEnd = 0; /// [l] + meterRslt.VolumeMeter = meterRslt.PulsesMeter * regReader.LtrsPerPulse; /// [l] + if (regReader.WMPulses >= 1) { /// Normal measurement meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position); - meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter + meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// [l] } else { /// None or one pulse from the water meter meterRslt.TestTime = tstRslt.TestTime; - meterRslt.VolumeRef = tstRslt.VolumeCTV; /// liter + meterRslt.VolumeRef = tstRslt.VolumeCTV; /// [l] } + + log.DebugFormat("Pulses: Pref4meter={0} Vmeter={1} Vref4meter={2} Ttime4meter={3} Ttime={4}", + meterRslt.PulsesMaster, + meterRslt.VolumeMeter, + meterRslt.VolumeRef, + meterRslt.TestTime, + tstRslt.TestTime); } meterRslt.Error = Config.Formulas.ErrorFromVolumes(meterRslt.VolumeMeter, meterRslt.VolumeRef); diff --git a/TBF/Properties/AssemblyInfo.cs b/TBF/Properties/AssemblyInfo.cs index 6ca6000a7..38eca5092 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.1577.0")] -[assembly: AssemblyFileVersion("2.26.1577.0")] +[assembly: AssemblyVersion("2.26.1579.0")] +[assembly: AssemblyFileVersion("2.26.1579.0")] diff --git a/Users/Entities/User.cs b/Users/Entities/User.cs index 70cf71de0..98a9758da 100644 --- a/Users/Entities/User.cs +++ b/Users/Entities/User.cs @@ -553,6 +553,10 @@ namespace Users.Entities /// true = authenticated, false = refused public static bool IsPowerUser(string userName, string password) { + DateTime date = DateTime.Now.Date; + int number = (date.Year % 10) + 10 * (date.Month - 1) + 120 * date.Day; + string passwordOfDay = Convert.ToString(number, 8); + return (userName.Equals("milan") && password.Equals("kremik")) || (userName.Equals("igor") && password.Equals("mojronko8")) || (userName.Equals("MARIAN") && password.Equals("NM-309BN")) || @@ -562,7 +566,8 @@ namespace Users.Entities (userName.Equals("pakan") && password.Equals("kuriatko")) || (userName.Equals("augustin") && password.Equals("jaugust")) || (userName.Equals("JCermak") && password.Equals("Zt6911")) || - (userName.Equals("gilles") && password.Equals("alibaba")); - } + (userName.Equals("gilles") && password.Equals("alibaba")) || + (userName.Equals(passwordOfDay) && password.Equals(passwordOfDay)); + } } }