Beckhoff Netzwerk Variablen - Einstellungen

Mit den Beckhoff Netzwerkvariablen (NWV) können zyklisch oder azyklisch Daten zwischen Windows-basierten PC verschickt werden. In einem Teilnehmer als Publisher (Sender) deklariert, wird eine solche Netzwerkvariable auf der Gegenseite von einem mit dem gleichen Typ deklarierten Subscriber (Abonnent) empfangen. Dieser Datenverkehr ist dem Namen nach netzwerkbasiert und setzt in seiner Konfiguration direkt auf den verwendeten Protokollen auf.

Zur Auswahl stehen dabei:

Über diese Adressierungsarten kommt das Telegramm mit den Prozessdaten beim Empfängergerät (Netzwerkport) an. Im Ethernet-Gerät/TwinCAT wird die Zuordnung mehrerer transportierter Prozessdaten dann über eine "Variable ID" hergestellt

Alle zu verwendenden Netzwerkvariablen müssen vor der Benutzung im System Manager deklariert werden.

Folgende Eingriffsmöglichkeiten stehen dann während des Betriebs zur Verfügung:

Diagnosevariablen auf Publisher- und Subscriberseite geben über die Verbindungsqualität Auskunft.

Bei der Verwendung von Netzwerkvariablen sind die zeitlichen Randbedingungen der verwendeten Netzwerkarchitektur zu berücksichtigen: Geswitcht (MAC-Adressierung) können rd. 10 ms Kommunikationszyklus und darunter erreicht werden, geroutet (IP-Adressierung) fallweise auch einige 100 ms.

Beckhoff Netzwerk Variablen - Einstellungen 1:

Diagnosevariable "Quality"

Wenn die verarbeitenden Tasks mit unterschiedlichen Zykluszeiten arbeiten oder vom Anwender der DataExchangeDivider verändert wird, ist das bei der Auswertung der Diagnosevariablen entsprechend zu berücksichtigen - ein langsamer Publisher (z. B. 100 ms) führt bei einem schnellen Subscriber (z. B. 10 ms) zu einer schlechten Verbindungsqualität im Sinne der Diagnosevariable "Quality".

Ebenso ist zu berücksichtigen, wenn das Versenden eines Publishers dynamisch zeitweise gesperrt wird. Der Subscriber registriert dann eine schlechte Quality.

Beckhoff Netzwerk Variablen - Einstellungen 2:

Diagnosevariable "CycleIndex"

Beachten Sie die unteren Hinweise um zu entscheiden, ob die Variable CycleIndex von Ihnen bedient werden muss.

Grundlagen zu Beckhoff Netzwerkvariablen

Beckhoff Netzwerk Variablen - Einstellungen 4:

Auswahl der Variablen-ID

Um eine eindeutige Zuordnung zu erreichen wird empfohlen, für jede Datenübertragung zwischen zusammenhängenden PCs unterschiedliche IDs zu verwenden.

Begründung: in Abb. Beispielhafte Kommunikation über Netzwerkvariablen erhält PC2/Subscriber2 nicht nur die vorgesehene ID=8-Variable von PC1/Publisher2, sondern, da als Broadcast (!) gesendet, auch die NWV von PC3/Publisher1. Eine Unterscheidung ist in PC2 dann nicht mehr möglich!

Beckhoff Netzwerk Variablen - Einstellungen 5:
Beispielhafte Kommunikation über Netzwerkvariablen
Beckhoff Netzwerk Variablen - Einstellungen 6:

Datendarstellung auf unterschiedlichen Plattformen

Bitte beachten Sie, dass einfache wie komplexe Daten (WORD, ARRAYs, REAL, STRING, benutzerdefinierte Strukturen) auf unterschiedlichen Plattformen intern unterschiedlich dargestellt werden! X86-Plattformen arbeiten im Byte-Alignment, andere (ARM) im 2- oder 4-Byte-Alignment
Das bedeutet, wenn eine komplexe Struktur in je einem x86/PC-PLC-Projekt und einem ARM-PLC-Projekt angelegt wird, sie jeweils eine andere effektive Größe und einen anderen inneren Aufbau haben kann.
In der Abb. Beispiel für unterschiedliche Größe und Aufbau der Struktur im PC und CX ist die Struktur im CX (und damit die dort anzulegende Netzwerkvariable) größer als im PC, auch passen die Word- und Real-Variablen nicht zueinander da im PC auf jeder Byte-Position eine Variable beginnen kann, im CX nur an jeder geradzahligen.

