Ich habe ein Problem bei der Kommunikation zwischen der SPS und LabView.
Ich schreibe von LabView drei Variablen (VonOPC1,2,3) in einer Gruppe auf den OPC Server. Und danach werden sie von der SPS eingelesen. Somit füllen wir ein Array mit 300 Zeilen, in dem wir Schritt für Schritt jede einzelne Zeile mit einer Gruppe einschreiben.
Auf dem OPC Server wird jedoch die Variable VonOPC2 immer mit 0 überschrieben. Das heisst die Variable wird von LabView eingeschrieben jedoch gerade wieder vom OPC Server überschrieben. Auf der SPS wird immer eine 0 gelesen. Wir haben nun drei weitere Varablen dazugetan. Momentan schieben wir immer eine "Abfallvariable" zwischen zwei "richtige Variablen". Das heisst immer der Platz 0,2,4 im Array sind schlecht und der Platz 1,3,5 im Array sind gut.
Kann mir irgende JEMAND weiter helfen??
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Die Beschreibung, dass jede zweite Variable auf der SPS als 0 ankommt, läßt vermuten, dass es sich (dort) um Integer-Variable (16 Bit breit) handelt, im LabView aber ein Windows-Integer (32 Bit !!!) vorliegt. Scheinbar überschreibt ein Teil einer übertragenen Variablen ihren Nachbarn im Array.
Sollte ich mit INT richtig liegen, könnte die Änderung der SPS-Variablen von INT nach DINT das Problem beheben.
Rolf
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Halo
Ich habe ein Problem bei der Kommunikation zwischen der SPS und LabView.
Ich schreibe von LabView drei Variablen (VonOPC1,2,3) in einer Gruppe auf den OPC Server. Und danach werden sie von der SPS eingelesen. Somit füllen wir ein Array mit 300 Zeilen, in dem wir Schritt für Schritt jede einzelne Zeile mit einer Gruppe einschreiben.
Auf dem OPC Server wird jedoch die Variable VonOPC2 immer mit 0 überschrieben. Das heisst die Variable wird von LabView eingeschrieben jedoch gerade wieder vom OPC Server überschrieben. Auf der SPS wird immer eine 0 gelesen. Wir haben nun drei weitere Varablen dazugetan. Momentan schieben wir immer eine "Abfallvariable" zwischen zwei "richtige Variablen". Das heisst immer der Platz 0,2,4 im Array sind schlecht und der Platz 1,3,5 im Array sind gut.
Kann mir irgende JEMAND weiter helfen??
Hallo,
sieht verdächtig nach einem Typkonflikt aus.
Die Beschreibung, dass jede zweite Variable auf der SPS als 0 ankommt, läßt vermuten, dass es sich (dort) um Integer-Variable (16 Bit breit) handelt, im LabView aber ein Windows-Integer (32 Bit !!!) vorliegt. Scheinbar überschreibt ein Teil einer übertragenen Variablen ihren Nachbarn im Array.
Sollte ich mit INT richtig liegen, könnte die Änderung der SPS-Variablen von INT nach DINT das Problem beheben.
Rolf