119 lines
3.6 KiB
C#
119 lines
3.6 KiB
C#
|
using System;
|
||
|
using System.Xml;
|
||
|
using Aitex.Core.RT.DataCenter;
|
||
|
using Aitex.Core.RT.Device;
|
||
|
using Aitex.Core.RT.OperationCenter;
|
||
|
using MECF.Framework.Common.CommonData.DeviceData;
|
||
|
|
||
|
namespace MECF.Framework.Common.Device.Bases
|
||
|
{
|
||
|
public abstract class ChillerBase : BaseDevice, IDevice
|
||
|
{
|
||
|
public virtual bool IsConnected => true;
|
||
|
|
||
|
public virtual bool IsCH1Alarm { get; set; }
|
||
|
|
||
|
public virtual bool IsCH2Alarm { get; set; }
|
||
|
|
||
|
public virtual bool IsCH1Warning { get; set; }
|
||
|
|
||
|
public virtual bool IsCH2Warning { get; set; }
|
||
|
|
||
|
public virtual bool IsCH1On { get; set; }
|
||
|
|
||
|
public virtual bool IsCH2On { get; set; }
|
||
|
|
||
|
public virtual float CH1TemperatureSetpoint { get; set; }
|
||
|
|
||
|
public virtual float CH1TemperatureFeedback { get; set; }
|
||
|
|
||
|
public virtual float CH2TemperatureSetpoint { get; set; }
|
||
|
|
||
|
public virtual float CH2TemperatureFeedback { get; set; }
|
||
|
|
||
|
public virtual float CH1WaterFlow { get; set; }
|
||
|
|
||
|
public virtual float CH2WaterFlow { get; set; }
|
||
|
|
||
|
public virtual float TemperatureHighLimit { get; set; }
|
||
|
|
||
|
public virtual float TemperatureLowLimit { get; set; }
|
||
|
|
||
|
public virtual AITChillerData1 DeviceData { get; set; }
|
||
|
|
||
|
protected ChillerBase()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
protected ChillerBase(string module, XmlElement node, string ioModule = "")
|
||
|
{
|
||
|
base.Module = (string.IsNullOrEmpty(node.GetAttribute("module")) ? module : node.GetAttribute("module"));
|
||
|
base.Name = node.GetAttribute("id");
|
||
|
}
|
||
|
|
||
|
public virtual bool Initialize()
|
||
|
{
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".DeviceData", () => DeviceData);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".IsCH1On", () => IsCH1On);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".IsCH2On", () => IsCH2On);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".IsCH1Alarm", () => IsCH1Alarm);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".IsCH2Alarm", () => IsCH2Alarm);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".CH1TemperatureSetpoint", () => CH1TemperatureSetpoint);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".CH2TemperatureSetpoint", () => CH2TemperatureSetpoint);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".CH1TemperatureFeedback", () => CH1TemperatureFeedback);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".CH2TemperatureFeedback", () => CH2TemperatureFeedback);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".CH1WaterFlow", () => CH1WaterFlow);
|
||
|
DATA.Subscribe(base.Module + "." + base.Name + ".CH2WaterFlow", () => CH2WaterFlow);
|
||
|
OP.Subscribe(base.Module + "." + base.Name + ".SetChillerCH1On", delegate(string function, object[] args)
|
||
|
{
|
||
|
SetChillerCH1OnOff(Convert.ToBoolean(args[0]));
|
||
|
return true;
|
||
|
});
|
||
|
OP.Subscribe(base.Module + "." + base.Name + ".SetChillerCH2On", delegate(string function, object[] args)
|
||
|
{
|
||
|
SetChillerCH2OnOff(Convert.ToBoolean(args[0]));
|
||
|
return true;
|
||
|
});
|
||
|
OP.Subscribe(base.Module + "." + base.Name + ".SetChillerCH1Temperature", delegate(string function, object[] args)
|
||
|
{
|
||
|
SetChillerCH1Temperature(Convert.ToSingle(args[0]));
|
||
|
return true;
|
||
|
});
|
||
|
OP.Subscribe(base.Module + "." + base.Name + ".SetChillerCH2Temperature", delegate(string function, object[] args)
|
||
|
{
|
||
|
SetChillerCH2Temperature(Convert.ToSingle(args[0]));
|
||
|
return true;
|
||
|
});
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
public virtual void SetChillerCH1OnOff(bool isOn)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
public virtual void SetChillerCH2OnOff(bool isOn)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
public virtual void SetChillerCH1Temperature(float temperature)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
public virtual void SetChillerCH2Temperature(float temperature)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
public virtual void Terminate()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
public virtual void Monitor()
|
||
|
{
|
||
|
}
|
||
|
|
||
|
public virtual void Reset()
|
||
|
{
|
||
|
}
|
||
|
}
|
||
|
}
|