Innovenergy_trunk/csharp/Lib/Devices/BatteryDeligreen/BatteryDeligreenDataRecord.cs

54 lines
2.6 KiB
C#

using InnovEnergy.Lib.Units.Power;
using static InnovEnergy.Lib.Devices.BatteryDeligreen.Temperatures;
namespace InnovEnergy.Lib.Devices.BatteryDeligreen;
using InnovEnergy.Lib.Units;
using Strings = IReadOnlyList<String>;
public class BatteryDeligreenDataRecord
{
// public Strings Warnings => ParseWarnings().OrderBy(w => w).ToList();
// public Strings Alarms => ParseAlarms() .OrderBy(w => w).ToList();
public String FwVersion { get; set; }
public Voltage BusVoltage { get; set; }
public Current BusCurrent { get; set; }
public ActivePower Power { get; set; }
public Voltage TotalBatteryVoltage { get; set; }
public Double ResidualCapacity { get; set; }
public Double BatteryCapacity { get; set; }
public Percent Soc { get; set; }
public Double RatedCapacity { get; set; }
public UInt16 NumberOfCycles { get; set; }
public Percent Soh { get; set; }
public List<Double> CellVoltage { get; set; }
public TemperaturesList TemperaturesList { get; set; }
// public Dc_ Dc { get; set; }
public BatteryDeligreenDataRecord(Voltage busVoltage, Current busCurrent ,String fwVersion, Percent soc, UInt16 numberOfCycles, Double batteryCapacity, Double ratedCapacity, Voltage totalBatteryVoltage, Percent soh, Double residualCapacity, List<Double> cellVoltage, TemperaturesList temperaturesList)
{
BusVoltage = busVoltage;
BusCurrent = busCurrent;
FwVersion = fwVersion;
TotalBatteryVoltage = totalBatteryVoltage;
ResidualCapacity = residualCapacity;
BatteryCapacity = batteryCapacity;
Soc = soc;
RatedCapacity = ratedCapacity;
NumberOfCycles = numberOfCycles;
Soh = soh;
CellVoltage = cellVoltage;
TemperaturesList = temperaturesList;
Power = busVoltage * busCurrent;
}
// public struct Dc_
// {
// public Voltage Voltage => BusVoltage;
// public Current Current => BusCurrent;
// public ActivePower Power => BusVoltage * BusCurrent;
// }
}