MoS2/App/SicRT/Equipments/Systems/DeviceManager.cs
2026-08-12 18:24:06 +08:00

112 lines
3.7 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using Aitex.Core.RT.Device;
using Aitex.Core.RT.SCCore;
using MECF.Framework.RT.EquipmentLibrary.HardwareUnits.Breakers.NSXCOM;
using MECF.Framework.RT.EquipmentLibrary.HardwareUnits.UPS;
using MECF.Framework.RT.EquipmentLibrary.HardwareUnits.Temps;
using MECF.Framework.RT.EquipmentLibrary.HardwareUnits.MachineVision.HikVision;
namespace SicRT.Instances
{
public class DeviceEntity : DeviceEntityT<DeviceManager>
{
public DeviceEntity()
{
}
}
public class DeviceManager : DeviceManagerBase
{
public DeviceManager()
{
}
public override bool Initialize()
{
//if (SC.GetConfigItem("AETemp.EnableDevice").BoolValue)
//{
// string _address = SC.GetStringValue("AETemp.Address");
// bool _enableLog = SC.GetValue<bool>("AETemp.EnableLogMessage");
// var aeTemp = new AETemp("PM", "AETemp", "AETemp");
// aeTemp.Initialize(_address, _enableLog);
// QueueDevice(aeTemp);
//}
if (SC.GetConfigItem("NSXBreakerII.EnableDevice").BoolValue)
{
var NSX = new NSXBreakerII("TM", "NSXBreakerII", "NSXBreakerII");
NSX.Initialize();
}
if (SC.GetConfigItem("PM.PM1.ITAUPSA.EnableDevice").BoolValue)
{
var ITPM1A = new ITAUPS("PM1", "ITAUPSA", "ITAUPSA");
ITPM1A.Initialize();
QueueDevice(ITPM1A);
}
if (SC.GetConfigItem("PM.PM1.ITAUPSB.EnableDevice").BoolValue)
{
var ITPM1B = new ITAUPS("PM1", "ITAUPSB", "ITAUPSB");
ITPM1B.Initialize();
QueueDevice(ITPM1B);
}
if (SC.GetConfigItem("PM.PM2.ITAUPSA.EnableDevice").BoolValue)
{
var ITPM2A = new ITAUPS("PM2", "ITAUPSA", "ITAUPSA");
ITPM2A.Initialize();
QueueDevice(ITPM2A);
}
if (SC.GetConfigItem("PM.PM2.ITAUPSB.EnableDevice").BoolValue)
{
var ITPM2B = new ITAUPS("PM2", "ITAUPSB", "ITAUPSB");
ITPM2B.Initialize();
QueueDevice(ITPM2B);
}
if (SC.GetConfigItem("PM.PM1.EATONUPS.EnableDevice").BoolValue)
{
var EATONUPS1 = new EATONUPS("PM1", "EATONUPS", "EATONUPS");
EATONUPS1.Initialize();
QueueDevice(EATONUPS1);
}
if (SC.GetConfigItem("PM.PM2.EATONUPS.EnableDevice").BoolValue)
{
var EATONUPS2 = new EATONUPS("PM2", "EATONUPS", "EATONUPS");
EATONUPS2.Initialize();
QueueDevice(EATONUPS2);
}
//强制构造vm类是否加载放入构造函数中
var hikvm = new HikVisionMasterSDK("LoadLock", "HikVisionMaster", "HikVisionMaster",
SC.GetConfigItem("HikVisionMaster.EnableDevice").BoolValue);
hikvm.Initialize();
QueueDevice(hikvm);
if (SC.GetConfigItem("HikGigeCamera.EnableDevice").BoolValue)
{
var hikc = new HikGigeCamera("LoadLock", "HikGigeCamera", "HikGigeCamera");
hikc.Initialize();
QueueDevice(hikc);
}
//if (SC.GetConfigItem("AKunTemp.EnableDevice").BoolValue)
//{
// var AkOptics = new AKunTemp("PM1", "AKunTemp");
// AkOptics.Initialize();
// QueueDevice(AkOptics);
//}
return true;
}
protected override void QueueDevice(IDevice device)
{
QueueDevice($"{device.Module}.{device.Name}", device);
}
}
}