E_CTUD_UDINT


E_CTUD_UDINT

E_CTUD_UDINT_ecc


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.

E_CTUD_UDINT

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 (CU oder CD).

    • 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 QU bzw. der zu ladende Wert fĂŒr LD (Datentyp: UDINT).

Daten-AusgĂ€nge

  • QU (Status Up): Ausgangs-Flag, das TRUE wird, wenn CV >= PV (Datentyp: BOOL).

  • QD (Status Down): Ausgangs-Flag, das TRUE wird, wenn CV = 0 (Datentyp: BOOL).

  • CV (Counter Value): Der aktuelle ZĂ€hlerstand (Datentyp: UDINT).

Funktionsweise

Der E_CTUD_UDINT reagiert auf vier verschiedene Ereignisse:

  1. AufwĂ€rtszĂ€hlen (CU): Wenn ein CU-Ereignis eintritt und CV kleiner als der Maximalwert (4.294.967.295) ist, wird CV um 1 erhöht. Anschließend wird das CO-Ereignis ausgelöst.

  2. AbwĂ€rtszĂ€hlen (CD): Wenn ein CD-Ereignis eintritt und CV grĂ¶ĂŸer als 0 ist, wird CV um 1 verringert. Anschließend wird das CO-Ereignis ausgelöst.

  3. ZurĂŒcksetzen (R): Wenn ein R-Ereignis eintritt, wird CV auf 0 gesetzt. Anschließend wird das RO-Ereignis ausgelöst.

  4. Laden (LD): Wenn ein LD-Ereignis eintritt, wird CV auf den Wert von PV gesetzt. Anschließend wird das LDO-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 UDINT kann 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.