diff --git a/TBF/BenchControl/Elde/FixedStartRegisterReader/RegisterReader.cs b/TBF/BenchControl/Elde/FixedStartRegisterReader/RegisterReader.cs index 95419c1e9..b205e7765 100644 --- a/TBF/BenchControl/Elde/FixedStartRegisterReader/RegisterReader.cs +++ b/TBF/BenchControl/Elde/FixedStartRegisterReader/RegisterReader.cs @@ -17,6 +17,15 @@ namespace TBF.BenchControl.Elde.FixedStartRegisterReader readonly ControlBoardDev controlBoard; + public int Position + { + get + { + int firstDigitPos = Name.IndexOfAny(new char[] { '1', '2', '3', '4', '5', '6', '7', '8', '9', '0' }); + int position; + return (firstDigitPos < 0) ? 0 : (int.TryParse(Name.Substring(firstDigitPos), out position) ? position : 0); + } + } public Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.Manual; } } public double PulsesPerLtr { get { return registerReaderCfg.ProcParams.PulsesPerLtr; } } public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } } diff --git a/TBF/BenchControl/Elde/RegisterReader/RegisterReader.cs b/TBF/BenchControl/Elde/RegisterReader/RegisterReader.cs index 2d564802a..1af04f3f7 100644 --- a/TBF/BenchControl/Elde/RegisterReader/RegisterReader.cs +++ b/TBF/BenchControl/Elde/RegisterReader/RegisterReader.cs @@ -110,13 +110,12 @@ namespace TBF.BenchControl.Elde.RegisterReader wmPulses = lastPulses; wmRefPulses = (int)controlBoard.EtPulses(Position); - log.DebugFormat("{0}:ReadPulses() completed, wmPulses={1} wmRefPulses={2} cb.EtPulses(0)={3}", Name, wmPulses, wmRefPulses, (int)controlBoard.EtPulses(0)); + log.DebugFormat("{0}:ReadPulses() completed, wmPulses={1} wmRefPulses={2}", Name, wmPulses, wmRefPulses); } /// Start this operation public void Start() { - log.DebugFormat("{0}:Start()", Name); lastPulsesValid = false; ReadPulses(); } @@ -125,7 +124,6 @@ namespace TBF.BenchControl.Elde.RegisterReader /// eventDone public Event Run() { - log.DebugFormat("{0}:Run()", Name); ReadPulses(); return Event.ReadRegisterDone; } @@ -133,7 +131,6 @@ namespace TBF.BenchControl.Elde.RegisterReader /// Stop this operation public void Stop() { - log.DebugFormat("{0}:Stop()", Name); ReadPulses(); } } diff --git a/TBF/BenchControl/GenericDevices/IRegisterReader.cs b/TBF/BenchControl/GenericDevices/IRegisterReader.cs index 54f37ffbd..51778e675 100644 --- a/TBF/BenchControl/GenericDevices/IRegisterReader.cs +++ b/TBF/BenchControl/GenericDevices/IRegisterReader.cs @@ -1,5 +1,5 @@ /// -/// Copyright (c) 2013-2017 Sensus Metering Systems +/// Copyright (c) 2013-2019 Sensus Slovensko a.s. /// using TBF.BenchControl.Generic; using TBF.Boxes; @@ -10,6 +10,7 @@ namespace TBF.BenchControl.GenericDevices { Config.Entities.RegisterReaderType RegisterReaderType { get; } + int Position { get; } double PulsesPerLtr { get; } /// [imp/l] ... water meter or volume measurement part of a heat meter double LtrsPerPulse { get; } /// [l/imp] diff --git a/TBF/BenchControl/Network/Camera/Roi/Roi.cs b/TBF/BenchControl/Network/Camera/Roi/Roi.cs index c3466184d..76d223e55 100644 --- a/TBF/BenchControl/Network/Camera/Roi/Roi.cs +++ b/TBF/BenchControl/Network/Camera/Roi/Roi.cs @@ -33,6 +33,15 @@ namespace TBF.BenchControl.Network.Camera.Roi /// public GenericDevices.ICamera Camera { get { return NetCamera as GenericDevices.ICamera; } } + public int Position + { + get + { + int firstDigitPos = Name.IndexOfAny(new char[] { '1', '2', '3', '4', '5', '6', '7', '8', '9', '0' }); + int position; + return (firstDigitPos < 0) ? 0 : (int.TryParse(Name.Substring(firstDigitPos), out position) ? position : 0); + } + } public Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.Camera; } } public double PulsesPerLtr { get { return RoiCfg.ProcParams.PulsesPerLtr; } } public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } } diff --git a/TBF/BenchControl/Network/Camera/RoiForFixedStart/Roi.cs b/TBF/BenchControl/Network/Camera/RoiForFixedStart/Roi.cs index 393ffde79..80479e088 100644 --- a/TBF/BenchControl/Network/Camera/RoiForFixedStart/Roi.cs +++ b/TBF/BenchControl/Network/Camera/RoiForFixedStart/Roi.cs @@ -30,6 +30,15 @@ namespace TBF.BenchControl.Network.Camera.RoiForFixedStart public readonly CLP1611.Camera NetCamera; public GenericDevices.ICamera Camera { get { return NetCamera as GenericDevices.ICamera; } } + public int Position + { + get + { + int firstDigitPos = Name.IndexOfAny(new char[] { '1', '2', '3', '4', '5', '6', '7', '8', '9', '0' }); + int position; + return (firstDigitPos < 0) ? 0 : (int.TryParse(Name.Substring(firstDigitPos), out position) ? position : 0); + } + } public Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.Manual; } } public double PulsesPerLtr { get { return roiCfg.ProcParams.PulsesPerLtr; } } public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } } diff --git a/TBF/BenchControl/RegisterReaders/KPackE/RegisterReader/RegisterReader.cs b/TBF/BenchControl/RegisterReaders/KPackE/RegisterReader/RegisterReader.cs index 5eb5e655d..121b9e890 100644 --- a/TBF/BenchControl/RegisterReaders/KPackE/RegisterReader/RegisterReader.cs +++ b/TBF/BenchControl/RegisterReaders/KPackE/RegisterReader/RegisterReader.cs @@ -18,6 +18,15 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.RegisterReader readonly TBF.BenchControl.Elde.ControlBoardDev controlBoard; + public int Position + { + get + { + int firstDigitPos = Name.IndexOfAny(new char[] { '1', '2', '3', '4', '5', '6', '7', '8', '9', '0' }); + int position; + return (firstDigitPos < 0) ? 0 : (int.TryParse(Name.Substring(firstDigitPos), out position) ? position : 0); + } + } public Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.Manual; } } public double PulsesPerLtr { get { return registerReaderCfg.ProcParams.PulsesPerLtr; } } public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } } diff --git a/TBF/BenchControl/RegisterReaders/SerialStream/SerialStream.cs b/TBF/BenchControl/RegisterReaders/SerialStream/SerialStream.cs index f83de0c4f..68ddb4282 100644 --- a/TBF/BenchControl/RegisterReaders/SerialStream/SerialStream.cs +++ b/TBF/BenchControl/RegisterReaders/SerialStream/SerialStream.cs @@ -21,6 +21,15 @@ namespace TBF.BenchControl.RegisterReaders.SerialStream readonly SerialStreamCfg myCfg; + public int Position + { + get + { + int firstDigitPos = Name.IndexOfAny(new char[] { '1', '2', '3', '4', '5', '6', '7', '8', '9', '0' }); + int position; + return (firstDigitPos < 0) ? 0 : (int.TryParse(Name.Substring(firstDigitPos), out position) ? position : 0); + } + } public Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.DataStream; } } public double PulsesPerLtr { get { return 1000.0; } } public double LtrsPerPulse { get { return 1 / PulsesPerLtr; } } diff --git a/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs b/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs index d4820623b..25534ae47 100644 --- a/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs @@ -653,7 +653,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStart if (regReader.WMPulses >= 1) { /// Normal measurement - meterRslt.TestTime = cBrd.ImpulseTime(i + 1); + meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position); meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter } else diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollComparative/FlyingStartMassCollComparativeSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollComparative/FlyingStartMassCollComparativeSeq.cs index 4e5a32f34..c731d969f 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartMassCollComparative/FlyingStartMassCollComparativeSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollComparative/FlyingStartMassCollComparativeSeq.cs @@ -933,7 +933,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollComparative meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses); meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses); - meterRslt.TestTime = cBrd.ImpulseTime(2 * i + isAux + 1); + meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position); meterRslt.VolumeStart = 0; meterRslt.VolumeEnd = 0; meterRslt.VolumeRef = tstRslt.VolumeCTV; @@ -1118,7 +1118,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollComparative if (regReader.WMPulses >= 1) { /// Normal measurement - meterRslt.TestTime = cBrd.ImpulseTime(i + 1); + meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position); meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter } else diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs index a90aedd8b..397a6553e 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs @@ -815,7 +815,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses); meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses); - meterRslt.TestTime = cBrd.ImpulseTime(2 * i + isAux + 1); + meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position); meterRslt.VolumeStart = 0; meterRslt.VolumeEnd = 0; meterRslt.VolumeRef = tstRslt.VolumeCTV; diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs index 29d3f4bbc..71cdfc4f9 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs @@ -803,7 +803,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses); meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses); - meterRslt.TestTime = cBrd.ImpulseTime(2 * i + isAux + 1); + meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position); meterRslt.VolumeStart = 0; meterRslt.VolumeEnd = 0; meterRslt.VolumeRef = tstRslt.VolumeCTV; @@ -988,7 +988,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection if (regReader.WMPulses >= 1) { /// Normal measurement - meterRslt.TestTime = cBrd.ImpulseTime(i + 1); + meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position); meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter } else diff --git a/TBF/BenchControl/TestMethods/FlyingStartTankCollection/FlyingStartTankCollectionSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartTankCollection/FlyingStartTankCollectionSeq.cs index 37357da24..fc120c2e5 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartTankCollection/FlyingStartTankCollectionSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartTankCollection/FlyingStartTankCollectionSeq.cs @@ -563,7 +563,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartTankCollection meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses); meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses); - meterRslt.TestTime = cBrd.ImpulseTime(2 * i + isAux + 1); + meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position); meterRslt.VolumeStart = 0; meterRslt.VolumeEnd = 0; meterRslt.VolumeRef = tstRslt.VolumeCTV; @@ -677,7 +677,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartTankCollection if (regReader.WMPulses >= 1) { /// Normal measurement - meterRslt.TestTime = cBrd.ImpulseTime(i + 1); + meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position); meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter } else diff --git a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/IperlHead.cs b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/IperlHead.cs index aa48a6a28..2dd32ed5d 100644 --- a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/IperlHead.cs +++ b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlHead/IperlHead.cs @@ -31,6 +31,15 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication.iPerlHead public int MuxBoardNrOrGroup14 { get { return iperlHeadCfg.MuxBoardNr; } } public int Group { get { return iperlHeadCfg.Group; } } + public int Position + { + get + { + int firstDigitPos = Name.IndexOfAny(new char[] { '1', '2', '3', '4', '5', '6', '7', '8', '9', '0' }); + int position; + return (firstDigitPos < 0) ? 0 : (int.TryParse(Name.Substring(firstDigitPos), out position) ? position : 0); + } + } public Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.DataStream; } } public double PulsesPerLtr { get { return 1000.0; } } public double LtrsPerPulse { get { return 1 / PulsesPerLtr; } } diff --git a/TBF/Properties/AssemblyInfo.cs b/TBF/Properties/AssemblyInfo.cs index 446d77322..e2f0b738b 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.24.1364.0")] -[assembly: AssemblyFileVersion("2.24.1364.0")] +[assembly: AssemblyVersion("2.24.1365.0")] +[assembly: AssemblyFileVersion("2.24.1365.0")]