Wiren BoardDokumentation
Dokumentation / Gateways / WB-MGE v.3
Dokumentation · Deutsch

WB-MGE v.3

Gateway für RS-485, Ethernet, Wi-Fi und WBIO

Revision 108548
Abgedeckte Bestellnummern (1)
  • WB-MGE v.3 — Modellbezeichnung; SmartSD führt keine separate Artikelnummer auf

Online kaufen

Diese Seite beschreibt das neue Gerät WB-MGE v.3; zur Vorgängerversion siehe WB-MGE v.2.

Diese Seite beschreibt die neueste Hardware-Revision mit der neuesten stabilen Firmware. Falls Ihr Gerät ältere Firmware verwendet, aktualisieren Sie diese nach Möglichkeit (siehe Firmware-Aktualisierung).
WB-MGE v.3
WB-MGE v.3

Verwendungszweck

Zum Anschluss von Geräten mit RS-485-Schnittstelle und seitlichen WBIO-Ein-/Ausgangsmodulen an einen Automatisierungsserver über Ethernet oder Wi-Fi. Als Server kann ein Wiren Board-Controller oder jeder Controller/Computer dienen, der die erforderlichen Protokolle unterstützt.

Mit zwei WB-MGE v.3 lässt sich eine Brücke über Ethernet oder Wi-Fi einrichten. Dies ist nützlich, wenn ein Controller eines Drittanbieters keine Netzwerkschnittstellen besitzt, aber ein entferntes RS-485-Segment abgefragt werden muss.

Jedem Port wird ein Modus zugewiesen: «Modbus TCP», «Transparent bridge» oder «Passive». Zusätzlich zu jedem Modus können unabhängig voneinander überlagerte Funktionen aktiviert werden — ein Sniffer für Modbus-Datenverkehr und ein Multimaster mit Cache (ein Modbus TCP-Server, der Werte aus dem Cache bereitstellt). Beide Ports können gemeinsam als Repeater arbeiten — eine transparente RS-485-Weiterleitung zwischen Port 1 und Port 2.

Das Gerät ist programmiert und als Gateway einsatzbereit. Die Firmware ist quelloffen (MIT-WB-Lizenz), Quellcode: github.com/wirenboard/wb-mge. Sie können jede für Ihre Aufgaben benötigte Funktion ergänzen oder eigene Firmware schreiben. Weitere Informationen zur Entwicklung eigener Firmware.

Änderungen gegenüber der Vorgängerversion

Unterschiede zwischen WB-MGE v.3 und WB-MGE v.2:

Technische Daten

Parameter Wert
Spannungsversorgung
Versorgungsspannung der Schnittstelle 9–28 V DC
Leistungsaufnahme bei 24 V 1 W
Maximaler Vout-Strom 2.5 A
Maximaler Vout-Dauerstrom bei Versorgung über PoE 500 mA
Versorgungseingänge
  • 1 Vin-Eingang;
  • 1 PoE 802.3af/802.3at-Eingang an Ethernet über das interne Modul WBP-ACTIVE-POE.
Priorität der Versorgungseingänge

der Eingang mit der höheren Spannung

Versorgungsausgang für externe Geräte
Vout Die Klemmen liefern die Eingangsspannung des Moduls, mit Überstromschutz oberhalb von 2.5 A, softwareseitigem Schalten und Beibehaltung des Ausgangszustands nach einem Neustart.

Bei Versorgung über PoE liefert Vout geregelte 24 V. Der verfügbare Vout-Strom ist bei PoE-Versorgung geringer.

Klemmenblöcke und Leiterquerschnitte
Empfohlener Leiterquerschnitt mit isolierten Aderendhülsen 0.35–1 mm2 — Einzeladerendhülse; 0.35–0.5 mm2 — Doppeladerendhülse
Standardlänge der Aderendhülse 8 mm
Anzugsdrehmoment der Schrauben 0.2 N·m
Kommunikation
Kommunikationsprotokoll

Ethernet oder Wi-Fi: Modbus TCP oder eine transparente TCP-Verbindung zur Übertragung serieller Daten.

RS-485-Klemmen: Modbus RTU im Modbus TCP-Gateway-Modus; jedes unterstützte serielle Protokoll im Modus Transparent bridge. Das Gateway wandelt Modbus TCP in Modbus RTU und zurück um; die transparente Brücke leitet serielle Daten unverändert weiter.

Seitlicher E/A-Anschluss: WBIO.

Schnittstellen
  • 2x RS-485
  • I2C zum Anschluss seitlicher WBIO-Module
  • Ethernet 10/100
  • Wi-Fi 2.4 GHz
Gleichzeitige TCP-Verbindungen pro Port
  • Modus Modbus TCP: 1 vor Firmware 1.3.0; bis zu 8 ab Version 1.3.0;
  • Modus Transparent bridge: 1
Parameter der RS-485-Schnittstelle Per Software konfigurierbar; Standardwerte:

9600 bit/s; 8 Datenbits; keine Parität (N); 2 Stoppbits

Betriebsbereit nach dem Einschalten 8 s
Betriebsbedingungen
Umgebungslufttemperatur −40 bis +70 °C
Relative Luftfeuchtigkeit Bis zu 95%, nicht kondensierend
Klimaklassifizierung nach GOST 15150-69 O2.1*
Garantiezeit 2 Jahre
Lebensdauer 8 Jahre
Abmessungen
Breite in Teilungseinheiten 2
Gesamtabmessungen (L × B × H) 36 × 90 × 58 mm
Gewicht (einschließlich Karton) 105 g

Funktionsprinzip

Hardware

Das Modul basiert auf dem ESP32-Chip, der die Funktionen eines RS-485-Gateways umsetzt, die Steuerung von Peripheriegeräten und Anzeigen ermöglicht sowie eine Weboberfläche und API zur Modulkonfiguration bereitstellt.

Netzwerkschnittstellen und Paketverarbeitung

Das Modul besitzt zwei Netzwerkschnittstellen: Ethernet und Wi-Fi, das als Zugangspunkt oder Client arbeiten kann.

Die Modul-Firmware empfängt Pakete über Ethernet / Wi-Fi und sendet sie an einen der RS-485-Ports; anschließend leitet sie die Geräteantworten zurück. Der Port wird anhand des TCP-Ports ausgewählt, an dem das Paket eingegangen ist, standardmäßig: 502 — RS485-1, 503 — RS485-2.

Neben der Durchleitung können an jedem Port zwei unabhängige Werkzeuge aktiviert werden, die den Busverkehr passiv auswerten:

  • Sniffer — erfasst und dekodiert Modbus-Telegramme in beiden Richtungen und zeigt sie in Echtzeit in der Weboberfläche an (Diagnose des Datenaustauschs ohne externen Analysator);
  • ein Multimaster mit Cache — sammelt die neuesten Registerwerte der Geräte aus dem Datenverkehr und stellt sie über einen separaten Modbus TCP-Server bereit, ohne den Bus erneut abzufragen; dadurch entfällt die Beschränkung auf «einen Master pro Leitung».

Beide sind ausführlich im Betriebsarten Abschnitt beschrieben.

WBIO-Unterstützung

Zum Anschluss seitlicher WBIO-Module ist zusätzlich ein WB-MIO im Inneren vorhanden, der alle seitlichen Module als ein einziges Modbus-Gerät am Port RS-485-2 darstellt. Informationen zu Adressierung und Konfiguration finden Sie im Konfigurationsabschnitt: I/O Bus (seitliche WBIO-Erweiterungsmodule).

Fast Modbus

Die Besonderheit von Fast Modbus ist das Vorhandensein von Arbitrierungspaketen:

  • Transparent mode — die Pakete werden unverändert durchgeleitet;
  • Modbus TCP — die Arbitrierungspakete werden in der Gateway-Firmware gesondert behandelt.

Dadurch funktioniert Fast Modbus in beiden Modi.

Spannungsversorgung

Das Modul kann auf zwei Arten versorgt werden: direkt über die Vin-Klemme oder optional über PoE gemäß den Standards IEEE 802.3af / 802.3at.

