Timer / Zeiten funktionieren nicht S7 Step7

excelite

Level-1
Beiträge
158
Reaktionspunkte
27
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich habe ein sehr kurioses Problem. Bei der aktuellen Steuerung funktionieren die Zeiten irgendwie nicht korrekt. Kurzes Beispiel

Code:
     U     "E_Ta_N5_Start"
      L     S5T#5S
      SS    T      1
      NOP   0
      NOP   0
      NOP   0
      U     T      1
      =     "A_ML_N5_Gutteil"

Es sollte also nach Tasten der E_Ta_N5_Start Taste eine Zeit ablaufen von 5 Sekunden. Anschließend geht die Meldeleuchte Gutteil an. Dieses kleine Testprogramm habe ich übertragen und bin im Beobachten Modus. Nun drücke ich die Starttaste und siehe da - es passiert gar nix. Die Zeit am Anschluss DEZ läuft nicht los bzw. läuft nicht ab, sondern verharrt ganz klar auf den 5s. Der Eingang signalisiert mir jedoch eine logisch 1 bei betätigen der Taste.

Woran kann das liegen? Wäre für jede Hilfe dankbar.

Grüße
excelite
 
Bei einer speichernden Einschaltverzögerung mußt Du schon den Eingang auf '1' lassen, damit was passiert.

SE: Timerausgang geht auf 1 nach Zeitablauf und auf 0, wenn Eingang 0
SS: Timerausgang geht auf 1 nach Zeitablauf und auf 0, wenn Reset
 
Anderer Fehler - SFB4 Problem

Danke für Eure Hilfe, ich bin mittlerweile dahinter gekommen wieso das nicht funktioniert hat mit den Timern. Es lag daran, dass ich einen FB erzeugt habe und dort mit "normalen" S_EVERZ gearbeitet habe. Leider war ich mir der Komplexität nicht ganz bewusst, dass diese nicht funktionieren bei Multiinstanzen des FBs da sich diese gegenseitig behaken.

Nun habe ich natürlich viel recherchiert und bin auf den SFB4 TON IEC Timer gestoßen. Dieser scheint ja nun Multiinstanzfähig zu sein. Das wäre schonmal der richtige Weg. Nur Leider funktioniert der ebenfalls nicht. Irgendwie startet der nicht. Da ist der Wurm drinne. Vielleicht könnt Ihr Helfen.

Meine Aufgabe ist also einen FB zu erstellen in dem Timer verwendet werden. Vorzugsweise Einschaltverzögerungen. Ich benötige viele Instanzen von dem FB. Wie geht das?

Ich habe den FB erstellt und diesen auf Multiinstanzfähigkeit überprüft. Anschließend ein Netzwerk erstellt im FB und dort den SFB4 TON eingefügt. Diesen habe ich ebenfalls im Kontextmenü auf Multiinstanz gesetzt. Nun habe ich den IN Eingang mit einem digitalen Eingangskanal versehen, den Q mit einem entsprechendem digitalen Ausgangskanal. Außerdem steht am Anschluss PT noch T#5s welches mit die Zeit der Einschaltverzögerung definiert. Das ganze habe ich noch im OB1 aufgerufen und übertragen. Nur funktioniert es nicht. Wenn ich den FB nach Übertragung beobachte erscheint der Timer immer grün umrandet. Der Ausgang ENO (ka wozu der gut ist, habe keine Infomationen darüber gefunden) ist immer 1. Im Anzeigefeld werden wirre Zahlen angezeigt. Am besten seht ihr euch einfach folgendes Bild an. Ich wäre euch für eine Lösung wirklich sehr dankbar.

sps.jpg


Grüße excelite
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Code:
Beschreibung
Der SFB 4 "TON" verzögert eine steigende Flanke um die Zeit PT. Die Zeit läuft nur in den Betriebszuständen ANLAUF und RUN.
Eine steigende Flanke am Eingang IN hat nach Ablauf der Zeitdauer PT eine steigende Flanke am Ausgang Q zur Folge. Q bleibt dann so lange gesetzt, bis der Eingang IN nach 0 wechselt. Falls der Eingang IN nach 0 wechselt, bevor die Zeit PT abgelaufen ist, bleibt der Ausgang Q auf 0. 
Der Ausgang ET liefert die Zeit, die seit der letzten steigenden Flanke am Eingang IN vergangen ist, jedoch höchstens bis zum Wert des Eingangs PT. ET wird zurückgesetzt, wenn der Eingang IN nach 0 wechselt.
Der SFB 4 "TON" entspricht der Norm IEC 1131-3.
Das Betriebssystem setzt die Instanzen des SFB 4 "TON" bei Kaltstart zurück. Falls Instanzen dieses SFB nach Neustart (Warmstart) initialisiert sein sollen, müssen Sie im OB 100 die zu initialisierenden Instanzen mit PT = 0 ms aufrufen. Falls Instanzen dieses SFB innerhalb eines anderen Bausteins enthalten sind, erreichen Sie das Rücksetzen dieser Instanzen z. B. durch Initialisierung des übergeordenten Bausteins.
Zeitdiagramm
Parameter Dekla-
ration Daten-
typ Speicherbereich Beschreibung
IN INPUT BOOL E, A, M, D, L, Konst. Starteingang
PT INPUT TIME E, A, M, D, L, Konst. Zeitdauer, um die die steigende Flanke am Eingang IN verzögert wird. PT muß positiv sein. ( Hinweis: Der Wertebereich ist durch den Datentyp TIME festgelegt.)
Q OUTPUT BOOL E, A, M, D, L Status der Zeit
ET OUTPUT TIME E, A, M, D, L abgelaufene Zeit

Auszug aus der Step7-Hilfe.

Ich habe deine Frage allerdingsnicht ganz verstanden ...
In einem Multi-Instanz-FB musst den den SFB4-Timer im STAT-Bereich sooft anlegen, wie du verschiedene Zeiten benötigst. Wie er funktioniert steht oben.
 
Zurück
Oben