SPIDER_ACCESS Liest keine Daten

Begonnen von rrbd, 27. Juni 2013, 09:11:41

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

rrbd

Hallo,
ich habe geplant, einige Daten für eine Phoenix ILC 155  aus einder ILC 130 (Datenquelle)  im selben Netzwerk auszulesen, beide haben umfangreiche WebVisit-Visualisierung, so dass die benötigten Daten auf der  Datenquelle verfügbar sind. Meine Programmierumfebung: WebVisit Prof. und  PC WORX Express (jeweils aktuellste öffentliche Versionen)

Lt DEMO scheint es empfehlenswert/notwendig, den Baustein zusammen mit IP_CONTROL zu betreiben,  habe ich so vorgesehen.

Ein paar Beobachtungsdetails (die Variablen rechts oberhalb der Funktionsbausteine habe ich für Beobachtungszwecke eingefügt) aus dem Debug-Modus, bei möglicherweise sehr schnellen Änderungen hinkt die Anzeige also evtl deutlich hinterher:
a) Ein Fehler passiert anscheinend nicht, jedenfalls steht die Variable auf "00000000"
b) Wenn ich im Debug-Modus etwas in  meine Variable für ausgelesene Werte SA_1_VALUE 'reinschreibe wird das wieder überschrieben.
c) SA_1_Para.C_ENABLE: Wechselt zwischen 0 und 1 (ganz grob: Sekundentakt)
d) SA_1_Para.C_IP: Zeigt meistens die IP der Datenquell-SPS, manchmal auch 00000000
d) SA_1_Para.C_MODE: Steht immer auf 0
e) SA_1_Para.C_STATE: Ich Sehe 00, 01, FF
f) SA_1_Para.ERROR: Bombenfest auf 00000000
g) SA_1_Para.FIFO, SA_1_Para.MAILBOX: wirken irgendwie "tot"
h) SA_1_Para.R_OBSERVE: Dauer-1
i) SA_1_Para.TIME_RESET Dauer-0
k) Mit SA_1_VARNAME='@GV.Allg_V_sHZBA1' bekomme ich plötzlich Massen von Fehlermeldungen  "Ausgangsstring zu kurz" von
    PC WORX EXPRESS. Das ist auf der SPS, aus der gelesen wird, ein oscat_STRING20, STRING sollte also eigentlich kein Problem sein.
    Immerhin mal eine Reaktion. Wie es scheint  kommt der Fehler grundsätzlich wenn ich (entgeben der OSCAT-Anleitung) das "GV." vor den
   Globalvariablennamen setze (auch bei INT ...)
l) Stringlängenüberprüfung mit LEN für SA_1_VALUE zeigt immer Länge=0

Meine Testumgebung:
Datenquelle: ILC 130 ETH Firmware 3.91
Datenziel mit Spider_Access:  ILC 155 ETH Firmware 3.91
Programmierumgebung: PCWORX Express 6.20.331 Hotfix 2, WebVisit  6.10.00
Lib: pcworx_network_130 Heruntergeladen von  http://www.oscat.de/community/index.php/topic,1872.0.html "Achtung Die Dateien wurden zuletzt am 27.05.2013 18:42 aufgrund von Fehlerbereinigungen aktualisiert". ;it oscat_basic_333 als Lib. eingebunden, na klar ;-)
Beobachtung: Über VPN-Verbindung zum Netzwerk mit den ILC


Mache ich etwas falsch oder gibt's ein echtes Problem mit SPIDER_ACCESS?

Gruß

Rainer

[gelöscht durch Administrator]

peewit

hallo

das schaut merkwürdig aus

1. kannst du mal mit mode 2 probieren ob das schreiben funktioniert
    es gibt nähmlich eine alte und eine neue art des lesezugriffs
    ich benutze die alte variante, und vielleicht geht hier nur mehr die neue ?
    jedoch ist der schreibzugriff gleichgeblieben, somit sollte dieser noch immer gehen

2. was passiert wenn du das netzwerkkabel zur anderen sps absteckt, kommt dann ein Error ?

der baustein schaut nach ob der variablenname ein instanz ist, und wenn nicht wird automatisch "@GV." vorangestellt
das es dann mehr reaktion zeigt wenn du es manuell voranstellt ist auch merkwürdig
der fehler bezüglich stringlänge ist wahrscheinlich weil anstatt des prozesswertes eine sehr lange fehlermeldung übertragen wird

3. kannst du mal den baustein SPIDER_ACCESS selber online öffnen und die zustänge dokumentieren

tip:
wenn du mehrere variablen austauschen möchtest, dann solltest du in der network bibliothek dir mal das kapitel13  Netzwerk-Variablen anschauen. das ist viel performanter und flexibler


rrbd

Hallo,

Faszination Technik! Wollte der Sache auf den Grund gehen, habe ein paar Festwerte meiner "Schaltung" durch Variable ersetzt (weil ich in 30kM Entfernung keinen Netzwerkstecker ziehen kann, wollte ich halt die IP-Adresse ändern ...). Und nachdem erst mal gar nichts mehr gin -  nun läufts  :)  Frag mich nicht!

Kapitel 13 hatte ich schon mal drin gestöbert, aber die SPIDER_ACCESS-Variante hat für mich in bestimmten Anwendungen 2 besondere Vorteile

  • Kein Eingriff an der Datenquell-SPS nötig
  • Verbindung zu Fremdsystemen
Ich Programmiere beispielsweise auch Saia-SPS, und ich hätte öfters mal den Fall, etwas Datenaustausch betreiben zu müssen. Und da wäre SPIDER_ACCESS eine naheliegende Möglichkeit.

Ich berichte gelegentlich von Weiteren Erfolgen (hoffentlich) und/oder auffälligkeiten.

Thema Saia: Da müssen ja alle Variablen für die Spidercontrol-Visu global definiert sein, das heißt, zugriff einfach unter dem Namen, mit dem sie im Programm verwendet ist (und in der XYZ.tcr steht)?

Grüße

Rainer

peewit

hallo

gut das es jetzt geht.....warum auch immer

es gibt zwei möglichkeiten

globale variable                                            @GV.meinevariable
variable aus einer bausteininstanz              meineBausteininstanz.meinevariable

ob die saia auch beide varianten unterstützt kann ich dir nicht sagen
aber ich gehe davon aus....bzw. es könnte sein das der syntax je sps etwas abweicht....