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

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

Thema: WinCC flex Structur --> Array

  1. #1
    Registriert seit
    02.04.2009
    Beiträge
    13
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Forum, ich stehe vor dem Problem, das ich ca. 400 Werte aus einem DB in flexible anzeigen und ändern muss. Jetzt kann ich ja, wenn die Werte hintereinander stehen würden, ein Array definieren. Die Werte stehen jedoch nicht hintereinander, sondern in einer Struct mit 200 Bytes Abstand. Gibt es eine Möglichkeit, den DB komplett in ein Array zu laden und anschließend die Werte, die ich benötige mit einen Script herauszupicken, oder geht das nur als einzelne Tags ? Ein Array in Flex geht leider nur bis zu einer größe von 2000. Also als DINT definiert könnte ich 8000 Bytes in ein Array einlesen. Der DB hat jedoch eine Größe von 16000 Bytes. Hat von euch jemand schon Erfahrungen mit solchen Datenmengen gemacht ? Ist Flexible dann Systemtechnisch am Ende und Ausgelastet ? lg Thomas
    Zitieren Zitieren WinCC flex Structur --> Array  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.220
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Ich hab das mal mit Multiplexvariablen in ProTool gemacht, allerdings nur für 50 Werte, nicht für 400. Dabei wird für jeden einzelen Wert eine Variable angelegt, auf welche man dann per Multiplexvariable zugreifen kann. Gibts eigentlich in WinCCFlex auch, wenn das Gerät das unterstützt. Vorteil ist eigentlich, daß man am Panel über ein Auswahlfeld auswählen kann, auf welche der 400 Variablen man zugreifen möchte.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  3. #3
    supergrobi ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.04.2009
    Beiträge
    13
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Ralle, danke, jedoch bringt mich das nicht im wirklich weiter, da ich alle 400 Variablen anzeigen lassen muss. Das wären also 400 Tags. Wenn ich das irgendwie aus einem Array rausfischen könnte, wären es nur 1 Tag.

  4. #4
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Zitat Zitat von supergrobi Beitrag anzeigen
    Ein Array in Flex geht leider nur bis zu einer größe von 2000. Also als DINT definiert könnte ich 8000 Bytes in ein Array einlesen. Der DB hat jedoch eine Größe von 16000 Bytes.
    Du könntest in WinCC flexible mehrere Arrays anlegen:

    Code:
    ARRAY_1  DB100.DBB0      Länge 2000 Bytes
     
    ARRAY_2  DB100.DBB2000   Länge 2000 Bytes
     
    :
     
    ARRAY_8  DB100.DBB14000  Länge 2000 Bytes
    Zitat Zitat von supergrobi Beitrag anzeigen
    Hat von euch jemand schon Erfahrungen mit solchen Datenmengen gemacht ? Ist Flexible dann Systemtechnisch am Ende und Ausgelastet ? lg Thomas
    Mit solchen großen Arrays habe ich auch noch nicht gearbeitet.

    Was hast Du eigentlich für ein Bediengerät? Hast Du ein Panel oder arbeitest Du mit WinCC flexible Runtime?

    Gruß Kai

  5. #5
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.220
    Danke
    533
    Erhielt 2.696 Danke für 1.948 Beiträge

    Standard

    Zitat Zitat von supergrobi Beitrag anzeigen
    Hallo Ralle, danke, jedoch bringt mich das nicht im wirklich weiter, da ich alle 400 Variablen anzeigen lassen muss. Das wären also 400 Tags. Wenn ich das irgendwie aus einem Array rausfischen könnte, wären es nur 1 Tag.
    Willst du wirklich alle 400 Werte gleichzeitig anzeigen?
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  6. #6
    supergrobi ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.04.2009
    Beiträge
    13
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    @ Kai
    ja, so etwas denke ich mir auch.. schön, wäre es, wenn es eine bessere Möglichkeit geben würde. So wird das Script halt etwas aufwändiger.
    Die Werte sind normale Integer Variablen. Na ich versuch es einfach mal. Achso, ich arbeite zum Glück mit einer Runtime

    @ Ralle
    ja, ich möchte wirklich 400 Werte gleichzeitig anzeigen lassen. Das läuft auch schon ganz gut. Der Hintergrund an der Sache ist, bis jetzt waren diese Werte in Verschiedenen DBs in einer Reihe fortlaufend untergebracht. Also alle 400 Werte nacheinander. Jetzt gibt es einen "SammelDB" mit entsprechender Structur in dem die Werte leider nicht mehr Nacheinander stehen. Dieser ist aufgrund der Erweiterbarkeit dazu gekommen.

  7. #7
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard

    Zitat Zitat von supergrobi Beitrag anzeigen
    Gibt es eine Möglichkeit, den DB komplett in ein Array zu laden und anschließend die Werte, die ich benötige mit einen Script herauszupicken, oder geht das nur als einzelne Tags ?
    In WinCC flexible kannst Du auf die einzelnen Array-Elemente und damit auf die einzelnen Variablen direkt zugreifen, Du brauchst dafür kein VBScirpt.

    Siehe dazu auch das folgende Programmbeispiel:

    http://www.sps-forum.de/showthread.php?t=22745

    Gruß Kai

  8. #8
    Registriert seit
    02.08.2007
    Ort
    BW im Ostalbkreis
    Beiträge
    249
    Danke
    32
    Erhielt 27 Danke für 25 Beiträge

    Standard

    Hi,

    und wie wäre es die Werte auf der SPS-Seite gemeinsam hintereinander in einen (neuen) DB zu kopieren, so daß deinen 200 Byte Reserve oder was auch immer nicht dazwischen stehen??? und du arbeitest auf Panelseite einfach mit dem neuen DB...

    Gruß

    PhilippL

  9. #9
    supergrobi ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    02.04.2009
    Beiträge
    13
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    @ Kai

    oops ja, hast Recht, ich kann die ja direkt auswählen.. Manchmal sieht man den Wald vor lauter Bäumen nicht. Egal, ich hab es jetzt erst mal mit einem 2000er Array versucht und daraus 20 Variablen benutzt. Dabei ist der Bildaufbau schon recht langsam geworden - nur beim Simulator. Also vergessen wir das besser.
    Ich werde also die Werte nach dem alten Schema in einem Extra DB als Extrawurst behandeln müssen

    @ PhillipL

    das geht leider nicht, da die Werte auch von der VISU verändert werden können (sollen). Dies wäre Programmtechnisch noch aufwendiger, da man prüfen muss, wo sich der Wert jetzt geändert hat, von der SPS oder Benutzereingabe.

  10. #10
    Registriert seit
    12.05.2007
    Beiträge
    416
    Danke
    14
    Erhielt 45 Danke für 40 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Bildbaustein!
    Da kannst du Strukturen zuweisen
    Geht ganz gut mach ich auch...

Ähnliche Themen

  1. WinCC Flex Werte in ein Array schreiben
    Von Neuling74 im Forum HMI
    Antworten: 15
    Letzter Beitrag: 30.12.2015, 00:14
  2. Antworten: 7
    Letzter Beitrag: 22.10.2010, 09:51
  3. Antworten: 4
    Letzter Beitrag: 23.07.2010, 12:21
  4. Problem ARRAY of STRUCT S7 -> WinCC flex 2008
    Von sps-concept im Forum HMI
    Antworten: 4
    Letzter Beitrag: 19.02.2010, 18:49
  5. WinCC flex Variable, Struktur, Array
    Von xhasx im Forum HMI
    Antworten: 3
    Letzter Beitrag: 11.06.2007, 16:30

Stichworte

Lesezeichen

Berechtigungen

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