From 01caa6864e79fe69b271f5623d962b8c5b4c2a28 Mon Sep 17 00:00:00 2001 From: atef Date: Wed, 19 Mar 2025 11:31:53 +0100 Subject: [PATCH] Update Deligreen communication app --- .../DeligreenBatteryCommunication/Program.cs | 63 +++++-------------- 1 file changed, 17 insertions(+), 46 deletions(-) diff --git a/csharp/App/DeligreenBatteryCommunication/Program.cs b/csharp/App/DeligreenBatteryCommunication/Program.cs index 1ca6610a2..c9ff43b1a 100644 --- a/csharp/App/DeligreenBatteryCommunication/Program.cs +++ b/csharp/App/DeligreenBatteryCommunication/Program.cs @@ -25,19 +25,17 @@ internal static class Program public static async Task Main(String[] args) { - var device1 = new SalimaxDevice { Host = "10.0.1.3" , Port = 502, DeviceState = DeviceState.Measured }; - + /*var device1 = new SalimaxDevice { Host = "10.0.1.3" , Port = 502, DeviceState = DeviceState.Measured }; _relaysChannel = CreateChannel(device1); - - var saliMaxRelaysDevice = new RelaysDeviceAmax(_relaysChannel); + var saliMaxRelaysDevice = new RelaysDeviceAmax(_relaysChannel);*/ - /* var listOfBatteries = new List + var listOfBatteries = new List { new BatteryDeligreenDevice(Port, 0), new BatteryDeligreenDevice(Port, 1) }; - var batteryDevices = new BatteryDeligreenDevices(listOfBatteries);*/ + var batteryDevices = new BatteryDeligreenDevices(listOfBatteries); Console.WriteLine("Starting Battery Communication"); @@ -47,51 +45,17 @@ internal static class Program { var startTime = DateTime.Now; Console.WriteLine("***************************** Reading Battery Data *********************************************"); - // Console.WriteLine($"Start Reading all Batteries: {startTime}"); - //var batteriesRecord = batteryDevices.Read(); + Console.WriteLine($"Start Reading all Batteries: {startTime}"); + var batteriesRecord = batteryDevices.Read(); var stopTime = DateTime.Now; - //Console.WriteLine($"Finish Reading all Batteries: {stopTime}"); - var relays = saliMaxRelaysDevice.Read(); + Console.WriteLine($"Finish Reading all Batteries: {stopTime}"); + - Console.WriteLine("***************************** Writing register 27 to true Amax *********************************************"); - - relays.K0 = true; - relays.K1 = true; - relays.R0 = true; - relays.R1 = true; - relays.R2 = true; - relays.R3 = true; - // relays.K0Input.WriteLine(" : K0input"); - saliMaxRelaysDevice.Write(relays); - - Console.WriteLine("***************************** Reading Amax *********************************************"); - - - // relays.K1GridBusIsConnectedToGrid.WriteLine(" : K1"); - - await Task.Delay(2000); - - Console.WriteLine("***************************** Writing register 27 to false Amax *********************************************"); - relays.K0 = false; - relays.K1 = false; - relays.R0 = false; - relays.R1 = false; - relays.R2 = false; - relays.R3 = false; - // relays.K0Input.WriteLine(" : K0input"); - - saliMaxRelaysDevice.Write(relays); - - Console.WriteLine("***************************** Reading Amax *********************************************"); - - - /* - Console.WriteLine("Time used for reading all batteries:" + (stopTime - startTime)); Console.WriteLine("Average SOC " + batteriesRecord?.Soc); - Console.WriteLine("Cell Alarm 1 : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.CellAlarmList[0]); + /* Console.WriteLine("Cell Alarm 1 : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.CellAlarmList[0]); Console.WriteLine("Cell Alarm 2 : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.CellAlarmList[1]); Console.WriteLine("Cell Temperature Alarm 1 : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.CellTemperatureAlarm[0]); @@ -105,8 +69,15 @@ internal static class Program Console.WriteLine("TotalVoltage Alarm : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.TotalVoltageAlarm); Console.WriteLine("PowerTemp Alarm : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.PowerTempAlarm);*/ - + Console.WriteLine("CellVoltageDropoutFault : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.AlarmEvent1.CellVoltageDropoutFault); + Console.WriteLine("ChargeSwitchFault : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.AlarmEvent1.ChargeSwitchFault); + Console.WriteLine("CurrentSensorFault : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.AlarmEvent1.CurrentSensorFault); + Console.WriteLine("DischargeSwitchFault : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.AlarmEvent1.DischargeSwitchFault); + Console.WriteLine("KeySwitchFault : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.AlarmEvent1.KeySwitchFault); + Console.WriteLine("TemperatureSensorFault : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.AlarmEvent1.TemperatureSensorFault); + Console.WriteLine("VoltageSensorFault : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.AlarmEvent1.VoltageSensorFault); + Console.WriteLine("CurrentLimitSwitchFault : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.AlarmEvent1.CurrentLimitSwitchFault); // Wait for 2 seconds before the next reading await Task.Delay(2000); // Delay in milliseconds (2000ms = 2 seconds) }