View Categories

Integration des Energiezählers

In diesem Tutorial beschreiben wir wie Sie das DOMIQ/Serial-4MB Modul zur Integration
des digitalen Stromzählers von SAIA BURGESS ALE3D5F11 mit dem DOMIQ/Base
Modul sowie zum Anzeigen der Messwerte in DOMIQ/Remote und DOMIQ/Display Applikationen
verwenden können.

Die unten dargestellten Funktionen sind:

  • Ablesung und Anzeigen der Spannungen auf bestimmten Phasen
  • Ablseung und Anzeigen der zeitweiligen Belastungen auf bestimmten Phasen
  • Ablseung und Anzeigen des Zustands des Energiezählers
  • Erstellung des zu löschenden (temporären) Energiezählers
  • Signalisieren des Ausschaltens der Energieversorgung

Die Kommunikation der DOMIQ Geräte mit dem Zähler erfolgt durch Bus mit zwei Leitungen, mit Hilfe des MODBUS Protokolls. Sie können an einem Serial-4MB Modul viele verschiedene Geräte verbinden (typisch bis 32). Jedem Gerät muss eine Adresse vom Bereich 1-127 gegeben werden. Alle Geräte müssen dieselbe Parameter der asynchronen Transmission konfiguriert haben (die Anzahl der Stop-Bits, Parität, Geschwindigkeit in Bits pro Sekunde).

Manche MODBUS Geräte bedürfen Außenenergieversorgung, typisch: 24V.

1. Schema der Verkabelung #

2. Konfiguration des DOMIQ/Base Moduls #

Jedes MODBUS Gerät ist als ein Satz der 16-Bit-Register sichtbar. Die Funktionen der bestimmten Register sind nicht definiert. Für jedes Gerät ist die Dokumentation erforderlich.

Das DOMIQ/Base Modul und DOMIQ/Serial-4MB bilden ein übergeordnetes MODBUS System. Jede Linie in der Konfiguration bestimmt die Adresse des Geräts, die Nummer des Registers und Format der Daten, die sich darin befinden. Die Register werden zyklisch abgefragt. Die erhaltenen Daten werden im Stand des Base gespeichert. Sie beginnen mit einem MODBUS Präfix.

2.1. Erstellung der Seite im Remote-Menü #

Um die Messwerte in der Remote Applikation anzuzeigen, definieren Sie das Menü. Zu diesem Zweck führen Sie die folgenden Handlungen aus:

  1. Klicken Sie auf das Remote Lesezeichen.
  2. Fügen Sie eine neue Seite hinzu und geben Sie ihr einen Name.
  3. Fügen Sie eine neue Sektion hinzu, z.B. Anzeige des Energiezählers.
  4. Fügen Sie eine neue Sektion hinzu, z.B. Status.

2.2. Werte der Spannungen auf bestimmten Phasen #

Zuerst finden Sie die Dokumentation des Zählers der Registernummer, in dem die Werte
der Spannungen auf bestimmten Phasen gespeichert werden. Wenn Sie über diese Informationen
verfügen, können Sie die Ablesungen der Register definieren.

2.2.1. Definieren der Register #

  1. Wenn Sie im Konfigurator einloggen, wählen Sie das Lesezeichen MODBUS aus. In der Struktur fügen Sie ein neues Interface hinzu. Dann definieren Sie den Namen des Interface (ohne Leerzeichen und landestypische Buchstaben) und wählen Sie den Serial Typ sowie das Format und die Geschwindigkeit der Transmission (nach Einstellungen im Zähler) aus. Klicken Sie auf Gerät hinzufügen und ergänzen Sie die Parameter des Geräts. Im Feld Name geben Sie den Namen des Geräts (ohne Leerzeichen und landestypische Buchstaben). Im Feld Adresse geben Sie die Adresse des Geräts ein, das gesteuert werden soll.

