MoS2/Framework/MECF.Framework.RT.EquipmentLibrary/Devices/IoConcentration.cs

56 lines
1.5 KiB
C#
Raw Normal View History

2026-06-15 10:56:30 +08:00
using Aitex.Core.RT.DataCenter;
using Aitex.Core.RT.IOCore;
using MECF.Framework.Common.Aitex.Core.Common.DeviceData;
using System.Xml;
namespace Aitex.Core.RT.Device.Devices
{
public class IoConcentration : BaseDevice, IDevice
{
protected readonly AIAccessor _aiTCSConcentration;
protected readonly AIAccessor _aiTCSPressure;
protected readonly AIAccessor _aiTCSTemp;
private AIConcentrationData _aiConcentration;
private AIConcentrationData AIConcentration
{
get
{
_aiConcentration.Concentration = _aiTCSConcentration.Value;
_aiConcentration.Pressure = _aiTCSPressure.Value;
_aiConcentration.Temp = _aiTCSTemp.Value;
return _aiConcentration;
}
}
public IoConcentration(string module, XmlElement node, string ioModule = "") : base(module, node, ioModule)
{
_aiTCSConcentration = ParseAiNode("aiTCSConcentration", node, ioModule);
_aiTCSPressure = ParseAiNode("aiTCSPressure", node, ioModule);
_aiTCSTemp = ParseAiNode("aiTCSTemp", node, ioModule);
_aiConcentration = new();
}
public bool Initialize()
{
DATA.Subscribe($"{Module}.{Name}.ConcentrationData", () => AIConcentration);
return true;
}
public void Reset()
{
}
public void Terminate()
{
}
}
}