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

Ergebnis 1 bis 2 von 2

Thema: Daten sortieren

  1. #1
    Anonymous Gast

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo, beim durchsuchen des Internets nach hilfreichen Ideen bin ich auf diese Seite gestoßen und hoffe, daß mir vielleich hier jemand helfen kann.

    Ich habe folgendes Problem:

    Ich habe eine Koordinatenabfüllanlage zum befüllen von Fässern. (X-Y-Achse). Diese Anlage soll jetzt mit einem Bildverarbeitungssytem ausgestattet werden, damit die Löcher der Fässer nicht mehr manuell angefahren werden müssen, sonder dieses soll automatisch erfolgen.

    Das Problem an der ganzen Sache ist , daß die von dem Bildverarbeitungssystem gelieferten Koordinaten nach der Erkennungsgüte sortiert sind. Das führt dazu, daß die Anlage sehr viele unsinnige Wege zurück legt, bevor der Abfüllvorgang beendet wird.

    Das zweite Problem ist, daß die Koordinaten, die von der Anlage angefahren werden, vor dem Start in einem FIFO-Speicher abgelegt werden müssen. Das bedeutet also, daß die Daten vorher sortiert werden müssen bevor sie an den FIFO-Speicher übertragen werden.

    Ich hoffe Ihr könnt mir da irgendwie helfen die Daten sinnvoll zu sortiern.
    Das Optimum wäre natürlich der kürzeste Weg!!!

    Vielen Dank im vorraus!!!

    MFG Gregor
    Zitieren Zitieren Gelöst: Daten sortieren  

  2. "
    Zitat Zitat von Gregor
    Das Problem an der ganzen Sache ist , daß die von dem Bildverarbeitungssystem gelieferten Koordinaten nach der Erkennungsgüte sortiert sind. Das führt dazu, daß die Anlage sehr viele unsinnige Wege zurück legt, bevor der Abfüllvorgang beendet wird.
    Wolltest du schreiben "sortiert werden sollen"? Ansonsten verstehe ich nicht, warum du nach Daten sortieren fragst, wenn die doch schon sortiert sind. Mußt du nur die gut erkannten Fässer füllen oder alle? Oder willst du statt nach der Güte nach den Koordinaten sortieren?

    Zum sortieren siehe diesen Thread:
    http://www.sps-forum.de/phpBB2/viewt...ht=bubble+sort

    Dort findest Du einen fertigen FC, der das nicht sehr effiziente "Bubble Sort"-Verfahren in AWL implementiert. Im selben Thread findet sich ein Link zu einer Web-Seite, die Sortierverfahren grundsätzlich erklärt und mittels JAVA-Applets darstellt.

    Das zweite Problem ist, daß die Koordinaten, die von der Anlage angefahren werden, vor dem Start in einem FIFO-Speicher abgelegt werden müssen. Das bedeutet also, daß die Daten vorher sortiert werden müssen bevor sie an den FIFO-Speicher übertragen werden.
    Ich hoffe Ihr könnt mir da irgendwie helfen die Daten sinnvoll zu sortiern.
    Das Optimum wäre natürlich der kürzeste Weg!!!
    Dieses Optimum ist für beliebige Koordinaten sehr schwer zu erreichen. Es müßte auf das Problem des "travelling salesman" hinauslaufen: Ein handlungsreisender soll auf einem möglichst kurzen Rundkurs Städte an gegebenen Koordinaten besuchen. Das wirliche Optimum läßt sich nur finden, indem alle Möglichen Routen probeweise berechnet werden (brute force). Der Aufwand steigt mit n-Fakultät. Unter dem Stichwort "travelling salesman problem" wirst du eine Menge dazu finden.
    Ohne die Anordnung deiner Fässer zu kennen, würde ich (ohne gründlich nachzudenken) folgenden Ansatz vorschlagen:
    Du teilst das Areal, in dem die Fässer stehen, in eine X-Y Matrix ein, deren Einheit ein Faßdurchmesser ist. Durch Runden der Koordinaten auf den nächsten ganzen Faßdurchmesser findest du den Platz des Fasses in der Matrix. Du sortierst die Fässer z.B. nach der Zeile. In jeder Zeile sortierst du die enthaltenen Fässer in ungeraden Zilen von links nach rechts, in geraden Zeilen von rechts nach links.
    Deine Anlage kann nun links oben beginnend die erste Reihe Fässer füllen, wobei zusätzliche Wege zur "Feinpositionierung" von höchstens einem Faßdurchmesser in X und Y gefahren würden. Am Ende der 1.Zeile positioniert sie in die 2., die nun von rechts nach links bearbeitet wird."


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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Gregor
    Das Problem an der ganzen Sache ist , daß die von dem Bildverarbeitungssystem gelieferten Koordinaten nach der Erkennungsgüte sortiert sind. Das führt dazu, daß die Anlage sehr viele unsinnige Wege zurück legt, bevor der Abfüllvorgang beendet wird.
    Wolltest du schreiben "sortiert werden sollen"? Ansonsten verstehe ich nicht, warum du nach Daten sortieren fragst, wenn die doch schon sortiert sind. Mußt du nur die gut erkannten Fässer füllen oder alle? Oder willst du statt nach der Güte nach den Koordinaten sortieren?

    Zum sortieren siehe diesen Thread:
    http://www.sps-forum.de/phpBB2/viewt...ht=bubble+sort

    Dort findest Du einen fertigen FC, der das nicht sehr effiziente "Bubble Sort"-Verfahren in AWL implementiert. Im selben Thread findet sich ein Link zu einer Web-Seite, die Sortierverfahren grundsätzlich erklärt und mittels JAVA-Applets darstellt.

    Das zweite Problem ist, daß die Koordinaten, die von der Anlage angefahren werden, vor dem Start in einem FIFO-Speicher abgelegt werden müssen. Das bedeutet also, daß die Daten vorher sortiert werden müssen bevor sie an den FIFO-Speicher übertragen werden.
    Ich hoffe Ihr könnt mir da irgendwie helfen die Daten sinnvoll zu sortiern.
    Das Optimum wäre natürlich der kürzeste Weg!!!
    Dieses Optimum ist für beliebige Koordinaten sehr schwer zu erreichen. Es müßte auf das Problem des "travelling salesman" hinauslaufen: Ein handlungsreisender soll auf einem möglichst kurzen Rundkurs Städte an gegebenen Koordinaten besuchen. Das wirliche Optimum läßt sich nur finden, indem alle Möglichen Routen probeweise berechnet werden (brute force). Der Aufwand steigt mit n-Fakultät. Unter dem Stichwort "travelling salesman problem" wirst du eine Menge dazu finden.
    Ohne die Anordnung deiner Fässer zu kennen, würde ich (ohne gründlich nachzudenken) folgenden Ansatz vorschlagen:
    Du teilst das Areal, in dem die Fässer stehen, in eine X-Y Matrix ein, deren Einheit ein Faßdurchmesser ist. Durch Runden der Koordinaten auf den nächsten ganzen Faßdurchmesser findest du den Platz des Fasses in der Matrix. Du sortierst die Fässer z.B. nach der Zeile. In jeder Zeile sortierst du die enthaltenen Fässer in ungeraden Zilen von links nach rechts, in geraden Zeilen von rechts nach links.
    Deine Anlage kann nun links oben beginnend die erste Reihe Fässer füllen, wobei zusätzliche Wege zur "Feinpositionierung" von höchstens einem Faßdurchmesser in X und Y gefahren würden. Am Ende der 1.Zeile positioniert sie in die 2., die nun von rechts nach links bearbeitet wird.
    Zitieren Zitieren Re: Daten sortieren  

Ähnliche Themen

  1. Daten sortieren DB1 -> DB2
    Von momo99 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 07.11.2009, 15:02
  2. Array-Daten sortieren
    Von L.T. im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 17.03.2009, 22:09
  3. sortieren in awl
    Von cosmo im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 15.08.2008, 10:56
  4. Daten im Datenbaustein sortieren
    Von Golden Egg im Forum Stammtisch
    Antworten: 5
    Letzter Beitrag: 11.10.2006, 11:20
  5. VAT sortieren?
    Von Anonymous im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 03.01.2006, 11:23

Lesezeichen

Berechtigungen

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