Hallo,
hat schon mal jemand versucht einen SDM-220-Standard
Einphasenstromzähler mit C# auszulesen? Ich verwende dafür EasyModbus.
Allerdings kommen keine plausiblen Werte an.
Hier der Einstiegs-Code:
1 | static void Main(string[] args)
|
2 | {
|
3 | EasyModbus.ModbusClient client = new EasyModbus.ModbusClient("COM3");
|
4 | client.Baudrate = 9600;
|
5 | client.Parity = System.IO.Ports.Parity.Even;
|
6 |
|
7 | client.Connect();
|
8 | if (client.Connected)
|
9 | {
|
10 | int[] int_array = client.ReadInputRegisters(0, 2);
|
11 |
|
12 | for (int i = 0; i < int_array.Length; i++)
|
13 | Console.WriteLine("Register " + i.ToString() + ": " + int_array[i].ToString());
|
14 |
|
15 | client.Disconnect();
|
16 | }
|
17 | else
|
18 | Console.WriteLine("Keine Verbindung");
|
19 |
|
20 | Console.WriteLine("Fertig");
|
21 | Console.ReadLine();
|
22 | }
|
Port, Baudrate und Parität stimmt. In den Inputregistern 0 und 1 sollte
eigentlich der Messwert der Netzspannung liegen.
Für den Vergleich habe ich einfach mal "Modbus Poll" installiert und
damit den Stromzähler ausgelesen. Dort passt es auch.
Hat jemand eine Idee?