Generic improvements: process page fixes, error format F2 or F3 (master), results page fixes, Comet ambient serial parameters (comment).

This commit is contained in:
Milan Hanajik 2015-08-16 18:05:35 +02:00
parent 752bfd98b1
commit 5db53ca6e3
8 changed files with 40 additions and 25 deletions

View File

@ -4,6 +4,7 @@ iPerl:
- STOP nefunguje pocas communikacie
- na Process obrazovke posunut stupacku a rezervoar uplne doprava
- ked su Q3 part 1 a Q3 part 2 neda sa vybrat cez UI Q3 part 2
- export the DB (=make a backup of configuration) from TBF program

View File

@ -14,7 +14,7 @@ namespace TBF.BenchControl.Ambient.Comet
{
/// <summary>
/// Ambient temperature / humidity / pressure meter 'Greco' connected via serial interface (RS232)
/// Connection settings: 19200 Bd 8-bits No-parity 1-stop-bit Flow control: none or hardware.
/// Connection settings: 9600 Bd 8-bits No-parity 2-stop-bits Flow control: none.
/// </summary>
public class Ambient : ComponentBase, IDevice, IOperation, GenericDevices.IAmbient
{

View File

@ -25,7 +25,9 @@ namespace TBF.BenchControl.Elde.FlowMeter
public float LtrPerPulseCorrected(float flow)
{
//return LtrPerPulse; /// TODO: apply correction
if (flow < 0.1f * NominalFlow) return LtrPerPulse; /// No correction for small flow
/// Apply correction
float correctedFlow = BenchControl.Formulas.CorrectedValue(flow, Corrections);
return LtrPerPulse * correctedFlow / flow;
}

View File

@ -803,8 +803,8 @@ namespace TBF.BenchControl.Sequences
data.TestResult.Meters[i].PulsesMeter = WMPulses[i];
data.TestResult.Meters[i].PulsesMaster = WMRefPulses[i];
data.TestResult.Meters[i].VolumeMeter = Formulas.VolumeFromPulses(WMPulses[i], sensPath.RegisterReaders[i].PulsesPerLtr);
data.TestResult.Meters[i].VolumeRef = data.Volume.Val;
data.TestResult.Meters[i].VolumeErrorPct = Formulas.ErrorFromVolumes(data.TestResult.Meters[i].VolumeMeter, data.Volume.Val);
data.TestResult.Meters[i].VolumeRef = Formulas.VolumeFromPulses(WMRefPulses[i], refPulsesPerLtr);
data.TestResult.Meters[i].VolumeErrorPct = Formulas.ErrorFromVolumes(data.TestResult.Meters[i].VolumeMeter, data.TestResult.Meters[i].VolumeRef);
}
}
}

View File

