E_CTUD_UDINT
Einleitung
Der E_CTUD_UDINT ist eine Variante des E_CTUD-Zählers, die den Datentyp UDINT (Unsigned Double Integer, 32-Bit) verwendet. Dieser ereignisgesteuerte Vor- und Rückwärtszähler kann einen sehr großen Zählerbereich abdecken. Er kann einen Zählerwert basierend auf separaten Ereignissen inkrementieren, dekrementieren, zurücksetzen oder mit einem vordefinierten Wert laden.
Schnittstellenstruktur
Ereignis-Eingänge
CU (Count Up): Löst ein Aufwärtszählen aus.
Verbundene Daten:
PV
CD (Count Down): Löst ein Abwärtszählen aus.
R (Reset): Setzt den Zähler auf 0 zurück.
LD (Load): Lädt einen neuen Wert in den Zähler.
Verbundene Daten:
PV
Ereignis-Ausgänge
CO (Count Output): Bestätigt eine Zähloperation (
CUoderCD).Verbundene Daten:
QU,CV,QD
RO (Reset Output): Bestätigt das Zurücksetzen des Zählers.
Verbundene Daten:
QU,CV,QD
LDO (Load Output): Bestätigt das Laden eines neuen Zählerwertes.
Verbundene Daten:
QU,CV,QD
Daten-Eingänge
PV (Preset Value): Der Grenzwert für
QUbzw. der zu ladende Wert fürLD(Datentyp:UDINT).
Daten-Ausgänge
QU (Status Up): Ausgangs-Flag, das
TRUEwird, wennCV >= PV(Datentyp:BOOL).QD (Status Down): Ausgangs-Flag, das
TRUEwird, wennCV = 0(Datentyp:BOOL).CV (Counter Value): Der aktuelle Zählerstand (Datentyp:
UDINT).
Funktionsweise
Der E_CTUD_UDINT reagiert auf vier verschiedene Ereignisse:
Aufwärtszählen (CU): Wenn ein
CU-Ereignis eintritt undCVkleiner als der Maximalwert (4.294.967.295) ist, wirdCVum 1 erhöht. Anschließend wird dasCO-Ereignis ausgelöst.Abwärtszählen (CD): Wenn ein
CD-Ereignis eintritt undCVgrößer als 0 ist, wirdCVum 1 verringert. Anschließend wird dasCO-Ereignis ausgelöst.Zurücksetzen (R): Wenn ein
R-Ereignis eintritt, wirdCVauf 0 gesetzt. Anschließend wird dasRO-Ereignis ausgelöst.Laden (LD): Wenn ein
LD-Ereignis eintritt, wirdCVauf den Wert vonPVgesetzt. Anschließend wird dasLDO-Ereignis ausgelöst.
Nach jeder dieser Aktionen werden die Status-Flags QU und QD basierend auf dem neuen Wert von CV aktualisiert (QU = (CV >= PV) und QD = (CV == 0)). Die jeweiligen Ausgangsereignisse (CO, RO, LDO) geben dann den aktuellen Zählerstand CV und die beiden Status-Flags aus.
Technische Besonderheiten
Großer Zählbereich: Durch die Verwendung von
UDINTkann der Zähler Werte von 0 bis 4.294.967.295 annehmen.Bidirektionale Zählung: Der Baustein beherrscht das Auf- und Abwärtszählen in einem Block.
Umfassende Steuerung: Bietet neben dem Zählen auch Funktionen zum expliziten Laden und Zurücksetzen.
Über- und Unterlaufschutz: Zähloperationen werden nur innerhalb der gültigen
UDINT-Grenzen (0 bis 4.294.967.295) ausgeführt.
Anwendungsszenarien
Gesamtzähler: Erfassung von Gesamtstückzahlen oder Betriebsstunden über die gesamte Lebensdauer einer Maschine, wo ein 16-Bit-Zähler nicht ausreicht.
Energiemessung: Zählen von Impulsen eines Energiezählers (z.B. Wh oder kWh) über lange Zeiträume.
Hochauflösende Positionserfassung: Zählen von sehr vielen Inkrementen eines hochauflösenden Encoders.
Fazit
Der E_CTUD_UDINT ist die UDINT-Variante des universellen E_CTUD-Zählers. Er bietet dieselbe Funktionalität, aber mit einem wesentlich größeren Zählbereich (32-Bit). Dies macht ihn zur idealen Wahl für Anwendungen, bei denen der Zählerstand über die Grenze eines 16-Bit-UINT-Zählers hinauswachsen kann. Seine robuste, ereignisgesteuerte Natur und die umfassenden Steuerungs- und Statusfunktionen bleiben dabei erhalten.