IFlowMeter, IPressureMeter and ITempMeter extended to support Process tab page updates.

This commit is contained in:
Milan Hanajik
2022-04-26 16:53:10 +02:00
parent 43ce2552a2
commit ab140cc6af
17 changed files with 77 additions and 20 deletions
+2
View File
@@ -37,6 +37,8 @@ namespace TBF.Rig.Dummy.FlowMeter
set { }
}
public string MsrdFormat { get { return flowMeterCfg.MsrdFormat; } }
public Common.Unit MsrdUnit { get { return flowMeterCfg.MsrdUnit; } }
public double MsrdValLimLo { get { return flowMeterCfg.MsrdValLimLo; } set { flowMeterCfg.MsrdValLimLo = value; } }
public double MsrdValLimHi { get { return flowMeterCfg.MsrdValLimHi; } set { flowMeterCfg.MsrdValLimHi = value; } }
+5 -1
View File
@@ -68,6 +68,10 @@ namespace TBF.Rig.GenericDevices
bool MsrmntAvailable { get; }
double MeasuredVal { get; }
double MsrdValLimLo { get; }
double MsrdValLimHi { get; }
string MsrdFormat { get; }
Common.Unit MsrdUnit { get; }
string AltString { get; }
}
}
}
+10 -2
View File
@@ -1,5 +1,5 @@
///
/// Copyright (c) 2013-2015 Sensus Metering Systems
/// Copyright (c) 2013-2022 Sensus Slovensko a.s.
///
using System.Collections.Generic;
using Config.Entities;
@@ -27,5 +27,13 @@ namespace TBF.Rig.GenericDevices
/// <param name="pressureDone">Event returned when measurement done</param>
/// <returns>ReadPressureOp instance reference casted to IOperaton</returns>
IOperation ReadPressureOp(ref DoubleBox pressure, Event pressureDone);
}
bool MsrmntAvailable { get; }
double MeasuredVal { get; }
double MsrdValLimLo { get; }
double MsrdValLimHi { get; }
string MsrdFormat { get; }
Common.Unit MsrdUnit { get; }
string AltString { get; }
}
}
+9 -1
View File
@@ -30,5 +30,13 @@ namespace TBF.Rig.GenericDevices
/// <param name="temp">Reference to a variable for the temperature in Celsius</param>
/// <returns>ReadTempInOp instance reference casted to IOperaton</returns>
IOperation ReadTempOp(ref DoubleBox temp, Event tempDone);
}
bool MsrmntAvailable { get; }
double MeasuredVal { get; }
double MsrdValLimLo { get; }
double MsrdValLimHi { get; }
string MsrdFormat { get; }
Common.Unit MsrdUnit { get; }
string AltString { get; }
}
}
+9
View File
@@ -19,6 +19,15 @@ namespace TBF.Rig.Keithley.TempMeter
readonly TempMeterCfg tempMtrCfg; /// configuration
public SchematicDrawing.IDrawingItem DrawingItem { get { return tempMtrCfg as SchematicDrawing.IDrawingItem; } }
public string MsrdFormat { get { return tempMtrCfg.MsrdFormat; } }
public Unit MsrdUnit { get { return tempMtrCfg.MsrdUnit; } }
public double MsrdValLimLo { get { return Units.ConvertFrom(MsrdUnit, tempMtrCfg.MsrdValLimLo); } }
public double MsrdValLimHi { get { return Units.ConvertFrom(MsrdUnit, tempMtrCfg.MsrdValLimHi); } }
public bool MsrmntAvailable { get { return true; } }
public double MeasuredVal { get { return ReadTemperature(); } }
public string AltString { get { return string.Empty; } }
public readonly Multimeter Multimeter; /// parent component
public int Channel { get { return tempMtrCfg.Channel; } } /// 1..5
@@ -26,6 +26,10 @@ namespace TBF.Rig.Modbus.PressureMeter.Meret
public bool MsrmntAvailable { get { return true; } }
public double MeasuredVal { get { return receivedPressure; } }
public double MsrdValLimLo { get { return Units.ConvertFrom(MsrdUnit, pressureMtrCfg.MsrdValLimLo); } }
public double MsrdValLimHi { get { return Units.ConvertFrom(MsrdUnit, pressureMtrCfg.MsrdValLimHi); } }
public Unit MsrdUnit { get { return pressureMtrCfg.MsrdUnit; } }
public string MsrdFormat { get { return pressureMtrCfg.MsrdFormat; } }
public string AltString { get { return string.Empty; } }
int ticketNumber; /// 0 .. number of devices registered for regular polling - 1
@@ -30,7 +30,7 @@ namespace TBF.Rig.Modbus.PressureMeter.Meret
public int ModbusAddress; /// 0 (1..254)
public double DefaultPressure; /// 1
public string MsrdFormat { get; set; } /// 2
public Unit MsrdUnit { get; set; } /// 3
public Unit MsrdUnit { get; set; } /// 3
public double MsrdValLimLo { get; set; } /// 4
public double MsrdValLimHi { get; set; } /// 5
@@ -4,9 +4,10 @@
using System;
using System.Collections.Generic;
using log4net;
using Common;
using Config.Entities;
using TBF.Rig.Generic;
using TBF.Boxes;
using Config.Entities;
namespace TBF.Rig.Modbus.TempControl.Easytherm
{
@@ -18,6 +19,15 @@ namespace TBF.Rig.Modbus.TempControl.Easytherm
readonly TControlCfg easythermCfg;
Common.Modbus modbus;
int ticketNumber; /// 0 .. number of devices registered for regular polling - 1
public bool MsrmntAvailable { get { return true; } }
public double MeasuredVal { get { return ReadTemperature(); } }
public double MsrdValLimLo { get { return Units.ConvertFrom(MsrdUnit, easythermCfg.MsrdValLimLo); } }
public double MsrdValLimHi { get { return Units.ConvertFrom(MsrdUnit, easythermCfg.MsrdValLimHi); } }
public Unit MsrdUnit { get { return easythermCfg.MsrdUnit; } }
public string MsrdFormat { get { return easythermCfg.MsrdFormat; } }
public string AltString { get { return string.Empty; } }
private float temperatureSetPoint;
private bool temperatureSetPointValid;
@@ -25,8 +35,6 @@ namespace TBF.Rig.Modbus.TempControl.Easytherm
public float requiredTemp { get { return easythermCfg.ProcParams.RequiredTemp; } }
int ticketNumber; /// 0 .. number of devices registered for regular polling - 1
public TControl() { }
@@ -35,6 +35,10 @@ namespace TBF.Rig.Modbus.TempControl.Novus
public bool MsrmntAvailable { get { return true; } }
public double MeasuredVal { get { return ReadTemperature(); } }
public double MsrdValLimLo { get { return Units.ConvertFrom(MsrdUnit, novusCfg.MsrdValLimLo); } }
public double MsrdValLimHi { get { return Units.ConvertFrom(MsrdUnit, novusCfg.MsrdValLimHi); } }
public Unit MsrdUnit { get { return novusCfg.MsrdUnit; } }
public string MsrdFormat { get { return novusCfg.MsrdFormat; } }
public string AltString { get { return string.Empty; } }
public double SetpointVal
+5 -3
View File
@@ -29,17 +29,19 @@ namespace TBF.Rig.Modbus.TempMeter.Groch
double A4 { get { return tempMtrCfg.A4; } }
double A5 { get { return tempMtrCfg.A5; } }
double DefaultTemp { get { return tempMtrCfg != null ? Units.ConvertFrom(tempMtrCfg.MsrdUnit, tempMtrCfg.DefaultTemp) : 0; } }
double MsrdValLimLo { get { return Units.ConvertFrom(tempMtrCfg.MsrdUnit, tempMtrCfg.MsrdValLimLo); } }
double MsrdValLimHi { get { return Units.ConvertFrom(tempMtrCfg.MsrdUnit, tempMtrCfg.MsrdValLimHi); } }
public SchematicDrawing.IDrawingItem DrawingItem { get { return tempMtrCfg as SchematicDrawing.IDrawingItem; } }
Common.Modbus modbus;
static int[] tempRaw = new int[TempMeterCfg.ChannelsCount];
public bool MsrmntAvailable { get { return true; } }
public double MeasuredVal { get { return ReadTemperature(); } }
public double MsrdValLimLo { get { return Units.ConvertFrom(MsrdUnit, tempMtrCfg.MsrdValLimLo); } }
public double MsrdValLimHi { get { return Units.ConvertFrom(MsrdUnit, tempMtrCfg.MsrdValLimHi); } }
public string MsrdFormat { get { return tempMtrCfg.MsrdFormat; } }
public Unit MsrdUnit { get { return tempMtrCfg.MsrdUnit; } }
public string AltString { get { return "Invalid format"; } }
int ticketNumber; /// 0 .. number of devices registered for regular polling - 1
@@ -38,7 +38,7 @@ namespace TBF.Rig.Modbus.TempMeter.Groch
public double A5; /// 6
public double DefaultTemp; /// 7
public string MsrdFormat { get; set; } /// 8
public Unit MsrdUnit { get; set; } /// 9
public Unit MsrdUnit { get; set; } /// 9
public double MsrdValLimLo { get; set; } /// 10
public double MsrdValLimHi { get; set; } /// 11
@@ -26,6 +26,10 @@ namespace TBF.Rig.Modbus.TempMeter.Meret
public bool MsrmntAvailable { get { return true; } }
public double MeasuredVal { get { return receivedTemp; } }
public double MsrdValLimLo { get { return Units.ConvertFrom(MsrdUnit, tempMtrCfg.MsrdValLimLo); } }
public double MsrdValLimHi { get { return Units.ConvertFrom(MsrdUnit, tempMtrCfg.MsrdValLimHi); } }
public string MsrdFormat { get { return tempMtrCfg.MsrdFormat; } }
public Unit MsrdUnit { get { return tempMtrCfg.MsrdUnit; } }
public string AltString { get { return string.Empty; } }
int ticketNumber; /// 0 .. number of devices registered for regular polling - 1
@@ -11,7 +11,7 @@ using TBF.Rig.Generic;
namespace TBF.Rig.Modbus.UltrasoundLevelMeter
{
public class LevelMeter : ComponentBase, GenericDevices.ILevelMeter, GenericDevices.ITempMeter, IDevice
public class LevelMeter : ComponentBase, GenericDevices.ILevelMeter, IDevice
{
private static readonly ILog log = LogManager.GetLogger(typeof(LevelMeter));
public override string ToString() { return string.Format("{0}({1})", ClassName, Cfg.ToString(-1)); }
+1 -1
View File
@@ -12,7 +12,7 @@ using TBF.Rig.Generic;
namespace TBF.Rig.Modbus.WaterAnalyzer
{
public class Analyzer : ComponentBase, GenericDevices.ITempMeter, IDevice
public class Analyzer : ComponentBase, IDevice
{
private static readonly ILog log = LogManager.GetLogger(typeof(Analyzer));
public override string ToString() { return string.Format("{0}({1})", ClassName, Cfg.ToString(-1)); }
+4 -2
View File
@@ -31,8 +31,10 @@ namespace TBF.Rig.Uni.FlowMeter
public SchematicDrawing.IDrawingItem DrawingItem { get { return flowMeterCfg as SchematicDrawing.IDrawingItem; } }
public double MsrdValLimLo { get { return flowMeterCfg.MsrdValLimLo; } set { flowMeterCfg.MsrdValLimLo = value; } }
public double MsrdValLimHi { get { return flowMeterCfg.MsrdValLimHi; } set { flowMeterCfg.MsrdValLimHi = value; } }
public string MsrdFormat { get { return flowMeterCfg.MsrdFormat; } }
public Unit MsrdUnit { get { return flowMeterCfg.MsrdUnit; } }
public double MsrdValLimLo { get { return flowMeterCfg.MsrdValLimLo; } set { flowMeterCfg.MsrdValLimLo = value; } } /// in [m3/h]
public double MsrdValLimHi { get { return flowMeterCfg.MsrdValLimHi; } set { flowMeterCfg.MsrdValLimHi = value; } } /// in [m3/h]
public bool MsrmntAvailable
{
+4 -4
View File
@@ -103,12 +103,12 @@ namespace TBF.Rig.Uni.FlowMeter
[XmlIgnore]
public IList<GNode> GNodes { get; set; }
[XmlIgnore]
public double MsrdValLimLo { get { return msrdValLimLo; } set { msrdValLimLo = value; } }
public double MsrdValLimLo { get { return msrdValLimLo; } set { msrdValLimLo = value; } } /// in [m3/h]
[XmlIgnore]
public double MsrdValLimHi { get { return msrdValLimHi; } set { msrdValLimHi = value; } }
public double MsrdValLimHi { get { return msrdValLimHi; } set { msrdValLimHi = value; } } /// in [m3/h]
double msrdValLimLo = 0;
double msrdValLimHi;
double msrdValLimLo = 0; /// in [m3/h]
double msrdValLimHi; /// in [m3/h]
public bool RangeEnabled(int rangeIx1)
@@ -33,6 +33,8 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
public double LtrPerPulse { get { return ltrPerPulse; } }
public SchematicDrawing.IDrawingItem DrawingItem { get { return flowMeterCfg as SchematicDrawing.IDrawingItem; } }
public string MsrdFormat { get { return flowMeterCfg.MsrdFormat; } }
public Common.Unit MsrdUnit { get { return flowMeterCfg.MsrdUnit; } }
public double MsrdValLimLo { get { return flowMeterCfg.MsrdValLimLo; } set { flowMeterCfg.MsrdValLimLo = value; } }
public double MsrdValLimHi { get { return flowMeterCfg.MsrdValLimHi; } set { flowMeterCfg.MsrdValLimHi = value; } }