F_DINT_TO_ULINT
Einleitung
Der Funktionsblock F_DINT_TO_ULINT dient der Konvertierung eines 32-Bit vorzeichenbehafteten Integer-Werts (DINT) in einen 64-Bit vorzeichenlosen Integer-Wert (ULINT). Dieser Baustein ist besonders nützlich, wenn Daten zwischen Systemen mit unterschiedlichen Datentypen ausgetauscht werden müssen.
Schnittstellenstruktur
Ereignis-Eingänge
REQ: Startet die Konvertierung. Bei Aktivierung dieses Ereignisses wird der Wert am Daten-Eingang
INgelesen und konvertiert.
Ereignis-Ausgänge
CNF: Signalisiert den Abschluss der Konvertierung. Dieses Ereignis wird zusammen mit dem konvertierten Wert am Daten-Ausgang
OUTausgegeben.
Daten-Eingänge
IN (
DINT): Der vorzeichenbehaftete 32-Bit Integer-Wert, der konvertiert werden soll.
Daten-Ausgänge
OUT (
ULINT): Der vorzeichenlose 64-Bit Integer-Wert, der das Ergebnis der Konvertierung enthält.
Adapter
Keine Adapter vorhanden.
Funktionsweise
Der Funktionsblock führt die Konvertierung von DINT zu ULINT durch, sobald das Ereignis REQ empfangen wird. Der Algorithmus REQ wird ausgeführt, wobei der Wert von IN mittels der Funktion DINT_TO_ULINT konvertiert und an OUT ausgegeben wird. Anschließend wird das Ereignis CNF ausgelöst, um den erfolgreichen Abschluss der Operation zu signalisieren.
Technische Besonderheiten
Der Baustein unterstützt die direkte Konvertierung ohne zusätzliche Parameter.
Die Konvertierung erfolgt ohne Datenverlust, da der
ULINT-Typ einen größeren Wertebereich alsDINTabdeckt.
Zustandsübersicht
Idle-Zustand: Wartet auf das
REQ-Ereignis.Konvertierungszustand: Führt die Konvertierung durch und setzt den Ausgang
OUT.Bestätigungszustand: Löst das
CNF-Ereignis aus und kehrt in den Idle-Zustand zurück.
Anwendungsszenarien
Datenkonvertierung in Steuerungssystemen, die unterschiedliche Datentypen verwenden.
Integration von Komponenten, die vorzeichenlose 64-Bit Werte erfordern.
Erweiterung der Kompatibilität zwischen verschiedenen Systemen.
⚖️ Vergleich mit ähnlichen Bausteinen
F_INT_TO_ULINT: Konvertiert einen kleineren vorzeichenbehafteten Integer (
INT) zuULINT.F_LINT_TO_ULINT: Konvertiert einen 64-Bit vorzeichenbehafteten Integer (
LINT) zuULINT.F_DINT_TO_LINT: Konvertiert
DINTzu einem vorzeichenbehafteten 64-Bit Integer (LINT).
Fazit
Der F_DINT_TO_ULINT-Funktionsblock bietet eine einfache und effiziente Möglichkeit, vorzeichenbehaftete 32-Bit Integer-Werte in vorzeichenlose 64-Bit Integer-Werte umzuwandeln. Durch seine klare Schnittstelle und zuverlässige Funktionsweise eignet er sich ideal für Anwendungen, die eine sichere und verlustfreie Datentypkonvertierung erfordern.