Abwärtszähler
Dies ist eine benutzerdefinierte Funktion aus einem System-Funktionsbaustein. Die mit der Funktion CT_FUN erzeugten Zähler sind Rückwärtszähler. Der Zählbereich SV (set value = Sollwert) liegt zwischen 1 und 32767.
Eingang
Zähleingang (abwärts)
bei jeder steigenden Flanke an Count wird der Wert 1 vom Istwert EV abgezogen, bis der Wert Null erreicht ist
Rücksetzeingang
bei jeder steigenden Flanke an Reset wird dem Istwert EV der Wert 0 zugewiesen und der Signalausgang C zurückgesetzt; bei jeder fallenden Flanke an Reset wird der Wert am Sollwert SV dem Istwert EV zugewiesen
Sollwert
ist der Wert, den der Istwert EV nach einem Rücksetzvorgang (Reset) hat
Ein-/Ausgang
Interner Speicher mit den internen Werten und Zuständen, der dem Instanzspeicher des zugehörigen Funktionsbausteins entspricht.
Ausgang
Signalausgang
wird gesetzt, wenn der Istwert EV den Wert 0 erreicht hat
Istwert:
ist der aktuelle Zählwert
Der Wert kann während des Zählens geändert werden, indem aus dem Programmiereditor heraus in die Variable geschrieben wird.
Damit die CT_FUN einwandfrei arbeitet, muss vor jeder Benutzung ein Rücksetzvorgang (Reset) erfolgen.
Die Anzahl der verfügbaren Zähler ist von den Einstellungen in den Systemregistern 5 und 6 abhängig. Der Compiler vergibt an jede Zählerinstanz eine NUM*-Adresse. Die Vergabe erfolgt abwärts zählend beginnend mit der höchstmöglichen Adresse.
Die FP-Funktion CT Rückwärtszähler) benutzt den gleichen NUM*-Adressbereich (Num-Eingang). Um Fehlern (Adresskonflikten) vorzubeugen, sollten Sie die Funktion CT und die Funktion CT_FUN nicht gleichzeitig in einem Projekt verwenden.
Zeitdiagramm