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.
đ ïž Zugehörige Ăbungenï
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.