diff --git a/Common/Const/EquipmentType.cs b/Common/Const/EquipmentType.cs
index 7f6f2f4..7809ed2 100644
--- a/Common/Const/EquipmentType.cs
+++ b/Common/Const/EquipmentType.cs
@@ -5,5 +5,7 @@ public enum EquipmentType
Charger,
Ammeter,
WaterCool,
- Plc
+ Plc,
+ Bms,
+ Fire
}
diff --git a/Entity/Api/Resp/FireResp.cs b/Entity/Api/Resp/FireResp.cs
index e375844..1c3be94 100644
--- a/Entity/Api/Resp/FireResp.cs
+++ b/Entity/Api/Resp/FireResp.cs
@@ -44,83 +44,83 @@ public class Subzone5Resp
/// 7:预留
/// 8:预留
///
- public byte ProtectionZone001 { get; set; }
+ public ushort ProtectionZone001 { get; set; }
///
/// 类型
///
- public byte Type001 { get; set; }
+ public ushort Type001 { get; set; }
///
/// 探测器 ID 与探测器编号对应
///
- public byte DetectorID001 { get; set; }
+ public ushort DetectorID001 { get; set; }
///
/// 报警等级 0x0000:正常0x0001:一级预警 0x0002:二级报警 0x0003:三级报警 0x0004:四级报警预留
///
- public byte AlarmLevel001 { get; set; }
+ public ushort AlarmLevel001 { get; set; }
///
/// 温度 实际值=寄存器值 -40
///
- public byte Temperature001 { get; set; }
+ public ushort Temperature001 { get; set; }
///
/// 一氧化碳浓度 实际值=寄存器值 / 1000
///
- public byte CoConcentration001 { get; set; }
+ public ushort CoConcentration001 { get; set; }
///
/// VOC
///
- public byte VOC001 { get; set; }
+ public ushort VOC001 { get; set; }
///
/// 烟雾 0xFF00 烟雾报警 0x0000 烟雾正常
///
- public byte Smoke001 { get; set; }
-
- public byte ProtectionZone002 { get; set; }
- public byte Type002 { get; set; }
- public byte DetectorID002 { get; set; }
- public byte AlarmLevel002 { get; set; }
- public byte Temperature002 { get; set; }
- public byte CoConcentration002 { get; set; }
- public byte VOC002 { get; set; }
- public byte Smoke002 { get; set; }
- public byte ProtectionZone003 { get; set; }
- public byte Type003 { get; set; }
- public byte DetectorID003 { get; set; }
- public byte AlarmLevel003 { get; set; }
- public byte Temperature003 { get; set; }
- public byte CoConcentration003 { get; set; }
- public byte VOC003 { get; set; }
- public byte Smoke003 { get; set; }
- public byte ProtectionZone004 { get; set; }
- public byte Type004 { get; set; }
- public byte DetectorID004 { get; set; }
- public byte AlarmLevel004 { get; set; }
- public byte Temperature004 { get; set; }
- public byte CoConcentration004 { get; set; }
- public byte VOC004 { get; set; }
- public byte Smoke004 { get; set; }
- public byte ProtectionZone005 { get; set; }
- public byte Type005 { get; set; }
- public byte DetectorID005 { get; set; }
- public byte AlarmLevel005 { get; set; }
- public byte Temperature005 { get; set; }
- public byte CoConcentration005 { get; set; }
- public byte VOC005 { get; set; }
- public byte Smoke005 { get; set; }
- public byte ProtectionZone006 { get; set; }
- public byte Type006 { get; set; }
- public byte DetectorID006 { get; set; }
- public byte AlarmLevel006 { get; set; }
- public byte Temperature006 { get; set; }
- public byte CoConcentration006 { get; set; }
- public byte VOC006 { get; set; }
- public byte Smoke006 { get; set; }
+ public ushort Smoke001 { get; set; }
+
+ public ushort ProtectionZone002 { get; set; }
+ public ushort Type002 { get; set; }
+ public ushort DetectorID002 { get; set; }
+ public ushort AlarmLevel002 { get; set; }
+ public ushort Temperature002 { get; set; }
+ public ushort CoConcentration002 { get; set; }
+ public ushort VOC002 { get; set; }
+ public ushort Smoke002 { get; set; }
+ public ushort ProtectionZone003 { get; set; }
+ public ushort Type003 { get; set; }
+ public ushort DetectorID003 { get; set; }
+ public ushort AlarmLevel003 { get; set; }
+ public ushort Temperature003 { get; set; }
+ public ushort CoConcentration003 { get; set; }
+ public ushort VOC003 { get; set; }
+ public ushort Smoke003 { get; set; }
+ public ushort ProtectionZone004 { get; set; }
+ public ushort Type004 { get; set; }
+ public ushort DetectorID004 { get; set; }
+ public ushort AlarmLevel004 { get; set; }
+ public ushort Temperature004 { get; set; }
+ public ushort CoConcentration004 { get; set; }
+ public ushort VOC004 { get; set; }
+ public ushort Smoke004 { get; set; }
+ public ushort ProtectionZone005 { get; set; }
+ public ushort Type005 { get; set; }
+ public ushort DetectorID005 { get; set; }
+ public ushort AlarmLevel005 { get; set; }
+ public ushort Temperature005 { get; set; }
+ public ushort CoConcentration005 { get; set; }
+ public ushort VOC005 { get; set; }
+ public ushort Smoke005 { get; set; }
+ public ushort ProtectionZone006 { get; set; }
+ public ushort Type006 { get; set; }
+ public ushort DetectorID006 { get; set; }
+ public ushort AlarmLevel006 { get; set; }
+ public ushort Temperature006 { get; set; }
+ public ushort CoConcentration006 { get; set; }
+ public ushort VOC006 { get; set; }
+ public ushort Smoke006 { get; set; }
}
public class Subzone7Resp
diff --git a/Entity/DbModel/Station/EquipType.cs b/Entity/DbModel/Station/EquipType.cs
index c558d13..417e48e 100644
--- a/Entity/DbModel/Station/EquipType.cs
+++ b/Entity/DbModel/Station/EquipType.cs
@@ -24,7 +24,7 @@ namespace Entity.DbModel.Station
public int Id {get;set;}
///
- /// Desc:类型编码;0-充电机;1-电表
+ /// Desc:类型编码;0-充电机;1-电表,,3plc,4bms,5消防
/// Default:
/// Nullable:True
///
diff --git a/Service/Execute/Step/ManualSuccState.cs b/Service/Execute/Step/ManualSuccState.cs
index dc3f0c3..89ff105 100644
--- a/Service/Execute/Step/ManualSuccState.cs
+++ b/Service/Execute/Step/ManualSuccState.cs
@@ -57,7 +57,8 @@ public class ManualSuccState : IState
_manualOperationRecordRepository.Insert(manualOperationRecord);
;
-
+
+ StationReadyState.CanWelcomeInfo = true;
machine.Reset();
}
catch (Exception e)
diff --git a/Service/Execute/Step/StationReadyState.cs b/Service/Execute/Step/StationReadyState.cs
index 47bc502..80a2798 100644
--- a/Service/Execute/Step/StationReadyState.cs
+++ b/Service/Execute/Step/StationReadyState.cs
@@ -25,6 +25,7 @@ public class StationReadyState : IState
private readonly CommonMgr _CommonMgr = AppInfo.Container.Resolve();
+ public static bool CanWelcomeInfo = true;
public StateResult Handle(SwappingStateMachine machine)
{
@@ -116,7 +117,12 @@ public class StationReadyState : IState
if (PlcApi.WriteEntranceLamp(1000))
{
//LED显示-欢迎光临_换电站点_正在营业
-
+ if (CanWelcomeInfo)
+ {
+ SoundApi.PlayOneSound((int)InfoEnum.SwapInfo.WelcomeInfo);
+ CanWelcomeInfo = false;
+ }
+
// machine.LedTool?.WriteContent(welcomeContent);
//查看雷达
isRemote = true;
@@ -141,8 +147,7 @@ public class StationReadyState : IState
}
else
{
- SoundApi.PlayOneSound((int)InfoEnum.SwapInfo.WelcomeInfo);
- Thread.Sleep(2000);
+ StationReadyState.CanWelcomeInfo = true;
SoundApi.PlayOneSound((int)InfoEnum.SwapInfo.CarInInfo);
machine.ExceptionReason = ExceptionReason.None;
_log.Info("entrance radar true");
diff --git a/Service/FireControl/Client/FireControlClient.cs b/Service/FireControl/Client/FireControlClient.cs
index 38a2547..1abdb51 100644
--- a/Service/FireControl/Client/FireControlClient.cs
+++ b/Service/FireControl/Client/FireControlClient.cs
@@ -1,7 +1,10 @@
-using HybirdFrameworkCore.Autofac.Attribute;
+using Common.Const;
+using Entity.DbModel.Station;
+using HybirdFrameworkCore.Autofac.Attribute;
using HybirdFrameworkCore.Const;
using HybirdFrameworkDriver.ModbusTcpMaster;
using log4net;
+using Repository.Station;
using Service.FireControl.Msg;
namespace Service.FireControl.Client;
@@ -10,6 +13,9 @@ namespace Service.FireControl.Client;
public class FireControlClient: ModbusTcpMaster
{
private static readonly ILog Log = LogManager.GetLogger(typeof(FireControlClient));
+ public EquipAlarmDefineRepository EquipAlarmDefineRepository { get; set; }
+ public EquipAlarmRecordRepository EquipAlarmRecordRepository { get; set; }
+ public EquipAlarmProcessRecordRepository EquipAlarmProcessRecordRepository { get; set; }
public FireControlClient()
{
ReadAction = BatchRead;
@@ -23,16 +29,40 @@ public class FireControlClient: ModbusTcpMaster
private void BatchRead(ModbusTcpMaster master)
{
+ //1电表
+ //2消防
+ //3温湿度
Log.Info("fire start read");
- var bytes02 = master.ReadCoil("0x0000", 17).Content;//0x01
- var bytes03 = master.BatchReadHolderRegister(1, 3);//0x03 读1 3
- var bytes04 = master.BatchReadHolderRegister(0x0100, 383);//0x03 读256 383
- var bytes05 = master.BatchReadHolderRegister(1, 115);//0x04 可以
+
+ #region 电表
+
+ var readPowerValue = master.Read("x=3;39424", 4).Content;
+ if (readPowerValue != null)
+ {
+ ModbusDecoder.Decode(readPowerValue, FireControlMgr.PowerValue, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
+ }
+
+ #endregion
+
+ #region 温湿度
+
+ var readTem = master.Read("s=3;x=3;0", 2).Content;
+ if (readTem!=null)
+ {
+ ModbusDecoder.Decode(readTem, FireControlMgr.TemperatureHumidity, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
+ }
+
+ #endregion
+
+ var bytes02 = master.ReadCoil("s=2;x=1;0", 17).Content;//0x01
+ var bytes03 = master.Read("s=2;x=3;1", 3).Content;//0x03 读1 3
+ var bytes04 = master.Read("s=2;x=3;257", 383).Content;//0x03 读256 383
+ var bytes05 = master.Read("s=2;x=4;1", 115).Content;//0x04 可以
List bytes06=new List();//= master.BatchReadHolderRegister(0x0800, 2048);//0x04 可以
- var bytesAdd1 = master.BatchReadHolderRegister(0x0800, 1000);//0x04 可以
- var bytesAdd2 = master.BatchReadHolderRegister(3048, 1048);//0x04 可以
+ var bytesAdd1 = master.Read("s=2;x=4;2048", 1000).Content;//0x04 可以
+ var bytesAdd2 = master.Read("s=2;x=4;3048", 1048).Content;//0x04 可以
if (bytesAdd1 != null && bytesAdd2 != null)
{
bytes06.AddRange(bytesAdd1);
@@ -40,115 +70,199 @@ public class FireControlClient: ModbusTcpMaster
}
- var bytes07 = master.BatchReadHolderRegister(0x1000, 32);//0x04 可以
- var bytes08 = master.BatchReadHolderRegister(0x0000, 134);//0x05 写
- var bytes09 = master.BatchReadHolderRegister(0x0100, 64);//0x06 写
- try
- {
- if (bytes02 != null)
- {
- Log.Info("fire read bytes02 success");
- //ModbusDecoder.Decode(bytes02, FireControlMgr.Subzone2Resp, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
- FireControlMgr.Subzone2.GiveAnAlarm.Value = bytes02[0];
- FireControlMgr.Subzone2.NumberOfFailures.Value = bytes02[1];
- FireControlMgr.Subzone2.SoundSuppression.Value = bytes02[2];
- FireControlMgr.Subzone2.SelfInspection.Value = bytes02[3];
- FireControlMgr.Subzone2.MainPower.Value = bytes02[4];
- FireControlMgr.Subzone2.PowerSupplyBackup.Value = bytes02[5];
- FireControlMgr.Subzone2.BackupPowerUnderpowered.Value = bytes02[6];
- FireControlMgr.Subzone2.AutomaticMode.Value = bytes02[7];
- FireControlMgr.Subzone2.ManualMode.Value = bytes02[8];
- FireControlMgr.Subzone2.ManualStart.Value = bytes02[9];
- FireControlMgr.Subzone2.ManualScram.Value = bytes02[10];
- FireControlMgr.Subzone2.StartUpControl.Value = bytes02[11];
- FireControlMgr.Subzone2.Delay.Value = bytes02[12];
- FireControlMgr.Subzone2.PrimingSpray.Value = bytes02[13];
- FireControlMgr.Subzone2.Spray.Value = bytes02[14];
- FireControlMgr.Subzone2.AudibleVisualAlarmStatus.Value = bytes02[15];
- FireControlMgr.Subzone2.DeflatedDoNotEnter.Value = bytes02[16];
- }
- }
- catch (Exception e)
- {
- Log.Info($"fire read bytes02 erroe{e}");
- }
- try
+ var bytes07 = master.Read("s=2;x=4;4096", 32).Content;//0x04 可以
+ var bytes08 = master.Read("s=2;x=5;0", 134).Content;//0x05 写
+ var bytes09 = master.Read("s=2;x=6;256", 64).Content;//0x06 写
+
+ if (bytes02 != null)
{
- if (bytes03 != null)
- {
- ModbusDecoder.Decode(bytes03, FireControlMgr.Subzone3, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
- }
+ Log.Info("fire read bytes02 success");
+ FireControlMgr.Subzone2.GiveAnAlarm.Value = bytes02[0];
+ FireControlMgr.Subzone2.NumberOfFailures.Value = bytes02[1];
+ FireControlMgr.Subzone2.SoundSuppression.Value = bytes02[2];
+ FireControlMgr.Subzone2.SelfInspection.Value = bytes02[3];
+ FireControlMgr.Subzone2.MainPower.Value = bytes02[4];
+ FireControlMgr.Subzone2.PowerSupplyBackup.Value = bytes02[5];
+ FireControlMgr.Subzone2.BackupPowerUnderpowered.Value = bytes02[6];
+ FireControlMgr.Subzone2.AutomaticMode.Value = bytes02[7];
+ FireControlMgr.Subzone2.ManualMode.Value = bytes02[8];
+ FireControlMgr.Subzone2.ManualStart.Value = bytes02[9];
+ FireControlMgr.Subzone2.ManualScram.Value = bytes02[10];
+ FireControlMgr.Subzone2.StartUpControl.Value = bytes02[11];
+ FireControlMgr.Subzone2.Delay.Value = bytes02[12];
+ FireControlMgr.Subzone2.PrimingSpray.Value = bytes02[13];
+ FireControlMgr.Subzone2.Spray.Value = bytes02[14];
+ FireControlMgr.Subzone2.AudibleVisualAlarmStatus.Value = bytes02[15];
+ FireControlMgr.Subzone2.DeflatedDoNotEnter.Value = bytes02[16];
}
- catch (Exception e)
+
+ if (bytes03 != null)
{
- Log.Info($"fire read bytes03 erroe{e}");
+ ModbusDecoder.Decode(bytes03, FireControlMgr.Subzone3, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
}
- try
+
+ if (bytes04 != null)
{
- if (bytes04 != null)
+ ModbusDecoder.Decode(bytes04, FireControlMgr.Subzone4, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
+ List faultList = new List()
{
- ModbusDecoder.Decode(bytes04, FireControlMgr.Subzone4, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
- }
+ {FireControlMgr.Subzone4.EquipmentNumber01.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber02.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber03.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber04.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber05.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber06.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber07.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber08.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber09.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber10.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber11.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber12.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber13.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber14.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber15.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber16.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber17.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber18.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber19.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber20.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber21.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber22.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber23.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber24.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber25.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber26.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber27.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber28.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber29.Value.ToString()},
+ {FireControlMgr.Subzone4.EquipmentNumber30.Value.ToString()},
+ };
+ SaveAlarmInfo(faultList);
}
- catch (Exception e)
+
+ if (bytes05 != null)
{
- Log.Info($"fire read bytes04 erroe{e}");
+ ModbusDecoder.Decode(bytes05, FireControlMgr.Subzone5, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
}
- try
+
+ if (bytes06 != null)
{
- if (bytes05 != null)
- {
- ModbusDecoder.Decode(bytes05, FireControlMgr.Subzone5, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
- }
+ ModbusDecoder.Decode(bytes06.ToArray(), FireControlMgr.Subzone6, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
}
- catch (Exception e)
+
+ if (bytes07 != null)
{
- Log.Info($"fire read bytes05 erroe{e}");
+ ModbusDecoder.Decode(bytes07, FireControlMgr.Subzone7, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
}
- try
+
+ /*if (bytes08 != null)
{
- if (bytes06 != null)
- {
- ModbusDecoder.Decode(bytes06.ToArray(), FireControlMgr.Subzone6, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
- }
+ ModbusDecoder.Decode(bytes08, FireControlMgr.Subzone8, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
}
- catch (Exception e)
+
+ if (bytes09 != null)
{
- Log.Info($"fire read bytes06 erroe{e}");
- }
- try
+ ModbusDecoder.Decode(bytes09, FireControlMgr.Subzone9, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
+ }*/
+
+ }
+
+ private void SaveAlarmInfo(List lstAlarm)
+ {
+ if (lstAlarm.Count > 0)
{
+ #region 有报警比较两边差异,新出现的报警就添加,消失的报警就处理并记录
+
+ var lstEquipAlarmRecord = EquipAlarmRecordRepository.QueryListByClause(i => i.EquipTypeCode == (int)EquipmentType.Fire);
+ var sqllstAlarm = lstEquipAlarmRecord.Select(obj => obj.ErrorCode).ToList();
- if (bytes07 != null)
+ // 找出实时报警中存在但数据库中不存在的元素
+ List uniqueToList1 = lstAlarm.Except(sqllstAlarm).ToList();
+
+ // 找出数据库中存在但实时报警中不存在的元素
+ List uniqueToList2 = sqllstAlarm.Except(lstAlarm).ToList();
+
+ if (uniqueToList1.Count > 0)
{
- ModbusDecoder.Decode(bytes07, FireControlMgr.Subzone7, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
+ //这里要添加新的报警数据
+ foreach (var errorCode in uniqueToList1)
+ {
+ if (errorCode != "0")
+ {
+ EquipAlarmDefine? alarmDefine =
+ EquipAlarmDefineRepository.QueryByClause(i=>i.EquipTypeCode==(int)EquipmentType.Fire&&i.ErrorCode==errorCode);
+
+ if (alarmDefine != null)
+ {
+ EquipAlarmRecord record = new EquipAlarmRecord()
+ {
+ EquipTypeCode = alarmDefine.EquipTypeCode,
+ EquipCode = alarmDefine.EquipCode,
+ ErrorCode = alarmDefine.ErrorCode,
+ ErrorLevel = alarmDefine.ErrorLevel,
+ ErrorMsg = alarmDefine.ErrorMsg,
+ ProcessMethod = alarmDefine.ProcessMethod,
+ StartTime = DateTime.Now
+ };
+ EquipAlarmRecordRepository.Insert(record);
+ }
+ }
+ }
}
- }
- catch (Exception e)
- {
- Log.Info($"fire read bytes07 erroe{e}");
- }
- try
- {
- if (bytes08 != null)
+
+ if (uniqueToList2.Count > 0)
{
- ModbusDecoder.Decode(bytes08, FireControlMgr.Subzone8, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
+ //这些是要清除实时报警,并且处理记录的。
+ // 使用LINQ找出ErrorCode在uniqueToList2中的EquipAlarmRecord对象
+ List filteredObjectList = lstEquipAlarmRecord
+ .Where(obj => uniqueToList2.Contains(obj.ErrorCode))
+ .ToList();
+ foreach (var VARIABLE in filteredObjectList)
+ {
+ EquipAlarmProcessRecord EquipAlarmProcessRecord = new EquipAlarmProcessRecord();
+ EquipAlarmProcessRecord.EquipTypeCode = VARIABLE.EquipTypeCode;
+ EquipAlarmProcessRecord.EquipCode = VARIABLE.EquipCode;
+ EquipAlarmProcessRecord.ErrorCode = VARIABLE.ErrorCode;
+ EquipAlarmProcessRecord.ErrorLevel = VARIABLE.ErrorLevel;
+ EquipAlarmProcessRecord.ErrorMsg = VARIABLE.ErrorMsg;
+ EquipAlarmProcessRecord.ProcessMethod = VARIABLE.ProcessMethod;
+ EquipAlarmProcessRecord.StartTime = VARIABLE.StartTime;
+ EquipAlarmProcessRecord.ProcessTime = DateTime.Now;
+
+ EquipAlarmProcessRecordRepository.Insert(EquipAlarmProcessRecord);
+ }
+
+ EquipAlarmRecordRepository.Delete(filteredObjectList);
}
+
+ #endregion
}
- catch (Exception e)
- {
- Log.Info($"fire read bytes08 erroe{e}");
- }
- try
+ else
{
- if (bytes09 != null)
+ #region 没报警把已处理记录更新并删除实时报警
+
+ var lstEquipAlarmRecord = EquipAlarmRecordRepository.QueryListByClause(i => i.EquipTypeCode == 3);
+ if (lstEquipAlarmRecord.Count > 0)
{
- ModbusDecoder.Decode(bytes09, FireControlMgr.Subzone9, EndingConst.ByteSeq.AB, EndingConst.WordSeq.DC);
+ foreach (var VARIABLE in lstEquipAlarmRecord)
+ {
+ EquipAlarmProcessRecord EquipAlarmProcessRecord = new EquipAlarmProcessRecord();
+ EquipAlarmProcessRecord.EquipTypeCode = VARIABLE.EquipTypeCode;
+ EquipAlarmProcessRecord.EquipCode = VARIABLE.EquipCode;
+ EquipAlarmProcessRecord.ErrorCode = VARIABLE.ErrorCode;
+ EquipAlarmProcessRecord.ErrorLevel = VARIABLE.ErrorLevel;
+ EquipAlarmProcessRecord.ErrorMsg = VARIABLE.ErrorMsg;
+ EquipAlarmProcessRecord.ProcessMethod = VARIABLE.ProcessMethod;
+ EquipAlarmProcessRecord.StartTime = VARIABLE.StartTime;
+ EquipAlarmProcessRecord.ProcessTime = DateTime.Now;
+
+ EquipAlarmProcessRecordRepository.Insert(EquipAlarmProcessRecord);
+ }
}
- }
- catch (Exception e)
- {
- Log.Info($"fire read bytes02 erroe{e}");
+
+ EquipAlarmRecordRepository.Delete(lstEquipAlarmRecord);
+
+ #endregion
}
}
}
\ No newline at end of file
diff --git a/Service/FireControl/Client/FireControlMgr.cs b/Service/FireControl/Client/FireControlMgr.cs
index d9255e5..af3e88d 100644
--- a/Service/FireControl/Client/FireControlMgr.cs
+++ b/Service/FireControl/Client/FireControlMgr.cs
@@ -15,6 +15,37 @@ public class FireControlMgr
public static Subzone7 Subzone7 = new Subzone7();
public static Subzone8 Subzone8 = new Subzone8();
public static Subzone9 Subzone9 = new Subzone9();
+
+
+ public static PowerValue PowerValue = new PowerValue();
+ public static TemperatureHumidity TemperatureHumidity = new TemperatureHumidity();
+
+ ///
+ /// 温度
+ ///
+ public static float Temperature {
+ get
+ {
+ return (TemperatureHumidity.Temperature.Value / 10);
+ }
+ }
+ ///
+ /// 湿度
+ ///
+ public static float Humidity { get
+ {
+ return (TemperatureHumidity.Humidity.Value / 10);
+ } }
+
+
+ ///
+ /// 电量值
+ ///
+ public static float Power {get
+ {
+ return PowerValue.FPowerValue.Value;
+ } }
+
public static FireControlClient? FireControlClient { get; set; }
diff --git a/Service/FireControl/FireAutoMapper.cs b/Service/FireControl/FireAutoMapper.cs
index 9fb6e28..fde85ee 100644
--- a/Service/FireControl/FireAutoMapper.cs
+++ b/Service/FireControl/FireAutoMapper.cs
@@ -24,6 +24,36 @@ public class FireAutoMapper
subzone5Resp.AlarmLevel001 = subzone5.AlarmLevel001.Value;
subzone5Resp.Smoke001 = subzone5.Smoke001.Value;
+ subzone5Resp.DetectorID002 = subzone5.DetectorID002.Value;
+ subzone5Resp.Temperature002 = subzone5.Temperature002.Value;
+ subzone5Resp.CoConcentration002 = subzone5.CoConcentration002.Value;
+ subzone5Resp.AlarmLevel002 = subzone5.AlarmLevel002.Value;
+ subzone5Resp.Smoke002 = subzone5.Smoke002.Value;
+
+ subzone5Resp.DetectorID003 = subzone5.DetectorID003.Value;
+ subzone5Resp.Temperature003 = subzone5.Temperature003.Value;
+ subzone5Resp.CoConcentration003 = subzone5.CoConcentration003.Value;
+ subzone5Resp.AlarmLevel003 = subzone5.AlarmLevel003.Value;
+ subzone5Resp.Smoke003 = subzone5.Smoke003.Value;
+
+ subzone5Resp.DetectorID004 = subzone5.DetectorID004.Value;
+ subzone5Resp.Temperature004 = subzone5.Temperature004.Value;
+ subzone5Resp.CoConcentration004 = subzone5.CoConcentration004.Value;
+ subzone5Resp.AlarmLevel004 = subzone5.AlarmLevel004.Value;
+ subzone5Resp.Smoke004 = subzone5.Smoke004.Value;
+
+ subzone5Resp.DetectorID005 = subzone5.DetectorID005.Value;
+ subzone5Resp.Temperature005 = subzone5.Temperature005.Value;
+ subzone5Resp.CoConcentration005 = subzone5.CoConcentration005.Value;
+ subzone5Resp.AlarmLevel005 = subzone5.AlarmLevel005.Value;
+ subzone5Resp.Smoke005 = subzone5.Smoke005.Value;
+
+ subzone5Resp.DetectorID006 = subzone5.DetectorID006.Value;
+ subzone5Resp.Temperature006 = subzone5.Temperature006.Value;
+ subzone5Resp.CoConcentration006 = subzone5.CoConcentration006.Value;
+ subzone5Resp.AlarmLevel006 = subzone5.AlarmLevel006.Value;
+ subzone5Resp.Smoke006 = subzone5.Smoke006.Value;
+
return subzone5Resp;
}
@@ -31,6 +61,18 @@ public class FireAutoMapper
{
Entity.Api.Resp.Subzone7Resp subzone7Resp = new Subzone7Resp();
+ subzone7Resp.FireExtinguisherStatus01 = subzone7.FireExtinguisherStatus01.Value;
+ subzone7Resp.FireExtinguisherProtectionArea01=subzone7.FireExtinguisherProtectionArea01.Value;
+
+ subzone7Resp.FireExtinguisherStatus02 = subzone7.FireExtinguisherStatus02.Value;
+ subzone7Resp.FireExtinguisherProtectionArea02=subzone7.FireExtinguisherProtectionArea02.Value;
+
+ subzone7Resp.FireExtinguisherStatus03 = subzone7.FireExtinguisherStatus03.Value;
+ subzone7Resp.FireExtinguisherProtectionArea03=subzone7.FireExtinguisherProtectionArea03.Value;
+
+ subzone7Resp.FireExtinguisherStatus04 = subzone7.FireExtinguisherStatus04.Value;
+ subzone7Resp.FireExtinguisherProtectionArea04=subzone7.FireExtinguisherProtectionArea04.Value;
+
return subzone7Resp;
}
diff --git a/Service/FireControl/Msg/PowerValue.cs b/Service/FireControl/Msg/PowerValue.cs
new file mode 100644
index 0000000..369d962
--- /dev/null
+++ b/Service/FireControl/Msg/PowerValue.cs
@@ -0,0 +1,8 @@
+using HybirdFrameworkDriver.ModbusTcpMaster;
+
+namespace Service.FireControl.Msg;
+
+public class PowerValue
+{
+ public ModbusProperty FPowerValue { get; set; } = new(39424);
+}
\ No newline at end of file
diff --git a/Service/FireControl/Msg/Subzone4.cs b/Service/FireControl/Msg/Subzone4.cs
index ec0ed2a..991222b 100644
--- a/Service/FireControl/Msg/Subzone4.cs
+++ b/Service/FireControl/Msg/Subzone4.cs
@@ -10,521 +10,523 @@ public class Subzone4
/*
故障信息寄存器 1 预留扩展 高字节默认: 0x00
预留扩展 低字节默认: 0x00
-故障信息寄存器 2 防护区 高字节
- 设备类型 低字节
-故障信息寄存器 3 设备编号 高字节
- 故障码 低字节
+故障信息寄存器 2 设备类型 低字节
+ 防护区 高字节
+
+故障信息寄存器 3 故障码 低字节
+ 设备编号 高字节
+
*/
- public ModbusProperty ProtectionZone01 { get; set; } = new(257, start: 0, length: 8);
- public ModbusProperty DeviceType01 { get; set; } = new(257, start: 8, length: 8);
- public ModbusProperty EquipmentNumber01 { get; set; } = new(258, start: 0, length: 8);
- public ModbusProperty TroubleCode01 { get; set; } = new(258, start: 8, length: 8);
- public ModbusProperty ProtectionZone02 { get; set; } = new(260, start: 0, length: 8);
- public ModbusProperty DeviceType02 { get; set; } = new(260, start: 8, length: 8);
- public ModbusProperty EquipmentNumber02 { get; set; } = new(261, start: 0, length: 8);
- public ModbusProperty TroubleCode02 { get; set; } = new(261, start: 8, length: 8);
- public ModbusProperty ProtectionZone03 { get; set; } = new(263, start: 0, length: 8);
- public ModbusProperty DeviceType03 { get; set; } = new(263, start: 8, length: 8);
- public ModbusProperty EquipmentNumber03 { get; set; } = new(264, start: 0, length: 8);
- public ModbusProperty TroubleCode03 { get; set; } = new(264, start: 8, length: 8);
- public ModbusProperty ProtectionZone04 { get; set; } = new(266, start: 0, length: 8);
- public ModbusProperty DeviceType04 { get; set; } = new(266, start: 8, length: 8);
- public ModbusProperty EquipmentNumber04 { get; set; } = new(267, start: 0, length: 8);
- public ModbusProperty TroubleCode04 { get; set; } = new(267, start: 8, length: 8);
- public ModbusProperty ProtectionZone05 { get; set; } = new(269, start: 0, length: 8);
- public ModbusProperty DeviceType05 { get; set; } = new(269, start: 8, length: 8);
- public ModbusProperty EquipmentNumber05 { get; set; } = new(270, start: 0, length: 8);
- public ModbusProperty TroubleCode05 { get; set; } = new(270, start: 8, length: 8);
- public ModbusProperty ProtectionZone06 { get; set; } = new(272, start: 0, length: 8);
- public ModbusProperty DeviceType06 { get; set; } = new(272, start: 8, length: 8);
- public ModbusProperty EquipmentNumber06 { get; set; } = new(273, start: 0, length: 8);
- public ModbusProperty TroubleCode06 { get; set; } = new(273, start: 8, length: 8);
- public ModbusProperty ProtectionZone07 { get; set; } = new(275, start: 0, length: 8);
- public ModbusProperty DeviceType07 { get; set; } = new(275, start: 8, length: 8);
- public ModbusProperty EquipmentNumber07 { get; set; } = new(276, start: 0, length: 8);
- public ModbusProperty TroubleCode07 { get; set; } = new(276, start: 8, length: 8);
- public ModbusProperty ProtectionZone08 { get; set; } = new(278, start: 0, length: 8);
- public ModbusProperty DeviceType08 { get; set; } = new(278, start: 8, length: 8);
- public ModbusProperty EquipmentNumber08 { get; set; } = new(279, start: 0, length: 8);
- public ModbusProperty TroubleCode08 { get; set; } = new(279, start: 8, length: 8);
- public ModbusProperty ProtectionZone09 { get; set; } = new(281, start: 0, length: 8);
- public ModbusProperty DeviceType09 { get; set; } = new(281, start: 8, length: 8);
- public ModbusProperty EquipmentNumber09 { get; set; } = new(282, start: 0, length: 8);
- public ModbusProperty TroubleCode09 { get; set; } = new(282, start: 8, length: 8);
- public ModbusProperty ProtectionZone10 { get; set; } = new(284, start: 0, length: 8);
- public ModbusProperty DeviceType10 { get; set; } = new(284, start: 8, length: 8);
- public ModbusProperty EquipmentNumber10 { get; set; } = new(285, start: 0, length: 8);
- public ModbusProperty TroubleCode10 { get; set; } = new(285, start: 8, length: 8);
- public ModbusProperty ProtectionZone11 { get; set; } = new(287, start: 0, length: 8);
- public ModbusProperty DeviceType11 { get; set; } = new(287, start: 8, length: 8);
- public ModbusProperty EquipmentNumber11 { get; set; } = new(288, start: 0, length: 8);
- public ModbusProperty TroubleCode11 { get; set; } = new(288, start: 8, length: 8);
- public ModbusProperty ProtectionZone12 { get; set; } = new(290, start: 0, length: 8);
- public ModbusProperty DeviceType12 { get; set; } = new(290, start: 8, length: 8);
- public ModbusProperty EquipmentNumber12 { get; set; } = new(291, start: 0, length: 8);
- public ModbusProperty TroubleCode12 { get; set; } = new(291, start: 8, length: 8);
- public ModbusProperty ProtectionZone13 { get; set; } = new(293, start: 0, length: 8);
- public ModbusProperty DeviceType13 { get; set; } = new(293, start: 8, length: 8);
- public ModbusProperty EquipmentNumber13 { get; set; } = new(294, start: 0, length: 8);
- public ModbusProperty TroubleCode13 { get; set; } = new(294, start: 8, length: 8);
- public ModbusProperty ProtectionZone14 { get; set; } = new(296, start: 0, length: 8);
- public ModbusProperty DeviceType14 { get; set; } = new(296, start: 8, length: 8);
- public ModbusProperty EquipmentNumber14 { get; set; } = new(297, start: 0, length: 8);
- public ModbusProperty TroubleCode14 { get; set; } = new(297, start: 8, length: 8);
- public ModbusProperty ProtectionZone15 { get; set; } = new(299, start: 0, length: 8);
- public ModbusProperty DeviceType15 { get; set; } = new(299, start: 8, length: 8);
- public ModbusProperty EquipmentNumber15 { get; set; } = new(300, start: 0, length: 8);
- public ModbusProperty TroubleCode15 { get; set; } = new(300, start: 8, length: 8);
- public ModbusProperty ProtectionZone16 { get; set; } = new(302, start: 0, length: 8);
- public ModbusProperty DeviceType16 { get; set; } = new(302, start: 8, length: 8);
- public ModbusProperty EquipmentNumber16 { get; set; } = new(303, start: 0, length: 8);
- public ModbusProperty TroubleCode16 { get; set; } = new(303, start: 8, length: 8);
- public ModbusProperty ProtectionZone17 { get; set; } = new(305, start: 0, length: 8);
- public ModbusProperty DeviceType17 { get; set; } = new(305, start: 8, length: 8);
- public ModbusProperty EquipmentNumber17 { get; set; } = new(306, start: 0, length: 8);
- public ModbusProperty TroubleCode17 { get; set; } = new(306, start: 8, length: 8);
- public ModbusProperty ProtectionZone18 { get; set; } = new(308, start: 0, length: 8);
- public ModbusProperty DeviceType18 { get; set; } = new(308, start: 8, length: 8);
- public ModbusProperty EquipmentNumber18 { get; set; } = new(309, start: 0, length: 8);
- public ModbusProperty TroubleCode18 { get; set; } = new(309, start: 8, length: 8);
- public ModbusProperty ProtectionZone19 { get; set; } = new(311, start: 0, length: 8);
- public ModbusProperty DeviceType19 { get; set; } = new(311, start: 8, length: 8);
- public ModbusProperty EquipmentNumber19 { get; set; } = new(312, start: 0, length: 8);
- public ModbusProperty TroubleCode19 { get; set; } = new(312, start: 8, length: 8);
- public ModbusProperty ProtectionZone20 { get; set; } = new(314, start: 0, length: 8);
- public ModbusProperty DeviceType20 { get; set; } = new(314, start: 8, length: 8);
- public ModbusProperty EquipmentNumber20 { get; set; } = new(315, start: 0, length: 8);
- public ModbusProperty TroubleCode20 { get; set; } = new(315, start: 8, length: 8);
- public ModbusProperty ProtectionZone21 { get; set; } = new(317, start: 0, length: 8);
- public ModbusProperty DeviceType21 { get; set; } = new(317, start: 8, length: 8);
- public ModbusProperty EquipmentNumber21 { get; set; } = new(318, start: 0, length: 8);
- public ModbusProperty TroubleCode21 { get; set; } = new(318, start: 8, length: 8);
- public ModbusProperty ProtectionZone22 { get; set; } = new(320, start: 0, length: 8);
- public ModbusProperty DeviceType22 { get; set; } = new(320, start: 8, length: 8);
- public ModbusProperty EquipmentNumber22 { get; set; } = new(321, start: 0, length: 8);
- public ModbusProperty TroubleCode22 { get; set; } = new(321, start: 8, length: 8);
- public ModbusProperty ProtectionZone23 { get; set; } = new(323, start: 0, length: 8);
- public ModbusProperty DeviceType23 { get; set; } = new(323, start: 8, length: 8);
- public ModbusProperty EquipmentNumber23 { get; set; } = new(324, start: 0, length: 8);
- public ModbusProperty TroubleCode23 { get; set; } = new(324, start: 8, length: 8);
- public ModbusProperty ProtectionZone24 { get; set; } = new(326, start: 0, length: 8);
- public ModbusProperty DeviceType24 { get; set; } = new(326, start: 8, length: 8);
- public ModbusProperty EquipmentNumber24 { get; set; } = new(327, start: 0, length: 8);
- public ModbusProperty TroubleCode24 { get; set; } = new(327, start: 8, length: 8);
- public ModbusProperty ProtectionZone25 { get; set; } = new(329, start: 0, length: 8);
- public ModbusProperty DeviceType25 { get; set; } = new(329, start: 8, length: 8);
- public ModbusProperty EquipmentNumber25 { get; set; } = new(330, start: 0, length: 8);
- public ModbusProperty TroubleCode25 { get; set; } = new(330, start: 8, length: 8);
- public ModbusProperty ProtectionZone26 { get; set; } = new(332, start: 0, length: 8);
- public ModbusProperty DeviceType26 { get; set; } = new(332, start: 8, length: 8);
- public ModbusProperty EquipmentNumber26 { get; set; } = new(333, start: 0, length: 8);
- public ModbusProperty TroubleCode26 { get; set; } = new(333, start: 8, length: 8);
- public ModbusProperty ProtectionZone27 { get; set; } = new(335, start: 0, length: 8);
- public ModbusProperty DeviceType27 { get; set; } = new(335, start: 8, length: 8);
- public ModbusProperty EquipmentNumber27 { get; set; } = new(336, start: 0, length: 8);
- public ModbusProperty TroubleCode27 { get; set; } = new(336, start: 8, length: 8);
- public ModbusProperty ProtectionZone28 { get; set; } = new(338, start: 0, length: 8);
- public ModbusProperty DeviceType28 { get; set; } = new(338, start: 8, length: 8);
- public ModbusProperty EquipmentNumber28 { get; set; } = new(339, start: 0, length: 8);
- public ModbusProperty TroubleCode28 { get; set; } = new(339, start: 8, length: 8);
- public ModbusProperty ProtectionZone29 { get; set; } = new(341, start: 0, length: 8);
- public ModbusProperty DeviceType29 { get; set; } = new(341, start: 8, length: 8);
- public ModbusProperty EquipmentNumber29 { get; set; } = new(342, start: 0, length: 8);
- public ModbusProperty TroubleCode29 { get; set; } = new(342, start: 8, length: 8);
- public ModbusProperty ProtectionZone30 { get; set; } = new(344, start: 0, length: 8);
- public ModbusProperty DeviceType30 { get; set; } = new(344, start: 8, length: 8);
- public ModbusProperty EquipmentNumber30 { get; set; } = new(345, start: 0, length: 8);
- public ModbusProperty TroubleCode30 { get; set; } = new(345, start: 8, length: 8);
- public ModbusProperty ProtectionZone31 { get; set; } = new(347, start: 0, length: 8);
- public ModbusProperty DeviceType31 { get; set; } = new(347, start: 8, length: 8);
- public ModbusProperty EquipmentNumber31 { get; set; } = new(348, start: 0, length: 8);
- public ModbusProperty TroubleCode31 { get; set; } = new(348, start: 8, length: 8);
- public ModbusProperty ProtectionZone32 { get; set; } = new(350, start: 0, length: 8);
- public ModbusProperty DeviceType32 { get; set; } = new(350, start: 8, length: 8);
- public ModbusProperty EquipmentNumber32 { get; set; } = new(351, start: 0, length: 8);
- public ModbusProperty TroubleCode32 { get; set; } = new(351, start: 8, length: 8);
- public ModbusProperty ProtectionZone33 { get; set; } = new(353, start: 0, length: 8);
- public ModbusProperty DeviceType33 { get; set; } = new(353, start: 8, length: 8);
- public ModbusProperty EquipmentNumber33 { get; set; } = new(354, start: 0, length: 8);
- public ModbusProperty TroubleCode33 { get; set; } = new(354, start: 8, length: 8);
- public ModbusProperty ProtectionZone34 { get; set; } = new(356, start: 0, length: 8);
- public ModbusProperty DeviceType34 { get; set; } = new(356, start: 8, length: 8);
- public ModbusProperty EquipmentNumber34 { get; set; } = new(357, start: 0, length: 8);
- public ModbusProperty TroubleCode34 { get; set; } = new(357, start: 8, length: 8);
- public ModbusProperty ProtectionZone35 { get; set; } = new(359, start: 0, length: 8);
- public ModbusProperty DeviceType35 { get; set; } = new(359, start: 8, length: 8);
- public ModbusProperty EquipmentNumber35 { get; set; } = new(360, start: 0, length: 8);
- public ModbusProperty TroubleCode35 { get; set; } = new(360, start: 8, length: 8);
- public ModbusProperty ProtectionZone36 { get; set; } = new(362, start: 0, length: 8);
- public ModbusProperty DeviceType36 { get; set; } = new(362, start: 8, length: 8);
- public ModbusProperty EquipmentNumber36 { get; set; } = new(363, start: 0, length: 8);
- public ModbusProperty TroubleCode36 { get; set; } = new(363, start: 8, length: 8);
- public ModbusProperty ProtectionZone37 { get; set; } = new(365, start: 0, length: 8);
- public ModbusProperty DeviceType37 { get; set; } = new(365, start: 8, length: 8);
- public ModbusProperty EquipmentNumber37 { get; set; } = new(366, start: 0, length: 8);
- public ModbusProperty TroubleCode37 { get; set; } = new(366, start: 8, length: 8);
- public ModbusProperty ProtectionZone38 { get; set; } = new(368, start: 0, length: 8);
- public ModbusProperty DeviceType38 { get; set; } = new(368, start: 8, length: 8);
- public ModbusProperty EquipmentNumber38 { get; set; } = new(369, start: 0, length: 8);
- public ModbusProperty TroubleCode38 { get; set; } = new(369, start: 8, length: 8);
- public ModbusProperty ProtectionZone39 { get; set; } = new(371, start: 0, length: 8);
- public ModbusProperty DeviceType39 { get; set; } = new(371, start: 8, length: 8);
- public ModbusProperty EquipmentNumber39 { get; set; } = new(372, start: 0, length: 8);
- public ModbusProperty TroubleCode39 { get; set; } = new(372, start: 8, length: 8);
- public ModbusProperty ProtectionZone40 { get; set; } = new(374, start: 0, length: 8);
- public ModbusProperty DeviceType40 { get; set; } = new(374, start: 8, length: 8);
- public ModbusProperty EquipmentNumber40 { get; set; } = new(375, start: 0, length: 8);
- public ModbusProperty TroubleCode40 { get; set; } = new(375, start: 8, length: 8);
- public ModbusProperty ProtectionZone41 { get; set; } = new(377, start: 0, length: 8);
- public ModbusProperty DeviceType41 { get; set; } = new(377, start: 8, length: 8);
- public ModbusProperty EquipmentNumber41 { get; set; } = new(378, start: 0, length: 8);
- public ModbusProperty TroubleCode41 { get; set; } = new(378, start: 8, length: 8);
- public ModbusProperty ProtectionZone42 { get; set; } = new(380, start: 0, length: 8);
- public ModbusProperty DeviceType42 { get; set; } = new(380, start: 8, length: 8);
- public ModbusProperty EquipmentNumber42 { get; set; } = new(381, start: 0, length: 8);
- public ModbusProperty TroubleCode42 { get; set; } = new(381, start: 8, length: 8);
- public ModbusProperty ProtectionZone43 { get; set; } = new(383, start: 0, length: 8);
- public ModbusProperty DeviceType43 { get; set; } = new(383, start: 8, length: 8);
- public ModbusProperty EquipmentNumber43 { get; set; } = new(384, start: 0, length: 8);
- public ModbusProperty TroubleCode43 { get; set; } = new(384, start: 8, length: 8);
- public ModbusProperty ProtectionZone44 { get; set; } = new(386, start: 0, length: 8);
- public ModbusProperty DeviceType44 { get; set; } = new(386, start: 8, length: 8);
- public ModbusProperty EquipmentNumber44 { get; set; } = new(387, start: 0, length: 8);
- public ModbusProperty TroubleCode44 { get; set; } = new(387, start: 8, length: 8);
- public ModbusProperty ProtectionZone45 { get; set; } = new(389, start: 0, length: 8);
- public ModbusProperty DeviceType45 { get; set; } = new(389, start: 8, length: 8);
- public ModbusProperty EquipmentNumber45 { get; set; } = new(390, start: 0, length: 8);
- public ModbusProperty TroubleCode45 { get; set; } = new(390, start: 8, length: 8);
- public ModbusProperty ProtectionZone46 { get; set; } = new(392, start: 0, length: 8);
- public ModbusProperty DeviceType46 { get; set; } = new(392, start: 8, length: 8);
- public ModbusProperty EquipmentNumber46 { get; set; } = new(393, start: 0, length: 8);
- public ModbusProperty TroubleCode46 { get; set; } = new(393, start: 8, length: 8);
- public ModbusProperty ProtectionZone47 { get; set; } = new(395, start: 0, length: 8);
- public ModbusProperty DeviceType47 { get; set; } = new(395, start: 8, length: 8);
- public ModbusProperty EquipmentNumber47 { get; set; } = new(396, start: 0, length: 8);
- public ModbusProperty TroubleCode47 { get; set; } = new(396, start: 8, length: 8);
- public ModbusProperty ProtectionZone48 { get; set; } = new(398, start: 0, length: 8);
- public ModbusProperty DeviceType48 { get; set; } = new(398, start: 8, length: 8);
- public ModbusProperty EquipmentNumber48 { get; set; } = new(399, start: 0, length: 8);
- public ModbusProperty TroubleCode48 { get; set; } = new(399, start: 8, length: 8);
- public ModbusProperty ProtectionZone49 { get; set; } = new(401, start: 0, length: 8);
- public ModbusProperty DeviceType49 { get; set; } = new(401, start: 8, length: 8);
- public ModbusProperty EquipmentNumber49 { get; set; } = new(402, start: 0, length: 8);
- public ModbusProperty TroubleCode49 { get; set; } = new(402, start: 8, length: 8);
- public ModbusProperty ProtectionZone50 { get; set; } = new(404, start: 0, length: 8);
- public ModbusProperty DeviceType50 { get; set; } = new(404, start: 8, length: 8);
- public ModbusProperty EquipmentNumber50 { get; set; } = new(405, start: 0, length: 8);
- public ModbusProperty TroubleCode50 { get; set; } = new(405, start: 8, length: 8);
- public ModbusProperty ProtectionZone51 { get; set; } = new(407, start: 0, length: 8);
- public ModbusProperty DeviceType51 { get; set; } = new(407, start: 8, length: 8);
- public ModbusProperty EquipmentNumber51 { get; set; } = new(408, start: 0, length: 8);
- public ModbusProperty TroubleCode51 { get; set; } = new(408, start: 8, length: 8);
- public ModbusProperty ProtectionZone52 { get; set; } = new(410, start: 0, length: 8);
- public ModbusProperty DeviceType52 { get; set; } = new(410, start: 8, length: 8);
- public ModbusProperty EquipmentNumber52 { get; set; } = new(411, start: 0, length: 8);
- public ModbusProperty TroubleCode52 { get; set; } = new(411, start: 8, length: 8);
- public ModbusProperty ProtectionZone53 { get; set; } = new(413, start: 0, length: 8);
- public ModbusProperty DeviceType53 { get; set; } = new(413, start: 8, length: 8);
- public ModbusProperty EquipmentNumber53 { get; set; } = new(414, start: 0, length: 8);
- public ModbusProperty TroubleCode53 { get; set; } = new(414, start: 8, length: 8);
- public ModbusProperty ProtectionZone54 { get; set; } = new(416, start: 0, length: 8);
- public ModbusProperty DeviceType54 { get; set; } = new(416, start: 8, length: 8);
- public ModbusProperty EquipmentNumber54 { get; set; } = new(417, start: 0, length: 8);
- public ModbusProperty TroubleCode54 { get; set; } = new(417, start: 8, length: 8);
- public ModbusProperty ProtectionZone55 { get; set; } = new(419, start: 0, length: 8);
- public ModbusProperty DeviceType55 { get; set; } = new(419, start: 8, length: 8);
- public ModbusProperty EquipmentNumber55 { get; set; } = new(420, start: 0, length: 8);
- public ModbusProperty TroubleCode55 { get; set; } = new(420, start: 8, length: 8);
- public ModbusProperty ProtectionZone56 { get; set; } = new(422, start: 0, length: 8);
- public ModbusProperty DeviceType56 { get; set; } = new(422, start: 8, length: 8);
- public ModbusProperty EquipmentNumber56 { get; set; } = new(423, start: 0, length: 8);
- public ModbusProperty TroubleCode56 { get; set; } = new(423, start: 8, length: 8);
- public ModbusProperty ProtectionZone57 { get; set; } = new(425, start: 0, length: 8);
- public ModbusProperty DeviceType57 { get; set; } = new(425, start: 8, length: 8);
- public ModbusProperty EquipmentNumber57 { get; set; } = new(426, start: 0, length: 8);
- public ModbusProperty