MagFlux implemnted
This commit is contained in:
parent
48e5f26913
commit
2db0e27fc0
@ -803,6 +803,11 @@ namespace Xylem.Common.Hardware.WaterMeter.MagFlux.MagFluxCore
|
||||
/// <inheritdoc />
|
||||
public void StartMeasurement()
|
||||
{
|
||||
//todo: Thomas bitte besser machen
|
||||
if (IntermediateUpdateTimeS == 0)
|
||||
{
|
||||
IntermediateUpdateTimeS = 10;
|
||||
}
|
||||
_listOfIMeasurement = new List<IMeasurement>
|
||||
{
|
||||
new BaseMeasurement(Slot, typeof(MagFluxRecord), IntermediateUpdateTimeS)
|
||||
@ -1119,6 +1124,12 @@ namespace Xylem.Common.Hardware.WaterMeter.MagFlux.MagFluxCore
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void IMeter.SetupFromConfigFile(Int32 slot, Boolean ignoreCorruptedData, Boolean useRequest, Boolean useStreaming)
|
||||
{
|
||||
SetupFromConfigFile(slot, ignoreCorruptedData);
|
||||
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
@ -91,6 +91,8 @@ namespace Xylem.Common.Hardware.WaterMeter.WaterMeterCore
|
||||
/// has to be calculated depending on flow-rate and nominal diameter (DN)
|
||||
/// </summary>
|
||||
Int32 IntermediateUpdateTimeS { get; set; }
|
||||
Boolean SkipPreparationForTestBench { get; set; }
|
||||
String CurrentActionText { get; set; }
|
||||
#endregion
|
||||
|
||||
#region method
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/>
|
||||
</startup>
|
||||
<userSettings>
|
||||
<Xylem.Common.Ui.GenesisToolBox.Properties.Settings>
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Xylem.Common.Ui.GenesisToolBox</RootNamespace>
|
||||
<AssemblyName>Xylem.Common.Ui.GenesisToolBox</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<TargetFrameworkProfile />
|
||||
|
||||
@ -441,8 +441,9 @@ namespace GenesisToolBox
|
||||
ctlBatch.AddAllMeters("50", 0, 40, 60, 0.1, false);
|
||||
|
||||
while (!ctlBatch.MetersArePrepared())
|
||||
|
||||
{
|
||||
Thread.Sleep(100);
|
||||
Thread.Sleep(10000);
|
||||
}
|
||||
|
||||
foreach (var item in container.meterTestSettings)
|
||||
@ -470,7 +471,7 @@ namespace GenesisToolBox
|
||||
|
||||
while (!ctlBatch.MeasurementIsActive())
|
||||
{
|
||||
Thread.Sleep(100);
|
||||
Thread.Sleep(5000);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" />
|
||||
<package id="NLog" version="4.6.7" targetFramework="net40" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net40" requireReinstallation="true" />
|
||||
<package id="NLog" version="4.6.7" targetFramework="net40" requireReinstallation="true" />
|
||||
<package id="QRCoder" version="1.4.3" targetFramework="net40" />
|
||||
</packages>
|
||||
@ -9,7 +9,7 @@
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>XylemCommonUiLegacyGenCtl</RootNamespace>
|
||||
<AssemblyName>XylemCommonUiLegacyGenCtl</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
@ -23,6 +23,7 @@
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<RegisterForComInterop>false</RegisterForComInterop>
|
||||
<LangVersion>7.0</LangVersion>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
@ -32,6 +33,7 @@
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<LangVersion>7.0</LangVersion>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<StartupObject>
|
||||
@ -46,6 +48,7 @@
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
<LangVersion>7.0</LangVersion>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
@ -56,6 +59,7 @@
|
||||
<LangVersion>7.0</LangVersion>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
|
||||
<OutputPath>bin\x64\Release\</OutputPath>
|
||||
@ -66,6 +70,7 @@
|
||||
<LangVersion>7.0</LangVersion>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == '_MANUAL_CONTROL|x64'">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
@ -76,6 +81,7 @@
|
||||
<LangVersion>7.0</LangVersion>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
<Prefer32Bit>false</Prefer32Bit>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
|
||||
@ -192,6 +192,7 @@ namespace XylemCommonUiLegacyGenCtl
|
||||
testSetup.meterTestSettings[Slot - 1].FlowAdjustmentTarget = Convert.ToDecimal(FlowAdjustmentTarget);
|
||||
testSetup.meterTestSettings[Slot - 1].PreAdjustment = PreAdjustment;
|
||||
testSetup.meterTestSettings[Slot - 1].FlowTesting = FlowTesting;
|
||||
testSetup.meterTestSettings[Slot - 1].meterType = Xylem.Common.Hardware.WaterMeter.WaterMeterCore.MeterTypes.MagFlux ;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
|
||||
<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0"/>
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup></configuration>
|
||||
|
||||
@ -752,20 +752,20 @@ namespace XylemCommonUiLegacyGenCtl
|
||||
{
|
||||
IMeter meter;
|
||||
switch (item.meterType)
|
||||
{
|
||||
case MeterTypes.Cordonel:
|
||||
{
|
||||
case MeterTypes.Cordonel:
|
||||
meter = new GenesisMeter();
|
||||
break;
|
||||
case MeterTypes.MagFlux:
|
||||
case MeterTypes.MagFlux:
|
||||
meter = new MagFluxMeter();
|
||||
break;
|
||||
default:
|
||||
default:
|
||||
meter = new GenesisMeter();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
meter.SerialNumber = item.SerialNr;
|
||||
meter.CurrentActionText = "FlowTest";
|
||||
meter.SetupFromConfigFile(item.Slot, false, _useRequest, true);
|
||||
@ -1096,17 +1096,22 @@ namespace XylemCommonUiLegacyGenCtl
|
||||
foreach (var meter in batch.ListOfMeters)
|
||||
{
|
||||
|
||||
_logger.Debug($"Add Meter To Grid {meter.Slot}");
|
||||
|
||||
if (!(meter is GenesisMeter genesisMeter))
|
||||
{
|
||||
return false;
|
||||
AddMeterToGrid(meter.Slot, meter.SerialNumber, "-", IsFlyingStartStop);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
AddMeterToGrid(meter.Slot, meter.SerialNumber, genesisMeter.PcbId, IsFlyingStartStop);
|
||||
}
|
||||
//todo : roland check SkipPrepearationForTestBench
|
||||
//((GenesisMeter)meter).SkipPrepearationForTestBench = true;
|
||||
_logger.Debug($"Add Meter To Grid {meter.Slot}");
|
||||
|
||||
|
||||
AddMeterToGrid(meter.Slot, meter.SerialNumber, genesisMeter.PcbId, IsFlyingStartStop);
|
||||
|
||||
|
||||
if (IsAdjustment)
|
||||
{
|
||||
@ -1119,16 +1124,20 @@ namespace XylemCommonUiLegacyGenCtl
|
||||
listOfTasks.Add(new Task(() =>
|
||||
{
|
||||
|
||||
((GenesisMeter)meter).ReLogin();
|
||||
((GenesisMeter)meter).WriteLog("Prepare meter for Measurement/Adjustment ");
|
||||
if ((meter is GenesisMeter gMeter))
|
||||
{
|
||||
((GenesisMeter)meter).ReLogin();
|
||||
}
|
||||
|
||||
meter.WriteLog("Prepare meter for Measurement/Adjustment ");
|
||||
_logger.Debug("Prepare Meters for Measurement/Adjustment");
|
||||
if (IsAdjustment)
|
||||
{
|
||||
((GenesisMeter)meter).InitCalibration();
|
||||
meter.InitCalibration();
|
||||
}
|
||||
else
|
||||
{
|
||||
((GenesisMeter)meter).InitMeasurement();
|
||||
meter.InitMeasurement();
|
||||
}
|
||||
}));
|
||||
//// Reboot, HighPressure
|
||||
@ -1455,19 +1464,23 @@ namespace XylemCommonUiLegacyGenCtl
|
||||
var meter = batch.ListOfMeters.First(f => f.Slot == Slot);
|
||||
|
||||
MeasurementResults result;
|
||||
|
||||
if (Chnnl != 0 && meter is GenesisMeter genesisMeter)
|
||||
if (meter is GenesisMeter genesisMeter)
|
||||
{
|
||||
result = genesisMeter.GetAllMeasurementResults(refVolQm, refTimeS)
|
||||
.FirstOrDefault(f => f.Channel == Chnnl);
|
||||
return result;
|
||||
}
|
||||
|
||||
if (((GenesisMeter)meter).AllChannelsRequired)
|
||||
{
|
||||
if (meter.GetMeasurementState() != MeasurementStates.IsCompleted)
|
||||
|
||||
if (Chnnl != 0)
|
||||
{
|
||||
return null;
|
||||
result = genesisMeter.GetAllMeasurementResults(refVolQm, refTimeS)
|
||||
.FirstOrDefault(f => f.Channel == Chnnl);
|
||||
return result;
|
||||
}
|
||||
|
||||
if (((GenesisMeter)meter).AllChannelsRequired)
|
||||
{
|
||||
if (meter.GetMeasurementState() != MeasurementStates.IsCompleted)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1755,8 +1768,8 @@ namespace XylemCommonUiLegacyGenCtl
|
||||
{
|
||||
try
|
||||
{
|
||||
if (item is GenesisMeter)
|
||||
{
|
||||
//if (item is GenesisMeter)
|
||||
//{
|
||||
var settings = TestSetupContainer.meterTestSettings.First(f => f != null && f.Slot == item.Slot);
|
||||
|
||||
if ((IsAdjustment && !settings.FlowAdjustment) || (!IsAdjustment && !settings.FlowTesting))
|
||||
@ -1765,7 +1778,7 @@ namespace XylemCommonUiLegacyGenCtl
|
||||
continue;
|
||||
}
|
||||
|
||||
var _meter = (GenesisMeter)item;
|
||||
var _meter = item;
|
||||
var onlyChnl = _checkAllChannels ? null : (Int32?)0;
|
||||
var ProcessStatus = item.GetMeasurementState(onlyChnl);
|
||||
listOfStates.Add(ProcessStatus);
|
||||
@ -1855,7 +1868,7 @@ namespace XylemCommonUiLegacyGenCtl
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user