Für die Versorgung über PoE ist ein separates Modul WBP-ACTIVE-POE mit eingebautem Spannungswandler erforderlich, das im Geräteinneren installiert wird. Es wandelt die ankommende PoE-Spannung in 24 V um und speist sie in den internen Versorgungsbus des Gateways ein.

Das Modul WBP-PASSIVE-POE kann verwendet werden, jedoch nur bei einer Versorgungsspannung von höchstens 24 V DC. Eine höhere Spannung beschädigt das Gateway.

Das Modul besitzt zwei Versorgungsausgänge (Vout) zum Anschluss von Peripheriegeräten. Die Ausgänge werden als Gruppe gesteuert: Beide Kanäle werden über die Weboberfläche gleichzeitig ein- und ausgeschaltet. Die Gesamtlast beider Ausgänge darf den in der Tabelle angegebenen Wert nicht überschreiten.

Leistung der angeschlossenen Last Vin (24 V) Aktiver PoE-Modus Passiver PoE-Modus
802.3af 802.3at
Nennwert 60 W 15 W
Kurzzeitiger Höchstwert 120 W 12 W 28 W 30 W

Anzeigen

Auf der Frontplatte befinden sich unter dem Etikett Anzeigen für den Zustand des Moduls und seiner Ausgänge.

Anzeigen des WB-MGE v.3
Anzeigen des WB-MGE v.3
Verhalten und Farben der Anzeigen
Bezeichnung Farbe Zustand Wert
Status Grün blinkt das Gerät ist gestartet und arbeitet normal
ein Versorgung vorhanden, Problem mit der Firmware
Vout Orange ein Geräteversorgung EIN
aus Geräteversorgung AUS
Ethernet Grün ein Verbindung vorhanden
blinkt Datenaustausch läuft
aus keine Verbindung
Wi-Fi Grün ein aktiviert, kein Datenaustausch
blinkt Datenaustausch läuft
aus deaktiviert
RS485 1/2 Grün (RX) blinkt Datenempfang vom Port
Orange (TX) blinkt Datenübertragung an den Port

Installation

WB-MGE v.3 wird auf einer standardmäßigen 35 mm breiten Hutschiene montiert und belegt die Breite von 2 Teilungseinheiten.

Verdrahtung

Isolierte Aderendhülsen crimpen
Isolierte Aderendhülsen crimpen

Verwenden Sie flexible Litzenleiter mit isolierten Aderendhülsen (NSHVI).

Entfernen Sie die Isolierung auf Hülsenlänge oder etwas darüber hinaus und kürzen Sie die überstehenden Drähte nach dem Crimpen. Verwenden Sie eine Aderendhülsenzange. Eine gecrimpte Aderendhülse schützt die Litzen vor der Schraubklemme und sichert die Verbindung.

Ziehen Sie die Klemmenschrauben nicht zu fest an: Übermäßige Kraft beschädigt die Schraubklemme.

Spannungsversorgung des Moduls

Das V+ GND -Klemmenblock mit 5.08 mm Rastermaß dient zum Anschluss der Spannungsversorgung.

Das Modul kann auch über Ethernet-PoE versorgt werden.

Netzwerkschnittstellen

Das Modul wird direkt über Ethernet oder über Wi-Fi mit einem Wiren Board-Controller oder einem anderen Gerät verbunden, auch über einen Router oder ein VPN. Entscheidend ist, dass die IP-Adresse des Moduls vom Controller aus erreichbar ist.

RS-485

Das V+ GND A B -Klemmenblock mit 3.5 mm Rastermaß dient zum Anschluss von Geräten über den RS-485-Bus. Auch die Versorgung der angeschlossenen Geräte kann diesen Klemmen entnommen werden. Für eine stabile Verbindung mit einem Gerät ist die korrekte RS-485-Busverdrahtung wichtig; lesen Sie dazu den Artikel Verdrahtung und Anschluss des RS-485-Busses.

Die RS-485-Schnittstellen sind unabhängig; jede besitzt eigene Einstellungen für Baudrate, Stoppbits und weitere Parameter. Abschlusswiderstand und Ruhepegelvorspannung sind standardmäßig aktiviert. Sie können in den Einstellungen deaktiviert werden. Die RS-485-Massen im WB-MGE v.3 sind nicht von der Versorgungsmasse galvanisch getrennt.

I/O Bus

WBIO anschließen
WBIO anschließen

Bis zu 8 Module können in Reihe angeschlossen werden: bis zu 4 Eingangsmodule (Typ «I») und bis zu 4 Ausgangsmodule (Typ «O»).

Seitliche WBIO-Ein-/Ausgangsmodule werden mit dem I/O Bus-Port an der rechten Modulseite verbunden. Achten Sie darauf, dass alle Stifte des Moduls in die Öffnungen der Gegenbuchse passen.

Mit dem Gerät können die Ein-/Ausgangsmodule vom Wiren Board-Controller getrennt und auf eine andere Hutschiene oder in einen anderen Schaltschrank verlagert werden. Außerdem ermöglicht dieser Schnittstellenkonverter, die Ein-/Ausgangsmodule als eigenständiges Gerät mit Controllern anderer Hersteller zu verwenden.

Betriebsarten

Modus Modbus TCP

Gateway zur Umwandlung von Modbus TCP-Anfragen in Modbus RTU und der Antworten zurück in Modbus TCP
Modus Modbus TCP konfigurieren
Modus Modbus TCP konfigurieren

In diesem Modus empfängt das Modul Modbus TCP-Anfragen über die Netzwerkschnittstellen, wandelt sie in Modbus RTU um und leitet sie an einen RS-485-Port weiter. Die empfangene RTU-Antwort wird zurück in Modbus TCP umgewandelt und an den Client gesendet, der die Anfrage gestellt hat.

Der Modus wird für jeden Port separat gewählt:

  1. Öffnen Sie Modbus Tools → TCP gateway und wählen Sie die Karte des gewünschten Ports.
  2. Wählen Sie im Feld Mode die Option «Modbus TCP».
  3. Geben Sie bei Bedarf den TCP-Port an, dessen Anfragen an diesen RS-485-Port weitergeleitet werden. Standardmäßig: 502 — RS-485-1, 503 — RS-485-2.

Im Modus Modbus TCP arbeitet das Modul ausschließlich als Server. An jeden Port können gleichzeitig mehrere TCP-Clients angeschlossen werden (bis zu 8).

Modus Transparent bridge

Transparente Brücke zur Übertragung serieller Daten zwischen einer TCP-Verbindung und RS-485
Modus Transparent bridge konfigurieren
Modus Transparent bridge konfigurieren

In diesem Modus empfängt das Modul über die Netzwerkschnittstellen TCP-Pakete mit Daten eines beliebigen Protokolls (beispielsweise Modbus RTU over TCP) und leitet sie Byte für Byte an einen RS-485-Port weiter. Die empfangene Antwort wird ebenfalls unverändert an den Client zurückgegeben, von dem die Anfrage stammt.

Der Modus wird für jeden Port separat gewählt:

  1. Öffnen Sie Modbus Tools → TCP gateway und wählen Sie die Karte des gewünschten Ports.
  2. Wählen Sie im Feld Mode die Option «Transparent bridge» und im Feld Role die gewünschte Rolle.
  3. Geben Sie bei Bedarf den TCP-Port an, dessen Anfragen an diesen RS-485-Port weitergeleitet werden.

Im Modus «Transparent bridge» stehen folgende Rollen zur Verfügung:

  • Server — wird beispielsweise verwendet, wenn sich ein Wiren Board-Controller damit verbindet.
  • Client — wird verwendet, wenn sich WB-MGE v.3 mit einem weiteren Modul desselben Typs verbindet.

In diesem Modus ist nur ein Master zulässig.

Sniffer

Verfügbar ab Firmware 1.3.0

Passiver RS-485-Sniffer mit Dekodierung des Modbus-Datenverkehrs und Master-Emulator
Sniffer: Modbus-Datenverkehr erfassen und dekodieren
Sniffer: Modbus-Datenverkehr erfassen und dekodieren