Wenn Sie das Interface und Gerät definieren, können Sie die Ablesung der Register definieren.

  1. Klicken Sie auf Hinzufügen um die neue Ablesung des Registers hinzuzufügen.
  2. In der Spalte Typ wählen Sie den Typ des Registers aus. In diesem Fall outreg.
  3. In der Spalte Format wählen Sie das Format des Registers aus. In diesem Fall wählen
    Sie den Typ uint16.
  4. In der Spalte Adresse geben Sie die Adresse des Registers ein, in dem der Wert der
    Spannung auf erster Phase gespeichert wird. In diesem Fall wird der Wert der Spannung
    auf der ersten Phase im Register 36 gespeichert. ACHTUNG! Die Hersteller beginnen
    die Adresse mit 1 oder 0. Im MODBUS Lesezeichen beginnen die Adressen der
    Register mit 0. SAIA beginnt die Adressen mit 1, also geben Sie 35 (statt 36) in der
    Konfiguration ein.
  5. In der Spalte Name geben Sie den eindeutigen Identifizierer des Registers ein, z.B.
    voltage1. Wenn Sie das MODBUS Präfix hinzufügen, wird dieser Identifizierer der
    Name des Kanals.
  6. In der Spalte Beschreibung geben Sie eine kurze Beschreibung der Anzeige ein, z.B.
    Spannung Phase 1.
  7. Für die weiteren zwei Phasen führen Sie die Punkte von 1 bis 6 analogisch aus.
    Vergessen Sie nicht die Adressen der Register auf 40, 45 im Punkt 5 und die Namen
    im Punkt 11 auf voltage2 und voltage3 zu ändern.

2.2.2. Definieren der Steuerelemente #

Um die Werte der Spannungen in der Remote Applikation angezeigt werden, definieren Sie die entsprechenden Steuerelemente:

  1. Klicken Sie auf Remote Lesezeichen.
  2. Finden Sie die im 2.1. definierte Struktur.
  3. Fügen Sie ein Kanalelement Wert zur schon existierenden Sektion hinzu.
  4. Doppelklicken Sie auf dem hinzugefügten Element und ergänzen Sie seine
    Eigenschaften.
  5. Im Feld Kanal geben Sie den Namen des Kanals ein, der bei der Konfiguration der
    Registeranzeige gegeben wurde:
  6. Die Punkte von 3. bis 7. werden analogisch für die anderen Phasen wiederholt.

Wenn Sie die Einstellungen des Konfigurators speichern, wird der Effekt wie folgt:

2.3. Vorübergehende Belastungen auf bestimmten Phasen #

Ablesung und Anzeige der Belastungen auf bestimmten Phasen werden analogisch wie in 2.2 beschriebene Ablesungen der Spannung ausgeführt.

2.3.1. Definieren der Register #

  1. Fügen Sie die Adresse der Register hinzu, in den die Werte der Belastungen auf
    Phasen gespeichert werden. In diesem Fall: 35, 42 und 47.
  2. Fügen Sie den Multiplikator Faktor, der 0.01 beträgt, nach der Dokumentation.

2.3.2. Definieren der Steuerelemente #

Entsprechend den gegebenen Namen modifizieren Sie die Felder Kanal in den Wert Elementen, z.B. wenn für die Ablesung des Registers die Name moc1 ist, dann geben Sie MODBUS.moc1 im Feld Kanal.

2.4. Energiezähler #

Konfiguration der Ablesung des ganzen Energiezählers erfolgt ähnlich wie im Fall der im 2.2 dargestellten Prozedur. Es gibt aber folgende Änderungen.

2.4.1. Definieren der Register #

  1. Typ des Registers ist uint32 – der Wert der genutzten Energie wird in zwei 16-Bit-Register
    gespeichert.
  2. Der Multiplikator Faktor beträgt 0.01, damit der Wert in kWh gezeigt wird.
  3. Geben Sie sie Adresse des entsprechenden Paars der Register ein. In diesem Fall das
    Paar der Register ist 31 und 32.
  4. Geben Sie den Identifizierer der Ablesung des Registers ein.

2.4.2. Definieren der Steuerelemente #

Entsprechend den im MODBUS Lesezeichen gegebenen Namen modifizieren Sie dieFelder Kanal in dem Wert Element. Wenn für die Ablesung des Registers die Name Energie gegeben wurde, dann geben Sie den Wert von MODBUS.energie ein.

2.5. Der zu löschende (temporäre) Energiezähler #

Der zu löschende Zähler erlaubt es das Verbrauch der Energieversorgung in einer bestimmten
Zeit, z.B. Uhr, Tag, Woche, Monat usw. zu zählen.
Für die einfachste Implementierung dieses Zählers ist es notwendig, dass der aktuelle
Wert beim Löschen des Zählers gespeichert wird. Der gespeicherte Wert wird dann von
dem aktuellen Wert abgezogen und das Ergebnis wird als „zu löschender Zähler“
dargestellt.
Im DOMIQ/Base dienen zum dauerhaften Speichern der Variablen die MEM Kanäle. Der
Wert, der sich in diesem Kanal befindet, wird bis nächster Änderung gespeichert.
Der aktuelle Wert des Zählers soll sich am besten in der VAR Variable befinden.
Um die Differenz zu berechnen, wird das Logik Modul verwendet.

2.5.1. Logische Regeln #

Zu diesem Zweck klicken Sie auf das Lesezeichen Logik. Fügen Sie den folgenden Code hinzu und klicken Sie auf Speichern.

— definieren der variablen —
zahler = use ‚MODBUS.energie‘
speichern = use ‚MEM.energie‘
delta = use ‚VAR.energie‘

— definieren der funktion —
— funktion des loschens des zahlers —
function clear()
speichern:set(zahler.value)
delta:set(0)
end

— funktion berechnet wie viel energieversorgung nach dem loschen
des zahlers verbraucht wurde —
function zahler:onchange(new)
delta:set(new – zapis.value)
end

Der Text zwischen „–“ ist ein Kommentar.
Die Funktion clear wird aufgerufen, wenn die Taste zum Löschen des Zählers gedrückt wird. Er wird im weiteren Teil der Beschreibung erstellt. Sie dient zum Speichern des aktuellen Zustands des nicht zu löschenden Zählers, der in der Variable „Speichern“ gespeichert ist sowie zum Löschen des Wertes des zu löschenden Zählers in der Delta Variable. Die Funktion zahler wird immer dann aufgerufen, wenn der Zustand des nicht zu löschenden Zählers geändert wird. Sie berechnet und gibt das Unterschied zwischen den Werten des aktuellen Zustands des Zählers und des Zustand des Zählers, der beim Drücken der Taste zum Löschen gespeichert wurde, zurück.

2.5.2. Steuerlemente des zu löschendes Zählers und der Taste zum Löschen des Zählers #

  1. Im Lesezeichen Remote fügen Sie zur vorher definierten Struktur das Kanalelement Wert hinzu.
  2. Doppelklicken Sie darauf um die Eigenschaften zu ergänzen:
  3. Im Feld Kanal geben Sie den Namen der Variable ein, die im Lesezeichen Logik definiert wurde – in diesem Fall VAR.energie
  4. Fügen Sie ein Element wie Taste hinzu.
  5. Doppelklicken Sie darauf und ergänzen Sie die Eigenschaften.
    • Geben Sie den Namen, z.B. Zähler löschen.
    • Im Lesezeichen Drücken wählen Sie Kanal hinzufügen aus und ergänzen Sie wie folgt:

Der Effekt in der Remote Applikation wurde unten dargestellt:

2.6. Signalisierung des Phasenausfalls #

Signalisierung des Phasenausfalls erfolgt durch Anzeigen der Benachrichtigungen auf allen gekoppelten Remote. Es wird auch im Menü der Remote Applikation im Handy als Kontrolllämpchen sichtbar.
Jede Phase ist als ausgeschaltet bemerkt, wenn die Spannung unter 180V sinkt. Darüber hinaus wird eine VAR Variable erstellt, die die korrekte Spannung in allen Phasen signalisiert.

2.6.1. Logische Regeln #

Im Lesezeichen Logik geben Sie den folgenden Text ein:

— deklaration der variablen —
m_v1 = use ‚MODBUS.voltage1‘
m_v2 = use ‚MODBUS.voltage2‘
m_v3 = use ‚MODBUS.voltage3‘
v_v1 = use ‚VAR.v1‘
v_v2 = use ‚VAR.v2‘
v_v3 = use ‚VAR.v3‘
v_va = use ‚VAR.va‘

— funktion pruft die werte der spannungen in bestimmten phasen —
function monitor()
local v1,v2,v3 = 0,0,0
if m_v1.value > 180 then v1 = 1 end
if m_v2.value > 180 then v2 = 1 end
if m_v3.value > 180 then v3 = 1 end
v_v1:set(v1)
v_v2:set(v2)
v_v3:set(v3)
if v1 + v2 + v3 == 3 then
v_va:set(1)
else
v_va:set(0)
end
end

m_v1.onchange = monitor
m_v2.onchange = monitor
m_v3.onchange = monitor
monitor()

Bei der Deklaration der Variablen vergessen Sie nicht die Variablen mit diesen Namen zu
verwenden, die auch zur Ablesung der Register verwendet wurden.

In der Variablendeklaration wurden sieben Variablen deklariert. Die ersten drei (m_v*) speichern
die Werte der Register, in den die Spannungswerte auf bestimmten Phasen gespeichert
werden. Die weiteren vier Variablen wurden dazu verwendet, dass die Signalisierung
des Ausfalls der Phase im Remote-Menü möglich sein kann.
Die Funktion des Monitors prüft die Zustände der Spannungen und stellt die Zustände der
entsprechenden Variablen ein. Sie wird immer dann ausgeführt, wenn die Spannung einer
Phase geändert wird.

2.6.2. Kontrolllampen des Zustands der Energieversorgung #

Die Kontrolllampen des Zustands der Energieversorgung sind als Lämpchen sichtbar, die Farben abhängig vom Zustand der Energieversorgung auf einer Phase ändern. Dadurch können Sie schnell feststellen, auf welcher Phase es keine Stromversorgung gibt. Um die Steuerelemente hinzuzufügen, führen Sie die folgenden Handlungen aus:

  1. Im Lesezeichen Remote fügen Sie zur Status Sektion das Kanalelement Status.
  2. Doppelklicken Sie auf diesem Element und ergänzen Sie die Eigenschaften:
  3. Im Feld Kanal geben Sie den Namen des Identifizierers ein, in dem der Zustand der
    Energieversorgung in der Phase 1 gespeichert wird.
  4. Wählen Sie die Ikonen für die Zustände: an und aus.
  5. Für die zwei weiteren Phasen führen wir dieselben Handlungen aus. Vergessen Sie
    nicht die Namen auf VAR.v2 und VAR.v3 zu ändern.

Der Effekt auf der Remote Applikation im Fall des Ausschaltens der Energieversorgung der zwei Phasen wurde unten dargestellt:

2.7. Benachrichtigungen über An-und Ausschalten der Energieversorgung #

Wenn Sie beim Ausschalten/Anschalten der Energieversorgung die oben beschriebenen
Handlungen ausführen, wird die Benachrichtigung auf dem Bildschirm des Remote angezeigt. Die Benachrichtigungen werden auf die Bildschirme aller Remote, die mit Base gekoppelt werden, angezeigt.

2.7.1. Benachrichtigung über Ausfallen einer Phase #

  1. Im Lesezeichen Ereignisse fügen Sie ein neues Ereignis hinzu.
  2. Im Feld Kanal geben Sie E.VAR.va ein.
  3. Stellen Sie Daten als 0 ein.
  4. Im Feld Aktionen klicken Sie auf Kommando hinzufügen. Im Feld Name geben Sie
    C.REMOTE.notify ein. Im Feld Wert geben Sie einen beliebigen Text, der angezeigt
    werden soll, z.B. STROM AUS!

2.7.2. Benachrichtigung über Aktivierung der Energieversorgung #

  1. Im Lesezeichen Ereignisse fügen Sie ein neues Ereignis hinzu.
  2. Im Feld Kanal geben Sie E.VAR.va ein.
  3. Stellen Sie Daten als 1 ein.
  4. In Aktionen klicken Sie auf Kommando hinzufügen. Im Feld Name geben Sie C.REMOTE.
    notify ein. Im Feld Wert geben Sie einen beliebigen Text, der auf iPhone
    angezeigt wird, z.B. STROM AN!

