43 lines
1.4 KiB
C#
43 lines
1.4 KiB
C#
using System.Text.Json.Nodes;
|
|
using InnovEnergy.Lib.Devices.Trumpf.TruConvertDc;
|
|
using static InnovEnergy.SaliMax.Log.JsonUtil;
|
|
|
|
namespace InnovEnergy.SaliMax.Log;
|
|
|
|
using JO = JsonObject;
|
|
|
|
public static class TruConvertDc
|
|
{
|
|
// TODO: remove serialNb arg, embed TruConvertDcStatus
|
|
public static JsonObject? Log(this TruConvertDcStatus? s, String serialNb)
|
|
{
|
|
if (s is null)
|
|
return null;
|
|
|
|
var dcCurrent = s.DcLinkVoltage != 0m
|
|
? s.DcPower / s.DcLinkVoltage
|
|
: 0m;
|
|
|
|
return new JO
|
|
{
|
|
{
|
|
$"TruConvertDc {serialNb}", new JO
|
|
{
|
|
{ "Dc" , CreateDcPhase(dcCurrent, s.DcLinkVoltage) },
|
|
{ "Dc48" , CreateDcPhase(s.BatteryCurrent, s.BatteryVoltage) },
|
|
{ "Warnings", s.Warnings.ToJsonArray() },
|
|
{ "Alarms" , s.Alarms.ToJsonArray() },
|
|
}
|
|
}
|
|
};
|
|
|
|
// return DeviceType
|
|
// .DcDc
|
|
// .CreateDevice("TruConvertDc")
|
|
// //.AddDcConnection(Decimal.Round(current, 3), s.DcLinkVoltage)
|
|
// .AddDc48Connection(Decimal.Round(s.BatteryCurrent, 3), Decimal.Round(s.BatteryVoltage, 3))
|
|
// .AddWarnings(s.Warnings)
|
|
// .AddAlarms(s.Alarms)
|
|
// .AddProp("DC Power", s.DcPower);
|
|
}
|
|
} |