Der Sniffer erfasst den Datenverkehr am ausgewählten RS-485-Port in beiden Richtungen, dekodiert Modbus-Telegramme (einschließlich Fast Modbus) und zeigt sie über WebSocket in Echtzeit in der Weboberfläche an. Dies erleichtert die Diagnose des Datenaustauschs ohne externen Analysator.

Öffnen Sie Modbus Tools → Sniffer, wählen Sie einen Port und klicken Sie auf Start. Für jedes Telegramm werden angezeigt: Absender (Master/Slave), Geräteadresse, Funktionscode, Daten (HEX), Länge und Ergebnis der CRC-Prüfung. Verfügbar sind:

  • Filter nach Slave ID und die Funktionscode, Paket- und CRC-Fehlerzähler;
  • Schaltfläche Send packet — eine Leseanfrage (FC01–FC04) oder Schreibanfrage (FC05/06/15/16) zusammenstellen und an den Bus senden; die CRC wird automatisch berechnet und eine Telegrammvorschau angezeigt;
  • Export der erfassten Pakete als CSV.

Der Sniffer ist eine überlagerte Funktion an einem bereits geöffneten Port: Er ändert den Transportmodus nicht und arbeitet parallel zum Cache.

Multimaster-Modus mit Cache

Verfügbar ab Firmware 1.3.0

Multimaster mit Cache zur Überwachung des Modbus RTU-Datenverkehrs und Bereitstellung zwischengespeicherter Werte über Modbus TCP
Register map: Cache und Modbus TCP-Server
Register map: Cache und Modbus TCP-Server

Das Gateway kann den Modbus-Datenaustausch am Bus passiv überwachen, die neuesten Register- und Bitwerte aller Geräte speichern und über einen separaten Modbus TCP-Server (Port 504 standardmäßig) bereitstellen — ohne erneute Geräteabfrage. Damit entfällt die Einschränkung auf «einen Master pro Bus»: Die tatsächlichen Master fragen weiterhin ab, während zusätzliche TCP-Clients die Daten aus dem Cache lesen.

Öffnen Sie Modbus Tools → Register map und aktivieren Sie den Schalter Caching. Auf dieser Seite:

  • die automatisch erfasste Tabelle (Gerät → Registertyp → Register) und Statistiken (Geräteanzahl, verarbeitete Pakete, Alter der Tabelle, Speicherbelegung);
  • Value timeout — nach wie vielen Sekunden ein Wert im Cache als veraltet gilt. Wurde der Wert zum Anfragezeitpunkt länger als die Wartezeit nicht aktualisiert, liefert der Cache statt des alten Zahlenwerts die Modbus-Ausnahme 0x0B («gateway target device failed to respond»); 0 deaktiviert die Prüfung. Details folgen unten;
  • Listening port — der Quellport für den Cache; TCP port — der Port des Modbus TCP-Servers des Caches (standardmäßig 504);
  • Export der Tabelle als CSV/JSON und Zurücksetzen der Tabelle.

Funktionsweise der Werte-Zeitüberschreitung. Jeder Wert im Cache besitzt einen Alterszähler: Er wird bei jeder neuen Geräteantwort am Bus zurückgesetzt und steigt pro Sekunde um 1 Sekunde. Bei einer Modbus TCP-Anfrage vergleicht der Cache das Alter mit der Wartezeit:

  • Alter ≤ Wartezeit — der zwischengespeicherte Wert wird ausgegeben;
  • Alter > Wartezeit — die 0x0B Ausnahme wird statt des Werts zurückgegeben. So unterscheidet der Client aktuelle von «eingefrorenen» Daten: Verschwindet ein Gerät vom Bus, liefern seine Register einen Fehler statt des zuletzt gespeicherten Werts. Beim Lesen eines Bereichs mit einer einzigen Anfrage genügt ein veralteter Wert, damit die gesamte Antwort zur Ausnahme 0x0B wird (ein im Cache fehlendes Register ergibt die Ausnahme 0x02).

Der Alterszähler ist begrenzt und stoppt bei 65535 Sekunden (≈18.2 Stunden) — dies ist zugleich die maximal zulässige Wartezeit. Die «Gültigkeitsdauer» eines Werts kann daher nicht länger als ~18 Stunden eingestellt werden. Ein Sonderfall ist eine auf das Maximum (65535) gesetzte Wartezeit: Das Alter überschreitet diesen Schwellwert nie, sodass der Wert überhaupt nicht als veraltet markiert wird und die Prüfung faktisch nicht auslöst — ebenso wie beim Wert 0.

Der Cache ist eine unabhängige überlagerte Funktion: Er kann an einem Port in jedem Transportmodus aktiviert werden (bei Aktivierung an einem deaktivierten Port wird dieser im Modus «Passive (listening)» geöffnet).

Eigene Registertabelle des Gateways (Unit ID 255)

Verfügbar ab Firmware 1.3.0 Das Gateway antwortet über Modbus TCP auf eine Anfrage an seine eigene Unit ID 255 (0xFF) — diese Adresse ist für das TCP-Gateway reserviert. Dies funktioniert in den Modi «Modbus TCP» und «Cache TCP» unabhängig vom Cachezustand (im Modus Modbus TCP wird eine solche Anfrage nicht an RS-485 weitergeleitet).

Es gibt einen einzigen Adressraum. Funktionen FC03 (Holding) und FC04 (Input) bedienen eine gemeinsame Tabelle: Jede Adresse aus der folgenden Tabelle liefert bei beiden Funktionen denselben Wert. In der gemeinsamen Wiren Board-Registertabelle sind die Felder formal entweder als Input oder als Holding aufgeführt; die Referenz-Firmware antwortet jedoch mit der gesamten Tabelle auf beide Funktionen, und die Standardwerkzeuge verlassen sich darauf: wb-mcu-fw-flasher --get-device-info und die modbus_client -t3 -r <address> lesen die Signatur und den Informationsblock über FC03, während Abfrageprogramme FC04 verwenden.

Register von Unit ID 255 (FC03 und FC04, schreibgeschützt)
Adresse (dez.) Adresse (hex.) Register Typ Beschreibung
104–105 0x0068–0x0069 2 u32 Betriebszeit seit dem Start, Sekunden
121 0x0079 1 u16 Aktuelle Versorgungsspannung, mV
200–219 0x00C8–0x00DB 20 string (1 Zeichen/Register) Gerätemodell
220–244 0x00DC–0x00F4 25 string (2 Zeichen/Register) Commit-Hash und Zweig, aus dem die Firmware erstellt wurde
250–265 0x00FA–0x0109 16 string (1 Zeichen/Register) Firmware-Version (als Zeichenfolge)
266–267 0x010A–0x010B 2 u32 Verfahren zur Erzeugung der Seriennummer (4 — die Nummer wird aus der 48-Bit-MAC abgeleitet)
268–271 0x010C–0x010F 4 u64 Seriennummer, höherwertiges Wort zuerst (die 48-Bit-MAC in den niederwertigen Bits)
290–301 0x0122–0x012D 12 string (1 Zeichen/Register) Firmware-Signatur
320 0x0140 1 u16 Firmware-Version: MAJOR
321 0x0141 1 u16 Firmware-Version: MINOR
322 0x0142 1 u16 Firmware-Version: PATCH
323 0x0143 1 s16 Firmware-Version: SUFFIX (+N für +wbN, −N für -rcN, 0 falls nicht vorhanden)
324–325 0x0144–0x0145 2 u32 Version im Zahlenformat (Wortreihenfolge Little Endian: 324 — niederwertiges Wort)
326–327 0x0146–0x0147 2 u32 Version im Zahlenformat (Wortreihenfolge Big Endian: 326 — höherwertiges Wort)
330–337 (0x014A–0x0151) — das Bootloader-Versionsfeld der gemeinsamen WB-Tabelle, hier nicht definiert (siehe unten)
528–529 0x0210–0x0211 2 u32 Anzahl verarbeiteter Pakete (seit dem letzten Zurücksetzen des Caches)
530–531 0x0212–0x0213 2 u32 Sekunden seit dem letzten Paket am Bus
532 0x0214 1 u16 Anzahl der Geräte am Bus (eindeutige slave_id-Werte im Cache)
533 0x0215 1 u16 Durchschnittliche Busabfragerate, Abfragen/min
534 0x0216 1 u16 Zeitüberschreitung für Cachewerte, Sekunden
65505 0xFFE1 1 u16 Gesamter RAM, KB
65506 0xFFE2 1 u16 Belegter RAM, KB
65507 0xFFE3 1 u16 Freier RAM, KB
65508 0xFFE4 1 u16 Ursache des letzten MCU-Resets