Empfehlung zum Aufbau von Strukturen, gleichlaufend auf beiden Endgeräten

- Zuerst alle 4-Byte-Variablen (müssen auf einer durch 4 teilbaren Adresse liegen)

- dann alle 2-Byte-Variablen (müssen auf einer durch 2 teilbaren Adresse liegen)

- dann alle 1-Byte-Variablen

Weiter Empfehlungen

- Wenn STRING(x) verwendet wird, dann gilt das „EndOfString“-Null ebenfalls als Zeichen, somit muss x+1 durch 4 teilbar sein

- Obige Regeln gelten auch für Unter-Strukturen.

Bitte beachten Sie dazu die Hinweise im Infosys, Abschnitt Struktur.

Verwendung von Busklemmen-Controllern (BCxxxx, BXxxxx)

Da auf Busklemmen-Controllern (BCxxxx, BXxxxx) die Darstellung von Fließkommazahlen (REAL) von der im x86 abweicht, können diese nicht übertragen werden. Für vorzeichenbehaftete Werte können z. B. „SINT“ verwendet werden.

Beckhoff Netzwerk Variablen - Einstellungen 7:
Beispiel für unterschiedliche Größe und Aufbau der Struktur im PC und CX

Einstellungen im System Manager

Beckhoff Netzwerk Variablen - Einstellungen 8:

Erscheinungsbild der Variablen

Je nach verwendeter Plattform (PC oder EL66xx) stellen sich Publisher/Subscriber unterschiedlich dar. Ein Publisher/Subscriber kann angelegt werden.

    Folgende Einstellungen können im Beckhoff System Manager TwinCAT 2.10 build 1328 vorgenommen werden:

    Publisher, Box

    Beckhoff Netzwerk Variablen - Einstellungen 9:
    Einstellungen Publisher - RT Ethernet

    Einstellungen zum RT-Ethernet:

    Beckhoff Netzwerk Variablen - Einstellungen 10:

    Verwendung von Broadcast und Multicast

    Netzwerkvariablen, die als Broad- oder Multicast auf MAC- oder IP-Ebene verschickt werden, erzeugen je nach Zykluszeit eine hohe Netzwerklast, da sie ins gesamte anhängende Netz multipliziert werden! Einfache Netzwerkgeräte wie z. B. Drucker können dann abstürzen, bei kurzen Zykluszeiten kann auch der gesamte Netzwerkverkehr blockiert werden!

    Die Verwendung der Unicast-Adressierung wird dringend empfohlen, auch unter Berücksichtigung der o.a. Variablenidentifizierung.

    Weitere Einstellungen:

    Beckhoff Netzwerk Variablen - Einstellungen 11:
    Einstellungen Publisher - UDP/IP

    Einstellungen zum UDP/IP - es wird das Adressierungsverfahren der IP-Vermittlungsschicht mit IP-Adressen benutzt, UDP ist ein verbindungsloses Protokoll ohne Rückmeldung.

    Beckhoff Netzwerk Variablen - Einstellungen 12:

    Verwendung von Broadcast und Multicast

    Netzwerkvariablen, die als Broad- oder Multicast auf MAC- oder IP-Ebene verschickt werden, erzeugen je nach Zykluszeit eine hohe Netzwerklast, da sie ins gesamte anhängende Netz multipliziert werden! Einfache Netzwerkgeräte wie z. B. Drucker können dann abstürzen, bei kurzen Zykluszeiten kann auch der gesamte Netzwerkverkehr blockiert werden!

    Die Verwendung der Unicast-Adressierung wird dringend empfohlen, auch unter Berücksichtigung der o.a. Variablenidentifizierung.

    Weitere Einstellungen:

    Publisher, Variable

    Beckhoff Netzwerk Variablen - Einstellungen 13:
    Einstellungen Publisher - Variable

    Einstellungen:

    Subscriber, Box

    Beckhoff Netzwerk Variablen - Einstellungen 14:
    Einstellungen Subscriber

    Einstellungen:

    Prozessdaten:

    Subscriber, Variable

    Beckhoff Netzwerk Variablen - Einstellungen 15:
    Einstellungen Subscriber - Variable

    Einstellungen:

    Prozessdaten: