Elde.RegisterReader.RegisterReader.Position, IRegisterReader.Position, etc. introduced., ver. 2.24.1365

This commit is contained in:
Milan Hanajik
2019-11-20 13:09:38 +01:00
parent dd8ea86fc3
commit 3e026d7129
14 changed files with 67 additions and 15 deletions
@@ -17,6 +17,15 @@ namespace TBF.BenchControl.Elde.FixedStartRegisterReader
readonly ControlBoardDev controlBoard; 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 Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.Manual; } }
public double PulsesPerLtr { get { return registerReaderCfg.ProcParams.PulsesPerLtr; } } public double PulsesPerLtr { get { return registerReaderCfg.ProcParams.PulsesPerLtr; } }
public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } } public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } }
@@ -110,13 +110,12 @@ namespace TBF.BenchControl.Elde.RegisterReader
wmPulses = lastPulses; wmPulses = lastPulses;
wmRefPulses = (int)controlBoard.EtPulses(Position); 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);
} }
/// <summary>Start this operation</summary> /// <summary>Start this operation</summary>
public void Start() public void Start()
{ {
log.DebugFormat("{0}:Start()", Name);
lastPulsesValid = false; lastPulsesValid = false;
ReadPulses(); ReadPulses();
} }
@@ -125,7 +124,6 @@ namespace TBF.BenchControl.Elde.RegisterReader
/// <returns>eventDone</returns> /// <returns>eventDone</returns>
public Event Run() public Event Run()
{ {
log.DebugFormat("{0}:Run()", Name);
ReadPulses(); ReadPulses();
return Event.ReadRegisterDone; return Event.ReadRegisterDone;
} }
@@ -133,7 +131,6 @@ namespace TBF.BenchControl.Elde.RegisterReader
/// <summary>Stop this operation</summary> /// <summary>Stop this operation</summary>
public void Stop() public void Stop()
{ {
log.DebugFormat("{0}:Stop()", Name);
ReadPulses(); ReadPulses();
} }
} }
@@ -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.BenchControl.Generic;
using TBF.Boxes; using TBF.Boxes;
@@ -10,6 +10,7 @@ namespace TBF.BenchControl.GenericDevices
{ {
Config.Entities.RegisterReaderType RegisterReaderType { get; } Config.Entities.RegisterReaderType RegisterReaderType { get; }
int Position { get; }
double PulsesPerLtr { get; } /// [imp/l] ... water meter or volume measurement part of a heat meter double PulsesPerLtr { get; } /// [imp/l] ... water meter or volume measurement part of a heat meter
double LtrsPerPulse { get; } /// [l/imp] double LtrsPerPulse { get; } /// [l/imp]
@@ -33,6 +33,15 @@ namespace TBF.BenchControl.Network.Camera.Roi
/// ///
public GenericDevices.ICamera Camera { get { return NetCamera as GenericDevices.ICamera; } } 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 Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.Camera; } }
public double PulsesPerLtr { get { return RoiCfg.ProcParams.PulsesPerLtr; } } public double PulsesPerLtr { get { return RoiCfg.ProcParams.PulsesPerLtr; } }
public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } } public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } }
@@ -30,6 +30,15 @@ namespace TBF.BenchControl.Network.Camera.RoiForFixedStart
public readonly CLP1611.Camera NetCamera; public readonly CLP1611.Camera NetCamera;
public GenericDevices.ICamera Camera { get { return NetCamera as GenericDevices.ICamera; } } 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 Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.Manual; } }
public double PulsesPerLtr { get { return roiCfg.ProcParams.PulsesPerLtr; } } public double PulsesPerLtr { get { return roiCfg.ProcParams.PulsesPerLtr; } }
public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } } public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } }
@@ -18,6 +18,15 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.RegisterReader
readonly TBF.BenchControl.Elde.ControlBoardDev controlBoard; 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 Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.Manual; } }
public double PulsesPerLtr { get { return registerReaderCfg.ProcParams.PulsesPerLtr; } } public double PulsesPerLtr { get { return registerReaderCfg.ProcParams.PulsesPerLtr; } }
public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } } public double LtrsPerPulse { get { return (PulsesPerLtr <= float.Epsilon) ? 1.0 : (1 / PulsesPerLtr); } }
@@ -21,6 +21,15 @@ namespace TBF.BenchControl.RegisterReaders.SerialStream
readonly SerialStreamCfg myCfg; 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 Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.DataStream; } }
public double PulsesPerLtr { get { return 1000.0; } } public double PulsesPerLtr { get { return 1000.0; } }
public double LtrsPerPulse { get { return 1 / PulsesPerLtr; } } public double LtrsPerPulse { get { return 1 / PulsesPerLtr; } }
@@ -653,7 +653,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStart
if (regReader.WMPulses >= 1) if (regReader.WMPulses >= 1)
{ {
/// Normal measurement /// Normal measurement
meterRslt.TestTime = cBrd.ImpulseTime(i + 1); meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position);
meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter
} }
else else
@@ -933,7 +933,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollComparative
meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses); meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses);
meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses); meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses);
meterRslt.TestTime = cBrd.ImpulseTime(2 * i + isAux + 1); meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position);
meterRslt.VolumeStart = 0; meterRslt.VolumeStart = 0;
meterRslt.VolumeEnd = 0; meterRslt.VolumeEnd = 0;
meterRslt.VolumeRef = tstRslt.VolumeCTV; meterRslt.VolumeRef = tstRslt.VolumeCTV;
@@ -1118,7 +1118,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollComparative
if (regReader.WMPulses >= 1) if (regReader.WMPulses >= 1)
{ {
/// Normal measurement /// Normal measurement
meterRslt.TestTime = cBrd.ImpulseTime(i + 1); meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position);
meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter
} }
else else
@@ -815,7 +815,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged
meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses); meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses);
meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses); meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses);
meterRslt.TestTime = cBrd.ImpulseTime(2 * i + isAux + 1); meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position);
meterRslt.VolumeStart = 0; meterRslt.VolumeStart = 0;
meterRslt.VolumeEnd = 0; meterRslt.VolumeEnd = 0;
meterRslt.VolumeRef = tstRslt.VolumeCTV; meterRslt.VolumeRef = tstRslt.VolumeCTV;
@@ -803,7 +803,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses); meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses);
meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses); meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses);
meterRslt.TestTime = cBrd.ImpulseTime(2 * i + isAux + 1); meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position);
meterRslt.VolumeStart = 0; meterRslt.VolumeStart = 0;
meterRslt.VolumeEnd = 0; meterRslt.VolumeEnd = 0;
meterRslt.VolumeRef = tstRslt.VolumeCTV; meterRslt.VolumeRef = tstRslt.VolumeCTV;
@@ -988,7 +988,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
if (regReader.WMPulses >= 1) if (regReader.WMPulses >= 1)
{ {
/// Normal measurement /// Normal measurement
meterRslt.TestTime = cBrd.ImpulseTime(i + 1); meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position);
meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter
} }
else else
@@ -563,7 +563,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartTankCollection
meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses); meterRslt.PulsesMeter = (isAux == 0 && compoundTestParams.SupressTrills) ? 0 : Convert.ToDouble(regReader.WMPulses);
meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses); meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses);
meterRslt.TestTime = cBrd.ImpulseTime(2 * i + isAux + 1); meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position);
meterRslt.VolumeStart = 0; meterRslt.VolumeStart = 0;
meterRslt.VolumeEnd = 0; meterRslt.VolumeEnd = 0;
meterRslt.VolumeRef = tstRslt.VolumeCTV; meterRslt.VolumeRef = tstRslt.VolumeCTV;
@@ -677,7 +677,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartTankCollection
if (regReader.WMPulses >= 1) if (regReader.WMPulses >= 1)
{ {
/// Normal measurement /// Normal measurement
meterRslt.TestTime = cBrd.ImpulseTime(i + 1); meterRslt.TestTime = cBrd.ImpulseTime(regReader.Position);
meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter
} }
else else
@@ -31,6 +31,15 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication.iPerlHead
public int MuxBoardNrOrGroup14 { get { return iperlHeadCfg.MuxBoardNr; } } public int MuxBoardNrOrGroup14 { get { return iperlHeadCfg.MuxBoardNr; } }
public int Group { get { return iperlHeadCfg.Group; } } 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 Config.Entities.RegisterReaderType RegisterReaderType { get { return Config.Entities.RegisterReaderType.DataStream; } }
public double PulsesPerLtr { get { return 1000.0; } } public double PulsesPerLtr { get { return 1000.0; } }
public double LtrsPerPulse { get { return 1 / PulsesPerLtr; } } public double LtrsPerPulse { get { return 1 / PulsesPerLtr; } }
+2 -2
View File
@@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
// Build Number // Build Number
// Revision // Revision
// //
[assembly: AssemblyVersion("2.24.1364.0")] [assembly: AssemblyVersion("2.24.1365.0")]
[assembly: AssemblyFileVersion("2.24.1364.0")] [assembly: AssemblyFileVersion("2.24.1365.0")]