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

Ergebnis 1 bis 9 von 9

Thema: Verständnissprobleme "Einfache Programmierungsaufgabe in AWL"

  1. #1
    Registriert seit
    09.02.2010
    Beiträge
    35
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich bin was SPS-Programmierung betrift relativer neuling
    und würde mich da gerne ein bischen einarbeiten.

    Ich möchte mir ein Lauflicht programieren.
    - 8 LED´s (A0.0 bis A0.7)
    - Einschaltdauer (Timer S5T#1S)
    - Umschaltdauer (Pause dazwischen S5T#100MS)

    wie würdet ihr das am geschicktesten lösen?

    gibts da eine Möglichkeit die Ausgänge als Byte zu betrachten,
    d.h. nicht einfach: wenn LED 1 an dann warte Zeit,
    wenn Zeit abgelaufen schalte LED 1 aus und schalte
    LED 2 an usw.,
    sondern setze Byte 0 = 0 warte zeit,
    dann setze Byte 0 = 0+1 (in einer Schleife).
    Wenn Byte 0 = 8 setze Byte 0=0 und fange von vorne an.

    Danke schon mal für eure Hilfe

    Gruß lounsome
    Zitieren Zitieren Verständnissprobleme "Einfache Programmierungsaufgabe in AWL"  

  2. #2
    Registriert seit
    08.04.2008
    Ort
    Köln
    Beiträge
    844
    Danke
    39
    Erhielt 244 Danke für 199 Beiträge

    Standard

    Hallo lounsome,

    gib' mal in der Suche "Lauflicht" ein, dann findest Du eine Menge Beispiele!

    Grüße
    Gebs

  3. #3
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    Code:
    *
         L     #myByte
         L     2
         *I
         T    #myByte
    zum initialisieren myByte natürlich auf 1 setzen
    überlauf beachten.
    und mit den zeiten wirste sicher klar kommen...
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  4. #4
    Registriert seit
    09.02.2010
    Beiträge
    35
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Sorry,

    das raf ich nicht ganz?

  5. #5
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard

    Zitat Zitat von lounsome Beitrag anzeigen
    Sorry,

    das raf ich nicht ganz?
    Ist eigentlich ganz einfach:
    Wenn ein Byte mit 2 multipliziert wird, dann wandert das Bit um eine Stelle nach links.
    Was du ja haben möchtest.
    Dass du da noch eine Zeit brauchst zum Multiplizieren und beim Überlauf wieder auf 1 setzen musst, denke kannst du dir erarbeiten.

    bike

  6. #6
    Registriert seit
    09.02.2010
    Beiträge
    35
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich dreh noch durch,
    Jedes mal wenn ich versuche die Baugruppe zu simulieren, Baustein transfer
    sürtzt er ab, liegt warscheinlich am Prog.

    Mein bisheriger code:

    Code:
    L 0           //Abfrage ob AW 0 == 0
    L AW 0
    ==I
    L 1          // Wenn AW 0 = 0, setze AW 0 = 1
    T AW 0
    
    L 2          
    L AW 0
    * 2
    T AW 0    // Multiplitziere AW (alt) mit 2 bis ende (256)
    Möchte hier eigentlich nur AW 0 mittels "vierlagig´s" Methode nacheinander auf 1 setzen.

    Entschuldigt meine Unwissentheit, bin sehr neu im SPS-Sektor.

    Gruß Lounsome

  7. #7
    Registriert seit
    17.06.2003
    Beiträge
    1.269
    Danke
    478
    Erhielt 65 Danke für 57 Beiträge

    Standard

    So wird aber bei jedem Zyklus multipliziert.

  8. #8
    Registriert seit
    19.06.2005
    Ort
    in Bayern ganz oben
    Beiträge
    1.360
    Danke
    188
    Erhielt 372 Danke für 290 Beiträge

    Standard

    Hi,

    so wird das nichts mit der Initialisierung

    Code:
    L AW 0       //Abfrage ob AW 0 == 0
    L 0
    ==I
    SPBN M001    // Springe zu M001 bei VKE = FALSE
    L 1          // Wenn AW 0 = 0, setze AW 0 = 1
    T AW 0
    M001: NOP 0
    Drück doch bitte mal im AWL-Editor die F1 Taste.

    Gruss Daniel
    Erfahrung ist eine nützliche Sache. Leider macht man sie immer erst kurz nachdem man sie brauchte...

    OSCAT.lib Step 7

    Open Source Community for Automation Technolgy

    SPS-Forum Chat (Mibbit) | SPS-Forum Chat (MIRC)

  9. #9
    Registriert seit
    03.04.2008
    Beiträge
    6.200
    Danke
    237
    Erhielt 815 Danke für 689 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von lounsome Beitrag anzeigen
    Ich dreh noch durch,
    Jedes mal wenn ich versuche die Baugruppe zu simulieren, Baustein transfer
    sürtzt er ab, liegt warscheinlich am Prog.

    Mein bisheriger code:

    Code:
    L 0           //Abfrage ob AW 0 == 0
    L AW 0
    ==I
    L 1          // Wenn AW 0 = 0, setze AW 0 = 1
    T AW 0
    
    L 2          
    L AW 0
    * 2
    T AW 0    // Multiplitziere AW (alt) mit 2 bis ende (256)
    Möchte hier eigentlich nur AW 0 mittels "vierlagig´s" Methode nacheinander auf 1 setzen.

    Entschuldigt meine Unwissentheit, bin sehr neu im SPS-Sektor.

    Gruß Lounsome

    Also laden und transferieren wird immer ausgeführt, wie dalbi schrieb.
    Und dann wird, so wie du es geschrieben hast, in jedem Zyklus multipliziert. Da bekommst du nach 8 Durchläufen einen Überlauf, den du ja, wie ich schon schrieb, überwachen und entsprechend reagieren musst.
    Außerdem solltest du abhängig von einer Zeit multiplizieren, damit du die Änderungen auch sehen kannst.


    bike

Ähnliche Themen

  1. Antworten: 6
    Letzter Beitrag: 16.03.2012, 18:20
  2. "Index Pulse", "Home Switch" und "Position Limit Switch"
    Von senmeis im Forum Antriebstechnik
    Antworten: 3
    Letzter Beitrag: 07.03.2011, 11:21
  3. Antworten: 8
    Letzter Beitrag: 16.05.2008, 11:26
  4. Antworten: 2
    Letzter Beitrag: 14.12.2007, 15:09
  5. Antworten: 4
    Letzter Beitrag: 29.11.2006, 08:59

Lesezeichen

Berechtigungen

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