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

Ergebnis 1 bis 4 von 4

Thema: Prüfstelle AWL

  1. #1
    Registriert seit
    25.03.2012
    Beiträge
    314
    Danke
    60
    Erhielt 9 Danke für 8 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich möchte eine simple Prüfstelle in AWL programmieren. Zum Aufbau:

    Denkt euch drei Förderbänder in Reihe (Motor 1, 2 und 3). Jeder Bandmotor ("Mot1", ..., "Mot3") wird von einem Standard-Baustein angesteuert, wenn "Mot_EN" aktiviert ist. Ausgangssituation ist ein einfahrendes Werkstück (vom 1. aufs 2. Band), d.h. "Mot2_EN" und damit "Mot2" sind aktiv. Im mittleren Band ist ein Bero ("Pos"). Erreicht das Werkstück "Pos", dann soll es für 5 sek anhalten, damit eine Prüfung durchgeführt werden kann. Nach 5 sek wird das Prüfergebnis gespeichert und das Band soll weiterfahren.

    Ich habe Schwierigkeiten diese Logik zu realisieren:

    Code:
    //Band fährt ein
    U "Pos"
    U "Mot2_EN" //Motor ist an
    UN "Weiter" //Merker
    R "Mot2_EN" //Werkstück hält in Prüfposition
    
    //Band steht, starte Timer
    U "Pos"
    UN "Mot2_EN"
    UN "Mot2"
    L S5T#5S
    SE "Warten"
    U "Warten"
    S "Weiter"
    
    //Nach Ablauf Timer Prüfergebnis speichern..
    U "Weiter"
    SPBN blub
    //Prüfergebnisspeichern..
    blub: NOP 0
    
    //..und Bandmotor wieder starten
    U "Weiter"
    S "Mot2_EN" //weiterfahren (Standard-FB schaltet "Mot2" wieder ein)
    
     //Wenn Werkstück die Prüfstelle verlassen hat, dann Reset Merker
    U "Weiter"
    UN "Pos"
    R "Weiter"
    
    CALL "Motorbaustein"
    //...
    Hat jemand ne bessere Idee das zu programmieren?
    Geändert von Flux (22.01.2013 um 22:27 Uhr)
    Zitieren Zitieren Prüfstelle AWL  

  2. #2
    Registriert seit
    05.01.2012
    Ort
    48720 Rosendahl
    Beiträge
    43
    Danke
    5
    Erhielt 5 Danke für 5 Beiträge

    Standard

    Hi!
    Beschreib doch noch einmal genauer was dein Programm ausführen soll?!

    Wenn du einfach nur ein Förderband steuern sollst bis eine Position erreicht ist, dort 5 sekunden wartet und dann wieder anläuft zum abtransport, würde ich das als Schrittkette Programmieren:
    Code:
    // Initialisierungsschritt 0
          U     E      0.0                  //Initialisierung
          FP    M      1.0                  //Flanke Initialisierung
          O     
          U     M      0.3                  //Schritt 3
          U     E      0.3                  //Teil Abtransportiert
          S     M      0.0                  // Schritt 0
          U     M      0.1                  // Schritt 1
          R     M      0.0                  // Schritt 0
    //Schritt 1
          U     M      0.0
          U     E      0.1                  //Start Förderband
          S     M      0.1                  //Schritt 1
          =     A      4.0                  //Förderband Ein
          U     M      0.2                  // Schritt 2
          R     M      0.1                  // Schritt 1
    // Schritt 2
          U     M      0.1
          U     E      0.3                  //Position Prüfstelle
          S     M      0.2                  //Schritt 2
          L     S5T#5S                      //Wartezeit 5 sek
          SE    T      1                    //Setzt Wartezeit
          U     M      0.3                  //Schritt 3
          R     M      0.2                  //Schritt 2
    // Schritt 3
          U     M      0.2
          U     T      1                    //Wartezeit abgelaufen
          S     M      0.3                  //Schritt 3
          =     A      4.0                  //Start Förderband
          U     M      0.0                  //Schritt 0
          R     M      0.3                  //Schritt3

  3. #3
    Registriert seit
    17.07.2009
    Ort
    Am Rande der Ostalb
    Beiträge
    5.493
    Danke
    1.142
    Erhielt 1.243 Danke für 974 Beiträge

    Standard

    @Maggi
    Ich hab schon zig Kilometer von Fördertechnik in meinem Berufsleben programmiert.
    Und wenn ich eines gelernt hab zu hassen, dann sind es normale Schrittketten bei Fördertechnik.
    Was machst wenn jemand in Schitt 1 das Teil runter nimmt?

    Wenn du es einfach willst, dann realisierst eine Fördertechnik als Verknüpfungssteuerung, wenn du es kompliziert willst, dann halt als Zustandsautomat.

    Gruß
    Dieter

  4. #4
    Registriert seit
    25.11.2008
    Ort
    Westpfalz
    Beiträge
    1.550
    Danke
    187
    Erhielt 212 Danke für 186 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Flux,

    ich gehe mal davon aus, dass es dir zunächst nur um den Zwischenstop am zweiten Förderer geht.
    Sieht ja so schlecht gar nicht aus.
    Hier meine kleinen Änderungen passend für deine Codierung:
    Code:
    //Band fährt ein 
    U "Pos" 
    U "Mot2_EN" //Motor ist an 
    UN "Weiter" //Merker
     R "Einlauf" //Einlaufmerker, evtl. gesetzt durch vorgelagerten Antrieb
    
    //Band steht, starte Timer 
    U "Pos" UN "Mot2_EN" 
    UN "Mot2"
     L S5T#5S 
    SE "Warten" 
    U "Warten" 
    S "Weiter"   //Wenn Werkstück die Prüfstelle verlassen hat, dann Reset Merker 
    
    //Auslauf beendet
    U "Weiter" 
    UN "Pos" 
    R "Weiter"
    
    
    //..und Bandmotor einschalten 
    U "Weiter"
    O "Einlauf" //Merker Einlauf 
    = "Mot2_EN" //weiterfahren (Standard-FB schaltet "Mot2" wieder ein)
       
    CALL "Motorbaustein" 
    //...
    
    //Nach Ablauf Timer Prüfergebnis speichern..
    //hier am Ende, da es mit dem Steuern des Antriebs nichts zu tun hat
     U "Weiter" 
    SPBN blub 
    //Prüfergebnisspeichern.. 
    blub: NOP 0
    @Blockmove: Teile deine Ansicht bezüglich Schrittketten nicht ganz, es kommt auf den Anwendungsfall an.
    Bei Stückgut ist es sicher nicht sinnvoll, beim Transport einzelner Stücke sehe ich durchaus Vorteile.
    Die Entnahme von Transportgut ist entweder vorher definiert
    oder ein irregulärer Eingriff der erkannt werden kann und eine gesonderte Bedienung erfordert.

    Gruß MK
    Geändert von Sinix (24.01.2013 um 08:15 Uhr) Grund: Darstellung in Code wird falsch formatiert
    and we all support the team (S.King - Die Arena)

Ähnliche Themen

  1. Antworten: 16
    Letzter Beitrag: 23.05.2017, 16:03
  2. Antworten: 33
    Letzter Beitrag: 31.05.2012, 19:15
  3. Awl
    Von pulpago im Forum Simatic
    Antworten: 16
    Letzter Beitrag: 07.09.2011, 15:42
  4. Der S5-AWL Befehl ":AWL"
    Von chrisPCS im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 11.11.2010, 10:33
  5. Awl
    Von Waldi_März im Forum Simatic
    Antworten: 13
    Letzter Beitrag: 17.11.2008, 11:43

Lesezeichen

Berechtigungen

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