Hinweise zur Registertabelle:

  • String packing unterscheidet sich zwischen den Feldern — dies wird durch die gemeinsame Wiren Board-Registertabelle vorgegeben; andernfalls lesen die Standardwerkzeuge unbrauchbare Daten:
    • 1 Zeichen pro Register, das Zeichen im niederwertigen Byte (das höherwertige ist 0x00): Modell (200–219), Firmware-Version (250–265), Signatur (290–301). Kennzeichnend für dieses Layout ist, dass die Registerzahl der Zeichenzahl entspricht. Die Standardaufrufe modbus_client -t3 -r 290 -c 12 | sed 's/ 0x00/\x/g' und die wb-mcu-fw-flasher --get-device-info;
    • 2 Zeichen pro Register, das erste Zeichen des Paars befindet sich im niederwertigen Byte, das zweite im höherwertigen: Git-Informationen (220–244, 25 Register = 50 Zeichen).
    • Das Ende eines Felds wird mit Nullen aufgefüllt.
  • Serial number ist gemäß der WB-Referenztabelle angeordnet: 266–267 — Erzeugungsverfahren, 268–271 — der eigentliche Wert. Das Lesen von 270–271 als separate Anfrage liefert die niederwertigen 32 Bit der Nummer — ebenso wie in der Referenztabelle.
  • Der Bootloader-Bereich 330–337. Das Bootloader-Versionsfeld der gemeinsamen WB-Tabelle wird als acht Register ab Adresse 330 gelesen (modbus_client -t0x03 -r330 -c8), daher bleibt der gesamte Bereich unbelegt — hier gibt es keine eigenen Register, insbesondere nicht für FC03. Aus demselben Grund liegt der Statistikblock außerhalb der gemeinsamen WB-Tabelle bei 528–534 — sieben aufeinanderfolgende Register werden in einer Anfrage gelesen.
  • Ganzzahlen über mehrere Register (außer 324–325) werden in Big-Endian-Wortreihenfolge gespeichert — das höherwertige Wort an der niedrigeren Adresse.
  • Die numerische Version wird gemäß der Wiren Board-Regel berechnet (Modbus-hardware-version): if (SUFFIX >= 0) enc = SUFFIX + 128; else enc = -1 - SUFFIX; VERSION = (MAJOR << 24) | (MINOR << 16) | (PATCH << 8) | enc.
  • Speicher (65505–65507) folgt der Reihenfolge der gemeinsamen WB-Tabelle — gesamt, belegt, frei — jedoch in Kilobytes statt in Bytes: Der interne ESP32-Heap umfasst Hunderte von Kilobytes, und ein Bytewert würde die u16-Grenze (65535) erreichen. «Gesamt» bezeichnet hier den vom Allokator verwalteten Speicher (etwa 300 KB), nicht den gesamten SRAM des Chips. Register 65504 (maximal belegter Stack) ist nicht implementiert: Die Firmware arbeitet mit mehreren Tasks und besitzt keinen einzelnen Stack; das Lesen dieser Adresse liefert den Ausnahmecode 0x02.
  • Der Neustartgrund (65508): 1 — LPWR (Unterspannung/Aufwachen aus dem Ruhemodus), 2 — WWDG (Interrupt-Watchdog), 3 — IWDG (Task-/allgemeiner Watchdog), 4 — SFT (Software-Reset/Panic), 5 — POR (Einschalten), 6 — PIN (externer Reset), 0 — unbekannt.
  • Die Busstatistik (528–534) stammt aus dem Multimaster-Cache; bei inaktivem Cache werden die entsprechenden Felder als 0 gelesen.
  • Das Lesen eines Bereichs, in dem mindestens eine Adresse undefiniert ist, liefert die 0x02 Ausnahme (ungültige Datenadresse); eine andere Funktion als FC03/FC04 liefert die 0x01 Ausnahme (ungültige Funktion). Pro Anfrage werden höchstens 125 Register gelesen.

Serieller Repeater

Verfügbar ab Firmware 1.3.0

Serieller Repeater zur Datenweiterleitung zwischen zwei RS-485-Ports
Repeater: Brücke Port 1 ↔ Port 2
Repeater: Brücke Port 1 ↔ Port 2

Der Repeater ist eine transparente «Serial↔Serial»-Übertragung: An Port 1 empfangene Bytes werden Byte für Byte an Port 2 weitergeleitet und umgekehrt, ohne Telegramme zu analysieren. Er dient zur Verlängerung einer RS-485-Leitung und Wiederherstellung der Signalintegrität.

Öffnen Sie Modbus Tools → Repeater und klicken Sie auf den Schalter — er versetzt beide Ports in den Repeater-Modus (erneutes Klicken schaltet ihn aus). Die Seite zeigt Weiterleitungsstatistiken in Echtzeit: weitergeleitete Bytes in jeder Richtung, verlorene Bytes pro Port, Betriebszeit und Durchschnittsgeschwindigkeit.

Bytes lost ist der Zähler der an einem Port empfangenen Bytes, die nicht an den gegenüberliegenden Port weitergeleitet werden konnten (dessen Sendepuffer ist voll): Der eingehende Datenstrom hat kurzzeitig die Sendeleistung überschritten. Im Normalbetrieb ist der Wert null.

Unterschiedliche Portgeschwindigkeiten. Die Portgeschwindigkeiten sind unabhängig, und der Repeater kann mit unterschiedlichen Geschwindigkeiten arbeiten, jedoch nicht immer zuverlässig. Am besten funktioniert dies asymmetrisch: der Master an der langsamen Leitung (beispielsweise 9600), der Slave an der schnellen (beispielsweise 115200). Dann sendet der Master Anfragen langsam, und nur die Antworten auf seine Anfragen werden zurückgeleitet — es gibt wenig Gegenverkehr. Trotzdem kann die Leitung überlastet werden, wenn mit einer einzigen Anfrage sehr viele Daten angefordert werden: Die Größe eines Telegramms ist durch einen 1000-Byte -Puffer begrenzt. Antwortet der Slave mit einem längeren Paket, läuft der Puffer durch das Telegramm über, und es wird bereits beim Empfang verworfen.

Achtung: Solange der Repeater aktiv ist, verhalten sich beide RS-485-Segmente wie elektrisch verbunden. Gibt es Master auf beiden Seiten des Busses, können Buskollisionen und Kommunikationsverlust auftreten. Dies ist eine lokale Verbindung zweier Ports eines Moduls; die Verbindung von Segmenten über zwei Module per IP ist im Abschnitt Repeater mit zwei Modulen über TCP beschrieben.

Einschränkungen des Repeater-Modus

Sie gelten für beide Anordnungen — die Brücke Port 1 ↔ Port 2 und zwei über TCP verbundene Module.

Fast Modbus. Geräte mit Ereignissen müssen sich alle auf derselben Seite des Repeaters befinden. Bereits ein einziges Wiren Board-Gerät auf einem Segment kann dazu führen, dass Ereignisse vom restlichen Bus nicht mehr zugestellt werden.

Es gibt zwei Möglichkeiten, diese Anforderung zu erfüllen:

  • eines der Segmente enthält überhaupt keine Wiren Board-Geräte — nur WB-MGE v.3;
  • oder die Ereignisabfrage ist bei allen Geräten am Bus deaktiviert (Ereignisabfrage deaktivieren).

Response timeout. Stellen Sie in den RS-485-Porteinstellungen des Treibers wb-mqtt-serial «Response timeout» ausdrücklich auf mindestens 200–250 ms ein.

Delay before writing to the port. Erforderlich, wenn neben WB-MGE v.3 Slave-Geräte auf der Controllerseite am Bus angeschlossen sind: Dadurch überlappt eine vom Repeater verzögerte Antwort nicht mit der nächsten Anfrage. Mindestens 50000 µs bei 9600 Baud; mit steigender Baudrate kann der Wert verringert werden.

