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

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 23

Thema: Schrittverzögerung mit SCL

  1. #1
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute


    ich habe folgendes Problem:


    Bisher habe ich eine Ablaufsteuerung mit zwei IF-Schleifen für einen Schritt und Transition gelöst, also ungefähr so:




    IF first THEN
    first:=0;
    SM[0]:=1;
    END_IF;




    IF SM[0] THEN
    IF IN1 THEN
    //ANWEISUNG
    SM[0]:=0;
    SM[1]:=1;

    END_IF;
    END_IF;




    IF SM[1] THEN
    IF IN2 THEN
    //ANWEISUNG
    SM[1]:=0;
    SM[2]:=1;

    END_IF;
    END_IF;




    IF SM[2] THEN
    IF IN3 THEN
    //ANWEISUNG
    SM[2]:=0;
    SM[3]:=1;

    END_IF;
    END_IF;




    IF SM[3] THEN
    IF IN4 THEN

    SM[3]:=0;
    SM[4]:=1;
    SM[5]:=1;

    END_IF;
    END_IF;




    USW.....


    Nun will ich eine Zeitvergögerung in einen oder mehrere Schritte einbauen. Z.B für 10sek. will ich im Schritt 2 hängen.
    Mit Step7GRAPHEN geht das ohne Probleme. Will eigentlich das gleiche in SCL hinkriegen.


    Danke
    Zitieren Zitieren Schrittverzögerung mit SCL  

  2. #2
    Registriert seit
    02.04.2013
    Beiträge
    143
    Danke
    7
    Erhielt 22 Danke für 20 Beiträge

    Standard

    wie wäre es mit der WAIT Funktion?

    Also:

    Code:
    WAIT(WT := 32767); // maximal mögliche Wartezeit in ms

  3. #3
    SanjaDO ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Diese Funktion habe ich schon gesehen, ich meine die ist im microsekunden als maximal 32ms möglich was für mich zu wenig ist.

  4. #4
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.738
    Danke
    444
    Erhielt 924 Danke für 744 Beiträge

    Standard

    In dem Du einen Timer im Schritt 2 startest und in die Transition zu Schritt 3 einbeziehst:
    Code:
    VAR
      Pause: "TON";  // Oder welchen Timertyp auch immer man benötigt
    END_VAR
    
    ...
    
    IF SM[2] THEN
      IF IN3 THEN
        //ANWEISUNG
        SM[2]:=0;
        SM[3]:=1;
      END_IF;
    END_IF;
    
    // Pausentimer
    Pause (IN:= SM[3], PT:= Zeitvorgabe);
    
    IF SM[3] AND Pause.Q THEN
      IF IN4 THEN
        SM[3]:=0;
        SM[4]:=1;
        SM[5]:=1;
      END_IF;
    END_IF;
    
    USW.....
    Den Timer möglichst nicht überspringen! Das bringt immer Problem wegen der Flankenerkennung.

    Und benutzt bitte den Codebutton [#].
    Geändert von hucki (22.11.2013 um 13:57 Uhr) Grund: Timer optisch hervorgehoben und zu TON geändert

  5. Folgender Benutzer sagt Danke zu hucki für den nützlichen Beitrag:

    SanjaDO (22.11.2013)

  6. #5
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.738
    Danke
    444
    Erhielt 924 Danke für 744 Beiträge

    Standard

    Zitat Zitat von shutdown_TIA12 Beitrag anzeigen
    wie wäre es mit der WAIT Funktion?

    Also:

    Code:
    WAIT(WT := 32767); // maximal mögliche Wartezeit in ms
    Eher schlechte Wahl, wegen der Zykluszeit.
    Das ist ein SPS- und kein PC-Programm. Stichwort "zyklischer Ablauf"!

  7. Folgender Benutzer sagt Danke zu hucki für den nützlichen Beitrag:

    ducati (22.11.2013)

  8. #6
    Registriert seit
    09.08.2006
    Beiträge
    3.640
    Danke
    912
    Erhielt 661 Danke für 543 Beiträge

    Standard

    Zitat Zitat von shutdown_TIA12 Beitrag anzeigen
    wie wäre es mit der WAIT Funktion?

    Also:

    Code:
    WAIT(WT := 32767); // maximal mögliche Wartezeit in ms
    irgenwie sehe ich hier das Smiley nicht... oder die Ironietags...

  9. #7
    Registriert seit
    02.04.2013
    Beiträge
    143
    Danke
    7
    Erhielt 22 Danke für 20 Beiträge

    Standard

    sorry, mein Fehler, habe das eben nur bei mir aufm Bildschirm gesehen passiert.
    Hucki hat schon eine sinnvolle Lösung geliefert

  10. #8
    SanjaDO ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke das hat geklappt boa super forum hier!

  11. #9
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.738
    Danke
    444
    Erhielt 924 Danke für 744 Beiträge

    Standard

    Zitat Zitat von shutdown_TIA12 Beitrag anzeigen
    Hucki hat schon eine sinnvolle Lösung geliefert
    Aber auf den richtigen Timer achten.
    Hatte das nur quick 'n dirty aus einem gerade geöffnetem Programm kopiert und dummerweise 'nen Impuls erwischt, der hier wohl auch eher ungeeignet ist.

    Zitat Zitat von SanjaDO Beitrag anzeigen
    Danke das hat geklappt
    Dann ist ja gut.

  12. Folgender Benutzer sagt Danke zu hucki für den nützlichen Beitrag:

    dentech (22.11.2013)

  13. #10
    SanjaDO ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich habe jetzt ein TON genommen, scheint zu funktionieren....

Ähnliche Themen

  1. Antworten: 10
    Letzter Beitrag: 13.09.2012, 07:31
  2. Antworten: 1
    Letzter Beitrag: 23.01.2012, 17:06
  3. SCL: FB Aufruf unter SCL mit Variablen DB
    Von ThorstenK im Forum Programmierstrategien
    Antworten: 32
    Letzter Beitrag: 10.02.2011, 19:15
  4. Analogwertverarbeitung mit SCL
    Von PapaDjango im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 15.06.2010, 19:11
  5. Problem mit FB in SCL
    Von broesel im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 29.05.2007, 14:41

Lesezeichen

Berechtigungen

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