You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

177 lines
11 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using HybirdFrameworkDriver.ModbusTcpMaster;
namespace Service.FireControl.Msg;
public class FireMsg
{
/// <summary>
/// 最高报警等级
/// 0x00 正常
/// 0x01一级预警
/// 0x02二级预警
/// 0x03一级报警
/// 0x04二级报警
/// </summary>
public ModbusProperty<ushort> MaximumAlarmLevel { get; set; } = new(0);
/// <summary>
/// 探测器状态 按位取意义,位从低到高,
/// 位置01号探测器状态
/// 位置12号探测器状态
/// 位置23号探测器状态 以此类推 值0代表正常值1代表故障
/// </summary>
public ModbusProperty<ushort> DetectorState { get; set; } = new(1);
/// <summary>
/// 值0代表正常值1代表故障
/// </summary>
public ModbusProperty<bool> DetectorState01 { get; set; } = new(1,type:ModbusDataType.Bit,start:00,length:1);
public ModbusProperty<bool> DetectorState02 { get; set; } = new(1,type:ModbusDataType.Bit,start:01,length:1);
public ModbusProperty<bool> DetectorState03 { get; set; } = new(1,type:ModbusDataType.Bit,start:02,length:1);
public ModbusProperty<bool> DetectorState04 { get; set; } = new(1,type:ModbusDataType.Bit,start:03,length:1);
public ModbusProperty<bool> DetectorState05 { get; set; } = new(1,type:ModbusDataType.Bit,start:04,length:1);
public ModbusProperty<bool> DetectorState06 { get; set; } = new(1,type:ModbusDataType.Bit,start:05,length:1);
public ModbusProperty<bool> DetectorState07 { get; set; } = new(1,type:ModbusDataType.Bit,start:06,length:1);
public ModbusProperty<bool> DetectorState08 { get; set; } = new(1,type:ModbusDataType.Bit,start:07,length:1);
public ModbusProperty<bool> DetectorState09 { get; set; } = new(1,type:ModbusDataType.Bit,start:08,length:1);
public ModbusProperty<bool> DetectorState10 { get; set; } = new(1,type:ModbusDataType.Bit,start:09,length:1);
public ModbusProperty<bool> DetectorState11 { get; set; } = new(1,type:ModbusDataType.Bit,start:10,length:1);
public ModbusProperty<bool> DetectorState12 { get; set; } = new(1,type:ModbusDataType.Bit,start:11,length:1);
public ModbusProperty<bool> DetectorState13 { get; set; } = new(1,type:ModbusDataType.Bit,start:12,length:1);
public ModbusProperty<bool> DetectorState14 { get; set; } = new(1,type:ModbusDataType.Bit,start:13,length:1);
public ModbusProperty<bool> DetectorState15 { get; set; } = new(1,type:ModbusDataType.Bit,start:14,length:1);
public ModbusProperty<bool> DetectorState16 { get; set; } = new(1,type:ModbusDataType.Bit,start:15,length:1);
/// <summary>
/// 灭火器故障状态
/// 按位取意义,位从低到高,
/// 位置01号灭火器状态
/// 位置12号灭火器状态
/// 位置23号灭火器状态 以此类推 值0代表正常值1代表故障
/// </summary>
public ModbusProperty<ushort> FireFailureStatus { get; set; } = new(2);
public ModbusProperty<bool> FireFailureStatus01 { get; set; } = new(2,type:ModbusDataType.Bit,start:00,length:1);
public ModbusProperty<bool> FireFailureStatus02 { get; set; } = new(2,type:ModbusDataType.Bit,start:01,length:1);
public ModbusProperty<bool> FireFailureStatus03 { get; set; } = new(2,type:ModbusDataType.Bit,start:02,length:1);
public ModbusProperty<bool> FireFailureStatus04 { get; set; } = new(2,type:ModbusDataType.Bit,start:03,length:1);
public ModbusProperty<bool> FireFailureStatus05 { get; set; } = new(2,type:ModbusDataType.Bit,start:04,length:1);
public ModbusProperty<bool> FireFailureStatus06 { get; set; } = new(2,type:ModbusDataType.Bit,start:05,length:1);
public ModbusProperty<bool> FireFailureStatus07 { get; set; } = new(2,type:ModbusDataType.Bit,start:06,length:1);
public ModbusProperty<bool> FireFailureStatus08 { get; set; } = new(2,type:ModbusDataType.Bit,start:07,length:1);
public ModbusProperty<bool> FireFailureStatus09 { get; set; } = new(2,type:ModbusDataType.Bit,start:08,length:1);
public ModbusProperty<bool> FireFailureStatus10 { get; set; } = new(2,type:ModbusDataType.Bit,start:09,length:1);
public ModbusProperty<bool> FireFailureStatus11 { get; set; } = new(2,type:ModbusDataType.Bit,start:10,length:1);
public ModbusProperty<bool> FireFailureStatus12 { get; set; } = new(2,type:ModbusDataType.Bit,start:11,length:1);
public ModbusProperty<bool> FireFailureStatus13 { get; set; } = new(2,type:ModbusDataType.Bit,start:12,length:1);
public ModbusProperty<bool> FireFailureStatus14 { get; set; } = new(2,type:ModbusDataType.Bit,start:13,length:1);
public ModbusProperty<bool> FireFailureStatus15 { get; set; } = new(2,type:ModbusDataType.Bit,start:14,length:1);
public ModbusProperty<bool> FireFailureStatus16 { get; set; } = new(2,type:ModbusDataType.Bit,start:15,length:1);
/// <summary>
/// 灭火器启动状态
/// 按位取意义,位从低到高,
/// 位置01号灭火器状态
/// 位置12号灭火器状态
/// 位置23号灭火器状态 以此类推 值0代表正常值1代表故障
/// </summary>
public ModbusProperty<ushort> FireStatus { get; set; } = new(3);
public ModbusProperty<bool> FireStatus01 { get; set; } = new(2,type:ModbusDataType.Bit,start:00,length:1);
public ModbusProperty<bool> FireStatus02 { get; set; } = new(2,type:ModbusDataType.Bit,start:01,length:1);
public ModbusProperty<bool> FireStatus03 { get; set; } = new(2,type:ModbusDataType.Bit,start:02,length:1);
public ModbusProperty<bool> FireStatus04 { get; set; } = new(2,type:ModbusDataType.Bit,start:03,length:1);
public ModbusProperty<bool> FireStatus05 { get; set; } = new(2,type:ModbusDataType.Bit,start:04,length:1);
public ModbusProperty<bool> FireStatus06 { get; set; } = new(2,type:ModbusDataType.Bit,start:05,length:1);
public ModbusProperty<bool> FireStatus07 { get; set; } = new(2,type:ModbusDataType.Bit,start:06,length:1);
public ModbusProperty<bool> FireStatus08 { get; set; } = new(2,type:ModbusDataType.Bit,start:07,length:1);
public ModbusProperty<bool> FireStatus09 { get; set; } = new(2,type:ModbusDataType.Bit,start:08,length:1);
public ModbusProperty<bool> FireStatus10 { get; set; } = new(2,type:ModbusDataType.Bit,start:09,length:1);
public ModbusProperty<bool> FireStatus11 { get; set; } = new(2,type:ModbusDataType.Bit,start:10,length:1);
public ModbusProperty<bool> FireStatus12 { get; set; } = new(2,type:ModbusDataType.Bit,start:11,length:1);
public ModbusProperty<bool> FireStatus13 { get; set; } = new(2,type:ModbusDataType.Bit,start:12,length:1);
public ModbusProperty<bool> FireStatus14 { get; set; } = new(2,type:ModbusDataType.Bit,start:13,length:1);
public ModbusProperty<bool> FireStatus15 { get; set; } = new(2,type:ModbusDataType.Bit,start:14,length:1);
public ModbusProperty<bool> FireStatus16 { get; set; } = new(2,type:ModbusDataType.Bit,start:15,length:1);
/// <summary>
/// 按键状态 按位取意义,位从低到高,
/// 位置0紧急启动开关状态值0代表正常值1代表按下
/// 位置1紧急停止开关状态值0代表正常值1代表按下
/// </summary>
public ModbusProperty<ushort> KeyState { get; set; } = new(4);
public ModbusProperty<bool> KeyState01 { get; set; } = new(2,type:ModbusDataType.Bit,start:00,length:1);
public ModbusProperty<bool> KeyState02 { get; set; } = new(2,type:ModbusDataType.Bit,start:01,length:1);
public ModbusProperty<bool> KeyState03 { get; set; } = new(2,type:ModbusDataType.Bit,start:02,length:1);
public ModbusProperty<bool> KeyState04 { get; set; } = new(2,type:ModbusDataType.Bit,start:03,length:1);
public ModbusProperty<bool> KeyState05 { get; set; } = new(2,type:ModbusDataType.Bit,start:04,length:1);
public ModbusProperty<bool> KeyState06 { get; set; } = new(2,type:ModbusDataType.Bit,start:05,length:1);
public ModbusProperty<bool> KeyState07 { get; set; } = new(2,type:ModbusDataType.Bit,start:06,length:1);
public ModbusProperty<bool> KeyState08 { get; set; } = new(2,type:ModbusDataType.Bit,start:07,length:1);
public ModbusProperty<bool> KeyState09 { get; set; } = new(2,type:ModbusDataType.Bit,start:08,length:1);
public ModbusProperty<bool> KeyState10 { get; set; } = new(2,type:ModbusDataType.Bit,start:09,length:1);
public ModbusProperty<bool> KeyState11 { get; set; } = new(2,type:ModbusDataType.Bit,start:10,length:1);
public ModbusProperty<bool> KeyState12 { get; set; } = new(2,type:ModbusDataType.Bit,start:11,length:1);
public ModbusProperty<bool> KeyState13 { get; set; } = new(2,type:ModbusDataType.Bit,start:12,length:1);
public ModbusProperty<bool> KeyState14 { get; set; } = new(2,type:ModbusDataType.Bit,start:13,length:1);
public ModbusProperty<bool> KeyState15 { get; set; } = new(2,type:ModbusDataType.Bit,start:14,length:1);
public ModbusProperty<bool> KeyState16 { get; set; } = new(2,type:ModbusDataType.Bit,start:15,length:1);
/// <summary>
/// 显示器状态 值0代表正常值1代表故障
/// </summary>
public ModbusProperty<ushort> DisplayState { get; set; } = new(5);
#region 探测器1-n
/// <summary>
/// 探测器号码 1~n
/// </summary>
public ModbusProperty<ushort> DetectorNumber1 { get; set; } = new(11);
/// <summary>
/// 探测器状态
/// 0正常
/// 1探测器掉线
/// 2传感器故障
/// </summary>
public ModbusProperty<ushort> DetectorState1 { get; set; } = new(12);
/// <summary>
/// 报警等级
/// 0x00 正常
/// 0x01一级预警
/// 0x02二级预警
/// 0x03一级报警
/// 0x04二级报警
/// </summary>
public ModbusProperty<ushort> AlarmLevel1 { get; set; } = new(13);
/// <summary>
/// 一氧化碳数据 一氧化碳气体浓度数据数据输出范围01000ppm
/// </summary>
public ModbusProperty<ushort> CarbonMonoxide1 { get; set; } = new(14);
/// <summary>
/// 温度数据 温度数据,测量温度范围:-40℃+150℃
/// 数据偏移量40
/// 计算方式:实际温度值 = 温度数据-40
/// 例如温度数据为0时-40℃
/// 温度数据为40时0℃
/// 温度数据为165时125℃
/// </summary>
public ModbusProperty<short> TemperatureData1 { get; set; } = new(15,offset :40);
/// <summary>
/// 一氧化碳数据
/// 计算方式:实际温度值 = 温度数据/1000
/// 数据为40时0.04db/m
/// 数据为150时0.15db/m
/// </summary>
public ModbusProperty<ushort> CarbonMonoxideData1 { get; set; } = new(16,scale :1000,round :3);
/// <summary>
/// Voc数据 0正常1voc报警
/// </summary>
public ModbusProperty<ushort> VocData1 { get; set; } = new(17);
#endregion
}