2023-05-09 14:14:18 +08:00
|
|
|
|
using Aitex.Core.RT.Device;
|
|
|
|
|
using Aitex.Core.RT.Device.Devices;
|
|
|
|
|
using Aitex.Core.RT.SCCore;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
|
|
|
|
namespace MECF.Framework.RT.EquipmentLibrary.HardwareUnits.OffsetManage
|
|
|
|
|
{
|
|
|
|
|
public class OffsetManager
|
|
|
|
|
{
|
|
|
|
|
private List<IoPTOffsetAndK> ioPTOffsetAndKs = new List<IoPTOffsetAndK>();
|
|
|
|
|
public OffsetManager(string _moduleName)
|
|
|
|
|
{
|
|
|
|
|
IniioPTOffsetAndKs(_moduleName);
|
|
|
|
|
}
|
|
|
|
|
private void IniioPTOffsetAndKs(string _moduleName)
|
|
|
|
|
{
|
|
|
|
|
if (_moduleName == "PM1")
|
|
|
|
|
{
|
|
|
|
|
for (int i = 1; i < 5; i++)
|
|
|
|
|
{
|
|
|
|
|
ioPTOffsetAndKs.Add(DEVICE.GetDevice<IoPTOffsetAndK>($"PM1.PT{i}_Offset"));
|
|
|
|
|
ioPTOffsetAndKs.Add(DEVICE.GetDevice<IoPTOffsetAndK>($"PM1.PT{i}_K"));
|
|
|
|
|
}
|
|
|
|
|
ioPTOffsetAndKs.Add(DEVICE.GetDevice<IoPTOffsetAndK>("PM1.PT9_Offset"));
|
|
|
|
|
ioPTOffsetAndKs.Add(DEVICE.GetDevice<IoPTOffsetAndK>("PM1.PT9_K"));
|
|
|
|
|
ioPTOffsetAndKs.Add(DEVICE.GetDevice<IoPTOffsetAndK>("PM1.PT10_Offset"));
|
|
|
|
|
ioPTOffsetAndKs.Add(DEVICE.GetDevice<IoPTOffsetAndK>("PM1.PT10_K"));
|
|
|
|
|
|
|
|
|
|
for (int i = 1; i < 15; i++)
|
|
|
|
|
{
|
|
|
|
|
ioPTOffsetAndKs.Add(DEVICE.GetDevice<IoPTOffsetAndK>($"PM1.U{i}_Water"));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
else if (_moduleName == "PM2")
|
|
|
|
|
{
|
|
|
|
|
for (int i = 1; i < 3; i++)
|
|
|
|
|
{
|
2023-07-27 09:10:34 +08:00
|
|
|
|
ioPTOffsetAndKs.Add(DEVICE.GetDevice<IoPTOffsetAndK>($"PM2.PT{i}_Offset"));
|
|
|
|
|
ioPTOffsetAndKs.Add(DEVICE.GetDevice<IoPTOffsetAndK>($"PM2.PT{i}_K"));
|
2023-05-09 14:14:18 +08:00
|
|
|
|
}
|
|
|
|
|
for (int i = 1; i < 15; i++)
|
|
|
|
|
{
|
|
|
|
|
ioPTOffsetAndKs.Add(DEVICE.GetDevice<IoPTOffsetAndK>($"PM2.U{i}_Water"));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
ioPTOffsetAndKs = null;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void Set()
|
|
|
|
|
{
|
|
|
|
|
if (ioPTOffsetAndKs == null)
|
|
|
|
|
return;
|
|
|
|
|
foreach (IoPTOffsetAndK item in ioPTOffsetAndKs)
|
|
|
|
|
{
|
|
|
|
|
item.Set_Callback();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|