From afe83e943ffd7996ed90adf084be582ae46bbd23 Mon Sep 17 00:00:00 2001 From: ig Date: Wed, 1 Mar 2023 10:53:34 +0100 Subject: [PATCH] Phase => Bus --- csharp/Lib/Devices/AMPT/AmptDeviceStatus.cs | 4 +- .../Lib/Devices/Battery48TL/ModbusParser.cs | 2 +- csharp/Lib/Devices/EmuMeter/EmuMeterDevice.cs | 4 +- csharp/Lib/Devices/EmuMeter/EmuMeterStatus.cs | 7 +-- .../Trumpf/TruConvertAc/TruConvertAcDevice.cs | 5 +-- .../Trumpf/TruConvertAc/TruConvertAcStatus.cs | 4 +- .../Trumpf/TruConvertDc/TruConvertDcStatus.cs | 43 +++++++++++-------- 7 files changed, 37 insertions(+), 32 deletions(-) diff --git a/csharp/Lib/Devices/AMPT/AmptDeviceStatus.cs b/csharp/Lib/Devices/AMPT/AmptDeviceStatus.cs index 371395e46..8ee809b72 100644 --- a/csharp/Lib/Devices/AMPT/AmptDeviceStatus.cs +++ b/csharp/Lib/Devices/AMPT/AmptDeviceStatus.cs @@ -1,5 +1,5 @@ +using InnovEnergy.Lib.StatusApi; using InnovEnergy.Lib.StatusApi.Connections; -using InnovEnergy.Lib.StatusApi.Devices; namespace InnovEnergy.Lib.Devices.AMPT; @@ -11,5 +11,5 @@ public record AmptDeviceStatus UInt32 Timestamp, // The UTC timestamp of the measurements Decimal ProductionToday, // converted to kW in AmptCU class IReadOnlyList Strings -): Mppt(Dc, Strings) +): MpptStatus(Dc, Strings) {} \ No newline at end of file diff --git a/csharp/Lib/Devices/Battery48TL/ModbusParser.cs b/csharp/Lib/Devices/Battery48TL/ModbusParser.cs index dbc15a3e4..d16c3dc5d 100644 --- a/csharp/Lib/Devices/Battery48TL/ModbusParser.cs +++ b/csharp/Lib/Devices/Battery48TL/ModbusParser.cs @@ -177,7 +177,7 @@ public static class ModbusParser return Math.Max(pLimit, 0); } - internal static DcPhase ParseDcBus(this ModbusRegisters data) + internal static DcBus ParseDcBus(this ModbusRegisters data) { return new() { diff --git a/csharp/Lib/Devices/EmuMeter/EmuMeterDevice.cs b/csharp/Lib/Devices/EmuMeter/EmuMeterDevice.cs index c219755b3..e4a766d30 100644 --- a/csharp/Lib/Devices/EmuMeter/EmuMeterDevice.cs +++ b/csharp/Lib/Devices/EmuMeter/EmuMeterDevice.cs @@ -1,7 +1,7 @@ using InnovEnergy.Lib.Protocols.Modbus.Clients; using InnovEnergy.Lib.Protocols.Modbus.Connections; using InnovEnergy.Lib.StatusApi.Connections; -using InnovEnergy.Lib.StatusApi.Phases; +using InnovEnergy.Lib.Units.Composite; using InnovEnergy.Lib.Utils; using static DecimalMath.DecimalEx; @@ -77,7 +77,7 @@ public class EmuMeterDevice return new EmuMeterStatus ( - Ac: new ThreePhaseAcConnection + Ac: new Ac3Bus ( new AcPhase( voltageL1N, diff --git a/csharp/Lib/Devices/EmuMeter/EmuMeterStatus.cs b/csharp/Lib/Devices/EmuMeter/EmuMeterStatus.cs index 713a4b2de..3e629c15a 100644 --- a/csharp/Lib/Devices/EmuMeter/EmuMeterStatus.cs +++ b/csharp/Lib/Devices/EmuMeter/EmuMeterStatus.cs @@ -1,11 +1,12 @@ +using InnovEnergy.Lib.StatusApi; using InnovEnergy.Lib.StatusApi.Connections; -using InnovEnergy.Lib.StatusApi.Devices; +using InnovEnergy.Lib.Units.Composite; namespace InnovEnergy.Lib.Devices.EmuMeter; public record EmuMeterStatus ( - ThreePhaseAcConnection Ac, + Ac3Bus Ac, Decimal ActivePowerL123, Decimal ReactivePowerL123, Decimal ApparentPowerL123, @@ -21,6 +22,6 @@ public record EmuMeterStatus Decimal EnergyExportL1, Decimal EnergyExportL2, Decimal EnergyExportL3 -):GridMeter(Ac) +):PowerMeterStatus(Ac) {} diff --git a/csharp/Lib/Devices/Trumpf/TruConvertAc/TruConvertAcDevice.cs b/csharp/Lib/Devices/Trumpf/TruConvertAc/TruConvertAcDevice.cs index 6308553aa..66cc153a7 100644 --- a/csharp/Lib/Devices/Trumpf/TruConvertAc/TruConvertAcDevice.cs +++ b/csharp/Lib/Devices/Trumpf/TruConvertAc/TruConvertAcDevice.cs @@ -2,8 +2,7 @@ using System.Diagnostics.CodeAnalysis; using InnovEnergy.Lib.Devices.Trumpf.TruConvert; using InnovEnergy.Lib.Protocols.Modbus.Clients; using InnovEnergy.Lib.Protocols.Modbus.Connections; -using InnovEnergy.Lib.StatusApi.Connections; -using InnovEnergy.Lib.StatusApi.Phases; +using InnovEnergy.Lib.Units.Composite; using InnovEnergy.Lib.Utils; using static DecimalMath.DecimalEx; using static InnovEnergy.Lib.Devices.Trumpf.TruConvertAc.AcControlRegisters; @@ -216,7 +215,7 @@ public class TruConvertAcDevice return new TruConvertAcStatus ( - Ac: new ThreePhaseAcConnection + Ac: new Ac3Bus ( new AcPhase(gridVoltageL1,phaseCurrentL1, ACos(powerAcL1/apparentPowerAcL1)), new AcPhase(gridVoltageL2,phaseCurrentL2, ACos(powerAcL2/apparentPowerAcL2)), diff --git a/csharp/Lib/Devices/Trumpf/TruConvertAc/TruConvertAcStatus.cs b/csharp/Lib/Devices/Trumpf/TruConvertAc/TruConvertAcStatus.cs index 8f2047ebb..4747e0579 100644 --- a/csharp/Lib/Devices/Trumpf/TruConvertAc/TruConvertAcStatus.cs +++ b/csharp/Lib/Devices/Trumpf/TruConvertAc/TruConvertAcStatus.cs @@ -1,6 +1,6 @@ using InnovEnergy.Lib.Devices.Trumpf.TruConvert; using InnovEnergy.Lib.StatusApi.Connections; -using InnovEnergy.Lib.StatusApi.Devices; +using InnovEnergy.Lib.Units.Composite; namespace InnovEnergy.Lib.Devices.Trumpf.TruConvertAc; @@ -9,7 +9,7 @@ using WarningMessages = IReadOnlyList; public record TruConvertAcStatus ( - ThreePhaseAcConnection Ac, + Ac3Bus Ac, DcConnection Dc, String SerialNumber, MainState MainState, diff --git a/csharp/Lib/Devices/Trumpf/TruConvertDc/TruConvertDcStatus.cs b/csharp/Lib/Devices/Trumpf/TruConvertDc/TruConvertDcStatus.cs index 88551dee1..bf78b928b 100644 --- a/csharp/Lib/Devices/Trumpf/TruConvertDc/TruConvertDcStatus.cs +++ b/csharp/Lib/Devices/Trumpf/TruConvertDc/TruConvertDcStatus.cs @@ -1,6 +1,7 @@ -using InnovEnergy.Lib.Devices.Trumpf.TruConvert; -using InnovEnergy.Lib.StatusApi.Connections; -using InnovEnergy.Lib.StatusApi.Devices; +using InnovEnergy.Lib.StatusApi; +using InnovEnergy.Lib.Units; +using InnovEnergy.Lib.Units.Composite; +using InnovEnergy.Lib.Utils; namespace InnovEnergy.Lib.Devices.Trumpf.TruConvertDc; @@ -8,20 +9,24 @@ using AlarmMessages = IReadOnlyList; using WarningMessages = IReadOnlyList; using DcCurrentLimitStates = IReadOnlyList; -public record TruConvertDcStatus +public record TruConvertDcStatus ( - DcConnection Dc, - MainState MainState, - UInt16 NumberOfConnectedSlaves, - UInt16 NumberOfConnectedSubSlaves, - Decimal BatteryVoltage, - Decimal BatteryCurrent, - Decimal TotalDcPower, - DcCurrentLimitStates StatusOfCurrentLimiting, - Decimal OverloadCapacity, - Decimal DcDcInletTemperature, - AlarmMessages Alarms, - WarningMessages Warnings, - Boolean PowerOperation -):DcDevice(Dc) -{} \ No newline at end of file + DcBus DcLeft, + DcBus DcRight, + State MainState, + Power TotalDcPower, // TODO: necessary? + State StatusOfCurrentLimiting, + Decimal OverloadCapacity, + Temperature DcDcInletTemperature, + State Alarms, + State Warnings, + State PowerOperation + + // UInt16 NumberOfConnectedSlaves, // TODO: necessary? + // UInt16 NumberOfConnectedSubSlaves, // TODO: necessary? +) : + DcDcConverterStatus(DcLeft, DcRight) +{ + public static TruConvertDcStatus operator |(TruConvertDcStatus left, TruConvertDcStatus right) => OpParallel(left, right); + private static readonly Func OpParallel = Operators.Op("|"); +} \ No newline at end of file