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

Ergebnis 1 bis 7 von 7

Thema: AWL Schleife

  1. #1
    Anonymous Gast

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich bin blutiger Anfänger, möchte es jedoch trotzdem einmal wagen hier eine Frage zu stellen: Wie kann ich in AWL den Zähler der Variablen verwenden? Folgender Ansatz läuft bei mir nicht:

    AUF DB 50
    L 9
    Next: T #Zaehler
    L 9
    L 10
    *I
    TAR1
    LAR1
    L 10
    -D
    TAR2
    L DBB [AR1,P#0.0]
    T DBB [AR2,P#2.0]
    L DBD [AR1,P#2.0]
    T DBD [AR2,P#2.0]
    L DBD [AR1,P#6.0]
    T DBD [AR2,P#6.0]
    L #Zaehler
    LOOP Next

    Ich möchte verkürzt dies hier darstellen:

    L DB50.DBB 80
    T DB50.DBB 90
    L DB50.DBD 82
    T DB50.DBD 92
    L DB50.DBD 86
    T DB50.DBD 96
    L DB50.DBB 70
    T DB50.DBB 80
    L DB50.DBD 72
    T DB50.DBD 82
    L DB50.DBD 76
    T DB50.DBD 86
    L DB50.DBB 60
    T DB50.DBB 70
    L DB50.DBD 62
    T DB50.DBD 72
    L DB50.DBD 66
    T DB50.DBD 76
    L DB50.DBB 50
    T DB50.DBB 60
    L DB50.DBD 52
    T DB50.DBD 62
    L DB50.DBD 56
    T DB50.DBD 66
    L DB50.DBB 40
    T DB50.DBB 50
    L DB50.DBD 42
    T DB50.DBD 52
    L DB50.DBD 46
    T DB50.DBD 56
    L DB50.DBB 30
    T DB50.DBB 40
    L DB50.DBD 32
    T DB50.DBD 42
    L DB50.DBD 36
    T DB50.DBD 46
    L DB50.DBB 20
    T DB50.DBB 30
    L DB50.DBD 22
    T DB50.DBD 32
    L DB50.DBD 26
    T DB50.DBD 36
    L DB50.DBB 10
    T DB50.DBB 20
    L DB50.DBD 12
    T DB50.DBD 22
    L DB50.DBD 16
    T DB50.DBD 26
    L DB50.DBB 0
    T DB50.DBB 10
    L DB50.DBD 2
    T DB50.DBD 12
    L DB50.DBD 6
    T DB50.DBD 16

    Vielen Dank für Eure Hilfe,
    Matthias
    Zitieren Zitieren Gelöst: AWL Schleife  

  2. "Hi Markus,

    ... nee, nicht kopiert, hier auf die Schnelle eingetippt.
    Sieht mit vielen Blanks gleich viel besser aus
    Ok, weiß jetzt Bescheid, das nächste mal wird kopiert oder halt die Leertaste gequält.

    Danke und Gruß

    Jörg"


  3. #2
    Registriert seit
    23.06.2003
    Beiträge
    79
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hi Mathias,
    Du brauchst das AR2 gar nicht! folgender Ansatz sollte funktionieren, hab ich jedoch nicht getestet.

    Code:
         AUF   DB50
         L     9                    // 9 Datenblöcke kopieren
    next:T     #zaehler
         +     -1                   // erster soll ja von DBx80 nach 90 kopiert werden
         L     10                   // 10 Bytes pro Eintrag]
         XD
         SLD   3                    // in Pointer-Format wandeln
         LAR1                       // und ins Adressregister
    
         L     DBB[ar1,p#0.0]
         T     DBB[ar1,p#10.0]
         L     DBD[ar1,p#2.0]
         T     DBD[ar1,p#12.0]
         L     DBD[ar1,p#6.0]
         T     DBD[ar1,p#16.0]
         L     #zaehler
         LOOP  next
    PS: AR2 in FB's zu verwenden ist übrigens kritisch, wenn die FB's als Multi-Instanzen verwendet werden. Da muß etwas aufgepasst werden.


    Gruß Jörg

    @ Markus:
    Hab zwar das Code-Tag verwendet (denk ich zumindest !) aber so schön ordentlich, wie in einem anderen Beitrag von Dir ist's trotzdem nicht geworden. Sag mir mal bitte, warum !
    Zitieren Zitieren Dieses sollte funktionieren  

  4. #3
    Registriert seit
    16.06.2003
    Ort
    88356 Ostrach
    Beiträge
    4.825
    Danke
    1.254
    Erhielt 1.110 Danke für 531 Beiträge

    Standard

    hast du den awl code hier geschrieben oder mit dem simatic manager?
    wenn du ihn im forum direkt eintippst gehts nicht.
    aber wenn du ihn mit "copy&paste" vom simatic manager in das forum einfügst, bleibt die formatierung genau so erhalten.

    ohne das code-tag ist das nicht der fall...

  5. #4
    Registriert seit
    23.06.2003
    Beiträge
    79
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hi Markus,

    ... nee, nicht kopiert, hier auf die Schnelle eingetippt.
    Sieht mit vielen Blanks gleich viel besser aus
    Ok, weiß jetzt Bescheid, das nächste mal wird kopiert oder halt die Leertaste gequält.

    Danke und Gruß

    Jörg

  6. #5
    Registriert seit
    19.06.2003
    Beiträge
    2.205
    Danke
    85
    Erhielt 269 Danke für 179 Beiträge

    Standard

    Was ist mit Tabulat oren? Gehen die auch?
    Habe einen in den Normaltext gesetzt.
    Code:
    und nun code
    	mit Tabulator
    mal sehen

  7. #6
    Anonymous Gast

    Standard

    Hallo nochmal,

    vielen Dank für die schnelle Antwort, aber leider hat dies irgendwie nicht zu Erfolg geführt. Es wird nur der erste Datensatz an 2. Position verschoben danach läuft nichts mehr, als wenn die Schleife nur ein mal durchlaufen würde. Wo ran könnte das liegen?

    Gruß,
    Matthias

  8. #7
    Anonymous Gast

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    so, Fehler selber gefunden es muss heißen:
    Code:
          L     9                           // 9 Datenblöcke kopieren 
    next: T     #Zaehler
          +     -1                          // erster soll ja von DBx80 nach 90 kopiert werden 
          L     10                          // 10 Bytes pro Eintrag] 
          *D    
          SLD   3                           // in Pointer-Format wandeln 
          LAR1                              // und ins Adressregister 
          L     DBB [AR1,P#0.0]
          T     DBB [AR1,P#10.0]
          L     DBD [AR1,P#2.0]
          T     DBD [AR1,P#12.0]
          L     DBD [AR1,P#6.0]
          T     DBD [AR1,P#16.0]
          L     #Zaehler
          LOOP  next
    also nicht SLD 4 sondern SLD 3. Dann läuft es.

    Danke nochmal und einen schönen Tag!

Ähnliche Themen

  1. While Schleife in ST
    Von Snooky im Forum CODESYS und IEC61131
    Antworten: 6
    Letzter Beitrag: 30.11.2010, 21:50
  2. IF oder FOR Schleife in AWL?
    Von motamas im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 21.07.2010, 14:19
  3. for-Schleife
    Von fai004 im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 26.04.2009, 19:14
  4. FOR Schleife
    Von dietere im Forum Sonstige Steuerungen
    Antworten: 1
    Letzter Beitrag: 19.01.2008, 02:36
  5. For Schleife in VB 6
    Von godi im Forum Hochsprachen - OPC
    Antworten: 8
    Letzter Beitrag: 14.06.2007, 10:03

Lesezeichen

Berechtigungen

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