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

Ergebnis 1 bis 6 von 6

Thema: Daten im Datenbaustein sortieren

  1. #1
    Registriert seit
    09.10.2006
    Beiträge
    270
    Danke
    32
    Erhielt 26 Danke für 24 Beiträge

    Beitrag


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi ich lerne Elektroniker für Automatisierungstechnik und bin zur Zeit im 2. Lehrjahr. Bedeutet soviel das ich erst seit 1. August mit Step7 programmiere.

    Ich soll in einem DB REAL bzw. INT Daten sortieren. Dies soll über eine Viso die mit WinCC erstellt wird gesteutet werden.
    Über die Viso sollen sich20 bis 30 Daten in den DB eintragen können die man dann per Knopfdruck auf- bzw. abwärts sortieren lassen kann.

    Da ich das noch nie gemacht habe würde ich mich freuen wenn ihr mir hefen könnt oder mir wenigstens einen Ansatzpunkt leifert.

    P.S.: Bis her hab ich nur Instanz-DB´s in Verbindung mit FB´s verwendet um mir meine "eigenen" Verknüpfung zu bauen. Die ich dann für mehrfach auftretende Schrittfolgen verwendet habe.
    Zitieren Zitieren Daten im Datenbaustein sortieren  

  2. #2
    Registriert seit
    13.09.2005
    Beiträge
    633
    Danke
    8
    Erhielt 8 Danke für 6 Beiträge

    Standard

    Weißt du wo die Daten in dem Datenbaustein stehen, sprich an welcher Adresse sie sich befinden?

    Ich habe noch irgendwo einen Baustein namens "shift_DB" den ich dir zur Verfügung stellen könnte, dieser ermöglicht das Verschieben von Daten von einem Datenbaustein in einen anderen.

    Oder sollte der Datentyp automatisch erkannt werden und die Daten nach dem Datentyp sortiert werden?

  3. #3
    Avatar von Golden Egg
    Golden Egg ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.10.2006
    Beiträge
    270
    Danke
    32
    Erhielt 26 Danke für 24 Beiträge

    Standard

    Zitat Zitat von CrazyCat Beitrag anzeigen
    Weißt du wo die Daten in dem Datenbaustein stehen, sprich an welcher Adresse sie sich befinden?
    Nein. Ich soll mir ja ein Beispielprojekt ausdenken. Mein Voratbeiter hat heut nur noch gemeint ich soll mich in Richtung indirekte Adressierung schlau machen.

    Zitat Zitat von CrazyCat Beitrag anzeigen
    Ich habe noch irgendwo einen Baustein namens "shift_DB" den ich dir zur Verfügung stellen könnte, dieser ermöglicht das Verschieben von Daten von einem Datenbaustein in einen anderen.

    Oder sollte der Datentyp automatisch erkannt werden und die Daten nach dem Datentyp sortiert werden?
    Eher zweitens. Ich habe das so verstanden das ich REAL bzw. INT Daten über die Viso eigebe und diese dann im DB aufsteigend oder absteigend sortieren lassen kann.

    Gibts eigentlich eine TIA von Siemens oder eine andere Ausbildungsunterlag die sich mit indirekter Adressierung beschäftig?
    Geändert von Golden Egg (10.10.2006 um 13:30 Uhr)

  4. #4
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard

    Das mit dem Sortieren hatten wir schon mal im Forum. Ich habe dazu Programmbeispiele gepostet. Suche mal nach "bubblesort".

  5. #5
    Registriert seit
    18.09.2006
    Beiträge
    231
    Danke
    0
    Erhielt 2 Danke für 2 Beiträge

    Standard

    wenn real und int(dint) gemischt vorliegen, hast du ein problem, weil das format ein völlig anderes ist und du beim sortieren den typ berücksichtigen müsstest.

    wo sollen die daten denn sortiert werden? in der sps oder in der visu
    wenn sps: sollen die dann sortiert in einem anderen db gelegt werden?

    in der visu wäre das einfach mit einem script zu machen.

    hier 2 beispiele wie das mit vbscript aussehen könnte
    Code:
    'schnelle sortierung
     offset = x / 2
     do while offset > 0
      'if offset = 0 then exit do
      limit = x - offset
      do
       tauschen = falsch
       FOR zeile = 1 TO Limit
                 IF UCASE(name(zeile)) > UCASE(name(zeile + Offset)) THEN
         name2 = name(zeile+1)
         name(zeile+1) = name(zeile)
         name(zeile) = name2
             Tauschen = zeile
           END IF
             NEXT
             Limit = Tauschen - Offset
         LOOP WHILE Tauschen
           Offset = Offset \ 2
     LOOP
     
    'langsame sortierung
     for y = 1 to x -1
      if ucase(name(y)) > ucase(name(y+1)) then
       name2 = name(y+1)
       name(y+1) = name(y)
       name(y) = name2
       y=1
      end if
     next
    .
    mfg KALEL

    Wer über gewisse Dinge nicht den Verstand verliert, der hat keinen zu verlieren.
    Gottfried Ephraim Lessing

  6. #6
    Avatar von Golden Egg
    Golden Egg ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    09.10.2006
    Beiträge
    270
    Danke
    32
    Erhielt 26 Danke für 24 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Sie sollen im DB sortiert werden.

    @zottel: wenn du den Link in "Programmierlösung gesuch" meinst der zeigt nichts bei mir an.
    12.01.2005, 16:51
    Zottel vbmenu_register("postmenu_12589", true);
    Erfahrener Benutzer
    Registriert seit: 19.06.2003
    Beiträge: 1.544



    1. Einen Index bilden, der die Adressen der Werte enthält.
    2. Den Index nach der Größe der Werte sortieren
    3. Die Werte in der Reihenfolge (aufsteigend) des Index mit Wert 5 vergleichen. Der 1., der größer ist, ist der richtige.
    Für die Punkte 1 und 2 findest du eine Lösung mit Code unter:
    http://www.sps-forum.de/phpBB2/viewtopic.php?t=1960
    Geändert von Golden Egg (11.10.2006 um 12:07 Uhr)

Ähnliche Themen

  1. Maximale Daten im Datenbaustein
    Von DirkKuhn im Forum Simatic
    Antworten: 23
    Letzter Beitrag: 11.05.2011, 23:37
  2. Daten sortieren DB1 -> DB2
    Von momo99 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 07.11.2009, 15:02
  3. Array-Daten sortieren
    Von L.T. im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 17.03.2009, 22:09
  4. Datenbaustein sortieren ect..
    Von TheBigMemph im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 12.03.2007, 17:58
  5. Daten sortieren
    Von Anonymous im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 13.03.2005, 15:50

Lesezeichen

Berechtigungen

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