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

Ergebnis 1 bis 10 von 10

Thema: Step5 => Stringvergleich

  1. #1
    Registriert seit
    16.01.2013
    Beiträge
    39
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo !

    Ich muss mit einer S5 (ist afaik ne 135U) einen 16 stelligen String vergleichen.
    Hat da jemand mal nen Tipp fuer mich parat ? (ausser ne ne S7 dafuer zu kaufen

    Gruss Gerd
    Zitieren Zitieren Step5 => Stringvergleich  

  2. #2
    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

    Nur Vergleichen auf Gleich oder Ungleich oder musst Du die Unterschiede im String erkennen ?
    Früher gab es Peitschen .... heute Terminkalender

  3. #3
    Registriert seit
    22.02.2013
    Beiträge
    23
    Danke
    1
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Hallo,
    bei der S5 gibt es den Stringvergleich als Funktion nicht direkt.
    Geht aber trotzdem relativ einfach.
    Wenn die beiden Strings in einem DB stehen kannst Du die Datenwörter einfach miteinander vergleichen.

    Geht am besten in einem FB
    Also zb.
    DB1.DW0 = 'AB' String 1 hier z.b. 2 Zeichen
    DB1.DW2 = 'CD' String 2

    FB1 strcmp
    a db1
    L DW0
    L DW2
    ==F
    =M200.0 -> wenn beide 'Strings' gleich sind ist der Merker 1

    Bei längeren Strings einfach mehrere Vergleicher miteinander ver unden und das Gesamtergebniss nehmen

    Viel Spass





  4. #4
    Registriert seit
    13.09.2010
    Beiträge
    2.292
    Danke
    178
    Erhielt 375 Danke für 355 Beiträge

    Standard

    .
    Schleife bauen und die DW´s des zu prüfenden Strings mit
    den DW´s des Vergleichsstrings auf Übereinstimmung
    prüfen.

    Habe es mal "quick and dirty" dahingeprogt:

    Code:
    NAME: COMPARE
    BEZ: DB1   B           DB mit dem String
    BEZ: ANF1  DKF         1. DW mit Stringanfang
    BEZ: DB2   B           DB mit Vergleichstring
    BEZ: ANF2  DKF         1. DW mit dem Vergleichstring
    BEZ: ANZA  DKF         Anzahl der zu prüfenden Bytes
    BEZ: OK    ABI         Prüfung ok
    
    UN =OK
    S  =OK                 Prüfung ok
    B  =DB1
    LW =ANF1
    T  MW200
    LW = ANF2
    T  MW202
    LW =ANZ
    T  MB204
    
    M001: B =DB1           Start Schleife
    B MW200
    L DW0
    B =DB2
    D MW202
    L DW0
    >< F
    RB =OK                 Abweichung gefunden
    BEB
    
    L MW200                Schleifenparameter für nächsten Durchlauf 
    I 1
    T MW200
    L MW202
    I 1
    T MW202
    L MB204
    D 1
    T MB204
    L KB 0
    > F
    SPB = M001            Sprung zum Schleifenanfang
    BE
    Die Schleifenparameter habe ich in den Schmiermerkerbereich gelegt.
    kind regards
    SoftMachine

  5. #5
    gerdh ist offline Benutzer
    Themenstarter
    Registriert seit
    16.01.2013
    Beiträge
    39
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von Lipperlandstern Beitrag anzeigen
    Nur Vergleichen auf Gleich oder Ungleich oder musst Du die Unterschiede im String erkennen ?
    Hi !

    Nur Vergleich auf Ungleich bzw. Gleich

    Gruss Gerd

  6. #6
    Registriert seit
    13.09.2010
    Beiträge
    2.292
    Danke
    178
    Erhielt 375 Danke für 355 Beiträge

    Standard

    .
    @gerdh
    Und, schon mal den Codeschnipsel ausprobiert ?
    Der macht den Vergleich auf = oder >< .
    kind regards
    SoftMachine

  7. #7
    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

    Zitat Zitat von gerdh Beitrag anzeigen
    Hi !

    Nur Vergleich auf Ungleich bzw. Gleich

    Gruss Gerd

    Wenn Dir das mit der Schleife zu kompliziert ist dann vergleiche doch die einzeln Byte und das Ergebnis der Einzelvergleiche führst du anschliessend zusammen.
    Früher gab es Peitschen .... heute Terminkalender

  8. #8
    gerdh ist offline Benutzer
    Themenstarter
    Registriert seit
    16.01.2013
    Beiträge
    39
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hi !

    Danke scheint zu gehn....

    Gruss Gerd

  9. #9
    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

    Zitat Zitat von gerdh Beitrag anzeigen
    Hi !

    Danke scheint zu gehn....

    Gruss Gerd
    Was jetzt genau ?
    Früher gab es Peitschen .... heute Terminkalender

  10. #10
    gerdh ist offline Benutzer
    Themenstarter
    Registriert seit
    16.01.2013
    Beiträge
    39
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi !

    Ein etwas abgewandelte Form der oben auf gefuehrten Schleife (ich muss einen String auf mehrere Strings vergleichen)


    Gruss Gerd

Ähnliche Themen

  1. SCL: Stringvergleich funktioniert nicht
    Von Scanda im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 07.08.2011, 11:12
  2. Stringvergleich FC10
    Von rr_zx im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 17.07.2011, 18:34
  3. step5 V6.6
    Von sahering im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 27.12.2009, 14:32
  4. SCL Stringvergleich indirekt aus DB
    Von MFreiberger im Forum Simatic
    Antworten: 23
    Letzter Beitrag: 13.11.2008, 15:49
  5. Problem beim Stringvergleich EQ_STRNG
    Von BohneM im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 28.11.2007, 23:23

Lesezeichen

Berechtigungen

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