F_UDINT_TO_BCD_DWORD¶
Einleitung¶
Der Funktionsblock F_UDINT_TO_BCD_DWORD dient der Konvertierung eines vorzeichenlosen 32-Bit-Integer-Werts (UDINT) in ein BCD-kodiertes DWORD. Diese Konvertierung ist insbesondere in Anwendungen nützlich, bei denen numerische Werte in einem für Menschen lesbaren Format dargestellt oder verarbeitet werden müssen.
Schnittstellenstruktur¶
Ereignis-Eingänge¶
- REQ: Startet die Konvertierung. Der Eingang ist mit dem Daten-Eingang
INverknüpft.
Ereignis-Ausgänge¶
- CNF: Signalisiert den Abschluss der Konvertierung. Der Ausgang ist mit dem Daten-Ausgang
OUTverknüpft.
Daten-Eingänge¶
- IN: Ein vorzeichenloser 32-Bit-Integer-Wert (UDINT), der in ein BCD-kodiertes DWORD umgewandelt werden soll.
Daten-Ausgänge¶
- OUT: Das Ergebnis der Konvertierung als BCD-kodiertes DWORD.
Adapter¶
Keine Adapter vorhanden.
Funktionsweise¶
Der Funktionsblock führt die Konvertierung durch, sobald das Ereignis REQ empfangen wird. Der Algorithmus wandelt den Wert am Eingang IN von UDINT in ein BCD-kodiertes DWORD um und legt das Ergebnis am Ausgang OUT ab. Anschließend wird das Ereignis CNF ausgelöst, um den erfolgreichen Abschluss der Operation zu signalisieren.
Technische Besonderheiten¶
- Die Konvertierung erfolgt mittels der Funktion
UDINT_TO_BCD_DWORD, die im Algorithmus des Funktionsblocks implementiert ist. - Der Funktionsblock ist Teil des Pakets
iec61131::conversion.
Zustandsübersicht¶
- Wartezustand: Der Funktionsblock wartet auf das Ereignis
REQ. - Aktivzustand: Bei Empfang von
REQwird die Konvertierung durchgeführt und das Ergebnis anOUTausgegeben. - Bestätigungszustand: Nach erfolgreicher Konvertierung wird
CNFausgelöst und der Funktionsblock kehrt in den Wartezustand zurück.
Anwendungsszenarien¶
- Anzeigesteuerung: Konvertierung von numerischen Werten für die Anzeige auf siebensegmentigen Displays oder LCDs.
- Datenkommunikation: Vorbereitung von Daten für die Übertragung in BCD-kodierten Protokollen.
- Druckersteuerung: Umwandlung von numerischen Werten für den Druck in einem lesbaren Format.
⚖️ Vergleich mit ähnlichen Bausteinen¶
- F_UDINT_TO_STRING: Konvertiert einen UDINT in einen String, ist jedoch weniger effizient für BCD-spezifische Anwendungen.
- F_UDINT_TO_DWORD: Führt eine direkte Typumwandlung durch, ohne BCD-Kodierung.
Fazit¶
Der Funktionsblock F_UDINT_TO_BCD_DWORD bietet eine effiziente und spezialisierte Lösung für die Konvertierung von vorzeichenlosen 32-Bit-Integern in BCD-kodierte DWORDs. Seine einfache Schnittstelle und zuverlässige Funktionsweise machen ihn ideal für Anwendungen, die eine BCD-Kodierung erfordern.