Suche. Die schnelle Geräteerkennung über den Repeater findet nur Geräte in dem Segment, an das der Controller angeschlossen ist. Suchen Sie Geräte hinter dem Repeater mit der langsamen Suche (Geräte am Bus suchen). Dafür müssen «Response timeout» und «Delay before writing to the port» eingestellt sein — andernfalls bleibt das Suchergebnis leer.

Repeater mit zwei Modulen über TCP beschrieben

Verbindung zweier RS-485-Bussegmente. Die beiden Module kommunizieren über ein IP-Netzwerk.
Verbindung zweier RS-485-Bussegmente. Die beiden Module kommunizieren über ein IP-Netzwerk.

Um zwei RS-485-Bussegmente mit WB-MGE v.3 über ein LAN oder VPN zu verbinden, stellen Sie ein Modul auf Transparent mit der Rolle Serverund das andere auf Transparent mit der Rolle Client ein und geben Sie die Server-IP-Adresse an.

Sind die Module ohne Switch oder DHCP-Server direkt verbunden, weisen Sie beiden statische IP-Adressen im selben Subnetz unter Configuration → Network → Ethernet.

Wichtig! Diese Anordnung wird nur empfohlen, wenn das Gateway WB-MGE v.3 nicht direkt über Ethernet oder Wi-Fi mit dem Wiren Board-Controller verbunden werden kann. Es gelten die Einschränkungen des Repeater-Modusmit einer Änderung: Stellen Sie Response timeout bei Verwendung von Wi-Fi oder VPN auf mindestens 350 ms ein.

I/O Bus (seitliche WBIO-Erweiterungsmodule)

Integriertes WB-MIO aktivieren
Integriertes WB-MIO aktivieren

Seitliche Module arbeiten über das integrierte WB-MIO, das sie als Modbus-Gerät an RS485-2 mit den üblichen Wiren Board-Standardwerten bereitstellt:

  • Adresse: 247;
  • Kommunikationseinstellungen: 9600 8N2.

So aktivieren oder deaktivieren Sie das integrierte WB-MIO in der Modul-Weboberfläche:

  1. Öffnen Sie Configuration → Serial ports und suchen Sie die Karte I/O Bus.
  2. Stellen Sie Enable I/O Bus auf den gewünschten Zustand.

WB-MIO ist standardmäßig aktiviert. Deaktivieren Sie es, um seine Modbus-Adresse freizugeben oder an RS485-2 ein Protokoll zu verwenden, das mit Modbus RTU kollidiert.

WB-MIO-Kommunikationseinstellungen in der Controller-Weboberfläche
WB-MIO-Kommunikationseinstellungen in der Controller-Weboberfläche

Wichtig! Die Kommunikationseinstellungen der angeschlossenen Geräte und des integrierten WB-MIO müssen übereinstimmen. Verwenden angeschlossene Geräte andere Einstellungen, ändern Sie die WB-MIO-Einstellungen durch Schreiben neuer Registerwerte. Sie können Werte schreiben:

  • in der Controller-Weboberfläche über die Treibereinstellungen von wb-mqtt-serial;
  • über die SSH-Konsole des Controllers mit Modbus-client; RS485-2 muss sich im Modus Modbus TCP befinden;
    1. Stoppen Sie den Treiber wb-mqtt-serial:
      systemctl stop wb-mqtt-serial
      
    2. Schreiben Sie den neuen RS-485-Baudratenwert für WB-MIO:
      modbus_client --debug -mtcp -a247 -c1 -r110 -t0x06 -o300 -p503 10.42.0.176 1152
      
      wobei 247 die WB-MIO-Adresse ist, 10.42.0.176 die IP-Adresse des Moduls ist, 1152 entspricht bei der Skalierung ×100 des Registers einer Baudrate von 115 200 bit/s.
    3. Starten Sie den Treiber wb-mqtt-serial:
      systemctl start wb-mqtt-serial
      
  • durch direkten Anschluss an RS485-2 über den Schnittstellenkonverter WB-USB485.
WB-MIO-Kommunikationsregistertabelle
Adresse Registerparameter Beschreibung Werte Beachten Sie,
Dez. Hex. Typ Zugriff Format
Verbindungseinstellungen
110 0x006E Holding RW u16 RS-485-Baudrate.
RS-485-Verbindungsparametereinstellungen
×100, Baud
12 — 1200 bit/s,
24 — 2400 bit/s,
48 — 4800 bit/s,
96 — 9600 bit/s,
192 — 19200 bit/s,
384 — 38400 bit/s,
576 — 57600 bit/s,
1152 — 115200 bit/s
111 0x006F Holding RW u16 RS-485-Paritätseinstellung 0 — keine Parität (none),
1 — ungerade,
2 — gerade
112 0x0070 Holding RW u16 RS-485-Stoppbits
Siehe: Stoppbit-Toleranz
1, 2
128 0x0080 Holding RW u16 Modbus-Adresse des Geräts (Details)

Portmodus auswählen

Der Modus wird für jeden Port separat entsprechend den am RS-485-Bus angeschlossenen Geräten gewählt. Die Auswahl des falschen Modus unterbricht die Kommunikation mit allen Geräten hinter dem Gateway.

Am Bus angeschlossene Geräte Zu wählender Modus
Nur Wiren Board-Geräte Wahlweise: Fast Modbus funktioniert in beiden Modi. Siehe Einschränkungen des Repeater-Modus
Wiren Board-Geräte zusammen mit Modbus-Geräten anderer Hersteller Modbus TCP: Das Gateway verwaltet die Reihenfolge der Busanfragen
Geräte, die nicht Modbus verwenden (beispielsweise Vorhangmotoren) Nur Transparent bridge
Firmware von Geräten hinter dem Gateway programmieren mit socat Transparent bridge. Siehe Firmware von Modbus-Geräten aktualisieren
Prüfen mit dem Dienstprogramm modbus_client -mtcp Nur Modbus TCP. Im Modus Transparent bridge meldet das Dienstprogramm Invalid transaction ID oder eine Zeitüberschreitung
Mehrere Clients an einem Port Modbus TCP oder ein Multimaster mit Cache

Konfiguration

Weboberfläche

Zur komfortablen Konfiguration besitzt das Modul eine Weboberfläche, die in modernen Browsern am Computer und Mobiltelefon funktioniert. Für den Zugriff müssen Computer und Modul über eine der Schnittstellen mit demselben Netzwerk verbunden werden:

  • Wi-Fi: Hier richtet es einen Zugangspunkt ein und weist Clients automatisch IP-Adressen zu.
  • Ethernet: Hier sind keine IP-Adressen konfiguriert; das Modul muss sie über DHCP erhalten, beispielsweise von Ihrem Router.

Die Standardwerte stehen in der folgenden Tabelle. Informationen zu den Netzwerkeinstellungen werden auch in der Debug-Konsole ausgegeben, die über den USB-C-Anschluss unter dem Moduldeckel erreichbar ist.

Standard-Verbindungsparameter
Übersicht
Anmeldename admin
Passwort admin
mDNS-Hostname wb-mge-XXXXXX.local, wobei XXXXXX die letzten drei Bytes (sechs Hexadezimalziffern ohne Trennzeichen) der Ethernet-MAC-Adresse sind

Sie können auch den auf dem Etikett aufgedruckten Zugangspunktnamen verwenden und .local anhängen

Wi-Fi
Zugangspunkt WB-MGE-XXXXXX, wobei XXXXXX die letzten drei Bytes (sechs Hexadezimalziffern ohne Trennzeichen) der Ethernet-MAC-Adresse sind.
Schlüssel (Passwort) auf dem Etikett an der Geräteseite aufgedruckt.
IP-Adresse 192.168.5.1
Subnetzmaske 255.255.255.0
Ethernet
IP-Adresse DHCP
Subnetzmaske DHCP

Zugriff auf die Weboberfläche

Über einen Wi-Fi-Zugangspunkt

