Update Deligreen communication app

This commit is contained in:
atef 2025-03-19 11:31:53 +01:00
parent b6f9373052
commit 01caa6864e
1 changed files with 17 additions and 46 deletions

View File

@ -25,19 +25,17 @@ internal static class Program
public static async Task Main(String[] args) 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); _relaysChannel = CreateChannel(device1);
var saliMaxRelaysDevice = new RelaysDeviceAmax(_relaysChannel);*/
var saliMaxRelaysDevice = new RelaysDeviceAmax(_relaysChannel); var listOfBatteries = new List<BatteryDeligreenDevice>
/* var listOfBatteries = new List<BatteryDeligreenDevice>
{ {
new BatteryDeligreenDevice(Port, 0), new BatteryDeligreenDevice(Port, 0),
new BatteryDeligreenDevice(Port, 1) new BatteryDeligreenDevice(Port, 1)
}; };
var batteryDevices = new BatteryDeligreenDevices(listOfBatteries);*/ var batteryDevices = new BatteryDeligreenDevices(listOfBatteries);
Console.WriteLine("Starting Battery Communication"); Console.WriteLine("Starting Battery Communication");
@ -47,51 +45,17 @@ internal static class Program
{ {
var startTime = DateTime.Now; var startTime = DateTime.Now;
Console.WriteLine("***************************** Reading Battery Data *********************************************"); Console.WriteLine("***************************** Reading Battery Data *********************************************");
// Console.WriteLine($"Start Reading all Batteries: {startTime}"); Console.WriteLine($"Start Reading all Batteries: {startTime}");
//var batteriesRecord = batteryDevices.Read(); var batteriesRecord = batteryDevices.Read();
var stopTime = DateTime.Now; var stopTime = DateTime.Now;
//Console.WriteLine($"Finish Reading all Batteries: {stopTime}"); Console.WriteLine($"Finish Reading all Batteries: {stopTime}");
var relays = saliMaxRelaysDevice.Read();
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("Time used for reading all batteries:" + (stopTime - startTime));
Console.WriteLine("Average SOC " + batteriesRecord?.Soc); 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 Alarm 2 : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.CellAlarmList[1]);
Console.WriteLine("Cell Temperature Alarm 1 : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.CellTemperatureAlarm[0]); Console.WriteLine("Cell Temperature Alarm 1 : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.CellTemperatureAlarm[0]);
@ -106,7 +70,14 @@ internal static class Program
Console.WriteLine("TotalVoltage Alarm : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.TotalVoltageAlarm); Console.WriteLine("TotalVoltage Alarm : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.TotalVoltageAlarm);
Console.WriteLine("PowerTemp Alarm : " + batteriesRecord?.Devices[0].BatteryDeligreenAlarmRecord.PowerTempAlarm);*/ 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 // Wait for 2 seconds before the next reading
await Task.Delay(2000); // Delay in milliseconds (2000ms = 2 seconds) await Task.Delay(2000); // Delay in milliseconds (2000ms = 2 seconds)
} }