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

Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 25 von 25

Thema: Vergleichen bis der Arzt kommt....

  1. #21
    Avatar von Lipperlandstern
    Lipperlandstern ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.01.2005
    Ort
    im schönen Lipperland
    Beiträge
    4.472
    Danke
    498
    Erhielt 1.143 Danke für 736 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    sag ich ja das man da vergleichen kann bis der Arzt kommt. .... aber so wie es aussieht komme ich nicht drum herum... der Kunde hat es so bestellt......
    Früher gab es Peitschen .... heute Terminkalender

  2. #22
    Registriert seit
    02.09.2006
    Beiträge
    115
    Danke
    5
    Erhielt 13 Danke für 11 Beiträge

    Standard

    Vorweg, mir fehlt heute Abend der Hirnschmalz, um mir jetzt noch einen Code auszudenken, aber vielleicht hab ich grad ne Idee, wie man das einfacher machen könnte, quasi einen Denkanstoss...

    Wie wäre es, wenn du dir einen parametrierten FB schreibst, in dem du dir einen Pointer schreibst, welcher den DB durchläuft (Schleife bis DB Ende) und immer Strings mit dem eingescannten Code vergleichst. Eigentlich bräuchte dieser FB dann nur 3 Variablen. 1. eingescannte Variable, Länge des DBs (wenn alle gleich lang sind noch nichtmal das.) und Doppelt vorhanden.
    Wenn du diesen FB geschrieben hast, schreibst du dir einen weiteren parametrierten FB, in dem du dann den 1. FB einmal aufrufst und mit Variablen fütterst. Z.B. 1. eingescannter Code, Doppelt vorhanden und (ganz wichtig) einer Variable die dir sagt, welcher DB als nächstes durchlaufen werden soll. Sprich, du setzt dir ne Variable am Anfang des Bausteins auf 1, danach wird der 1. parametrierte FB durchlaufen. Wenn die SPS den 1. FB durchlaufen hat, zählst du die Variable um 1 hoch und springst wieder zurück zu dem Aufruf des 1. FBs. Das machst du so oft, bis alle 30 Stellplätze abgearbeitet sind. Wenn irgendwann die Variable doppelt vorhanden kommt, kannste ja den Vergleich abbrechen, ganz wie du willst.

    Eigentlich müsstest du dann nur 2 FBs machen... Haut nur wahrscheinlich ziemlich in die Zykluszeit rein, aber vielleicht ist das ja kein Problem? Oder wie, oder was, oder wo? Ich muss ins Bett...

    MfG
    Borsti

  3. #23
    Registriert seit
    17.04.2004
    Beiträge
    28
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo!

    @ug / volker
    Ist richtig, dass der FC 10 String-Format benötigt. Lässt sich aber mit dem SFC 20 umgehen.

    Code:
    // Vergleichsstring 1 umladen
          CALL  SFC   20
           SRCBLK :=#quelle1    << Pointer (Temp)
           RET_VAL:=#sfcret
           DSTBLK :=#string1    << String (Temp)
     
     
    // Vergleichsstring 2 umladen
          CALL  SFC   20
           SRCBLK :=#quelle2
           RET_VAL:=#sfcret
           DSTBLK :=#string2
     
     
    // Strings vergleichen
          CALL  FC    10           << AUS IEC-Biblio "EQ_STRING"
           S1     :=#string1
           S2     :=#string2
           RET_VAL:=#gleich

    Hab jetzt keine Ahnung ob die 30 Palettennummern jede mit jeder oder ob der neu eingelesene Barcode mit den 30 bereits bestehenden Nummern verglichen werden soll.

    Bei der Variante die 30 Palettennummern untereinander zu vergleichen würde ich wie ug vorgehen und die ganzen Nummern irgendwo sortiert ablegen. Anschließend den String-Vergleich in einer Schleife ausführen. Zwei leere Palettenplätze ergeben beim String-Vergleich halt auch ein "GLEICH". Muss irgendwie noch abgefangen werden (evtl. Leerer Palettenplatz beinhaltet irgendein Sonderzeichen).
    Es wurde von jemandem erwähnt, dass die SPS-Zykluszeit ziemlich in die Höhe geht. Stimmt! Kann man aber umgehen, wenn man nach ein paar String-Vergleichen (5 oder 10 oder keine Ahnung) den Baustein verlässt und beim nächsten Bausteinaufruf dort weitermacht wo man aufgehört hat. So ähnlich wird's vielleicht beim Sortieren auch sein.
    Hat halt zur Folge, dass die ganze Sortiererei und Vergleicherei auf mehrere SPS-Zyklen aufgeteilt wird.

    Wenn jetzt nur beim Barcodescannen verglichen werden soll ob die gescannte Palettennummer schon in einem DB vorhanden ist kann man sich das Sortieren schenken und einfach die gescannte Palettennummer mit den Palettennummern im DB vergleichen. (Wie schon in Beiträgen weiter oben erwähnt)


    Gruß,

    Harald

  4. #24
    Avatar von Lipperlandstern
    Lipperlandstern ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    06.01.2005
    Ort
    im schönen Lipperland
    Beiträge
    4.472
    Danke
    498
    Erhielt 1.143 Danke für 736 Beiträge

    Standard

    Es muss natürlich jeder Platz mit jeden verglichen werden da die Bediener die Daten auch händisch eingeben können

    Mit ist da noch eine Idee gekommen. Der Barcode ( nur Zahlen ) wird in INT gewandet und in einem DB geschrieben . Anschliessend von Zottel seinem Bubblesortroutine sortiert. Jetzt stehen 2 gleiche Zahlen untereinander und der Vergleich fällt viel einfacher.
    Hab ich da irgendetwas übersehen ?????
    Früher gab es Peitschen .... heute Terminkalender

  5. #25
    Registriert seit
    15.03.2006
    Ort
    Mühlacker, BW Germany
    Beiträge
    44
    Danke
    0
    Erhielt 2 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    haengen alle scanner an der sps oder gehen die auf pc's oder ???
    kann das nicht einfacher mit nem pc ausgewertet werden um die steuerung zu entlasten? nicht das ich jetzt genau wuesste wie das geht...
    nur so als nen anderen blickwinkel auf die sache...
    Man hats nicht leicht aber leicht hats einen...
    Zitieren Zitieren Scanner  

Ähnliche Themen

  1. kommt jetzt TIA...?
    Von rostiger Nagel im Forum Simatic
    Antworten: 526
    Letzter Beitrag: 04.09.2012, 14:25
  2. Wie kommt die Bild Nr an die SPS
    Von MikeJ im Forum HMI
    Antworten: 5
    Letzter Beitrag: 30.04.2010, 06:34
  3. UG kommt zurück!
    Von zotos im Forum Stammtisch
    Antworten: 32
    Letzter Beitrag: 27.12.2007, 16:55
  4. morgen kommt der lehrling...
    Von vierlagig im Forum Stammtisch
    Antworten: 33
    Letzter Beitrag: 08.10.2007, 09:15
  5. Betriebsmeldung kommt ereigniss...
    Von Jochen Kühner im Forum HMI
    Antworten: 2
    Letzter Beitrag: 28.02.2005, 20:33

Lesezeichen

Berechtigungen

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