-

Lokalen Modbus/TCP-Server konfigurieren

PLCnext Technology-Steuerungen ab Firmware-Version 2026.0 beinhalten einen integrierten Modbus/TCP-Server (lokaler Modbus/TCP-Server). Informationen zur Modbus/TCP-Unterstützung für bestimmte Steuerungen finden Sie im PLCnext Info Center.

Hinweis
Um die Modbus-Kommunikation konfigurieren zu können, muss der lokale Modbus-Server auf der WBM-Seite 'System Services' der Steuerung aktiviert werden.

Weitere Infos
Im Thema "Modbus/TCP-Konfiguration" finden Sie allgemeine Information über Modbus/TCP.

Dieses Thema enthält die folgenden Abschnitte:

Lokalen Server konfigurieren

Hinweis
Modbus/TCP-Client- und -Servergeräte sind in der Gerätebibliothek 'Modbus' enthalten. Damit die Modbus/TCP-Geräte im Projekt verwendet werden können, muss die 'Modbus'-Bibliothek in den KOMPONENTEN eingebunden sein (siehe hierzu das Thema "Bibliotheken einfügen").

Der lokale Modbus/TCP-Server wird in der Anlage unter dem Modbus TCP Server-Knoten angezeigt, nachdem Sie ein Modbus/TCP-Server-Gerät per Drag & Drop aus dem Bereich KOMPONENTEN in das Projekt eingefügt haben.

Um die Einstellungen des lokalen Modbus/TCP-Servers vorzunehmen und die Verbindung zum Modbus/TCP-Client zu konfigurieren, öffnen Sie den 'Einstellungen'-Editor des Geräts über den Geräteknoten in der ANLAGE. Im 'Einstellungen'-Editor unter der Kategorie 'Modbus TCP Server' konfigurieren Sie folgende Parameter:

ParameterBeschreibung
'Swap bytes'Definiert die Byte-Reihenfolge (Little Endian oder Big Endian), die zum Parsen der Registerinformationen verwendet wird. Standardmäßig wird Big Endian verwendet (Parameter ist auf 'no' gesetzt). Um Little Endian zu verwenden, stellen Sie 'yes' ein.

Vorgabewert: 'No'
'Port'Vom Server verwendeter TCP/IP-Port, d.h. der Port, auf dem der Modbus/TCP-Server hört.

Vorgabewert: 502 für Modbus/TCP
'Watchdog trigger time'Trigger-Zeit in ms für den Prozessdaten-Watchdog. Mit einer Trigger-Zeit von 0 ms wird der Watchdog deaktiviert.

Vorgabewert: 0 ms
'Watchdog register'Ein Lese- oder Schreibzugriff auf das ausgewählte Register löst den Watchdog aus (Standard: 0).

Die angegebene Registeradresse ist nicht gleichzeitig als Holding-Register im Editor 'Register' definiert.
'Watchdog hold inputs'Legt das Verhalten der Watchdog-Holding-Register (Ausgangsregister) im Falle eines Prozessdaten-Watchdogs fest (der Watchdog wird nur bei einer 'Watchdog trigger time' größer 0 ms ausgelöst). Mögliche Werte:

  • 'Reset inputs' (Voreinstellung) - Die Holding-Register werden gelöscht (auf 0 gesetzt), wenn ein Watchdog ausgelöst hat.

    Die Steuerungs-Ausgangswerte (Werte, die mit dem Funktionscode FC4 gelesen wurden) werden nicht gelöscht.

  • 'Hold inputs' - Die Werte der Holding-Register werden beim Auftreten eines Watchdogs auf dem letzten Wert gehalten. Die Holding-Register sind weiter beschreibbar und können auch von den Clients zurück gelesen werden.
'I/O Update time'Update-Zykluszeit in ms zum Lesen der Modbus-Telegramme des Clients aus dem Ethernet Stack.

Vorgabewert: 500 ms (Wertebereich: 10 bis 600000 ms)

Modbus/TCP-Register konfigurieren

Die Modbus/TCP-Register, die der lokale Server für die Kommunikation mit dem Client zur Verfügung stellt, werden im Editor 'Register' des Servers konfiguriert. Im Editor kann der Registertyp (Holding-Register, Input-Register) für den Server festgelegt werden, auf den der Client über verschiedene Funktionscodes zugreifen kann. (Der Client entscheidet, welche Funktionscodes zum Datenaustausch zwischen Client und Server verwendet werden sollen.)

