Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 5 von 5

Thema: Array aktualisieren

  1. #1
    Registriert seit
    19.06.2003
    Ort
    Im Staub ...
    Beiträge
    337
    Danke
    115
    Erhielt 26 Danke für 23 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Guten Morgen,

    WCCF PC-RT an CPU315-2DP über Profibus.

    Wenn ich im VB-Script schreibe ...
    Code:
    dim w
    w = SmartTags("Prot-Daten-Transfer.PDat_W1")(i)
    wird dann das Array-Element in diesem Moment aus der S7 gelesen, so dass ich im Script den aktuellen Wert erhalte?
    Oder muss ich vor dem Script-Aufruf das Array mit der Funktion 'AktualisiereVariable' aktualisieren?

    EDIT: Das Array steht auf Erfassungsart 'Auf Anforderung'.

    Danke für Eure Antworten.

    Gruß
    Geändert von ssound1de (23.02.2010 um 08:58 Uhr)
    Zitieren Zitieren Array aktualisieren  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.786
    Danke
    398
    Erhielt 2.414 Danke für 2.010 Beiträge

    Standard

    Hallo,
    zu dem Thema hatte ich mit JesperMP mal eine interessante Diskussion.
    Lies dir doch mal das durch. Für dich sollten hier die letzten Beiträge nützlich sein ...

    Gruß
    LL

  3. #3
    Avatar von ssound1de
    ssound1de ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    19.06.2003
    Ort
    Im Staub ...
    Beiträge
    337
    Danke
    115
    Erhielt 26 Danke für 23 Beiträge

    Standard

    Hi LL,

    Danke für Deine Antwort und sorry, dass ich mich erst jetzt wieder melde.

    Habe den Thread gelesen - bringt mich aber im Moment nicht wirklich weiter.

    Momentan aktualisiere ich das Array vor dem Script-Aufruf, indem ich eine Zählvariable in der S7 beobachte (zyklisch forlaufend), die immer dann hochzählt, wenn das Array in Flex aktualisiert werden soll.
    Flex ruft dann über Wertänderung der Zähl-Var die Funktion 'Aktualisiere Variable' (mit Aktualisierungskennung) auf (das Array steht in Flex auf Erfassungsart 'Auf Anforderung').
    Kurz drauf kommt dann der Script-Aufruf, der die Daten verarbeitet.
    Nur macht es ja wenig Sinn, wenn die Var's dann im Script nochmal eingelesen werden.

    Und wegen Array komplett aktualisieren in WCCF (im Script) hab ich den Thread hier gelesen, wonach

    Code:
    SmartTags("Array_PLC")=IntArray
    funktionieren soll,
    dass hier aber nicht
    Code:
    IntArray = SmartTags("Array_PLC")
    Ich werde wohl um ein paar Versuche nicht herum kommen

    Gruß

  4. #4
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.786
    Danke
    398
    Erhielt 2.414 Danke für 2.010 Beiträge

    Standard

    ... da kann ich dir dann auch nicht mehr viel dazu sagen ...
    Laut Jesper würde das Script das ARRAY aktualisieren - ich nehme ihm das durchaus ab ...
    Die Zuweisung INT_Array = Ext_Array setzt auf beiden Seiten die gleiche Dimensionierung (und Variablentyp) voraus. Bitte auch berücksichtigen, dass das erste Element deines Ext_Array's im Int_Array beim Index 0 landet ...

    Gruß
    LL

  5. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    ssound1de (01.03.2010)

  6. #5
    Avatar von ssound1de
    ssound1de ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    19.06.2003
    Ort
    Im Staub ...
    Beiträge
    337
    Danke
    115
    Erhielt 26 Danke für 23 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi,

    da bin ich nochmal.
    Habe jetzt ein bisschen rumprobiert.

    Array Zugriff im Script
    Folgendes funktioniert (Syntax Prüfung OK) ...
    Code:
    Dim WCCFArray(64)
    SmartTags("S7Array") = WCCFArray
    Folgendes funktioniert nicht (Syntaxfehler: Ein Array kann nicht Ziel einer Zuweisung sein. in Zeile 49, Spalte 4
    Code:
    Dim WCCFArray(64)
    WCCFArray = SmartTags("S7Array")
    Scriptzuriff auf Einzelelemente des S7Array's (wie im obersten Beitrag)
    Code:
    dim w
    w = SmartTags("S7Array")(i)
    Alle Variablen kommen nur im Script vor

    1.) Erfassungsart des Arrays 'Zyklisch fortlaufend'
    Die Aktualisierung funktioniert nicht schnell genug - teilweise kommen veraltete Werte an.
    Ausserdem unnütze Busbelastung

    2.) Erfassungsart des Arrays 'Zyklisch bei Verwendung'
    Die Aktualisierung funktioniert nicht schnell genug - teilweise kommen veraltete Werte an.

    3.) Erfassungsart des Arrays 'Auf Anforderung'
    Die Aktualisierung funktioniert überhaupt nicht.

    Gruß.

Ähnliche Themen

  1. Antworten: 18
    Letzter Beitrag: 21.12.2016, 17:03
  2. UDT in DB aktualisieren
    Von Kurt im Forum Simatic
    Antworten: 18
    Letzter Beitrag: 08.07.2015, 11:37
  3. DB aktualisieren ?
    Von Techniker1907 im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 15.09.2011, 14:47
  4. Bool-Array in Byte-Array
    Von Techniker im Forum Sonstige Steuerungen
    Antworten: 10
    Letzter Beitrag: 13.01.2006, 19:12
  5. DB aktualisieren
    Von totalfuchs im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 18.07.2005, 17:43

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •