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

Ergebnis 1 bis 8 von 8

Thema: Schleife anhalten progr. in ST - mit TwinCat

  1. #1
    Registriert seit
    28.01.2006
    Beiträge
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Frage


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich möchte zu steuerungszwecken die Abarbeitung einer For Schleife für X- Sekunden unterbrechen. Jedoch habe ich bislang keine zufriedenstellende Lösung gefunden. Die Ausführung muss direkt in der Schleife "angehalten" werden können. Vielleicht hat jemand eine Lösung parat - vorzugsweise in ST.

    Vielen Dank
    Sash


    Code:
     
        (* Routine zur Pumpensteuerung  *)
        FOR ZAEHLER := 1 TO 60 BY 1 DO
         IF SOLAR_FU_EIN = TRUE THEN
          TEMP_SOLAR_SPREIZUNG_IST := TEMP_SOLAR_MAX - TEMP_PF1_UNTEN;
          IF TEMP_SOLAR_SPREIZUNG_IST < TEMP_SOLAR_SPREIZUNG_SOLL AND SOLAR_FU_ANALOGWERT <= 32760 AND SOLAR_FU_ANALOGWERT >= 0 THEN
           SOLAR_FU_ANALOGWERT := SOLAR_FU_ANALOGWERT - 10;
          ELSIF TEMP_SOLAR_SPREIZUNG_IST = TEMP_SOLAR_SPREIZUNG_SOLL AND SOLAR_FU_ANALOGWERT <= 32760 AND SOLAR_FU_ANALOGWERT >= 0 THEN
           SOLAR_FU_ANALOGWERT := SOLAR_FU_ANALOGWERT;
          ELSIF TEMP_SOLAR_SPREIZUNG_IST > TEMP_SOLAR_SPREIZUNG_SOLL AND SOLAR_FU_ANALOGWERT <= 32760 AND SOLAR_FU_ANALOGWERT >= 0 THEN
           SOLAR_FU_ANALOGWERT := SOLAR_FU_ANALOGWERT + 10;
          END_IF
         ELSE
          SOLAR_FU_EIN := TRUE;
          SOLAR_FU_ANALOGWERT := 5000;
         END_IF
         (* #### HIER #### SCHLEIFE FÜR bestimmte Zeit anhalten *)
        END_FOR
    Zitieren Zitieren Schleife anhalten progr. in ST - mit TwinCat  

  2. #2
    Registriert seit
    09.09.2005
    Beiträge
    108
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Wie wäre es denn wenn du einfach eine Sprungmarke setzt die dann in einen Zeitbaustein verknüpft?

  3. #3
    sashluc ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    28.01.2006
    Beiträge
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Vielen Dank für die Antwort.
    Es währe sehr nett wenn Sie mir diesbezüglich ein kleines Beispiel geben könnten. Ich kann mir noch nicht vorstellen wie dies funktioniert.

    MfG
    sash

  4. #4
    Registriert seit
    09.09.2005
    Beiträge
    108
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Was genau soll die unterbrechung der Schleife den bezwecken.

    PS. Guck in der SCL hilfe mal unter GOTO

  5. #5
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.732
    Danke
    314
    Erhielt 1.519 Danke für 1.282 Beiträge

    Standard

    Je mehr ich darüber nachdenke was du hier eigentlich vorhast umsomehr kommt mir der Gedanke,
    das das nicht die beste Lösung ist sowas in einer Schleife zu machen.

    Du hast also 2 Temperaturfühler, aus diesen bildest du eine Differenz,
    jetzt erhöhst oder erniedrigst du den Pumpensollwert je nachdem ob die Differenz größer oder kleiner als deine Solldifferenz ist,
    pro Aufruf dieser Messfunktion willst du das max. um den Wert 600 tun.

    Die Pause brauchst du deshalb, weil sich in den paar Millisekunden wo die Schleife durchlaufen wird, sich
    an deinem Messsystem nichts ändern kann, weil eine Temperaturregelung allgemein relativ träge ist.

    Möglicherweise wird der Analogausgang sogar erst nach der Schleife aktualisiert (keine Ahnung wie das jetzt bei Beckhoff ist).

    Sag einfach mal ob ich recht habe oder nicht.
    Warum denn einfach, wenn man auch Siemens einsetzen kann!

    Wer die grundlegenden Freiheiten aufgibt, um vorübergehend ein wenig Sicherheit zu bekommen, verdient weder Freiheit noch Sicherheit (B. Franklin).

  6. #6
    sashluc ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    28.01.2006
    Beiträge
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    @MSB ja sehr gut erkannt - das ist ein Problem von mind. zweien - der Analogwert für den FU ändert sich bei jedem Zyklus bis der Maximalwert erreicht ist.

    Das zweite Problem ist, das es 11 versch. "Regelstrecken" gibt - im Programmzyklus wird vorher ausgewählt welches "Szenario" anhand versch. Temperaturparameter geregelt werden soll. Im ungünstigsten Fall kann es also sein, das bei jeden Zyklusdurchlauf eine andere Regelstrecke angesprochen wird (ich komme also nicht mehr zu dem Punkt wo ich zuerst regeln wollte zurück).

    Deswegen wollte ich eine Schleife einsetzen, damit die "Regelstrecke" darin "gefangen" ist und auch wirklich geregelt werden kann. (für mind. 5-10 min.)

    Optimal währe eine Funktion wie "Break" wo eine wirkliche Pause erzielt werden kann.

  7. #7
    Registriert seit
    31.10.2005
    Beiträge
    26
    Danke
    0
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Hallo,
    nur son Gedanke:
    Lass die For-Schleife weg und benutze nen Takt-Merker.
    Einen Takt-Merker (5 bis 10 min) um eine deiner 11 Regelstrecken aufzurufen.
    In der Regelstrecke nochmal ein Takt-Merker (30 sec o. so) mit dem wird dann geregelt.

    HTH

    Bewareofthis

  8. #8
    Registriert seit
    14.08.2004
    Beiträge
    824
    Danke
    45
    Erhielt 73 Danke für 66 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Bei so etwas ist immer ein Automat die sauberste Lösung und am besten zu lesen.

Ähnliche Themen

  1. Kiste soll anhalten?
    Von TechnikFreak10 im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 02.05.2010, 08:37
  2. Zeit anhalten
    Von Glitsch Master im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 22.09.2009, 20:20
  3. Abschlussprüfung Progr. Wasseraufbereitung
    Von Simon87 im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 15.07.2009, 14:01
  4. Änderung eines SPS-Progr. auslesen/erkennen
    Von thony77 im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 03.12.2007, 13:33
  5. timer anhalten
    Von Anonymous im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 15.02.2005, 21:10

Lesezeichen

Berechtigungen

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