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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: WinCC Flex 28000 Datensätze auslesen

  1. #1
    Registriert seit
    05.11.2004
    Ort
    Schweiz
    Beiträge
    1.138
    Danke
    224
    Erhielt 127 Danke für 85 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo.

    Ich hab hier im Forum rumgesucht, aber hab nix gefunden, was mich bei meinem letzten Problem weiterhilft.

    Ich hab 4 DBs in einer CPU-315. Der eine DB110 hat 6.000 Int-Werte,
    der 2. DB120 hat 7.000 Int-Werte, DB130 hat 7.000 und DB140 hat
    8.000 Int-Werte gespeichert.

    Nun sollen diese Werte aus der SPS ausgelesen werden und in einer Datei
    gespeichert werden. Das Auslesen und Speichern ist schon fertig. Aber ich
    lese nur die Variable aus, die ich vorher definiert habe in WinCC Flex.

    Nur ist der Aufwand 28.000 Variablen zu erstellen und dann in dem Script
    jeweils zu schreiben einfach zu hoch und unnötig

    Kann ich nicht die Variable in VB-Script generieren und dort dann abrufen?

    Danke
    Kommt Zeit.... Kommt Rat.... In der Tat.
    Gartenlampe mit Windenergie anstelle von Solar? Bei Interesse -> PN
    Zitieren Zitieren WinCC Flex 28000 Datensätze auslesen  

  2. #2
    Registriert seit
    17.07.2009
    Ort
    Am Rande der Ostalb
    Beiträge
    5.532
    Danke
    1.152
    Erhielt 1.253 Danke für 982 Beiträge

    Standard

    Du kannst in Flex. auch Arrays definieren. Allerdings ist die Anzahl der Elemente begrenzt. Ich meine irgendwo unter 2000 Int pro Array.

    In wie weit allerdings das Einlesen von zig Tausenden Werten über ein OP sinnvoll ist, lass ich mal dahingestellt. Ich würd mir hier eher mal die Archiv-Funktionen anschauen.

    Gruß
    Dieter

  3. #3
    Krumnix ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    05.11.2004
    Ort
    Schweiz
    Beiträge
    1.138
    Danke
    224
    Erhielt 127 Danke für 85 Beiträge

    Standard

    Ich benutze nur die WinCC Flex Runtime. Das System läuft aber auf einem
    Laptop dann. Der Kunde will mit dem dann von Anlage zu Anlage rennen.
    Sind 4 Anlagen, wo diese DBs Ausgelesen werden sollen.

    Die Speicherung erfolgt in einer Datei auf dem Rechner.
    Kommt Zeit.... Kommt Rat.... In der Tat.
    Gartenlampe mit Windenergie anstelle von Solar? Bei Interesse -> PN

  4. #4
    Registriert seit
    13.10.2007
    Beiträge
    12.063
    Danke
    2.793
    Erhielt 3.288 Danke für 2.168 Beiträge

    Standard

    Hallo Krumnix,
    mann kann sich die Variablen aus Strings zusammen setzen
    Hier ein Beispiel wie ich mir eine Bildnavigation in Flexibel je
    nach Maschinenbestückung automatisiere.

    Code:
     
    'Aggregat 141
    i = SmartTags("Parameter\P._141.Nr")
    If i = -1 Or  i > 10 Then
    ...
    ...
    Else
    'Bildnavigation einstellen
     SmartTags("Parameter\P._141.Blatt_zurueck") = Blatt_zurueck
     Blatt_zurueck   = 1411
     SmartTags(Blatt_vor) = 1411
     Blatt_vor    = "Parameter\P._141.Blatt_vor"
    End if
     
     
    'Aggregat 142
    i = SmartTags("Parameter\P._142.Nr")
    If i = -1 Or  i > 10 Then
    ...
    ...
    'Bildnavigation einstellen
     SmartTags("Parameter\P._142.Blatt_zurueck") = Blatt_zurueck
     Blatt_zurueck   = 1421
     SmartTags(Blatt_vor) = 1421
     Blatt_vor    = "Parameter\P._142.Blatt_vor"
    End if
    gruß helmut
    - - -
    Wer als Werkzeug nur einen Hammer hat, sieht in jedem Problem einen Nagel.

  5. #5
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.792
    Danke
    398
    Erhielt 2.416 Danke für 2.012 Beiträge

    Standard

    Hallo,
    ich würde hier auch den Weg über Array's wählen. Wozu ich im Augenblick nichts sagen kann ist die Sache mit der Aktualisierung der Variablen. Anscheinend fordert Flex zwar bei Array's die Aktualisierung auch im Script an, dass kann dann aber "ein bißchen" dauern.
    Die Verwendung von Array's setzt natürlich auch für alle Elemente den gleichen Datentyp (oder einen kompatiblen) voraus.

    Was mich hier aber interessieren würde ... Was steht denn in den 28000 Variablen alles Tolles drin, dass das unbedingt gesichert werden muß ?

    Gruß
    LL

  6. #6
    Krumnix ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    05.11.2004
    Ort
    Schweiz
    Beiträge
    1.138
    Danke
    224
    Erhielt 127 Danke für 85 Beiträge

    Standard

    Naja, irgendwelche Messung, Berechung, etc.
    Das Programm in der CPU ist nicht von mir

    Der Kunde möchte halt gerne einmal die Woche (am Wochenende) die
    Daten aller DBs sichern, wo was wichtiges drin stehen könnte.

    Ich habe das nun über ein Array gemacht. Das funktioniert sogar recht gut.
    Muss nur für jeden DB ein Script starten lassen, da sonst WinCC Flex sich
    aufhängt, wenn ich in einer Schleife mehrere große DBs auslese

    !Nun habe ich eine weitere Frage!
    Da ich zum Auslesen ein Array des Types Int gewählt habe, sind natürlich alle
    Daten als Int vorhanden.

    Jetzt sind aber (weiß ich erst seit heute -.-) in einem DB an jeder 30.
    Stelle 6 Chars vorhanden. Also ein String aus 6 Zeichen sozusagen.
    Wenn ich aber das als int auslese, bekomme ich ja keine Möglichkeit, den
    int in string zu wandeln, so das der Wert stimmt.
    AC wäre dann 16707. Wenn ich dann CStr mache, steht später nicht AC, sondern
    logischer weise 16707 drin.

    Wie kann ich jetzt aus dem Intwert ein AC z.b. bekommen, ohne eine riesige
    eigene Auswerte-Funktion zu programmieren?
    Gibs da einen Trick oder schon ne Funktion in VBS bei WinCC Flex?

    Danke
    Kommt Zeit.... Kommt Rat.... In der Tat.
    Gartenlampe mit Windenergie anstelle von Solar? Bei Interesse -> PN

  7. #7
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.792
    Danke
    398
    Erhielt 2.416 Danke für 2.012 Beiträge

    Standard

    Hallo,
    um die "riesige eigene Auswertefunktion" kommst du m.E. nicht herum (außer mit Einzel-Variablen oder einer Struktur - was ja wieder Einzel-Variablen wären).
    Für einen STRING geht das ja aber noch. Richtig lustig wird das, wenn du einen REAL dazwischen hast. Hier kann dir nur helfen, wenn es dir gelingt sinnvoll Blöcke zu bilden - 1 DB muß ja nicht unbedingt 1 Array sein ...

    Gruß
    LL

  8. #8
    Registriert seit
    01.05.2009
    Beiträge
    74
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo zusammen,

    hab da ien ähnliches Problem.Habe in der Steurung ein paar DBs mit Messwerten.Möchte diese jetzt mittels PC run time und VBS in eine Datei schreiben.Das Schreiben läuft soweit.

    wenn ich mir mit alt + -> mien array ins programm hole sieht das so aus

    SmartTags("DB4.Meinarray")

    Die große Frage ist jetzt wie ich an die einzellnen elemente drannkomme z.b. in einer Schleife

  9. #9
    Registriert seit
    22.10.2005
    Beiträge
    253
    Danke
    25
    Erhielt 23 Danke für 23 Beiträge

    Standard

    Hallo,
    wie währe es mit folgender Software:
    ACCON-S7-Backup
    http://www.deltalogic.de/component/o...,49/Itemid,32/

    Gruß
    Joe

  10. #10
    Registriert seit
    01.05.2009
    Beiträge
    74
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ja danke aber scheint kostenpflichtig zu sein.

    aber geiz iss geil wo ich arbeite


    das muss doch mit VBS irgednwie gehen verdammt

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 17.08.2011, 13:27
  2. Datensätze abgleichen WinCC Flex 2008 SP2
    Von Juergena im Forum HMI
    Antworten: 3
    Letzter Beitrag: 29.07.2010, 09:42
  3. Antworten: 4
    Letzter Beitrag: 14.09.2009, 00:12
  4. Datensätze WinCC Flex
    Von siimad im Forum HMI
    Antworten: 1
    Letzter Beitrag: 21.07.2009, 09:11
  5. Antworten: 11
    Letzter Beitrag: 07.04.2009, 08:58

Lesezeichen

Berechtigungen

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