Innovenergy_trunk/csharp/lib/Devices/AMPT/AmptStatus.cs

25 lines
1.6 KiB
C#

namespace InnovEnergy.Lib.Devices.Ampt;
public record AmptStatus
{
internal const UInt16 StartRegister = 1;
internal const UInt16 TotalNbOfRegister = 116;
public UInt32 Sid { get; init; } // A well-known value 0x53756e53, uniquely identifies this as a SunSpec Modbus Map
public UInt16 IdSunSpec { get; init; } // A well-known value 1, uniquely identifies this as a SunSpec Common Model
//public UInt16 L { get; init; } // Well-known # of 16-bit registers to follow : 66
public String? Manufacturer { get; init; } // A well-known value registered with SunSpec for compliance: "Ampt"
public String? Model { get; init; } // Manufacturer specific value "Communication Unit"
public String? Version { get; init; } // Software Version
public String? SerialNumber { get; init; } // Manufacturer specific value
public Int16 DeviceAddress { get; init; } // Modbus Device ID
public UInt16 IdVendor { get; init; } // Ampt SunSpec Vendor Code 64050
public Decimal AvgVolatge { get; init; }
public Decimal AvgCurrent { get; init; }
public Decimal Current1 { get; init; }
public Decimal Current2 { get; init; }
public Decimal Voltage1 { get; init; }
public Decimal Voltage2 { get; init; }
public IReadOnlyList<AmptDeviceStatus> Devices { get; init; } = null!;
}