and not the regul.valve parameter. See // TODO PID: ... in source code. Database: 'PidCoef' float should be added to 'OutputPath' after col.'FlowMeter'
58 lines
2.1 KiB
C#
58 lines
2.1 KiB
C#
using System.Collections.Generic;
|
|
using TBF.BenchControl.GenericDevices;
|
|
|
|
namespace TBF.BenchControl
|
|
{
|
|
public class OutputPath
|
|
{
|
|
public int ItemNr;
|
|
public string Name;
|
|
public float Qfrom;
|
|
public float Qto;
|
|
public IRegulValve RegulValve;
|
|
public IFlowMeter FlowMeter;
|
|
public float PidCoef;
|
|
public IValve StartValve;
|
|
public IDiverter Diverter;
|
|
public ITempMeter TempDiv;
|
|
public IBalance Balance;
|
|
public IValve EmptyTankValve;
|
|
public IList<IValve> ValvesOpen;
|
|
public IList<IValve> ValvesClose;
|
|
|
|
/// Constructor from name, the rest is empty
|
|
public OutputPath(string name, int itemNr)
|
|
{
|
|
ItemNr = itemNr;
|
|
Name = name;
|
|
ValvesOpen = new List<IValve>();
|
|
ValvesClose = new List<IValve>();
|
|
PidCoef = 10.0f; /// TODO PID: remove
|
|
}
|
|
|
|
/// Constructor from data entity
|
|
public OutputPath(Entities.OutputPath entity, IList<BenchControl.Generic.IComponent> components)
|
|
: this(entity.Name, entity.ItemNr)
|
|
{
|
|
Qfrom = entity.Qfrom;
|
|
Qto = entity.Qto;
|
|
RegulValve = (IRegulValve)TbfComponents.FindComponent(entity.RegulValve, components);
|
|
FlowMeter = (IFlowMeter)TbfComponents.FindComponent(entity.FlowMeter, components);
|
|
PidCoef = entity.PidCoef;
|
|
StartValve = (IValve)TbfComponents.FindComponent(entity.StartValve, components);
|
|
Diverter = (IDiverter)TbfComponents.FindComponent(entity.Diverter, components);
|
|
TempDiv = (ITempMeter)TbfComponents.FindComponent(entity.TempDiv, components);
|
|
Balance = (IBalance)TbfComponents.FindComponent(entity.Balance, components);
|
|
EmptyTankValve = (IValve)TbfComponents.FindComponent(entity.EmptyTankValve, components);
|
|
|
|
string[] vOpen = entity.ValvesOpen.Split(new char[] { ';' });
|
|
ValvesOpen = new List<IValve>();
|
|
foreach (var vName in vOpen) ValvesOpen.Add((IValve)TbfComponents.FindComponent(vName, components));
|
|
|
|
string[] vClose = entity.ValvesClose.Split(new char[] { ';' });
|
|
ValvesClose = new List<IValve>();
|
|
foreach (var vName in vClose) ValvesClose.Add((IValve)TbfComponents.FindComponent(vName, components));
|
|
}
|
|
}
|
|
}
|