Konfiguration von Modbus-Zählern

Standard-Zählermodell

Das Modbus-Protokoll ermöglicht es dem Gateway, ein oder mehrere spezifische Datenregister in einem kompatiblen Zähler auszulesen.

Im Allgemeinen sind Stromzähler mit einem RS485-Modbus-Kommunikationsport ausgestattet, während Heizungs- und Wasserzähler über Mbus kommunizieren.

Mehrere Modbus-Zählermodelle sind im Climkit-Portal registriert, wie Eastron, Inepro, Schneider, ABB usw.

Durch die Auswahl des richtigen Modells liest das Gateway automatisch die entsprechenden Register aus.

Modbus-Parameter

Standardmäßig liest das Gateway Zähler und andere Modbus-Geräte mit den folgenden Parametern aus:

  • Baudrate: 9600
  • Parität: None
  • Datengröße: 8 bit
  • Stoppbits: 1 bit

Dies ist auch die Standardkonfiguration für Eastron SDM630M Zähler.

Die Baudrate und Parität können direkt über die Schnittstelle des Zählers geändert werden.

Andere Modelle wie der Inepro PRO380 und der Polier MTR80LMOD haben eine andere Standardparitätskonfiguration:

  • Parität: EVEN

Wenn die Standardwerte beibehalten werden sollen, müssen sie in den zusätzlichen Parametern des Zählers im Climkit-Onlineportal eingegeben werden:

Für EVEN wird E und für NONE wird N eingegeben.

parity

E

Andere Modelle (erweiterte Konfiguration)

Falls ein Zähler verwendet wird, dessen Modell nicht aufgeführt ist, können die auszulesenden Register manuell konfiguriert und der Datentyp angegeben werden.

Wählen Sie das Modell generic_modbus und bearbeiten Sie die zusätzlichen Parameter.

Zu definierende Parameter

Hier ist die Liste der zu definierenden Parameter. Parameter, die mit * markiert sind, sind obligatorisch.

*reg <int>: Register-Nummer, die vom Zähler gelesen werden soll.

*unit <str>: Einheit der gelesenen Daten (z.B. 'L1_v').

size <int>: Größe der Daten (1, 2, 4, 8). Standardwert ist 1 für Int16 oder Float16.

factor <float>: Multipliziert die Daten mit dem Faktor (z.B. 0.001 zur Umrechnung von Wh in kWh) (float). Standardwert ist 1.

pause <float>: Wartezeit nach dem Auslesen der Daten eines Registers. Standardmäßig 0.3 bei TCP-Zählern und 0 bei Seriengeräten.

function_code : Modbus Serial Funktionscode. Normalerweise 3 oder 4. Standardmäßig 3.

round <int> : Anzahl der Dezimalstellen. Standardmäßig 2.

swap_words <bool or 1 or 0 >: Kehrt die Reihenfolge der Register um, wenn size > 1 ist.
Unit

Der Parameter unit definiert den Typ der gelesenen Daten.

Für einen Stromzähler sind die Einheiten en_im (importierte Energie) und en_ex (exportierte Energie).

Für einen Wärmezähler: heat_energy_kwh, cold_energy_kwh, flow_temp, return_temp, diff_temp, power_kw, vol_flow_m3_h, vol_m3

Für einen Wasserzähler: vol_m3

Reg

Der Parameter reg definiert die Dezimalposition des auszulesenden Modbus-Registers. Siehe Zähler- oder Geräte-Dokumentation.

Hier ist ein Beispiel für einen Wärmezähler, bei dem die Energieindizes für Wärme und Kälte ausgelesen werden.

reg

[{'unit': 'heat_energy_kwh', 'reg': 2544, 'size': 2, 'factor': 0.001}, {'unit': 'cold_energy_kwh', 'reg': 2546, 'size': 2, 'factor': 0.001}]

Hier ist ein Beispiel für einen Stromzähler (Typ: electricity), bei dem nur das Register für importierte Energie in kWh ausgelesen wird.

reg

[{'unit': 'en_im', 'reg': 1050, 'size': 2, 'swap_words': True}]

Wie haben wir abgeschnitten?

Kontakt