diff --git a/csharp/App/SaliMax/src/Logfile.cs b/csharp/App/SaliMax/src/Logfile.cs index 295d7729b..2d95a323d 100644 --- a/csharp/App/SaliMax/src/Logfile.cs +++ b/csharp/App/SaliMax/src/Logfile.cs @@ -5,20 +5,20 @@ namespace InnovEnergy.App.SaliMax; public class CustomLogger : ILogger { - private readonly String _logFilePath; - private readonly Int64 _maxFileSizeBytes; - private readonly Int32 _maxLogFileCount; - private Int64 _currentFileSizeBytes; + private readonly String _LogFilePath; + private readonly Int64 _MaxFileSizeBytes; + private readonly Int32 _MaxLogFileCount; + private Int64 _CurrentFileSizeBytes; public CustomLogger(String logFilePath, Int64 maxFileSizeBytes, Int32 maxLogFileCount) { - _logFilePath = logFilePath; - _maxFileSizeBytes = maxFileSizeBytes; - _maxLogFileCount = maxLogFileCount; - _currentFileSizeBytes = File.Exists(logFilePath) ? new FileInfo(logFilePath).Length : 0; + _LogFilePath = logFilePath; + _MaxFileSizeBytes = maxFileSizeBytes; + _MaxLogFileCount = maxLogFileCount; + _CurrentFileSizeBytes = File.Exists(logFilePath) ? new FileInfo(logFilePath).Length : 0; } - public IDisposable BeginScope(TState state) + public IDisposable? BeginScope(TState state) where TState : notnull { throw new NotImplementedException(); } @@ -33,35 +33,34 @@ public class CustomLogger : ILogger var logMessage = formatter(state, exception!); // Check the file size and rotate the log file if necessary - if (_currentFileSizeBytes + logMessage.Length >= _maxFileSizeBytes) + if (_CurrentFileSizeBytes + logMessage.Length >= _MaxFileSizeBytes) { RotateLogFile(); - _currentFileSizeBytes = 0; + _CurrentFileSizeBytes = 0; } // Write the log message to the file - File.AppendAllText(_logFilePath, logMessage + Environment.NewLine); - _currentFileSizeBytes += logMessage.Length; + File.AppendAllText(_LogFilePath, logMessage + Environment.NewLine); + _CurrentFileSizeBytes += logMessage.Length; } private void RotateLogFile() { // Check the log file count and delete the oldest file if necessary - var logFileDir = Path.GetDirectoryName(_logFilePath)!; - var logFileExt = Path.GetExtension(_logFilePath); - var logFileBaseName = Path.GetFileNameWithoutExtension(_logFilePath); + var logFileDir = Path.GetDirectoryName(_LogFilePath)!; + var logFileExt = Path.GetExtension(_LogFilePath); + var logFileBaseName = Path.GetFileNameWithoutExtension(_LogFilePath); - var logFiles = Directory.GetFiles(logFileDir, $"{logFileBaseName}_*{logFileExt}") - .OrderBy(file => file) - .ToList(); + var logFiles = Directory + .GetFiles(logFileDir, $"{logFileBaseName}_*{logFileExt}") + .OrderBy(file => file) + .ToList(); - if (logFiles.Count >= _maxLogFileCount) - { + if (logFiles.Count >= _MaxLogFileCount) File.Delete(logFiles.First()); - } // Rename the current log file with a timestamp var logFileBackupPath = Path.Combine(logFileDir, $"{logFileBaseName}_{UnixTime.Now}{logFileExt}"); - File.Move(_logFilePath, logFileBackupPath); + File.Move(_LogFilePath, logFileBackupPath); } } diff --git a/csharp/App/SaliMax/src/Program.cs b/csharp/App/SaliMax/src/Program.cs index 0c912c0ed..665201e29 100644 --- a/csharp/App/SaliMax/src/Program.cs +++ b/csharp/App/SaliMax/src/Program.cs @@ -241,11 +241,11 @@ internal static class Program // Voltage Measurement Values //var inverterVoltage = new Voltage [(Int32)s.AcDc.Ac.L1.Voltage, (Int32)s.AcDc.Ac.L2.Voltage, (Int32)s.AcDc.Ac.L3.Voltage]; //var dcLinkVoltage = s.DcDc.Dc.Link.Voltage; - var dc48Voltage = s.DcDc.Dc.Battery.Voltage; - var batteryVoltage = s.Battery.Dc.Voltage; - var batterySoc = s.Battery.Soc; - var batteryCurrent = s.Battery.Dc.Current; - var batteryTemp = s.Battery.Temperature; + var dc48Voltage = s.DcDc.Dc.Battery.Voltage.ToDisplayString(); + var batteryVoltage = s.Battery.Dc.Voltage.ToDisplayString(); + var batterySoc = s.Battery.Soc.ToDisplayString(); + var batteryCurrent = s.Battery.Dc.Current.ToDisplayString(); + var batteryTemp = s.Battery.Temperature.ToDisplayString(); var gridBusColumn = ColumnBox("Pv", "Grid Bus", "Load" , gridVoltageByPhase , gridLoadPower); var islandBusColumn = ColumnBox("Pv", "Island Bus", "Load" , inverterPowerByPhase, islandLoadPower); @@ -260,10 +260,10 @@ internal static class Program var gridBox = TextBlock.AlignLeft(gridPowerByPhase).TitleBox("Grid"); var inverterBox = TextBlock.AlignLeft(inverterPowerByAcDc).TitleBox("Inverter"); var dcDcBox = TextBlock.AlignLeft(dc48Voltage).TitleBox("DC/DC"); - var batteryAvgBox = TextBlock.AlignLeft(batteryVoltage.ToDisplayString(), - batterySoc.ToDisplayString(), - batteryCurrent.ToDisplayString(), - batteryTemp.ToDisplayString()) + var batteryAvgBox = TextBlock.AlignLeft(batteryVoltage, + batterySoc, + batteryCurrent, + batteryTemp) .TitleBox("Battery"); diff --git a/csharp/Lib/Devices/AMPT/Ampt.csproj b/csharp/Lib/Devices/AMPT/Ampt.csproj index 06dd8bef6..eebc28a52 100644 --- a/csharp/Lib/Devices/AMPT/Ampt.csproj +++ b/csharp/Lib/Devices/AMPT/Ampt.csproj @@ -1,5 +1,5 @@ - + InnovEnergy.Lib.Devices.AMPT @@ -8,11 +8,7 @@ - - - - - + diff --git a/csharp/Lib/Devices/AMPT/Program.cs b/csharp/Lib/Devices/AMPT/Program.cs deleted file mode 100644 index 55fb5194d..000000000 --- a/csharp/Lib/Devices/AMPT/Program.cs +++ /dev/null @@ -1,28 +0,0 @@ -using InnovEnergy.Lib.Protocols.Modbus.Channels; -using InnovEnergy.Lib.Protocols.Modbus.Clients; -using InnovEnergy.Lib.Units; -using InnovEnergy.Lib.Utils; - -namespace InnovEnergy.Lib.Devices.AMPT; - -public static class Program -{ - public static Task Main(string[] args) - { - var ch = new TcpChannel("localhost", 5005); - var cl = new ModbusTcpClient(ch, 1); - var d = new AmptDevices(cl); - - while (true) - { - AmptStatus x = d.Read(); - - x.ToCsv().WriteLine(); - - //Console.WriteLine(x); - } - - - //Console.WriteLine(x); - } -} \ No newline at end of file diff --git a/csharp/Lib/Devices/Adam6360D/Program.cs b/csharp/Lib/Devices/Adam6360D/Program.cs deleted file mode 100644 index f0b3681da..000000000 --- a/csharp/Lib/Devices/Adam6360D/Program.cs +++ /dev/null @@ -1,20 +0,0 @@ -using InnovEnergy.Lib.Units; -using InnovEnergy.Lib.Utils; - -namespace InnovEnergy.Lib.Devices.Adam6360D; - -public static class Program -{ - public static Task Main(String[] args) - { - var d = new Adam6360DDevice("localhost", 2, 5006); - - while (true) - { - var x = d.Read(); - x.ToCsv().WriteLine(); - } - - - } -} \ No newline at end of file diff --git a/csharp/Lib/Devices/Battery48TL/Program.cs b/csharp/Lib/Devices/Battery48TL/Program.cs deleted file mode 100644 index c82568a96..000000000 --- a/csharp/Lib/Devices/Battery48TL/Program.cs +++ /dev/null @@ -1,35 +0,0 @@ -using InnovEnergy.Lib.Protocols.Modbus.Channels; -using InnovEnergy.Lib.Units; -using InnovEnergy.Lib.Utils; -using static InnovEnergy.Lib.Devices.Battery48TL.Battery48TlDevice; - -namespace InnovEnergy.Lib.Devices.Battery48TL; - -public static class Program -{ - public static Task Main(string[] args) - { - var host = new SshHost("10.2.3.115", "ie-entwicklung"); - var channel = new RemoteSerialChannel(host, "ttyUSB0", BaudRate, Parity, DataBits, StopBits); - - var nodes = new Byte[] { 2 }; - - var devices = nodes - .Select(n => new Battery48TlDevice(channel, n)) - .ToList(); - - var d = new Battery48TlDevices(devices); - - //var options = new JsonSerializerOptions { WriteIndented = true, Converters = { new JsonStringEnumConverter() }}; - - - while (true) - { - var x = d.Read(); - x.ToCsv().WriteLine(); - - //(x, options).Apply(JsonSerializer.Serialize).WriteLine(); - } - } - -} \ No newline at end of file diff --git a/csharp/Lib/Devices/EmuMeter/Program.cs b/csharp/Lib/Devices/EmuMeter/Program.cs deleted file mode 100644 index 604671b5d..000000000 --- a/csharp/Lib/Devices/EmuMeter/Program.cs +++ /dev/null @@ -1,24 +0,0 @@ -using InnovEnergy.Lib.Protocols.Modbus.Channels; -using InnovEnergy.Lib.Protocols.Modbus.Clients; -using InnovEnergy.Lib.Units; -using InnovEnergy.Lib.Utils; - -namespace InnovEnergy.Lib.Devices.EmuMeter; - -public static class Program -{ - public static Task Main(string[] args) - { - var ch = new TcpChannel("localhost", 5004); - var cl = new ModbusTcpClient(ch, 1); - var d = new EmuMeterDevice(cl); - - while (true) - { - var x = d.Read(); - x.ToCsv().WriteLine(); - } - - - } -} \ No newline at end of file diff --git a/csharp/Lib/Devices/Trumpf/TruConvertAc/Program.cs b/csharp/Lib/Devices/Trumpf/TruConvertAc/Program.cs deleted file mode 100644 index 6af219c56..000000000 --- a/csharp/Lib/Devices/Trumpf/TruConvertAc/Program.cs +++ /dev/null @@ -1,61 +0,0 @@ -// using InnovEnergy.Lib.Devices.Trumpf.SystemControl; -// using InnovEnergy.Lib.Devices.Trumpf.SystemControl.DataTypes; -// using InnovEnergy.Lib.Units; -// using InnovEnergy.Lib.Utils; -// -// namespace InnovEnergy.Lib.Devices.Trumpf.TruConvertAc; -// -// // TODO :remove -// -// public static class Program -// { -// public static void Main(String[] args) -// { -// var sc = new SystemControlDevice("localhost", 5001); -// var acDc1 = sc.AcDcSlave(1); -// var acDc2 = sc.AcDcSlave(2); -// -// -// while (true) -// { -// "================================================".WriteLine(); -// -// var r = sc.Read(); -// -// Console.WriteLine(DateTime.Now); -// r.ToString().Replace(",", "\n").Replace(" {", "\n").WriteLine("\n"); -// -// var c = r with -// { -// UseSlaveIdForAddressing = true, -// ReferenceFrame = ReferenceFrame.Consumer, -// GridType = GridType.GridTied400V50Hz, -// SystemConfig = SystemConfig.AcDcAndDcDc, -// CommunicationTimeout = null, -// SlaveErrorHandling = SlaveErrorHandling.Relaxed, -// SubSlaveErrorHandling = SubSlaveErrorHandling.Off -// }; -// -// sc.Write(c); -// -// var s1 = acDc1.Read(); -// -// s1.ToCsv().Replace(",", "\n").Replace(" {", "\n").WriteLine("\n"); -// -// -// s1.ResetAlarmsAndWarnings = true; -// s1.PowerStageEnable = true; -// -// acDc1.Write(s1); -// -// var s2 = acDc2.Read(); -// -// -// s2.ToString().Replace(",", "\n").Replace(" {", "\n").WriteLine("\n"); -// -// acDc2.Write(s2 with { ResetAlarmsAndWarnings = true, PowerStageEnable = true }); -// } -// -// -// } -// } \ No newline at end of file