Standardmäßig arbeitet Wi-Fi im Zugangspunktmodus:

  1. Öffnen Sie auf Ihrem Laptop oder Telefon die Liste der Wi-Fi-Zugangspunkte und verbinden Sie sich mit WB-MGE-XXXXXX, wobei XXXXXX die letzten drei Bytes (sechs Hexadezimalziffern ohne Trennzeichen) der Ethernet-MAC-Adresse sind.
  2. Geben Sie den Sicherheitsschlüssel (das Passwort) ein, der auf dem Etikett an der Geräteseite aufgedruckt ist.
  3. Die Weboberfläche ist erreichbar unter 192.168.5.1, Anmeldename / Passwort — admin / admin.

Über Ethernet

Standardmäßig ist der Ethernet-Port des Moduls auf den Bezug einer IP-Adresse über DHCP eingestellt. Sie benötigen daher einen Router mit konfigurierter IP-Adressvergabe — normalerweise ist dies jeder in einer Wohnung oder einem Büro installierte Router:

  1. Verbinden Sie das Modul über Ethernet mit dem Router;
  2. Öffnen Sie die Einstellungen Ihres Routers und prüfen Sie, welche IP-Adresse er dem Modul zugewiesen hat.
  3. Öffnen Sie einen Webbrowser auf einem Computer, der mit demselben Router verbunden ist. Die Weboberfläche ist unter der IP-Adresse aus dem vorherigen Schritt erreichbar, Anmeldename / Passwort — admin / admin.

Über den Ethernet-Port des Controllers

Wenn das Modul mit dem Ethernet-Port des Controllers verbunden ist und sich in einem anderen Subnetz befindet, kann auf seine Weboberfläche über einen SSH-Tunnel zugegriffen werden. Im folgenden Beispiel verbinden Sie Ihren Computer mit dem Controller mit Adresse 192.168.42.1, und das Modul hat die Adresse 192.168.0.7.

  1. Erstellen Sie einen SSH-Tunnel:
    • Unter Linux/macOS (OpenSSH) oder Windows (PowerShell / CMD):
      ssh -N -L 8088:192.168.0.7:80 root@192.168.42.1
      
      Geben Sie bei der Passwortabfrage Folgendes ein — wirenboard (das Standardpasswort). Die Option -L leitet den lokalen Port 8088 über den Controller an 192.168.0.7:80 weiter; -N führt keinen entfernten Befehl aus. Ist Port 8088 belegt, geben Sie einen anderen freien lokalen Port an. Lassen Sie die Sitzung geöffnet, während Sie die Weboberfläche verwenden.
    • Unter Windows (PuTTY):
    1. Geben Sie in der Kategorie Session im Feld Host Name die Adresse 192.168.42.1 ein und wechseln Sie anschließend zu Connection → SSH → Tunnels.
    2. Geben Sie im Feld Source port den Wert 8088 ein.
    3. Geben Sie im Feld Destination die Adresse 192.168.0.7:80 ein.
    4. Der Tunneltyp ist Local. Klicken Sie auf Add.
    5. Kehren Sie zurück zu Session, klicken Sie auf Open und melden Sie sich als Benutzer root.
  2. Öffnen Sie die Weboberfläche im Browser unter der Adresse und geben Sie Anmeldename und Passwort ein:
    http://127.0.0.1:8088/
    

Über Wiren Board Cloud

Wenn WB-MGE v.3 mit einer Netzwerkschnittstelle des Controllers verbunden ist und der Controller in Wiren Board Cloud eingebunden ist, kann die Modul-Weboberfläche über einen Proxy durch die Cloud erreicht werden. Details finden Sie unter Zugriff auf beliebige Weboberflächen am Controller.

Netzwerkkonfiguration des Moduls

Das Modul kann unabhängig voneinander über Ethernet und/oder Wi-Fi mit dem Netzwerk verbunden werden.

Ethernet. Öffnen Sie Configuration → Network → Ethernet:

  • DHCP client (standardmäßig aktiviert) — das Modul erhält automatisch eine IP-Adresse vom Router;
  • Static IP address — ist der DHCP-Client deaktiviert, legen Sie IP-Adresse, Subnetzmaske und Gateway manuell fest.

