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

Ergebnis 1 bis 7 von 7

Thema: Exceltabelle in MP377

  1. #1
    Registriert seit
    17.11.2008
    Beiträge
    5
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Beitrag


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich habe folgendes Problem(Aufgabe).
    In einer S7-300 (315-2DP) befindet sich ein Datenbaustein mit einem array aus 1000 Bytes. 8 Bytes gehören immer zu einem Datensatz. Diese Datensatze sollen nun nach Häufigkeit sortiert werden.
    Anschließend im MP377 mit WinCC Flex2007 angezeigt werden(als Balken). Eine sogen. Top Anzeige.
    Mit dem bubbelsort komme ich da nicht wieter, oder?
    Hat jemand einen Vorschlag, wie ich dieses umsetzen kann?
    Hab schon gedacht es in Verbindung mit Excel und div. Macros zu versuchen. Nur fehlt mir noch das Wie.


    Über eine Idee oder sogar eine Lösungshilfe wäre ich dankbar.

    Gruß
    abbi4
    Zitieren Zitieren Exceltabelle in MP377  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.399 Danke für 1.999 Beiträge

    Standard

    Hallo,
    eine Abart von Bubblesort wäre hier schon die Lösung ...
    Du sortierst deine Tabelle zunächst so, dass du gleiche Einträge hintereinander stehen hast. Das kann Bubblesort, wenn du die richtige Spalte zum Sortieren nimmst.
    Aus der so entstandenen Umsortierung machst du nun eine neue Tabelle mit der zusätzlichen Spalte "Häufigkeit". Nun gehst du deine ursprüngliche Liste durch. Bei dem ersten neuen Wert schreibst du diesen in die neue Liste und setzt Häufigkeit auf "1". Für jeden weiteren gleichen Wert inkrementierst du dann nur noch Häufigkeit auf.
    Hast du alle Werte umgetragen, dann sortierst du diese Liste nochmals - diesmal allerdings nach der Spalte Häufigkeit ...

    Ich hoffe, damit kommst du erstmal weiter.
    Welches Mediums willst du dich hier bedienen ? Soll das in der SPS passieren oder willst du das in dem Panel mit VB-Script machen ?

    Gruß
    LL

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

    abbi4 (11.03.2009)

  4. #3
    Registriert seit
    08.04.2008
    Ort
    Köln
    Beiträge
    844
    Danke
    39
    Erhielt 244 Danke für 199 Beiträge

    Standard

    Hallo abbi,

    wenn ich das hier:
    http://support.automation.siemens.co...ew/de/32960250
    richtig interpretiere, wird dass, so wie Du es vorhast, erst ab WinCC flex 2008 unterstützt.

    Ob es mit VB-Script und Flex2007 funktioniert: keine Ahnung!

    Die Sortierung in der S7 vorzunehmen und dann das Ergebnis auf dem Panel anzuzeigen,
    ist meiner Meinung nach kein Problem:
    Du erzeugst zu Deinem Datensatz-DB noch zwei weitere DBs: Einen für die Sortierung
    und einen für die Anzeige. Dann kannst Du mit einer äußeren Schleife den Datensatz-DB
    durchackern und mit einer inneren Schleife die Daten mit Deinem Sortier-DB vergleichen und
    die Häufigkeit ermitteln.
    Wenn dann die äußere Schleife abgearbeitet ist, hängst Du einen Bubblesort an
    und kopierst das Ergebnis in den DB für die Anzeige am Panel.

    Grüße
    Gebs

  5. #4
    Registriert seit
    08.04.2008
    Ort
    Köln
    Beiträge
    844
    Danke
    39
    Erhielt 244 Danke für 199 Beiträge

    Standard

    Hallo abbi,

    ich hab' mich mal mit Deinem Problem beschäftigt. Hier mein Lösungsansatz.

    Grüße
    Gebs
    Angehängte Dateien Angehängte Dateien

  6. Folgender Benutzer sagt Danke zu Gebs für den nützlichen Beitrag:

    abbi4 (13.03.2009)

  7. #5
    abbi4 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    17.11.2008
    Beiträge
    5
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo gebs,

    werde mir deinen Lösungssatz mal anschauen.
    Besten Dank.


    Gruß
    abbi

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

    Standard

    Zitat Zitat von abbi4 Beitrag anzeigen
    In einer S7-300 (315-2DP) befindet sich ein Datenbaustein mit einem array aus 1000 Bytes. 8 Bytes gehören immer zu einem Datensatz. Diese Datensatze sollen nun nach Häufigkeit sortiert werden.
    Kannst Du mal ein Beispiel für einen Datensatz bringen? Was steht in den einzelnen 8 Bytes?

    Gruß Kai

  9. #7
    abbi4 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    17.11.2008
    Beiträge
    5
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Kai,

    gebs hat schon ein super SORTIEREN geschrieben, welches genau auf mein Problem passt. An dieser Stelle noch mal Besten Dank gebs.

    Beispiel: 1 Datensatz 8 bytes = 4 Worte beginnent mit DW10
    1. Wort Box-Nr. (4stellig INT)
    2. Wort Mod.Nr. (4stellig hex)
    3. Wort Variante (4 stellig hex)
    4. Wort Farbe (4stellig hex)

    Wobei die Wörter 2,3,4 zwar in Hex sind doch nur die Zahlen(BCD) genutzt werden.
    Gruß
    abbi

Ähnliche Themen

  1. Datenbaustein -> Exceltabelle
    Von Magni im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 27.10.2011, 16:25
  2. Exceltabelle auslesen (Codesys)
    Von na5o5 im Forum Programmierstrategien
    Antworten: 6
    Letzter Beitrag: 30.10.2007, 10:32
  3. Antworten: 1
    Letzter Beitrag: 28.09.2006, 19:39
  4. Antworten: 5
    Letzter Beitrag: 19.05.2006, 23:24
  5. exceltabelle s7 einfügen
    Von verona im Forum Simatic
    Antworten: 24
    Letzter Beitrag: 16.09.2004, 13:57

Stichworte

Lesezeichen

Berechtigungen

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