1 "Set temprature setp..." seq. condition never met, 2 FlowMetersInParallel : InactiveFlowmtr for correct display, ver. 3.2.1913
This commit is contained in:
parent
b0a534315e
commit
00fc9ea847
@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
[assembly: AssemblyVersion("3.2.1912.0")]
|
||||
[assembly: AssemblyFileVersion("3.2.1912.0")]
|
||||
[assembly: AssemblyVersion("3.2.1913.0")]
|
||||
[assembly: AssemblyFileVersion("3.2.1913.0")]
|
||||
|
||||
@ -32,7 +32,7 @@ namespace TBF.Rig.Modbus.TempControl.Novus
|
||||
log.Debug(this.ToString());
|
||||
}
|
||||
public SetTemperatureSetpointOp(TControl tempControl, double temperature)
|
||||
: this(tempControl, temperature, Event.ConditionMet)
|
||||
: this(tempControl, temperature, Event.ConditionNotMet)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
@ -16,12 +16,13 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
private static readonly ILog log = LogManager.GetLogger(typeof(FlowMeter));
|
||||
public override string ToString() { return string.Format("{0}({1})", ClassName, Cfg.ToString(-1)); }
|
||||
|
||||
readonly FlowMeterCfg flowMeterCfg;
|
||||
readonly FlowMeterCfg myCfg;
|
||||
|
||||
UniCB uniCB;
|
||||
IFlowMeterSingle flowMtr1;
|
||||
IFlowMeterSingle flowMtr2;
|
||||
IFlowMeterSingle flowMtr3;
|
||||
IFlowMeterSingle inactiveFlowMtr;
|
||||
double nominalFlow;
|
||||
double nominalFreq;
|
||||
double ltrPerPulse;
|
||||
@ -33,11 +34,11 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
public double NominalFreq { get { return nominalFreq; } }
|
||||
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; } }
|
||||
public SchematicDrawing.IDrawingItem DrawingItem { get { return myCfg as SchematicDrawing.IDrawingItem; } }
|
||||
public string MsrdFormat { get { return myCfg.MsrdFormat; } }
|
||||
public Common.Unit MsrdUnit { get { return myCfg.MsrdUnit; } }
|
||||
public double MsrdValLimLo { get { return myCfg.MsrdValLimLo; } set { myCfg.MsrdValLimLo = value; } }
|
||||
public double MsrdValLimHi { get { return myCfg.MsrdValLimHi; } set { myCfg.MsrdValLimHi = value; } }
|
||||
|
||||
|
||||
public bool MsrmntAvailable
|
||||
@ -45,9 +46,10 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
get
|
||||
{
|
||||
bool result = true;
|
||||
if (flowMtr1 != null) result = result && flowMtr1.MsrmntAvailable;
|
||||
if (flowMtr2 != null) result = result && flowMtr2.MsrmntAvailable;
|
||||
if (flowMtr3 != null) result = result && flowMtr3.MsrmntAvailable;
|
||||
if (flowMtr1 != null) result = (result && flowMtr1.MsrmntAvailable);
|
||||
if (flowMtr2 != null) result = (result && flowMtr2.MsrmntAvailable);
|
||||
if (flowMtr3 != null) result = (result && flowMtr3.MsrmntAvailable);
|
||||
if (inactiveFlowMtr != null) result = (result && !inactiveFlowMtr.MsrmntAvailable);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
@ -65,17 +67,18 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
public FlowMeter(Generic.IComponentCfg cfg, IList<Generic.IComponent> components)
|
||||
: base(cfg)
|
||||
{
|
||||
flowMeterCfg = cfg as FlowMeterCfg;
|
||||
myCfg = cfg as FlowMeterCfg;
|
||||
}
|
||||
|
||||
public override void Initialize()
|
||||
{
|
||||
uniCB = TbfComponents.FindComponent(flowMeterCfg.ParentName) as UniCB;
|
||||
uniCB = TbfComponents.FindComponent(myCfg.ParentName) as UniCB;
|
||||
if (uniCB == null) throw new Exception("Cannot find " + Name + " parent");
|
||||
|
||||
if (!string.IsNullOrEmpty(flowMeterCfg.Flowmeter1)) flowMtr1 = TbfComponents.FindComponent(flowMeterCfg.Flowmeter1) as IFlowMeterSingle;
|
||||
if (!string.IsNullOrEmpty(flowMeterCfg.Flowmeter2)) flowMtr2 = TbfComponents.FindComponent(flowMeterCfg.Flowmeter2) as IFlowMeterSingle;
|
||||
if (!string.IsNullOrEmpty(flowMeterCfg.Flowmeter3)) flowMtr3 = TbfComponents.FindComponent(flowMeterCfg.Flowmeter3) as IFlowMeterSingle;
|
||||
if (!string.IsNullOrEmpty(myCfg.Flowmeter1)) flowMtr1 = TbfComponents.FindComponent(myCfg.Flowmeter1) as IFlowMeterSingle;
|
||||
if (!string.IsNullOrEmpty(myCfg.Flowmeter2)) flowMtr2 = TbfComponents.FindComponent(myCfg.Flowmeter2) as IFlowMeterSingle;
|
||||
if (!string.IsNullOrEmpty(myCfg.Flowmeter3)) flowMtr3 = TbfComponents.FindComponent(myCfg.Flowmeter3) as IFlowMeterSingle;
|
||||
if (!string.IsNullOrEmpty(myCfg.InactiveFlowmtr)) inactiveFlowMtr = TbfComponents.FindComponent(myCfg.InactiveFlowmtr) as IFlowMeterSingle;
|
||||
|
||||
nominalFlow = 0;
|
||||
flowMetersCount = 0;
|
||||
|
||||
@ -30,8 +30,9 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
public string Flowmeter1; /// 0 Flowmeter component name or string.Empty
|
||||
public string Flowmeter2; /// 1 - ' ' -
|
||||
public string Flowmeter3; /// 2 - ' ' -
|
||||
public string MsrdFormat { get; set; } /// 3
|
||||
public Unit MsrdUnit { get; set; } /// 4
|
||||
public string InactiveFlowmtr; /// 3 Inactive flowmeter component name or string.Empty
|
||||
public string MsrdFormat { get; set; } /// 4
|
||||
public Unit MsrdUnit { get; set; } /// 5
|
||||
|
||||
/// Schematic drawing info
|
||||
public Shape Shape { get; set; }
|
||||
@ -83,6 +84,7 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
Flowmeter1 = "I11";
|
||||
Flowmeter2 = "I12";
|
||||
Flowmeter3 = string.Empty;
|
||||
InactiveFlowmtr = "I13";
|
||||
MsrdFormat = "{0:F3} m3/h";
|
||||
MsrdUnit = Unit.m3ph;
|
||||
}
|
||||
@ -92,8 +94,9 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
"Flow meter 1", /// 0
|
||||
"Flow meter 2", /// 1
|
||||
"Flow meter 3", /// 2
|
||||
"Display format", /// 3
|
||||
"Unit of flow on a display", /// 4
|
||||
"Inactive flow meter", /// 3
|
||||
"Display format", /// 4
|
||||
"Unit of flow on a display", /// 5
|
||||
};
|
||||
public string ParamName(int i) { return paramNames[i]; }
|
||||
public int ParamsCount() { return paramNames.Length; }
|
||||
@ -105,12 +108,13 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
case 0:
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
if (flowMeters == null) return null;
|
||||
var fmtrs = new List<string>();
|
||||
foreach (var fmtr in flowMeters) fmtrs.Add(fmtr.Name);
|
||||
fmtrs.Add("---");
|
||||
return fmtrs;
|
||||
case 4:
|
||||
case 5:
|
||||
return new string[] { "m3/h", "l/h" };
|
||||
default:
|
||||
return null;
|
||||
@ -124,12 +128,13 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
case 0: return string.IsNullOrEmpty(Flowmeter1) ? "---" : Flowmeter1;
|
||||
case 1: return string.IsNullOrEmpty(Flowmeter2) ? "---" : Flowmeter2;
|
||||
case 2: return string.IsNullOrEmpty(Flowmeter3) ? "---" : Flowmeter3;
|
||||
case 3: return MsrdFormat;
|
||||
case 4: return MsrdUnit.ToDescription();
|
||||
case 3: return string.IsNullOrEmpty(InactiveFlowmtr) ? "---" : InactiveFlowmtr;
|
||||
case 4: return MsrdFormat;
|
||||
case 5: return MsrdUnit.ToDescription();
|
||||
|
||||
default:
|
||||
return string.Format("Name={0} {1} {2} {3} fmt={4} unit={5} Lo={6} Hi={7}",
|
||||
Name, Flowmeter1, Flowmeter2, Flowmeter3,
|
||||
return string.Format("Name={0} {1} {2} {3} ~{4} fmt={5} unit={6} Lo={7} Hi={8}",
|
||||
Name, Flowmeter1, Flowmeter2, Flowmeter3, InactiveFlowmtr,
|
||||
MsrdFormat, MsrdUnit.ToDescription(), MsrdValLimLo, MsrdValLimHi);
|
||||
}
|
||||
}
|
||||
@ -141,8 +146,9 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
case 0: Flowmeter1 = (str != "---") ? str : string.Empty; return CfgUpdateFlags.RestartRqrd;
|
||||
case 1: Flowmeter2 = (str != "---") ? str : string.Empty; return CfgUpdateFlags.RestartRqrd;
|
||||
case 2: Flowmeter3 = (str != "---") ? str : string.Empty; return CfgUpdateFlags.RestartRqrd;
|
||||
case 3: MsrdFormat = str; return CfgUpdateFlags.RestartRqrd;
|
||||
case 4: MsrdUnit = (str == "l/h") ? Unit.lph : Unit.m3ph; return CfgUpdateFlags.RestartRqrd;
|
||||
case 3: InactiveFlowmtr = (str != "---") ? str : string.Empty; return CfgUpdateFlags.RestartRqrd;
|
||||
case 4: MsrdFormat = str; return CfgUpdateFlags.RestartRqrd;
|
||||
case 5: MsrdUnit = (str == "l/h") ? Unit.lph : Unit.m3ph; return CfgUpdateFlags.RestartRqrd;
|
||||
default:
|
||||
return CfgUpdateFlags.None;
|
||||
}
|
||||
@ -157,10 +163,11 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
case 0:
|
||||
case 1:
|
||||
case 2:
|
||||
case 4:
|
||||
case 3:
|
||||
case 5:
|
||||
if (ParamValues(i).Contains(str)) return true;
|
||||
break;
|
||||
case 3:
|
||||
case 4:
|
||||
return true;
|
||||
default:
|
||||
message = "Invalid index";
|
||||
@ -176,6 +183,7 @@ namespace TBF.Rig.Uni.FlowMetersInParallel
|
||||
prms.Flowmeter1 = this.Flowmeter1;
|
||||
prms.Flowmeter2 = this.Flowmeter2;
|
||||
prms.Flowmeter3 = this.Flowmeter3;
|
||||
prms.InactiveFlowmtr = this.InactiveFlowmtr;
|
||||
prms.MsrdFormat = this.MsrdFormat;
|
||||
prms.MsrdUnit = this.MsrdUnit;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user