# Codesys netzwerkvariablen



## Curby (24 Juni 2014)

Hallo an alle,

ich verzweifel grade an den Netzwerkvariablen und, dass diese mal übertragen werden mal nicht etc.

Ich habe mehrere Wago Controller 880 und mehrere Variablenlisten. Eine davon soll jeder Controller lesen und schreiben können. Die anderen sollen immer jeweils einer lesen, einer schreiben. Und eine letzte Liste soll jeder empfangen und nur einer schreiben.

Die Frage ist nun, warum gibt es so derbe Aussetzer, und wie verteile ich die COB-ID. 

Ich hab  beispielsweise auf jede Controller die erste Variablenliste, die jeder lesen und schreiben darf (bei Änderungen) die COB-ID 1 gegeben. Ich hab gelesen, ich soll jeweils lesen und schreiben eine unterschiedliche ID geben. Wie mache ich das bei Lesen und schreiben? Wieso kann diese Liste nicht von jedem geschrieben werden?

mfg
Nils


----------



## wolfi-sps (25 Juni 2014)

Hallo Nils,

Ich arbeite auch mit Netzwerkvariablen. Habe keine Probleme damit.
Ich habe drei Steuerungen und ein Panel mit Targetvisualisierung von Wago.
Habe lesen und schreiben getrennt und die Variablenlisten eindeutige Namen gegeben - übersichtlicher.

z.B. in der VAR Liste:

GV_Steuerung_OG_Schreiben (Steuerung EG - COB-ID 10) --> GV_Steuerung_EG_Lesen (Steuerung OG COB-ID 10)
GV_Steuerung_OG_Lesen (Steuerung EG COB-ID 11) --> GV_Steuerung_EG_Schreiben (Steuerung OG COB-ID 11)

usw.

Gruss Wolfi


----------



## Wu Fu (27 Juni 2014)

Hallo Nils,

ich machs auch so wie Wolfi, hat bisher immer geklappt.
Habe separate Listen für Lesen oder Schreiben, beides gleichzeitig habe ich noch nicht getestet.
Schau mal hier:
http://de.codesys.com/aktuelles/pub...mieren-eine-artikelserie-von-dr-ulrich-b.html
Ich glaube Folge 15 beschäftigt sich mit dem Thema.

Schöne Grüße
Daniel


----------



## SRossmann (27 Juni 2014)

Hallo,

ich halte auch für besser eine separate Variablenliste pro Steuerung anzulegen, welche diese beschreibt. Lesen können das dann ja beliebig viele Steuerungen.
Da die Netzwerkvariablen über UDP-Broadcast gesendet werden, erfolgt die Zuordnung der Netzwerkvariablenlisten in den einzelnen Steuerungen ausschließlich über die COB-ID. Da Du die Variablen nur bei Änderung überträgst, solltest Du auch beachten dass es absolut keine Kontrolle gibt, ob ein versendetes Packet an Netzwerkvariablen an der Gegenstelle auch ankommt.

Bei CoDeSys V3 gibt es meines Wissens nur noch reine Schreib-, und reine Lese Variablenlisten. Und das ist auch gut so!


----------



## Curby (2 Juli 2014)

SRossmann schrieb:


> Da Du die Variablen nur bei Änderung überträgst, solltest Du auch beachten dass es absolut keine Kontrolle gibt, ob ein versendetes Packet an Netzwerkvariablen an der Gegenstelle auch ankommt!



Aber wie wahrscheinlich ist das? Wenn das einmal in mehreren Wochen passiert, ist das ok. Wenn das ständig passiert ist das natürlich ein No-Go. Es sollen bei mir halt mehrere Wago Controller die Bildschirmnummer eines Pro-Face Panels ändern. Das heißt bei Änderung überträgt, dieses diese Variable entweder zu einer zentralen (bessere Lösung) oder alle Wagos. Dann kann das Panel die irgendwo oder an der einen zentralen Wago abfragen.

Aber ich durchblicke noch nicht ganz, wie ich die COB-ID vergeben muss.


----------



## wolfi-sps (6 Juli 2014)

Hallo Nils,

das nit den COB-ID ist ganz einfach.
Du muss die gleiche COB-ID in der anderen Steuerung eingeben. 
Hatte ich oben schon geschrieben.

GV_Steuerung_OG_Schreiben (Steuerung EG - *COB-ID 10*) --> GV_Steuerung_EG_Lesen (Steuerung OG *COB-ID 10*)
GV_Steuerung_OG_Lesen (Steuerung EG *COB-ID 11*) --> GV_Steuerung_EG_Schreiben (Steuerung OG *COB-ID 11*)

Gruss Wolfgang


----------