Wi-Fi. Configuration → Network → Wi-Fi, Modus:

  • Access point (AP) — der Standardmodus; das Modul erstellt sein eigenes Netzwerk WB-MGE-XXXXXX (siehe #Über einen Wi-Fi-Zugangspunkt); hier werden SSID, Passwort, Authentifizierungstyp und die IP-Parameter des erstellten Netzwerks selbst (Adresse, Maske, Gateway) festgelegt;
  • Client (station) — das Modul verbindet sich als gewöhnliches Gerät mit einem vorhandenen Wi-Fi-Netzwerk; geben Sie dessen SSID und Passwort sowie entweder den DHCP-Client oder eine statische IP-Adresse/Maske/Gateway an, um eine Adresse darin zu erhalten;
  • Disabled — die Wi-Fi-Schnittstelle des Moduls wird vollständig abgeschaltet (zur dauerhaften Deaktivierung ohne Möglichkeit zum Wiedereinschalten siehe #Wi-Fi dauerhaft deaktivieren).

Ethernet und Wi-Fi können gleichzeitig verwendet werden (beispielsweise Wi-Fi im Zugangspunktmodus für die Ersteinrichtung und Ethernet für den Dauerbetrieb).

Hinweis. Die aktuelle Firmware bietet keine DNS-Serverkonfiguration — das Modul arbeitet im lokalen Netzwerk mit IP-Adressen, ohne externe Domainnamen aufzulösen.

Konfiguration speichern und laden

Konfiguration über die Weboberfläche exportieren und importieren
Konfiguration über die Weboberfläche exportieren und importieren

Die konfigurierten Parameter können in einer Datei gespeichert und zur Wiederherstellung auf einem neuen Gerät oder zur Erstellung identischer Installationen verwendet werden.

Alle Einstellungen der Weboberfläche, der Ports und der Netzwerkschnittstellen werden in die Datei exportiert.

Terminierung und Ruhepegelvorspannung

Widerstände über die Weboberfläche steuern
Widerstände über die Weboberfläche steuern

Im Modul sind folgende Komponenten eingebaut und standardmäßig aktiviert:

  • Abschlusswiderstand — ein 120 Ohm-Widerstand zwischen den Leitungen A und B. Befindet sich das Modul am Busende, muss er aktiviert sein, befindet es sich in der Mitte, deaktiviert.
  • Ruhepegelvorspannung — Pull-up- und Pull-down-Widerstände mit 560 Ohm, die eine definierte differenzielle Ruhespannung am RS-485-Bus herstellen, solange alle Sender inaktiv (hochohmig) sind, und so Fehlempfang verhindern. Arbeitet das Modul als Master, muss diese Funktion aktiviert sein; in allen anderen Fällen deaktiviert.

Die Steuerung erfolgt per Software: Öffnen Sie Configuration → Serial ports und stellen Sie auf der Karte des gewünschten Ports den erforderlichen Zustand ein.

Übertragung (TX) deaktivieren

Verfügbar ab Firmware 1.3.0

Der Schalter «Disable transmission (TX)»
Der Schalter «Disable transmission (TX)»

Für jeden RS-485-Anschluss gibt es auf der Seite Configuration → Serial ports einen Schalter Disable transmission (TX). Dieser versetzt den RS-485-Transceiver physisch in den reinen Empfangsbetrieb: Der Richtungssteuerpin (DE) wird vom UART getrennt und im inaktiven Zustand gehalten. Solange diese Betriebsart aktiv ist, kann auch per Software nichts auf die Leitung gesendet werden — jeder Sendeversuch wird ohne Meldung verworfen.

Dadurch können Sie sich sicher mit bereits laufenden Anlagen verbinden und deren Datenverkehr mit dem Sniffer oder dem Multimaster mit Cache analysieren oder spiegeln, ohne dass eine versehentliche Übertragung das System stört. Ist ein Anschluss auf reinen Empfangsbetrieb eingestellt, ist die Schaltfläche Send packet im Sniffer nicht verfügbar.

Wi-Fi dauerhaft deaktivieren

Verfügbar ab Firmware 1.3.0 WB-MGE unterstützt einen Modus zur dauerhaften Wi-Fi-Deaktivierung. Nach der Aktivierung wird der Wi-Fi-Treiber nicht mehr initialisiert — das Funkmodul bleibt bei allen weiteren Starts ausgeschaltet, und der Wi-Fi-Einstellungsabschnitt wird in der Weboberfläche ausgeblendet. Dieser Modus kann nicht über die API rückgängig gemacht werden.

Aktivierung über die API (erfordert einen Neustart, um wirksam zu werden):

# First, authenticate
curl -s -c cookies.txt -X POST http://192.168.0.7/auth -H 'Content-Type: application/json' -d '{"login":"admin","pass":"admin"}'

# Permanently disable Wi-Fi
curl -s -b cookies.txt -X POST http://192.168.0.7/settings -H 'Content-Type: application/json' -d '{"wifi_perm_disable": true}'

# Reboot to apply the changes
curl -s -b cookies.txt -X POST http://192.168.0.7/cmd -H 'Content-Type: application/json' -d '{"cmd": "reboot"}'

Nach dem Neustart gibt GET /settings die Gruppe wifi nicht zurück und enthält "wifi_perm_disable": true. Das Senden von {"wifi_perm_disable": false} wird ohne Meldung ignoriert.

Dieser Vorgang ist über die API nicht rückgängig zu machen. Um Wi-Fi wiederherzustellen, führen Sie mit der Taste Config ein Zurücksetzen auf Werkseinstellungen durch (5 Sekunden halten) oder programmieren Sie die Geräte-Firmware neu.

Wiren Board-Controller konfigurieren

Modul und Controller müssen sich im selben IP-Netzwerk befinden. Wählen Sie eine der folgenden Verbindungsoptionen, richten Sie das Netzwerk ein und fügen Sie anschließend die Modulports zum wb-mqtt-serial Treiber hinzu. Wie Sie die Weboberfläche des Moduls öffnen, ist im Abschnitt #Zugriff auf die Weboberfläche beschrieben.

Controller und Modul sind über einen Router mit demselben Netzwerk verbunden und erhalten IP-Adressen über DHCP

  1. Verbinden Sie Controller und Modul über Ethernet mit dem Router. Die Netzwerkeinstellungen des Moduls müssen nicht geändert werden: Standardmäßig bezieht es eine IP-Adresse über DHCP.
  2. Ermitteln Sie die IP-Adresse des Moduls in dessen Weboberfläche (Configuration → Network) oder in der Clientliste des Routers.

Der Controller ist über Ethernet mit dem Modul verbunden, Controller — IPv4 Shared with other computers, Modul — DHCP Client

  1. Verbinden Sie den Ethernet-Port des Moduls mit einem freien Ethernet-Port des Controllers.
  2. Öffnen Sie auf dem Controller Settings → Network Connections, wählen Sie die Verbindung dieses Anschlusses und im Feld IPv4 die Option «Shared with other computers». Der Controller beginnt, IP-Adressen an die Geräte an diesem Anschluss zu vergeben.
  3. Die Netzwerkeinstellungen des Moduls müssen nicht geändert werden: Das Modul erhält eine IP-Adresse per DHCP vom Controller. Ermitteln Sie diese in der Modul-Weboberfläche (Configuration → Network).

Der Controller ist über Ethernet mit dem Modul verbunden, Controller — IPv4 Static IP address, Modul — Static IP address

  1. Verbinden Sie den Ethernet-Port des Moduls mit einem freien Ethernet-Port des Controllers.
  2. Öffnen Sie auf dem Controller Settings → Network Connections, wählen Sie die Verbindung dieses Anschlusses und im Feld IPv4 die Option «Static IP address». Legen Sie die Adresse und die Subnetzmaske fest, beispielsweise 192.168.1.2 und 255.255.255.0.
  3. Öffnen Sie in der Weboberfläche des Moduls Configuration → Network → Ethernet, deaktivieren Sie den DHCP-Client und legen Sie eine IP-Adresse aus demselben Subnetz fest (beispielsweise 192.168.1.7). Stellen Sie dieselbe Subnetzmaske ein und geben Sie im Feld Gateway die Adresse des Controllers ein.

Um die an das Modul angeschlossenen Modbus-Geräte von einem Wiren Board-Controller zu steuern, konfigurieren Sie den wb-mqtt-serial Treiber wie folgt:

  1. Fügen Sie in den Einstellungen des wb-mqtt-serial Treibers die TCP-Ports für den Empfang von Daten von den Ports RS-485-1 und RS-485-2 des Moduls hinzu. Geben Sie die IP-Adresse des Moduls und den TCP-Port aus den Modul-Porteinstellungen unter Modbus Tools → TCP gateway an (standardmäßig 502 — RS-485-1, 503 — RS-485-2). Der Porttyp im Treiber hängt vom Portmodus des Moduls ab: für den Modus «Modbus TCP» — Modbus TCP, für den Modus «Transparent bridge» mit der Rolle «Server» — Serial over TCP.
  2. Damit die Geräte auf der Registerkarte Devices in der Weboberfläche des Wiren-Board-Controllers erscheinen, fügen Sie sie automatisch über die Suche nach Wiren-Board-Geräten an RS-485 oder manuell durch Auswahl einer Vorlage hinzu.
  3. WBIO-Module werden manuelldurch Auswahl einer Vorlage hinzugefügt. Die Adresse eines Moduls hängt davon ab, womit WB-MGE v.3 verwendet wird:
    • Bei Verwendung eines Wiren Board Controllers: <WB-MIO Modbus address>:<sequence number of the WBIO module (starting from 1)>.
    • Bei Verwendung eines Controllers oder einer Software eines Drittanbieters werden die Adressen gemäß der WB-MIO-Registertabelle berechnet.

Antworten die Geräte nicht, prüfen Sie, ob die TCP-Ports in Modul- und Treibereinstellungen übereinstimmen, sowie die Einstellungen für Abschlusswiderstand und Ruhepegelvorspannung.

Firmware-Aktualisierungen und Zurücksetzen der Einstellungen

Firmware-Aktualisierung

Firmware-Datei in der Weboberfläche auswählen
Firmware-Datei in der Weboberfläche auswählen

Die Aktualisierung kann über die Modul-Weboberfläche erfolgen:

  1. Laden Sie die neueste Firmware-Version herunter. Erkennt das Gerät eine Aktualisierung, erscheint auf den Seiten Overview und die System neben der Firmware-Version eine Download-Schaltfläche — klicken Sie darauf. Oder laden Sie die Datei über den Direktlink latest.bin.
  2. Öffnen Sie die Weboberfläche des WB-MGE v.3.
  3. Öffnen Sie die Seite System und suchen Sie den Abschnitt Firmware.
  4. Klicken Sie auf die Schaltfläche Choose file und wählen Sie die Firmwaredatei aus. Die Aktualisierung startet automatisch. Warten Sie, bis der Vorgang abgeschlossen ist.

Nach der Firmware-Aktualisierung wird das Gerät neu gestartet.

Aktualisierung aus einem Kanal

Verfügbar ab Firmware 1.3.0

Die Karte «Firmware»: Kanalauswahl und Aktualisierung mit einem Klick
Die Karte «Firmware»: Kanalauswahl und Aktualisierung mit einem Klick

Ab Version 1.3.0 kann das Modul Firmware selbstständig herunterladen und installieren, ohne dass Sie eine Datei manuell herunterladen müssen. Wählen Sie auf der Seite System im Abschnitt Firmware den Eintrag Update channel:

  • Stable — getestete Versionen, der Standardkanal;
  • Testing — vor den stabilen Versionen veröffentlichte Versionen, die noch erprobt werden.

Das Modul ermittelt selbst, welche Version in jedem Kanal veröffentlicht ist, und zeigt sie direkt in der Liste an: «Stable (last 1.1.0)» oder «Testing (installed 1.3.0)», wenn die Kanalversion bereits installiert ist. Der ausgewählte Kanal wird im Gerät gespeichert.

Wenn sich die Version des Kanals von der installierten Version unterscheidet, erscheint die Schaltfläche Update to last version on channel. Nach dem Anklicken bittet das Modul unter Angabe der Version um Bestätigung, lädt anschließend die Firmware aus der Cloud herunter, installiert sie, startet neu und prüft, ob nun die erwartete Version läuft. Sie müssen keine Datei manuell herunterladen oder auswählen. Entspricht die installierte Version der Kanalversion, wird die Schaltfläche nicht angezeigt.

Die Schaltfläche installiert die im Kanal veröffentlichte Version, die nicht unbedingt neuer ist. Wenn Sie eine Version aus dem Testkanal verwenden und zu Stable wechseln, wo eine ältere Version veröffentlicht ist, bietet die Schaltfläche deren Installation an — also ein Zurücksetzen auf eine frühere Version. Dies ist der reguläre Weg, von einer Testversion zu einer stabilen Version zurückzukehren.

Die Aktualisierung aus einer Datei ist weiterhin möglich und funktioniert wie bisher. Die Schaltfläche Install from file befindet sich direkt daneben. Sie ist für Versionen nützlich, die in keinem Kanal enthalten sind, beispielsweise Debug-Builds.

Neustart

Gerät über die Weboberfläche neu starten
Gerät über die Weboberfläche neu starten

Um das Gerät unter Beibehaltung der Einstellungen neu zu starten, schalten Sie seine Versorgung für 10 Sekunden aus.

Sie können auch die Schaltfläche Reboot auf der Seite System in der Weboberfläche verwenden.

Zurücksetzen auf Werkseinstellungen

Über die Weboberfläche

Einstellungen über die Weboberfläche zurücksetzen
Einstellungen über die Weboberfläche zurücksetzen

So setzen Sie die Einstellungen zurück:

  1. Öffnen Sie Configuration → System und suchen Sie den Abschnitt Configuration.
  2. Klicken Sie in der Zeile «Factory reset» auf die Schaltfläche Reset.

Mit der Taste Config

Zum Zurücksetzen der Einstellungen besitzt das Modul eine Taste Config, die durch eine Öffnung in der Frontabdeckung zugänglich ist. Es gibt zwei Verfahren — sie unterscheiden sich im Umfang des Zurücksetzens und darin, ob eine funktionsfähige Haupt-Firmware erforderlich ist.

  • Factory reset (bei laufendem Gerät, ohne Neustart). Halten Sie bei eingeschalteter Versorgung die Taste Config 5 Sekunden lang gedrückt: Die Firmware überschreibt alle Einstellungen mit ihren Standardwerten und übernimmt sie sofort. Nur die Inhalte der bekannten Einstellungen werden überschrieben — die NVS-Partition selbst wird nicht gelöscht. Zur Bestätigung blinkt die Status-Anzeige mehrmals schnell. Die Schaltfläche «Reset» in der Weboberfläche bewirkt dasselbe.
  • Complete storage erase (über Factory mode). Erforderlich, wenn die Haupt-Firmware nicht startet oder wenn alles sicher gelöscht werden muss. Schalten Sie die Versorgung bei gedrückter Taste Config ein, um in Factory modezu wechseln, und halten Sie Config anschließend 5 Sekunden lang gedrückt — die gesamte NVS-Partition wird vollständig gelöscht: Alle Schlüssel werden entfernt, auch fremde und beschädigte. Danach startet die Haupt-Firmware mit sauberen Werkseinstellungen. Zur Bestätigung blinkt die Status-Anzeige mehrmals schnell.

Factory mode

Weboberfläche des Moduls WB-MGE v.3 in Factory mode
Weboberfläche des Moduls WB-MGE v.3 in Factory mode

Dieser Modus ist nur bei einem Modul mit Werks-Firmware verfügbar und dient zur Wiederherstellung des Betriebs, wenn die Haupt-Firmware aus irgendeinem Grund nicht gestartet ist.

Um Factory mode zu aktivieren, schalten Sie die Geräteversorgung bei gedrückter Taste Config ein.

In diesem Modus erhält Ethernet die statische IP-Adresse 192.168.0.7, der Hostname wb-mge-factory.local wird per mDNS festgelegt, und statt der Weboberfläche erscheint das Uploadformular der Modul-Werks-Firmware.

Firmware des integrierten WB-MIO aktualisieren

Wiren Board-Geräte unterstützen Firmware-Aktualisierungen über Modbus. Damit lassen sich Fehler am Installationsort beheben und, soweit technisch möglich, neue Funktionen hinzufügen. Im Gerät gespeicherte Einstellungen bleiben bei einer Firmware-Aktualisierung erhalten.

Anleitungen:

Neue Firmware-Versionen sind im Firmware-Änderungsprotokoll des integrierten WB-MIO aufgeführt.

Eigene Firmware und Debugging

Werkseitig ist das Modul mit der Werkssoftware programmiert, die die Gateway-Funktionen und die Firmware-Aktualisierung über die Weboberfläche bereitstellt. Für die bestimmungsgemäße Verwendung des Geräts ist nichts weiter erforderlich.

Die Gateway-Firmware ist quelloffen (MIT-WB-Lizenz), Repository: github.com/wirenboard/wb-mge.

Programmieranschluss und Debug-Konsole

Der Programmieranschluss
Der Programmieranschluss

Das Modul basiert auf dem ESP32-Chip und besitzt auf der Leiterplatte einen USB-C-Programmieranschluss, sodass Sie die Modulhardware mit eigener Firmware verwenden können.

Für den Zugriff auf den USB-C-Anschluss müssen Sie die obere Geräteabdeckung seitlich mit einem dünnen Gegenstand abhebeln. Über diesen Anschluss können auch Debug-Informationen des Moduls abgerufen werden. Bei USB-Verbindung mit einem Computer wird das Modul als ACM-Gerät erkannt, das sich in jedem Terminalprogramm öffnen lässt. Die Debug-Informationen enthalten unter anderem die SSID des Zugangspunkts und die dem Modul per DHCP zugewiesene IP-Adresse.

Wichtig: Verbinden Sie bei Verwendung der Debug-Konsole zuerst das USB-C-Kabel mit Computer und WB-MGE v.3 und schalten Sie erst danach die Gateway-Versorgung ein. Dadurch lässt sich ein Geräteneustart vermeiden; weitere Informationen unter ERRWB-MGEv30001.

Eigene Firmware verwenden

Für Enthusiasten und Geräteentwickler haben wir Anleitungen zum Programmieren des Geräts und Beispiele alternativer Firmware vorbereitet.

Bekannte Probleme

Hardware-Probleme und Besonderheiten des WB-MGE v.3

Hardware-Revisionen

Revisionsverlauf

Abbildungen und Zeichnungen

CorelDRAW 2018 (Schriftart: Ubuntu): Datei: WB-Library.cdr.zip

Visio:

  1. Wiren Board-Geräte: Datei: WB-Visio-Lib.zip.
  2. Gehäuse, Leitungsschutzschalter, Schütze und weitere Symbole von Drittanbietern.

SVG: Datei: WB-Library.svg.zip

Maßzeichnung des Moduls (DXF): WB-MGEv3.dxf.zip

Maßzeichnung des Moduls (PDF): WB-MGEv3.pdf

Schaltzeichenbibliothek für AutoCAD Electrical: Datei: Wirenboard-AE-base.zip

Softwarekomponenten von Drittanbietern

Die Geräte-Firmware enthält Softwarekomponenten des ESP-IDF-Projekts, die unter der Apache License, Version 2.0, verteilt werden. Der vollständige Lizenztext ist im Repository des ESP-IDF-Projekts verfügbar. Zusammen mit ESP-IDF werden der cJSON Parser unter der MIT-Lizenz sowie die Espressif-Komponenten mdns und die esp_io_expander unter der Apache-2.0-Lizenz ausgeliefert.

Die Weboberfläche basiert auf folgenden Bibliotheken, alle unter der MIT-Lizenz:

  • Vue — das Oberflächen-Framework;
  • Vue Router — Navigation zwischen Seiten;
  • Vue I18n — Übersetzungen der Oberfläche;
  • vue-multiselect — Auswahllisten mit Suchfunktion;
  • ky — der HTTP-Client;
  • unhead — Seitentitel.

Das Roboto wird ebenfalls als Schriftart verwendet, unter der SIL Open Font License 1.1.

Revision 108548.