2023-04-13 11:51:03 +08:00
|
|
|
|
using Aitex.Core.RT.DataCenter;
|
|
|
|
|
using Aitex.Core.RT.Device;
|
|
|
|
|
using Aitex.Core.RT.Device.Devices;
|
|
|
|
|
using Aitex.Core.RT.Event;
|
|
|
|
|
using Aitex.Core.RT.IOCore;
|
|
|
|
|
using Aitex.Core.RT.Log;
|
|
|
|
|
using Aitex.Core.RT.SCCore;
|
|
|
|
|
using Aitex.Core.Util;
|
|
|
|
|
using MECF.Framework.Common.Communications;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Net.NetworkInformation;
|
|
|
|
|
using System.Net;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading;
|
|
|
|
|
using System.Threading.Tasks;
|
2023-10-17 14:39:00 +08:00
|
|
|
|
using System.Data.Common;
|
2023-10-19 17:05:06 +08:00
|
|
|
|
using Aitex.Core.Backend;
|
2023-04-13 11:51:03 +08:00
|
|
|
|
|
|
|
|
|
namespace MECF.Framework.RT.EquipmentLibrary.HardwareUnits.UPS
|
|
|
|
|
{
|
2023-10-17 14:39:00 +08:00
|
|
|
|
public class ITAUPS : UPSBase
|
2023-04-13 11:51:03 +08:00
|
|
|
|
{
|
2023-10-17 14:39:00 +08:00
|
|
|
|
public ITAUPS(string module, string name, string scRoot):base(module, name, scRoot)
|
2023-04-13 11:51:03 +08:00
|
|
|
|
{
|
2023-10-17 14:39:00 +08:00
|
|
|
|
Oids.Add("InputVoltage", ".1.3.6.1.4.1.13400.2.54.2.2.1.0");//输入电压,输入电压为0说明使用UPS,要除10
|
|
|
|
|
Oids.Add("BatteryVoltage", ".1.3.6.1.4.1.13400.2.54.2.5.1.0");//电池当前电压,要除10
|
|
|
|
|
Oids.Add("BatteryRemainsTime", ".1.3.6.1.4.1.13400.2.54.2.5.7.0");//输入电压,输入电压为0说明使用UPS,要除10
|
2023-10-18 10:52:51 +08:00
|
|
|
|
Oids.Add("upsOutputSource", ".1.3.6.1.4.1.13400.2.54.2.1.2.0");//当前输出源
|
2023-10-17 14:39:00 +08:00
|
|
|
|
Oids.Add("BatteryUnderResidue", ".1.3.6.1.4.1.13400.2.54.2.5.10.0");//电量剩余百分比,直接用数值
|
2023-04-13 11:51:03 +08:00
|
|
|
|
}
|
2023-10-19 17:05:06 +08:00
|
|
|
|
|
|
|
|
|
public override void ParseOutputSource(string value)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
if (value == "0") //UPS No Output
|
|
|
|
|
{
|
|
|
|
|
UPSPowerAlarm = true;
|
|
|
|
|
}
|
|
|
|
|
else if (value == "1") // UPS On Main
|
|
|
|
|
{
|
|
|
|
|
UPSPowerAlarm = false;
|
|
|
|
|
}
|
|
|
|
|
else if (value == "2") //UPS On Battery
|
|
|
|
|
{
|
|
|
|
|
UPSPowerAlarm = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override void ParseBatteryRemainsTime(string value)
|
|
|
|
|
{
|
|
|
|
|
BatteryRemainsTime = Convert.ToInt32(value) / 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override void ParseBatteryVoltage(string value)
|
|
|
|
|
{
|
|
|
|
|
BatteryVoltage = Convert.ToSingle(value) / 10;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override void ParseInputVoltage(string value)
|
|
|
|
|
{
|
|
|
|
|
InputVoltage = Convert.ToSingle(value) / 10;
|
|
|
|
|
}
|
2023-04-13 11:51:03 +08:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|