Step 7 Zwei Timer gleichzeitig starten?

truth

Level-1
Beiträge
7
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,
um einen Timer zu starten, kann ich folgendes schreiben:

U #start
L S5T#30s
SS T1

Kann man mit einem Ereignis auch zwei Timer gleichzeitig starten?
(Ich habe kein konkretes Anwendungsbeispiel. Das ist eher eine Verständnisfrage)

Vielen Dank schon im voraus,
Truth
 
.
Ja, das geht wie auch die Vorredner bereits sagten.

Du musst allerdings bedenken, wenn du mit dem gleichem
Triggerereignis zwei verschiedene Timertypen startest, kann
das zu unterschiedlichen Timerverhalten führen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vielen Dank für die Vorgeschläge ...
... hier werden zwei Timer von einem Ereignis ausgelöst.

Aber werden die Timer denn auch gleichzeitig ausgelöst?
... immerhin vergehen zwischen den beiden SE-Aufrufen einige Taktzyklen.
 
Hi,

Aber werden die Timer denn auch gleichzeitig ausgelöst?
... immerhin vergehen zwischen den beiden SE-Aufrufen einige Taktzyklen.
Wenn bei U #Start dein VKE = 1 ist, dann wird die Einschaltverzögerung für T1 sowie für T2 zeitgleich gestartet.
Wenn die Zeiten mit denen du T1 und T2 geladen hast gleich sind, dann werden (sofern #Start bei Ablauf der Zeit noch immer "True" ist)
beide Zustandabfragen auf die Timer im selben Zyklus 1 sein.
Bei unterschiedlichen Zeiten werden die Timer trotzdem zeitgleich gestartet, der Zustand der Timer
wird nur den unterschiedlichen Zeiten entsprechend auf 1 sein.

Wie kommst du denn darauf das zwischen den beiden SE Aufrufen einige Taktzyklen vergehen?
Selbst wenn deine beiden SE Aufrufe nicht im selben Baustein stehen sollten...
Sofern beide Bausteine in deinem Programm zyklisch aufgerufen werden, dann ist der Zustandswechsel
von #Start für beide SE Abfragen trotzdem im selben "Taktzyklus" weil in der Regel mit dem PAE (Prozessabbild der Eingänge)
gearbeitet wird, welches für alle Bausteine gilt und am Anfang des OB1 Zyklus eingelesen wird und sich während der
Abarbeitung aller Bausteine bis zum Ende des OB1 Zyklus nicht mehr verändert...

Wenn wir jetzt allerdings über einzelne Millisekunden sprechen sollten, dann sollte auch der genaue Code vorliegen,
besser sogar das ganze Programm.

Gruß, Toki
 
Vielen Dank,

wenn ich das jetzt richtig verstanden habe, geht man bei der Programmierung immer davon aus, dass die CPU-Bearbeitungszeit (= Zeit für Bit- bzw. Wort-Operationen) und somit das Abarbeiten des AWL-Codes immer viel kürzer ist als der Takt bzw. die Zykluszeit des OB1.

Von welcher „Operation“ wird denn die Zykluszeit des OB1 dominiert,
... vom Erstellen des Prozessabbildes der Eingänge,
... von der Länge des Programmes (AWL-Code),
... vom Schreiben der Ausgänge
... von Sonstigem?

…. und wie lange dauert so ein OB1-Zyklus typischerweise?

Viele Grüße,
Truth
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Also zum allgemeinen Verständnis:
Die Timer werden höchst präzise gesprochen einige zehntel us hintereinander gestartet.

Wenn ein Timer dann mal gestartet wurde, durch entsprechenden VKE-Wechsel, dann läuft dieser quasi unabhängig vom Zyklus.

Wie Lange dauert ein OB1-Zyklus:
In der Praxis zwischen 1ms und ca. 250ms, wobei das von CPU-Typ, abgearbeiteten Programm, azyklischen Sachen (OB35 und Co.), etc. abhängt.

Mfg
Manuel
 
Vielen Dank,

wenn ich das jetzt richtig verstanden habe, geht man bei der Programmierung immer davon aus, dass die CPU-Bearbeitungszeit (= Zeit für Bit- bzw. Wort-Operationen) und somit das Abarbeiten des AWL-Codes immer viel kürzer ist als der Takt bzw. die Zykluszeit des OB1.

Von welcher „Operation“ wird denn die Zykluszeit des OB1 dominiert,
... vom Erstellen des Prozessabbildes der Eingänge,
... von der Länge des Programmes (AWL-Code),
... vom Schreiben der Ausgänge
... von Sonstigem?

…. und wie lange dauert so ein OB1-Zyklus typischerweise?

Viele Grüße,
Truth

.
Die Zykluszeit ergibt sich aus den einzelnen Zeiten
für die Bearbeitung der ersten Anweisung im OB 1
bis hin zur letzten Anweisung.
Andere während der OB 1-Bearbeitung auftretende
Ereignisse wie Fehler oder Alarme erhöhen natürlich
die Zykluszeit.

HIER findest du Angaben für die Ausführungszeiten
der einzelnen Befehle, die vom OB 1 abgearbeitet
werden und sich zur Zykluszeit aufaddieren.

Von der Zeit für die PAE/PAA-Aktualisierung, die
zwischen dem Ende und dem erneuten OB 1-Start
benötigt wird, habe ich mal abgesehen.
 
Zurück
Oben