Regeln für Netzwerkvariablenlisten (NVL)
Aufgrund bestimmter Leistungsbeschränkungen sind folgende Regeln zu beachten:
Nummer |
Regel |
---|---|
1 |
Die Datenübertragung von einer NVL (Sender) an eine NVL (Empfänger) sollte nicht mehr als 200 Byte umfassen. |
2 |
Die Datenübertragung zwischen mehreren NVLs (Sendern) einer Steuerung und den zugehörigen NVLs (Empfänger) sollte nicht mehr als 1.000 Byte an Variablen betragen. |
Regeln zur Anzahl der Datagrammen
Um die maximale Zykluszeit von NVL-Aufgaben zu beschränken, folgen Sie den folgenden Regeln:
Nummer |
Regel |
Beschreibung |
---|---|---|
1 |
Begrenzen Sie die Anzahl der pro Zyklus empfangenen Datagramme auf 20. |
Bei Überschreitung dieses Grenzwerts werden die verbleibenden Datagramme im nächsten Zyklus verarbeitet. Wenn der Grenzwert erreicht wird, wird in den Diagnosedaten die Meldung Empfangsüberlauf ausgegeben. Ein Datagramm kann bis zu 256 Byte enthalten. Das heißt, dass Sie das Limit von 5120 Bytes an Daten, die an einen Empfänger übertragen werden, nicht überschreiten sollten. |
2 |
Begrenzen Sie die Anzahl der pro Zyklus gesendeten Datagramme auf 20. |
Bei Überschreitung dieses Grenzwerts werden die verbleibenden Datagramme im nächsten Zyklus verarbeitet. Wenn der Grenzwert erreicht wird, wird in den Diagnosedaten die Meldung Übermittlungsüberlauf ausgegeben. Ein Datagramm kann bis zu 256 Byte enthalten. Das heißt, dass Sie das Limit von 5120 Bytes an Daten, die von einer Sender-Steuerung übertragen werden, nicht überschreiten sollten. |
Wenn die Anzahl der pro Zyklus gesendeten/empfangenen Datagramme das Limit mehrmals überschreitet, kann Folgendes geschehen:
oVerlust von UDP-Datagrammen (User Datagram Protocol)
oInkohärenter oder inkonsistenter Austausch von Variablen
Passen Sie die folgenden Parameter Ihren Anforderungen entsprechend an:
oZykluszeit der Sender-Steuerung
oZykluszeit der Empfänger-Steuerung
oAnzahl der Sender im Netzwerk
HINWEIS |
DATENVERLUST |
Testen Sie Ihre Applikation umfassend auf die fehlerfreie Übertragung (Senden und Empfang) von UDP-Datagrammen, bevor Sie das System in Betrieb nehmen. |
Die Nichtbeachtung dieser Anweisungen kann Sachschäden zur Folge haben. |
Maximale Anzahl an NVLs (Sender)
Definieren Sie maximal sieben NVLs pro Steuerung (Sender), um die Transparenz der Verarbeitungsleistung aufrechtzuerhalten.
Regeln für die Task-Zykluszeiten von NVL (Sender) und NVL (Empfänger)
Um einen Empfangsüberlauf zu vermeiden, definieren Sie für die Task, die die NVL-Übertragung (Sender) verwaltet, eine Zykluszeit, die mindestens doppelt so groß ist wie die Zykluszeit der Task, die den NVL-Empfang (Empfänger) verwaltet.
Regeln zum Schutz der Variablenlistenkennung
Die NVL-Funktion umfasst eine Überprüfung der Variablenlistenkennung:
Die Listenkennung hilft zu vermeiden, dass eine NVL (Sender) von zwei separaten Steuerungen (siehe Dialogfeld GVL > Eigenschaften > Variablenlistenkennung) Datagramme an dieselbe NVL (Empfänger) einer Steuerung sendet. Wenn die Variablenlistenkennung nicht eindeutig ist, kann dies eine Störung beim Austausch von Variablen verursachen.
HINWEIS |
KOMMUNIKATIONSVERLUST |
Stellen Sie sicher, dass die Variablenlistenkennung im Netzwerk nur von einer IP-Adresse verwendet wird. |
Die Nichtbeachtung dieser Anweisungen kann Sachschäden zur Folge haben. |
Die Funktion zur Überprüfung der Listenkennung wird in der Empfänger-Steuerung implementiert.
Wenn eine NVL (Empfänger) feststellt, dass zwei verschiedene IP-Adressen dieselbe Listenkennung verwenden, stellt der Empfänger den Empfang von Datagrammen umgehend ein.
Darüber hinaus wird im Funktionsbaustein NETVARGETDIAGINFO eine Benachrichtigung ausgegeben. Die IP-Adressen der beiden Sender werden in den Ausgangsparametern dwDuplicateListIdIp1 und dwDuplicateListIdIp dieses Funktionsbausteins bereitgestellt.
Über den Funktionsbaustein NETVARRESETERROR werden die erkannten NVL-Fehler zurückgesetzt und die Kommunikation neu gestartet.
Konsistenz in den Typen an Netzwerkvariablen
HINWEIS: Der Typ der Netzwerkvariable wird zwischen verschiedenen Steuerungen nicht geteilt. Sie müssen sicherstellen, dass die verwendeten Typen auf allen Geräten dieselbe Definition haben; andernfalls ist die NVL-Kommunikation nicht möglich.
Dies trifft beispielsweise auf die Typen SEC.ETH_R_STRUCT und SEC.PLC_R_STRUCT zu. Diese sind standardmäßig auf verschiedenen Steuerungen mit verschiedener Größe oder Feldern verfügbar.