Ups和温湿度

master
CZ 4 months ago
parent 6f4f7be431
commit aa0543ac6b

@ -0,0 +1,32 @@
using HybirdFrameworkCore.Autofac.Attribute;
using HybirdFrameworkCore.Const;
using HybirdFrameworkDriver.ModbusTcpMaster;
namespace Service.Humiture.Client;
/// <summary>
///
/// </summary>
[Scope]
public class HumiturePlcClient:ModbusTcpMaster
{
public HumiturePlcClient()
{
ReadAction = BatchRead;
Ip = "172.0.20.66";
Port = 502;
Duration = 1000;
AutoReConnect = true;
ByteSeq = EndingConst.ByteSeq.BA;
WordSeq= EndingConst.WordSeq.CD;
}
private void BatchRead(ModbusTcpMaster master)
{
var bytes01 = master.BatchReadHolderRegister(0, 32);
if (bytes01 != null)
{
ModbusDecoder.Decode<HumitureMsg>(bytes01, HumiturePlcMgr.HumitureMsg, EndingConst.ByteSeq.AB,
EndingConst.WordSeq.DC);
}
}
}

@ -0,0 +1,7 @@
namespace Service.Humiture.Client;
public class HumiturePlcMgr
{
public static HumiturePlcClient HumiturePlcClient;
public static HumitureMsg HumitureMsg;
}

@ -0,0 +1,87 @@
using HybirdFrameworkDriver.ModbusTcpMaster;
namespace Service.Humiture;
public class HumitureMsg
{
/// <summary>
/// 湿度
/// </summary>
public ModbusProperty<short> Humidness { get; set; } = new(0x0000);
/// <summary>
/// 温度
/// </summary>
public ModbusProperty<short> Temperature { get; set; } = new(0x0001);
public ModbusProperty<short> Reserve02 { get; set; } = new(0x0002);
public ModbusProperty<short> Reserve03 { get; set; } = new(0x0003);
public ModbusProperty<short> Reserve04 { get; set; } = new(0x0004);
public ModbusProperty<short> Reserve05 { get; set; } = new(0x0005);
public ModbusProperty<short> Reserve06 { get; set; } = new(0x0006);
public ModbusProperty<short> Reserve07 { get; set; } = new(0x0007);
/// <summary>
/// 设备型号
/// </summary>
public ModbusProperty<short> EquipmentType { get; set; } = new(0x0008);
/// <summary>
/// 版本号(低 8 位)
/// </summary>
public ModbusProperty<short> VersionNumber { get; set; } = new(0x0009);
/// <summary>
/// 设备 ID 高 16 位
/// </summary>
public ModbusProperty<short> DeviceIdHigh { get; set; } = new(0x000A);
/// <summary>
/// 设备 ID 低 16 位
/// </summary>
public ModbusProperty<short> DeviceIdLower { get; set; } = new(0x000B);
/// <summary>
/// 温度上限报警值
/// </summary>
public ModbusProperty<short> UpperTemperatureAlarm { get; set; } = new(0x000C);
/// <summary>
/// 温度上限报警使能
/// </summary>
public ModbusProperty<short> UpperTemperatureAlarmEnabled { get; set; } = new(0x000D);
/// <summary>
/// 温度下限报警值
/// </summary>
public ModbusProperty<short> LowerTemperatureAlarm { get; set; } = new(0x000E);
/// <summary>
/// 温度下限报警使能
/// </summary>
public ModbusProperty<short> LowerTemperatureAlarmEnabled { get; set; } = new(0x000F);
/// <summary>
/// 湿度上限报警值
/// </summary>
public ModbusProperty<short> HumidityUpperAlarm { get; set; } = new(0x0010);
/// <summary>
/// 湿度上限报警使能
/// </summary>
public ModbusProperty<short> HumidityUpperAlarmEnabled { get; set; } = new(0x0011);
/// <summary>
/// 湿度下限报警值
/// </summary>
public ModbusProperty<short> HumidityLowerLimitAlarm { get; set; } = new(0x0012);
/// <summary>
/// 湿度下限报警使能
/// </summary>
public ModbusProperty<short> HumidityLowerLimitAlarmEnabled { get; set; } = new(0x0013);
public ModbusProperty<short> Reserve14 { get; set; } = new(0x0014);
public ModbusProperty<short> Reserve15 { get; set; } = new(0x0015);
public ModbusProperty<short> Reserve16 { get; set; } = new(0x0016);
public ModbusProperty<short> Reserve17 { get; set; } = new(0x0017);
public ModbusProperty<short> Reserve18 { get; set; } = new(0x0018);
public ModbusProperty<short> Reserve19 { get; set; } = new(0x0019);
public ModbusProperty<short> Reserve20 { get; set; } = new(0x001A);
public ModbusProperty<short> Reserve21 { get; set; } = new(0x001B);
public ModbusProperty<short> Reserve22 { get; set; } = new(0x001C);
/// <summary>
/// 温度校正值更新
/// </summary>
public ModbusProperty<short> TemperatureUpdated { get; set; } = new(0x001D);
/// <summary>
/// 湿度校正值更新
/// </summary>
public ModbusProperty<short> HumidityValueUpdated { get; set; } = new(0x001E);
public ModbusProperty<short> Reserve25 { get; set; } = new(0x001F);
}

@ -0,0 +1,31 @@
using HybirdFrameworkCore.Const;
using HybirdFrameworkDriver.ModbusTcpMaster;
using Service.Humiture;
using Service.Humiture.Client;
using Service.Ups.UpsMsg;
namespace Service.Ups.Client;
public class UpsClient:ModbusTcpMaster
{
public UpsClient()
{
ReadAction = BatchRead;
Ip = "172.0.20.66";
Port = 502;
Duration = 1000;
AutoReConnect = true;
ByteSeq = EndingConst.ByteSeq.BA;
WordSeq= EndingConst.WordSeq.CD;
}
private void BatchRead(ModbusTcpMaster master)
{
var bytes01 = master.BatchReadHolderRegister(0, 32);
if (bytes01 != null)
{
ModbusDecoder.Decode<UpsInfoMsg>(bytes01, UpsMgr.UpsInfoMsg, EndingConst.ByteSeq.AB,
EndingConst.WordSeq.DC);
}
}
}

@ -0,0 +1,9 @@
using Service.Ups.UpsMsg;
namespace Service.Ups.Client;
public class UpsMgr
{
public static UpsClient UpsClient;
public static UpsInfoMsg UpsInfoMsg;
}

@ -0,0 +1,664 @@
using HybirdFrameworkDriver.ModbusTcpMaster;
namespace Service.Ups.UpsMsg;
public class UpsInfoMsg
{
#region 1警告项目
/// <summary>
/// 0:FALSE/1:TRUE
/// </summary>
public ModbusProperty<short> Battery { get; set; } = new(0x0000,start:15,length:1);
/// <summary>
/// 电池电量过量
/// </summary>
public ModbusProperty<short> BatteryOverCharge { get; set; } = new(0x0000,start:9,length:1);
/// <summary>
/// Battery低
/// </summary>
public ModbusProperty<short> BatteryLow { get; set; } = new(0x0000,start:8,length:1);
/// <summary>
/// 过载警告
/// </summary>
public ModbusProperty<short> OverloadWarning { get; set; } = new(0x0000,start:7,length:1);
/// <summary>
/// 保留
/// </summary>
public ModbusProperty<short> Reservation02 { get; set; } = new(0x0000,start:6,length:1);
/// <summary>
/// EPO活跃
/// </summary>
public ModbusProperty<short> EPOActive { get; set; } = new(0x0000,start:5,length:1);
/// <summary>
/// 保留
/// </summary>
public ModbusProperty<short> Reservation03{ get; set; } = new(0x0000,start:4,length:1);
/// <summary>
/// 过温
/// </summary>
public ModbusProperty<short> OverTemperature{ get; set; } = new(0x0000,start:3,length:1);
/// <summary>
/// 充电器故障
/// </summary>
public ModbusProperty<short> ChargerFail { get; set; } = new(0x0000,start:2,length:1);
public ModbusProperty<short> Reservation04 { get; set; } = new(0x0000,start:1,length:1);
public ModbusProperty<short> Reservation05 { get; set; } = new(0x0000,start:0,length:1);
/// <summary>
/// 警告Battery放回
/// </summary>
public ModbusProperty<short> WarningForBatteryReplace { get; set; } = new(0x0003,start:8,length:1);
/// <summary>
/// EEPROM操作Eeror
/// </summary>
public ModbusProperty<short> EepromOperationEeror { get; set; } = new(0x0003,start:2,length:1);
/// <summary>
/// 更换电池
/// </summary>
public ModbusProperty<short> ReplaceBattery { get; set; } = new(0x0004,start:15,length:1);
/// <summary>
/// 电池电量不足
/// </summary>
public ModbusProperty<short> LowBattery { get; set; } = new(0x0004,start:14,length:1);
/// <summary>
/// 过载输出
/// </summary>
public ModbusProperty<short> OverloadOutput { get; set; } = new(0x0004,start:13,length:1);
/// <summary>
/// 电池模式
/// </summary>
public ModbusProperty<short> OnBatteryMode { get; set; } = new(0x0004,start:12,length:1);
/// <summary>
/// 在线模式
/// </summary>
public ModbusProperty<short> OnlineMode { get; set; } = new(0x0004,start:11,length:1);
/// <summary>
/// UPS准备在用户命令下加载电源或 返回 正常线路电压
/// </summary>
public ModbusProperty<short> UpsReady1 { get; set; } = new(0x0004,start:7,length:1);
/// <summary>
/// UPS准备在用户命令下加载电源
/// </summary>
public ModbusProperty<short> UpsReady2 { get; set; } = new(0x0004,start:6,length:1);
/// <summary>
/// UPS正在从旁路模式返回
/// </summary>
public ModbusProperty<short> UPSReady { get; set; } = new(0x0004,start:4,length:1);
/// <summary>
/// UPS因UPS-Link而处于旁路模式或钥匙 指挥权
/// </summary>
public ModbusProperty<short> UPSBypass { get; set; } = new(0x0004,start:3,length:1);
/// <summary>
/// 由于内部故障UPS处于旁路模式
/// </summary>
/// <returns></returns>
public ModbusProperty<short> UPSBypassModeDueInternaFault { get; set; } = new(0x0004,start:1,length:1);
/// <summary>
/// 输出电压差
/// </summary>
public ModbusProperty<short> BadOutputVoltage { get; set; } = new(0x0005,start:15,length:1);
/// <summary>
/// UPS故障-直流不平衡UPS处于旁路
/// </summary>
public ModbusProperty<short> UPSFaultDCImbalance { get; set; } = new(0x0005,start:12,length:1);
/// <summary>
/// Bit7 = 内部温度已超过标称温度限制
/// </summary>
public ModbusProperty<short> InternalTemperatureHasExceededNominalLimits{ get; set; } = new(0x0005,start:7,length:1);
/// <summary>
/// Battery充电器故障
/// </summary>
public ModbusProperty<short> BatteryChargerFailure { get; set; } = new(0x0005,start:5,length:1);
/// <summary>
/// UPS通过“S”命令处于关机模式
/// </summary>
public ModbusProperty<short> UPSShutDownModeViaCommand { get; set; } = new(0x0005,start:4,length:1);
/// <summary>
/// Bit3 = UPS在“睡眠”模式下通过“@Ddd”命令
/// </summary>
public ModbusProperty<short> UPSSleepModeViaCommand { get; set; } = new(0x0005,start:3,length:1);
/// <summary>
/// Bit0 = UPS的输出因电池电量不足而无法供电关闭
/// </summary>
public ModbusProperty<short> UPSOutputUnpoweredDueToLowBatteryshutDown { get; set; } = new(0x0005,start:0,length:1);
#endregion
#region 2能力设置
/// <summary>
/// 启用/禁用声音警报
/// </summary>
public ModbusProperty<short> EnableAudibleAlarm { get; set; } = new(0x000E,start:15,length:1);
/// <summary>
/// 启用/禁用自动重新启动
/// </summary>
public ModbusProperty<short> EnableAutoRestart { get; set; } = new(0x000E,start:10,length:1);
/// <summary>
/// 启用/禁用代码启动
/// </summary>
public ModbusProperty<short> EnableDodeStart { get; set; } = new(0x000E,start:7,length:1);
/// <summary>
/// 启用/禁用旁路禁止
/// </summary>
public ModbusProperty<short> EnableBypassForBiding { get; set; } = new(0x000E,start:6,length:1);
/// <summary>
/// Bit3=设备时启用/禁用旁路关掉。
/// </summary>
public ModbusProperty<short> EnableBypassWhenDeviceTurnOff { get; set; } = new(0x000E,start:3,length:1);
/// <summary>
/// Bit2=启用/禁用旁路可听警告
/// </summary>
public ModbusProperty<short> EnableBypassAudibleWarning { get; set; } = new(0x000E,start:2,length:1);
/// <summary>
/// 启用/禁用高效模式
/// </summary>
public ModbusProperty<short> EnableHighEfficiencyMode { get; set; } = new(0x000E,start:1,length:1);
/// <summary>
/// 启用/禁用节能
/// </summary>
public ModbusProperty<short> EnableEnergySaving { get; set; } = new(0x000E,start:0,length:1);
/// <summary>
/// 启用/禁用转换器模式
/// </summary>
public ModbusProperty<short> EnableConverterMode { get; set; } = new(0x000F,start:12,length:1);
#endregion
#region 3支持能力列表
/// <summary>
/// 启用/禁用声音警报
/// </summary>
public ModbusProperty<short> EnableAudibleAlarm1 { get; set; } = new(0x0010,start:15,length:1);
/// <summary>
/// 启用/禁用自动重新启动。
/// </summary>
public ModbusProperty<short> EnableAutoRestart1 { get; set; } = new(0x0010,start:10,length:1);
/// <summary>
/// 启用/禁用代码启动
/// </summary>
public ModbusProperty<short> EnableCodeStart { get; set; } = new(0x0010,start:7,length:1);
/// <summary>
/// 启用/禁用旁路禁止
/// </summary>
public ModbusProperty<short> EnableBypassForbidding { get; set; } = new(0x0010,start:6,length:1);
/// <summary>
/// 在设备时启用/禁用旁路关掉。
/// </summary>
public ModbusProperty<short> EnableBypassWhenDeviceTurnOff1 { get; set; } = new(0x0010,start:3,length:1);
/// <summary>
/// 启用/禁用旁路声音警告
/// </summary>
public ModbusProperty<short> EnableBypassAudibleWarning1 { get; set; } = new(0x0010,start:2,length:1);
/// <summary>
/// 启用/禁用高效率形式
/// </summary>
public ModbusProperty<short> EnableHighEfficiencyMode1 { get; set; } = new(0x0010,start:1,length:1);
/// <summary>
/// 支持:启用/禁用节能
/// </summary>
public ModbusProperty<short> EnableEnergySaving1 { get; set; } = new(0x0010,start:0,length:1);
/// <summary>
/// 启用/禁用转换器模式
/// </summary>
public ModbusProperty<short> EnableConverterMode1 { get; set; } = new(0x0011,start:0,length:1);
#endregion
#region 4控制项
/// <summary>
/// Bit15=静音蜂鸣器嘟嘟声
/// </summary>
public ModbusProperty<short> SilenceBuzzerBeep { get; set; } = new(0x001A,start:15,length:1);
/// <summary>
/// Bit14=蜂鸣器蜂鸣器打开
/// </summary>
public ModbusProperty<short> BuzzerBeepOpen { get; set; } = new(0x001A,start:14,length:1);
/// <summary>
/// Bit13=测试直到电池电量不足
/// </summary>
public ModbusProperty<short> TestUntilBatteryLow { get; set; } = new(0x001A,start:13,length:1);
/// <summary>
/// bit12=关闭UPS
/// </summary>
public ModbusProperty<short> TurnOnUps { get; set; } = new(0x001A,start:12,length:1);
/// <summary>
/// bit11=打开UPS
/// </summary>
public ModbusProperty<short> CancelShutdown { get; set; } = new(0x001A,start:11,length:1);
/// <summary>
/// Bit10=取消关机
/// </summary>
public ModbusProperty<short> CancelTest { get; set; } = new(0x001A,start:10,length:1);
/// <summary>
/// Bit9=取消测试
/// </summary>
public ModbusProperty<short> SecondsTest { get; set; } = new(0x001A,start:9,length:1);
/// <summary>
/// Bit8=10秒测试
/// </summary>
public ModbusProperty<short> TurnOffAfterDelay1 { get; set; } = new(0x001A,start:8,length:1);
/// <summary>
/// Bit3 = 之后关掉延迟
/// </summary>
public ModbusProperty<short> ShutdownUpsOnBattery { get; set; } = new(0x001A,start:3,length:1);
/// <summary>
/// 位2 = 关闭UPS Battery
/// </summary>
public ModbusProperty<short> Reservation { get; set; } = new(0x001A,start:2,length:1);
#endregion
#region 5控制的结果
/// <summary>
/// 位15=旗帜:沉默蜂鸣器蜂鸣声
/// </summary>
public ModbusProperty<short> SilenceBuzzerBeep1 { get; set; } = new(0x0025,start:15,length:1);
/// <summary>
/// 位14=旗帜:蜂鸣器哔哔声打开
/// </summary>
public ModbusProperty<short> buzzerBeepOpen1 { get; set; } = new(0x0025,start:14,length:1);
/// <summary>
/// 位13=旗帜:测试直到电池电量不足
/// </summary>
public ModbusProperty<short> TestUntilBatteryLow1 { get; set; } = new(0x0025,start:13,length:1);
/// <summary>
/// Bit12=旗帜转关闭UPS
/// </summary>
public ModbusProperty<short> TurnOffUps1 { get; set; } = new(0x0025,start:12,length:1);
/// <summary>
/// Bit11=旗帜转在UPS上
/// </summary>
public ModbusProperty<short> TurnOnUps1 { get; set; } = new(0x0025,start:11,length:1);
/// <summary>
/// Bit10=标志:取消停工
/// </summary>
public ModbusProperty<short> CancelShutdown1 { get; set; } = new(0x0025,start:10,length:1);
/// <summary>
/// Bit9=标志:取消测试
/// </summary>
public ModbusProperty<short> CancelTest1 { get; set; } = new(0x0025,start:9,length:1);
/// <summary>
/// bit8=Flag10秒测试
/// </summary>
public ModbusProperty<short> SecondsTest10 { get; set; } = new(0x0025,start:8,length:1);
/// <summary>
/// 位3 = 旗帜:转离开 延迟后
/// </summary>
public ModbusProperty<short> TurnOffAfterDelay { get; set; } = new(0x0025,start:3,length:1);
/// <summary>
/// 位2 = 旗帜:关闭 UPS在Battery
/// </summary>
public ModbusProperty<short> ShutdownUpsOnBattery1 { get; set; } = new(0x0025,start:2,length:1);
#endregion
#region 6将参数设置为默认值
/// <summary>
/// 位15=设置控制参数到默认值
/// </summary>
public ModbusProperty<short> SetingControlParameterDefaultValue1 { get; set; } = new(0x0030,start:15,length:1);
/// <summary>
/// 位15=设置控制参数到默认值
/// </summary>
public ModbusProperty<short> SetingControlParameterDefaultValue2 { get; set; } = new(0x003B,start:15,length:1);
#endregion
#region 7设置参数项
public ModbusProperty<short> VoltageHigh { get; set; } = new(0x0350);
public ModbusProperty<short> VoltageLow { get; set; } = new(0x0351);
#endregion
#region 8设置参数成功或失败
/// <summary>
/// 标志旁路Freq高损点
/// </summary>
public ModbusProperty<short> BypassFreqHigh { get; set; } = new(0x0385,start:11,length:1);
/// <summary>
/// 标志旁路Freq低损耗点
/// </summary>
public ModbusProperty<short> BypassFreqLow { get; set; } = new(0x0385,start:10,length:1);
/// <summary>
/// 标志:旁路电压高损耗点
/// </summary>
public ModbusProperty<short> BypassVoltageHigh { get; set; } = new(0x0385,start:9,length:1);
/// <summary>
/// 标志:旁路电压低损耗点
/// </summary>
public ModbusProperty<short> BypassVoltageLow { get; set; } = new(0x0385,start:8,length:1);
#endregion
#region 9UPS工作状态
/// <summary>
/// Battery电流
/// </summary>
public ModbusProperty<short> BatteryCurrent { get; set; } = new(0x00A9);
/// <summary>
/// 线路电压
/// </summary>
public ModbusProperty<short> LineVoltage { get; set; } = new(0x00AA);
/// <summary>
/// 输入频率
/// </summary>
public ModbusProperty<short> InputFrequency { get; set; } = new(0x00AB);
/// <summary>
/// 输出电压
/// </summary>
public ModbusProperty<short> OutputVoltage { get; set; } = new(0x00AC);
/// <summary>
/// 输出Ut频率交流输出频率
/// </summary>
public ModbusProperty<short> OutputFrequency { get; set; } = new(0x00AD);
/// <summary>
/// 输出电流
/// </summary>
public ModbusProperty<short> OutputCurrent { get; set; } = new(0x00AE);
/// <summary>
/// 输出负载百分比
/// </summary>
public ModbusProperty<short> OutputLoadPercent { get; set; } = new(0x00AF);
/// <summary>
/// P 电池电压
/// </summary>
public ModbusProperty<short> PBatteryVoltage { get; set; } = new(0x00B2);
/// <summary>
/// UPS内部温度
/// </summary>
public ModbusProperty<short> UpsInternalTemperature { get; set; } = new(0x00B4);
/// <summary>
/// Ups状态
/// </summary>
public ModbusProperty<short> UpsStatus { get; set; } = new(0x00B5);
/// <summary>
/// Battery能力
/// </summary>
public ModbusProperty<short> BatteryCapacity { get; set; } = new(0x00BF);
/// <summary>
/// Battery保持时间
/// </summary>
public ModbusProperty<short> BatteryRemainTime { get; set; } = new(0x00C0);
/// <summary>
/// L线1L2电压
/// </summary>
public ModbusProperty<short> LineL1L2Voltage { get; set; } = new(0x00C1);
/// <summary>
/// 字母lIne L2L3电压
/// </summary>
public ModbusProperty<short> LineL2L3Voltage { get; set; } = new(0x00C2);
/// <summary>
/// 字母lIne L3L1电压
/// </summary>
public ModbusProperty<short> LineL3L1Voltage { get; set; } = new(0x00C3);
/// <summary>
/// 线路L1电压
/// </summary>
public ModbusProperty<short> LineL1Voltage { get; set; } = new(0x00C4);
/// <summary>
/// 字母lIne L2电压
/// </summary>
public ModbusProperty<short> LineL2Voltage { get; set; } = new(0x00C5);
/// <summary>
/// 字母lIne L3电压
/// </summary>
public ModbusProperty<short> LineL3Voltage { get; set; } = new(0x00C6);
/// <summary>
/// UPS模式查询
/// </summary>
public ModbusProperty<short> UpsModeInquiry { get; set; } = new(0x00D0);
/// <summary>
/// 输出L1电压
/// </summary>
public ModbusProperty<short> OutputL1Voltage { get; set; } = new(0x00D8);
/// <summary>
/// L1负载电流
/// </summary>
public ModbusProperty<short> L1LoadCurrent { get; set; } = new(0x00DC);
/// <summary>
/// L1负载百分比s
/// </summary>
public ModbusProperty<short> L1LoadPercents { get; set; } = new(0x00DD);
/// <summary>
/// L2负载电流
/// </summary>
public ModbusProperty<short> L2LoadCurrent { get; set; } = new(0x00EF);
/// <summary>
/// L3负载电流
/// </summary>
public ModbusProperty<short> L3LoadCurrent { get; set; } = new(0x00F0);
/// <summary>
/// 输出L2电压
/// </summary>
public ModbusProperty<short> OutputL2Voltage { get; set; } = new(0x00F7);
/// <summary>
/// 输出L3电压
/// </summary>
public ModbusProperty<short> OutputL3Voltage { get; set; } = new(0x00F8);
/// <summary>
/// 输出信息字母l1L2电压
/// </summary>
public ModbusProperty<short> OutputL1L2Voltage { get; set; } = new(0x00F9);
/// <summary>
/// 输出信息字母l2L3电压
/// </summary>
public ModbusProperty<short> OutputL2L3Voltage { get; set; } = new(0x00FA);
/// <summary>
/// 输出信息字母l3L1电压
/// </summary>
public ModbusProperty<short> OutputL3L1Voltage { get; set; } = new(0x00FB);
/// <summary>
/// L2负载百分比
/// </summary>
public ModbusProperty<short> L2LoadPercent { get; set; } = new(0x00FC);
/// <summary>
/// L3负载百分比
/// </summary>
public ModbusProperty<short> L3LoadPercent { get; set; } = new(0x00FD);
/// <summary>
/// 整个负载百分比
/// </summary>
public ModbusProperty<short> WholeLoadPercent { get; set; } = new(0x00FE);
/// <summary>
/// 表观负载功率
/// </summary>
public ModbusProperty<short> ApparentLoadPower { get; set; } = new(0x0127);
#endregion
#region 10UPS电池信息
/// <summary>
///Battery更换日期 单位Battery容量AH SP6KSP10K仅支持 下面的设置
/// </summary>
public ModbusProperty<long> BatteryReplacementDate { get; set; } = new(0x036B);
/// <summary>
/// 7, 9,10,12,17,26,40,65,100 SP1KSP2K仅支持以下设置7 SP3K支持以下设置9
/// </summary>
public ModbusProperty<short> SupportBelowSetting { get; set; } = new(0x036F);
#endregion
#region 11设置UPS电池信息成功或失败
/// <summary>
/// 设置电池更换数据
/// </summary>
public ModbusProperty<short> SetBatteryReplacementData { get; set; } = new(0x0386,start:0,length:1);
/// <summary>
/// 设置单位电池容量AH
/// </summary>
public ModbusProperty<short> SetUnitBatteryCapacity { get; set; } = new(0x0387, start: 15, length: 1);
#endregion
#region 12UPS故障信息
/// <summary>
/// 故障种类
/// </summary>
public ModbusProperty<short> FaultKind { get; set; } = new(0x02A3);
#endregion
#region 13远程关机和测试
/// <summary>
/// 在指定时间内进行测试 分钟ASCII
/// </summary>
public ModbusProperty<short> TestForSpecifiedTime { get; set; } = new(0x03AC);
/// <summary>
/// 关机和恢复M 0.1小时ASCII
/// </summary>
public ModbusProperty<short> ShutdownRestore1 { get; set; } = new(0x03AE);
/// <summary>
/// 在指定时间内测试
/// </summary>
public ModbusProperty<short> TestForSpecifiedTime1 { get; set; } = new(0x03DA, start: 14, length: 1);
/// <summary>
/// 关闭和恢复
/// </summary>
public ModbusProperty<short> ShutdownRestore { get; set; } = new(0x03DA,start:13,length:1);
#endregion
#region 14CPU信息
/// <summary>
/// 主CPU固件版本
/// </summary>
public ModbusProperty<string> MainCPUFirmwareVersion { get; set; } = new(0x03E1,length:10);
#endregion
#region 15UPS型号和评级信息
/// <summary>
/// 制造商ID
/// </summary>
public ModbusProperty<string> ManufacturerID { get; set; } = new(0x03EB,length:7);
/// <summary>
/// Battery件数
/// </summary>
public ModbusProperty<short> BatteryPieceNumber { get; set; } = new(0x03F2);
/// <summary>
/// 输入阶段
/// </summary>
public ModbusProperty<short> InputPhase { get; set; } = new(0x03F4);
/// <summary>
/// 输出阶段
/// </summary>
public ModbusProperty<short> OutputPhase { get; set; } = new(0x03F5);
/// <summary>
/// 标称I/P电压
/// </summary>
public ModbusProperty<short> NominalIPVoltage { get; set; } = new(0x03F6);
/// <summary>
/// 标称O/P电压
/// </summary>
public ModbusProperty<short> NominalOPVoltage { get; set; } = new(0x03F7);
/// <summary>
/// 输出额定VA
/// </summary>
public ModbusProperty<short> OutputRatedVA { get; set; } = new(0x03F9);
/// <summary>
/// 设备型号
/// </summary>
public ModbusProperty<short> DeviceModel { get; set; } = new(0x03FB);
/// <summary>
/// Battery电压
/// </summary>
public ModbusProperty<short> BatteryVoltage { get; set; } = new(0x048A);
/// <summary>
/// 额定输出电流
/// </summary>
public ModbusProperty<short> RatingOutputCurrent { get; set; } = new(0x048B);
/// <summary>
/// 额定输出频率
/// </summary>
public ModbusProperty<short> RatingOutputFrequency { get; set; } = new(0x048C);
#endregion
#region 16读取可配置参数
/// <summary>
/// 声音警报
/// </summary>
public ModbusProperty<short> AudibleAlarm { get; set; } = new(0x04F0);
/// <summary>
/// 关机延迟
/// </summary>
public ModbusProperty<short> ShutdownDelay { get; set; } = new(0x04F1);
/// <summary>
/// 打开延迟
/// </summary>
public ModbusProperty<short> Turn0nDelay { get; set; } = new(0x04F2);
#endregion
#region 17设置可配置参数成功或失败
/// <summary>
/// 旗帜:声音警报
/// </summary>
public ModbusProperty<short> AudibleAlarm1 { get; set; } = new(0x0516,start:15,length:1);
/// <summary>
/// 标志:关机延迟
/// </summary>
public ModbusProperty<short> ShutdownDelay1 { get; set; } = new(0x0516,start:14,length:1);
/// <summary>
/// 标志:打开延迟
/// </summary>
public ModbusProperty<short> TurnOnDelay { get; set; } = new(0x0516,start:13,length:1);
#endregion
#region 18阅读可配置EEPROM Parameters范围
/// <summary>
/// 旁路上部转移的注册地址电压
/// </summary>
public ModbusProperty<short> BypassUpperTransferVoltage { get; set; } = new(0x0538);
/// <summary>
/// 旁路下转移的注册地址电压
/// </summary>
public ModbusProperty<short> BypassLowerTransferVoltage { get; set; } = new(0x0539);
/// <summary>
/// 声音警报的注册地址
/// </summary>
public ModbusProperty<short> RegisterAddressOfAudibleAlarm { get; set; } = new(0x0540);
/// <summary>
/// 关机延迟的注册地址
/// </summary>
public ModbusProperty<short> RegisterAddressOfShutdownDelay { get; set; } = new(0x0541);
/// <summary>
/// 开启延迟的注册地址
/// </summary>
public ModbusProperty<short> RegisterAddressOfTurnOnDelay { get; set; } = new(0x0542);
/// <summary>
/// 参数预订的注册地址
/// </summary>
public ModbusProperty<string> ParameterReservation { get; set; } = new(0x0539,length:25);
/// <summary>
/// 参数缓冲区
/// </summary>
public ModbusProperty<string> ParameterBuffer { get; set; } = new(0x0556,length:80);
#endregion
}
Loading…
Cancel
Save