@ -403,7 +403,7 @@ namespace TBF.Screens
pulses[i].Text = args.TestResult.Meters[i].PulsesMeter.ToString();
refPulses[i].Text = args.TestResult.Meters[i].PulsesMaster.ToString();
volume[i].Text = args.TestResult.Meters[i].VolumeMeter.ToString();
error[i].Text = args.TestResult.Meters[i].VolumeErrorPct.ToString();
error[i].Text = args.TestResult.Meters[i].VolumeErrorPct.ToString("F2");
}
}
else if (currentMetersKind == Entities.MetersKind.Combined)
@ -413,10 +413,10 @@ namespace TBF.Screens
pulses[i].Text = args.TestResult.Meters[i].PulsesMeter.ToString();
refPulses[i].Text = args.TestResult.Meters[i].PulsesMaster.ToString();
volume[i].Text = args.TestResult.Meters[i].VolumeMeter.ToString();
error[i].Text = args.TestResult.Meters[i].VolumeErrorPct.ToString();
error[i].Text = args.TestResult.Meters[i].VolumeErrorPct.ToString("F2");
}
volume1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeMeter.ToString();
error1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeErrorPct.ToString();
error1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeErrorPct.ToString("F2");
}
tInLabel.Text = args.Tin.ToString();
@ -466,7 +466,7 @@ namespace TBF.Screens
//massLabel.Text = tstRslt.
volumeCtvLabel.Text = args.TestResult.VolumeCTV.ToString("F1");
refErrorLabel.Text = (tRes.ErrorMaster == 0) ? "---" : tRes.ErrorMaster.ToString("F2");
refErrorLabel.Text = (tRes.ErrorMaster == 0) ? "---" : tRes.ErrorMaster.ToString("F3");
if (tRes.MetersKind == Entities.MetersKind.Single)
{

View File

@ -432,7 +432,7 @@ namespace TBF.Screens
pulses[i].Text = args.TestResult.Meters[i].PulsesMeter.ToString();
refPulses[i].Text = args.TestResult.Meters[i].PulsesMaster.ToString();
volume[i].Text = args.TestResult.Meters[i].VolumeMeter.ToString();
error[i].Text = args.TestResult.Meters[i].VolumeErrorPct.ToString();
error[i].Text = args.TestResult.Meters[i].VolumeErrorPct.ToString("F2");
}
}
else if (currentMetersKind == Entities.MetersKind.Combined)
@ -442,10 +442,10 @@ namespace TBF.Screens
pulses[i].Text = args.TestResult.Meters[i].PulsesMeter.ToString();
refPulses[i].Text = args.TestResult.Meters[i].PulsesMaster.ToString();
volume[i].Text = args.TestResult.Meters[i].VolumeMeter.ToString();
error[i].Text = args.TestResult.Meters[i].VolumeErrorPct.ToString();
error[i].Text = args.TestResult.Meters[i].VolumeErrorPct.ToString("F2");
}
volume1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeMeter.ToString();
error1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeErrorPct.ToString();
error1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeErrorPct.ToString("F2");
}
tInLabel.Text = args.Tin.ToString();
@ -495,7 +495,7 @@ namespace TBF.Screens
//massLabel.Text = tstRslt.
volumeCtvLabel.Text = args.TestResult.VolumeCTV.ToString("F1");
refErrorLabel.Text = (tRes.ErrorMaster == 0) ? "---" : tRes.ErrorMaster.ToString("F2");
refErrorLabel.Text = (tRes.ErrorMaster == 0) ? "---" : tRes.ErrorMaster.ToString("F3");
if (tRes.MetersKind == Entities.MetersKind.Single)
{

View File

@ -370,19 +370,19 @@ namespace TBF.Screens
pulses1Label.Text = args.TestResult.Meters[0].PulsesMeter.ToString();
refPulses1Label.Text = args.TestResult.Meters[0].PulsesMaster.ToString();
volume1Label.Text = args.TestResult.Meters[0].VolumeMeter.ToString();
error1Label.Text = args.TestResult.Meters[0].VolumeErrorPct.ToString();
error1Label.Text = args.TestResult.Meters[0].VolumeErrorPct.ToString("F2");
if (Program.WMsCount >= 2)
{
pulses2Label.Text = args.TestResult.Meters[1].PulsesMeter.ToString();
refPulses2Label.Text = args.TestResult.Meters[1].PulsesMaster.ToString();
volume2Label.Text = args.TestResult.Meters[1].VolumeMeter.ToString();
error2Label.Text = args.TestResult.Meters[1].VolumeErrorPct.ToString();
error2Label.Text = args.TestResult.Meters[1].VolumeErrorPct.ToString("F2");
}
if (currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 2)
{
volume1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeMeter.ToString();
error1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeErrorPct.ToString();
error1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeErrorPct.ToString("F2");
}
if ((currentMetersKind == Entities.MetersKind.Single && Program.WMsCount >= 3) ||
@ -391,19 +391,19 @@ namespace TBF.Screens
pulses3Label.Text = args.TestResult.Meters[2].PulsesMeter.ToString();
refPulses3Label.Text = args.TestResult.Meters[2].PulsesMaster.ToString();
volume3Label.Text = args.TestResult.Meters[2].VolumeMeter.ToString();
error3Label.Text = args.TestResult.Meters[2].VolumeErrorPct.ToString();
error3Label.Text = args.TestResult.Meters[2].VolumeErrorPct.ToString("F2");
}
if (Program.WMsCount >= 4)
{
pulses4Label.Text = args.TestResult.Meters[3].PulsesMeter.ToString();
refPulses4Label.Text = args.TestResult.Meters[3].PulsesMaster.ToString();
volume4Label.Text = args.TestResult.Meters[3].VolumeMeter.ToString();
error4Label.Text = args.TestResult.Meters[3].VolumeErrorPct.ToString();
error4Label.Text = args.TestResult.Meters[3].VolumeErrorPct.ToString("F2");
}
if (currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 4)
{
volume2zLabel.Text = args.TestResult.CombinedMeters[1].VolumeMeter.ToString();
error2zLabel.Text = args.TestResult.CombinedMeters[1].VolumeErrorPct.ToString();
error2zLabel.Text = args.TestResult.CombinedMeters[1].VolumeErrorPct.ToString("F2");
}
if ((currentMetersKind == Entities.MetersKind.Single && Program.WMsCount >= 5) ||
@ -412,19 +412,19 @@ namespace TBF.Screens
pulses5Label.Text = args.TestResult.Meters[4].PulsesMeter.ToString();
refPulses5Label.Text = args.TestResult.Meters[4].PulsesMaster.ToString();
volume5Label.Text = args.TestResult.Meters[4].VolumeMeter.ToString();
error5Label.Text = args.TestResult.Meters[4].VolumeErrorPct.ToString();
error5Label.Text = args.TestResult.Meters[4].VolumeErrorPct.ToString("F2");
}
if (Program.WMsCount >= 6)
{
pulses6Label.Text = args.TestResult.Meters[5].PulsesMeter.ToString();
refPulses6Label.Text = args.TestResult.Meters[5].PulsesMaster.ToString();
volume6Label.Text = args.TestResult.Meters[5].VolumeMeter.ToString();
error6Label.Text = args.TestResult.Meters[5].VolumeErrorPct.ToString();
error6Label.Text = args.TestResult.Meters[5].VolumeErrorPct.ToString("F2");
}
if (currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 6)
{
volume3zLabel.Text = args.TestResult.CombinedMeters[2].VolumeMeter.ToString();
error3zLabel.Text = args.TestResult.CombinedMeters[2].VolumeErrorPct.ToString();
error3zLabel.Text = args.TestResult.CombinedMeters[2].VolumeErrorPct.ToString("F2");
}
tInLabel.Text = args.Tin.ToString();
@ -474,7 +474,7 @@ namespace TBF.Screens
//massLabel.Text = tstRslt.
volumeCtvLabel.Text = args.TestResult.VolumeCTV.ToString("F1");
refErrorLabel.Text = (tRes.ErrorMaster == 0) ? "---" : tRes.ErrorMaster.ToString("F2");
refErrorLabel.Text = (tRes.ErrorMaster == 0) ? "---" : tRes.ErrorMaster.ToString("F3");
if (tRes.MetersKind == Entities.MetersKind.Single)
{

View File

@ -146,6 +146,8 @@ namespace TBF.Screens
/// Determine how many water meters were enabled for result evaluation and printing
int enabledWMsCount = 0;
bool[] wmIsEnabled = new bool[Program.WMsCount];
if (combined)
{
enabledWMsCount = Program.CompoundWMsCount;
@ -154,8 +156,18 @@ namespace TBF.Screens
{
for (int mtr0 = 0; mtr0 < Program.WMsCount; mtr0++)
{
if ((testResults != null) && (testResults.Count > 0) && !testResults[0].Meters[mtr0].Disabled)
enabledWMsCount++;
if (testResults != null)
{
for (int t = 0; t < testResults.Count; t++)
{
if ((testResults[t].Meters.Count > mtr0) && !testResults[t].Meters[mtr0].Disabled)
{
wmIsEnabled[mtr0] = true;
enabledWMsCount++;
break;
}
}
}
}
}
@ -181,7 +193,7 @@ namespace TBF.Screens
bool first = true;
for (int mtr = 1; mtr <= (combined ? Program.CompoundWMsCount : Program.WMsCount); mtr++)
{
if (combined || (testResults != null && testResults.Count > 0 && !testResults[0].Meters[mtr - 1].Disabled))
if (combined || (testResults != null && testResults.Count > 0 && wmIsEnabled[mtr - 1]))
{
if (TestsArrangement == Forms.ResultsConfig.TestsAre.Rows)
{