Gehen Sie folgendermaßen vor:

  1. Wählen Sie in der Spalte 'Funktionscode' die Funktionscode-Kategorie aus, die der Server dem Client zur Verfügung stellen soll und drücken Sie <Eingabe>.
  2. Geben Sie in der Spalte 'Name' einen Registernamen (Beschreibung des Registers) ein und bestätigen Sie mit <Eingabe>.

    Je nach ausgewähltem Funktionscode wird eine Zugriffsart (Standardnamen: 'input' und/oder 'output') hinzugefügt (für jede Zugriffsart wird unter dem ausgewählten Funktionscode eine neue Tabellenzeile eingefügt).

    Im 'Datenliste'-Editor des Servers wird das Prozessdatenelement mit dem Namen (zusammengesetzt auf dem Registernamen und der Zugriffsart) automatisch erzeugt. Dasselbe gilt für den Portnamen in der 'GDS-Portliste' des Servers.

    Beispiel

  3. Optional: Ändern Sie bei Bedarf den Namen der Zugriffsart.
  4. Definieren Sie die folgenden Parameter für das Register:

    ParameterBeschreibung
    'Datenrichtung'Schreibgeschützter Parameter. Zeigt an, ob es sich um Eingangs- oder Ausgangsdaten handelt. Die möglichen Werte hängen vom gewählten Funktionscode ab.

    Mögliche Werte: INPUT (Funktionscode lesen), OUTPUT (Funktionscode schreiben)
    'Datentyp'Datentyp der Modbus/TCP-Registerdaten. Gibt an, welches Format die Daten auf dem Server haben.

    Möglicher Wert: WORD
    'Adresse'Startadresse der Daten (im Dezimalformat) auf dem Server. Die Startadresse ist die Adresse des ersten Coils/Registers, ab der geschrieben/gelesen werden soll.
    'Quantität'Anzahl der Coils/Register (Bits/Words), die für das Register gelesen/geschrieben werden sollen.

Datenliste des lokalen Servers bearbeiten

Der 'Datenliste'-Editor des Servers enthält die Prozessdatenelemente mit dem Namen zusammengesetzt auf dem Registernamen und der gewählten Zugriffsart (siehe oben). Darüber hinaus werden die folgenden Diagnosedaten als Prozessdatenelemente für den konfigurierten Server bereitgestellt (mit den entsprechenden Daten aus der Firmware).

ParameterBeschreibung
STATEDiagnose Status Bits
ACCEPT_CNTAnzahl der bisher aufgebauten Verbindungen
CONNETED_CLIENTSAnzahl der aktuell verbundenen Clients
RECEIVE_REQ_COUNTSAnzahl der empfangenen gütigen Requests
EXCEPTION_CNTAnzahl der gesendeten Exceptions
EXCEPTION_CODEDer zuletzt gesendete Exception Code
EXCEPTION_FCFunktionscode der fehlerhaften letzten Exception
EXCEPTION_REG_ADDRModbus-Registeradresse der Exception
ERR_CODELast Connection Error Code
CONTROL_DIAG_STATISTICDient zum Zurücksetzen der Diagnosedaten und Schließen der Verbindung zu allen Clients.

Auflistung der Control-Daten:

  • Bit 0 (Wert 1) - Alle Diagnosedaten (Zeitmessungen und Fehlercodes) der jeweiligen Server-Verbindung werden zurückgesetzt.
  • Bit 31 (Wert 0) - (Voreinstellung) Die Verbindung wird wenn möglich aktiviert.
  • Bit 31 (Wert 1) - Die Verbindung zu allen Clients wird geschlossen bzw. nicht zugelassen.

Weitere Infos
Weitere Informationen zum Bearbeiten von Datenelementen finden Sie im Thema "Datenlisten".

Portliste des lokalen Servers bearbeiten

Bearbeiten Sie das Mapping der IN- und OUT-Ports des lokalen Servers mit dem 'GDS-Portliste'-Editor. Der Editor enthält die IN- und OUT-Ports mit dem Namen zusammengesetzt aus dem Registernamen und der gewählten Zugriffsart (siehe oben). Darüber hinaus werden die im vorherigen Abschnitt aufgeführten Diagnosedaten als IN- und OUT-Ports für den konfigurierten Server bereitgestellt (mit den entsprechenden Daten aus der Firmware).