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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Eine Frage zur if-Abfrage bei AWL

  1. #1
    Registriert seit
    17.08.2012
    Beiträge
    48
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi,

    habe aus einem anderen Beitrag schon folgende Informationen rausgeholt,

    1. *
    2. IF xTemp1 THEN
    3. //
    4. ELSE
    5. //
    6. END_IF;
    7. U #xTemp1
    8. SPBN else
    9. //then klausel
    10. SPA end
    11. else: //else klausel
    12. end: NOP 0
    Das verstehe ich auch, die Frage ist nur kann ich auch, anstatt nur zu schauen ob xTemp1 = 1 oder =0, sagen wenn xtemp=58 then ... usw. oder geht das nur mit boolscher Temp-Variable??

    Vielen Dank

    Gruß

    GSOhm
    Zitieren Zitieren Eine Frage zur if-Abfrage bei AWL  

  2. #2
    GSOhm ist offline Benutzer
    Themenstarter
    Registriert seit
    17.08.2012
    Beiträge
    48
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Gibt es sowas wie == bei C++
    Geändert von GSOhm (29.08.2012 um 12:34 Uhr)

  3. #3
    Registriert seit
    20.11.2006
    Ort
    Hamburg
    Beiträge
    225
    Danke
    35
    Erhielt 35 Danke für 32 Beiträge

    Standard

    Bei AWL kannst du keine IF Abfrage machen. Das geht nur bei SCL.

    Eine BOOL Variable (egal ob IN, IN_OUT, TEMP, STAT oder global) kann nur auf 1 oder 0 abgefragt werden. Wenn du auf 58 abfragen möchtest, muss der Typ BYTE, INT oder DINT sein.

    Bei AWL geht eine Abfrabe eines Bites mit U ...
    Ein INT usw. wird mit:
    L ...
    L Vergleiswert
    ==I
    SPBN _001
    // was machen
    _001: NOP 0
    abgefragt.

  4. Folgender Benutzer sagt Danke zu Dotzi für den nützlichen Beitrag:

    GSOhm (29.08.2012)

  5. #4
    GSOhm ist offline Benutzer
    Themenstarter
    Registriert seit
    17.08.2012
    Beiträge
    48
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Also ich denke das es dann so funtionieren müsste (hab heute leider keine Möglichekti mehr zu testen - aber kann ja einer von euch mal eben drüber schauen):

    L Wert
    L Vergleichswert1
    ==I
    SPBN else1
    // then ..........
    SPA end
    else1: L Wert
    L Vergleichswert2
    ==I
    SPBN else2
    // then ..............
    SPA end
    else2: L Wert
    L Vergleichswert3
    SPBN else3
    // then .................
    SPA end
    else 3: "Beliebige Ausgabe"
    end: NOP 0

  6. #5
    Registriert seit
    20.11.2006
    Ort
    Hamburg
    Beiträge
    225
    Danke
    35
    Erhielt 35 Danke für 32 Beiträge

    Standard

    Zitat Zitat von GSOhm Beitrag anzeigen
    Also ich denke das es dann so funtionieren müsste (hab heute leider keine Möglichekti mehr zu testen - aber kann ja einer von euch mal eben drüber schauen):

    L Wert
    L Vergleichswert1
    ==I
    SPBN else1
    // then ..........
    SPA end
    else1: L Wert
    L Vergleichswert2
    ==I
    SPBN else2
    // then ..............
    SPA end
    else2: L Wert
    L Vergleichswert3
    ==I
    SPBN else3
    // then .................
    SPA end
    else 3: "Beliebige Ausgabe"
    end: NOP 0
    Bitte beachte, Sprungmarken in AWL dürfen max. 4 Zeichen lang sein.

    Der Rest sollte passen.

  7. #6
    Registriert seit
    28.03.2009
    Beiträge
    83
    Danke
    16
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Zitat Zitat von Dotzi Beitrag anzeigen
    Bitte beachte, Sprungmarken in AWL dürfen max. 4 Zeichen lang sein
    ...und sie sind case sensitiv.

    @GSohm,
    von der Logik sind es keine drei IF-Abfragen, sondern eine IF-Abfrage mit zwei ElseIF.
    Wenn du die SpringeAbsolut nach den Anweisungen entfernst, hast du dann drei IF's...
    Code:
    L Wert
    L Vergleichswert1
     ==I
    SPBN els1
     // then ..........
     
    els1: L Wert
     L Vergleichswert2
     ==I
    SPBN els2
     // then ..............
     
    els2: L Wert
     L Vergleichswert3
    ==I
    SPBN els3
     // then .................
     
    els3: "Beliebige Ausgabe"
     end: NOP 0

  8. Folgender Benutzer sagt Danke zu logo78 für den nützlichen Beitrag:

    GSOhm (30.08.2012)

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

    Standard

    "Eine Frage zur if-Abfrage bei AWL"

    Wie wäre es mit einer Sprungleiste SPL ?
    Geändert von SoftMachine (30.08.2012 um 03:49 Uhr)
    kind regards
    SoftMachine

  10. #8
    GSOhm ist offline Benutzer
    Themenstarter
    Registriert seit
    17.08.2012
    Beiträge
    48
    Danke
    14
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Sprungliste?

  11. #9
    Registriert seit
    20.11.2006
    Ort
    Hamburg
    Beiträge
    225
    Danke
    35
    Erhielt 35 Danke für 32 Beiträge

    Standard

    Eine Sprungleiste ist kein IF Statement, sondern ein CASE Statement.

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ja, mag sein

    Die Überschrift lautet ... AWL.

    Da es keine IF-Abfrage in AWL gibt (siehe deinen eigenen Beitrag #3), hat GSOhm kaum Alternativen , etwas anderes als die SPL zu nutzen.
    kind regards
    SoftMachine

Ähnliche Themen

  1. Eine Frage zur Schrittkette in SCL
    Von schnecke im Forum Simatic
    Antworten: 34
    Letzter Beitrag: 05.03.2012, 20:56
  2. Noch einmal eine Frage zur Querverweisliste
    Von bullimen im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 12.11.2010, 22:47
  3. Eine Frage zu einer AWL
    Von pinolino im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 03.04.2009, 12:33
  4. Eine Frage zur Hard- u. Software
    Von pinolino im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 28.11.2007, 00:57
  5. Wieder eine Frage zur Siwarex-U.
    Von Tigerkroete im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 02.08.2006, 12:22

Lesezeichen

Berechtigungen

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