2.8. Visualisierung des Zählers auf DOMIQ/Display #

In diesem Teil zeigen wir, wie Sie die Funktionalität des Touch Panels DOMIQ/Display ausführen können. Wir beschreiben:

  • Anzeigen der Spannungswerte
  • Anzeigen der Phasenstatus
  • Anzeigen der Benachrichtigungen über An- und Ausschalten der Energieversorgung

2.8.1. Definieren der Visualisierungsseite #

  1. Wenn Sie in den Base Konfigurator einloggen, klicken Sie auf Display Lesezeichen.
  2. Fügen Sie eine neue Seite hinzu und geben Sie ihr einen Name, z.B. Energiezähler.

2.8.2. Anzeigen der Spannungswerte #

Damit die Werte der Spannungen angezeigt werden, führen Sie die folgenden Handlungen aus:

  1. Fügen Sie das Element vom Typ Wert zum Visualisierungsfenster hinzu.
  2. Klicken Sie darauf und geben Sie MODBUS.voltage1 im Feld Kanal ein.
  3. Fügen Sie ein das Element vom Typ Text hinzu. Klicken Sie darauf und geben Sie im Feld Text die Beschreibung des Steuerelementes, z.B. Phase 1 ein. Für die weiteren zwei Phasen wiederholen Sie die Prozedur. Vergessen Sie nicht die Namen der Kanäle auf MODBUS.voltage2 und MODBUS.voltage3 sowie die Beschreibungen der Steuerelemente auf Phase 2 und Phase 3 zu ändern.
  4. Fügen Sie das Element Text hinzu und geben Sie z.B. Spannung ein. Das Element wird zum Unterschrift einer Gruppe der Steuerelemente.

2.8.3. Anzeigen der Phasenstatus #

Um die Steuerelemente des Status der bestimmten Phasen angezeigt werden, führen Sie
die folgenden Handlungen aus:

  1. Fügen Sie das Element Licht zum Visualisierungsfenster.
  2. Klicken Sie darauf und geben Sie VAR.v1 im Feld Kanal ein.
  3. Im Feld Thema wählen Sie aus der Balkenliste green aus.
  4. Fügen Sie ein das Element vom Typ Text hinzu. Klicken Sie darauf und geben Sie im
    Feld Text die Beschreibung des Steuerelementes: Phase 1 ein.
  5. Für die weiteren zwei Phasen wiederholen Sie die Prozedur. Vergessen Sie nicht die
    Namen der Kanäle auf VAR.v2 und VAR.v3 sowie die Beschreibungen der Steuerelemente
    auf Phase 2 und Phase 3 zu ändern.
  6. Fügen Sie das Element Text hinzu und geben Sie z.B. Status der Energieversorgung
    ein.

Der Effekt wird unten dargestellt:

2.8.4. Benachrichtigungen über An-und Ausschalten der Energieversorgung #

Um die Benachrichtigungen über keine Energieversorgung auf dem Bildschirm vom Display anzuzeigen, führen Sie die folgenden Handlungen aus:

  1. Im Lesezeichen Ereignisse fügen Sie zu einem vorher definierten Ereignis (Kanal E.VAR.va, Daten 0) eine neue Aktion – Kommando hinzufügen – hinzu.
  2. Im Feld Name geben Sie C.DISPLAY.message ein. Im Feld Wert geben Sie einen
    beliebigen Text ein, der auf dem Bildschirm der Touch-Rahme angezeigt wird, z.B.
    KEIN STROM!

Um die Benachrichtigungen über Anschalten der Energieversorgung auf dem Bildschirm vom Display anzuzeigen, führen Sie die folgenden Handlungen aus:

  1. Im Lesezeichen Ereignisse fügen Sie zum vorher definierten Ereignis (Kanal E.VAR.va, Daten 1) ein neues Kommando hinzu.
  2. Im Feld Name geben Sie C.DISPLAY.message ein. Im Feld Wert geben Sie einen beliebigen Text ein, der auf dem Bildschirm der Touch-Rahme angezeigt wird, z.B.
    ENERGIEVERSORGUNG AN!

Powered by BetterDocs

Select your currency
PLN Polish złoty
EUR Euro