Uebung_011_AUDI: Numeric Value Input¶
Dieser Artikel beschreibt die logiBUS®-Übung Uebung_011_AUDI. Sie ist die adapterbasierte Variante der Übung 011 und zeigt, wie numerische Werte effizient und übersichtlich verarbeitet werden.
Ziel der Übung¶
Erlernen der modernen, adapterbasierten Verarbeitung von ISOBUS-Terminal-Eingaben. Durch die Verwendung von Adaptern wird das Baustein-Netzwerk kompakter und die Trennung von Ereignis- und Datenfluss erfolgt implizit innerhalb der Adapter-Struktur.
Beschreibung und Komponenten¶
Die Subapplikation Uebung_011_AUDI.SUB nutzt einen adapterbasierten Eingabe-Baustein.
Funktionsbausteine (FBs)¶
InputNumber_I1: TypNumericValue_IDA. Dieser Baustein stellt ein numerisches Eingabefeld auf dem ISOBUS-Terminal dar. Im Gegensatz zur Standard-Variante (_ID) nutzt dieser Baustein einen AX-basierten Adapter-Ausgang (IN), der sowohl das Ereignis als auch den DWORD-Wert bündelt.F_DWORD_TO_UDINT: Hier wird der neue BausteintypAD_TO_AUDIverwendet. Er nimmt denAD-Adapter entgegen und gibt einenAUDI-Adapter aus, der den Wert alsUDINTführt.
Funktionsweise¶
Die Verbindung zwischen Eingabe und Konvertierung erfolgt ausschließlich über eine Adapter-Linie:
<AdapterConnections>
<Connection Source="InputNumber_I1.IN" Destination="F_DWORD_TO_UDINT.AD_IN"/>
</AdapterConnections>
- Der Nutzer gibt am Terminal einen Wert ein (z. B. "100").
- Nach der Bestätigung sendet der Baustein
InputNumber_I1das Update über den Adapter-Plug. - Der Konverter
AD_TO_AUDI(instanziiert alsF_DWORD_TO_UDINT) empfängt dieses Paket, wandelt den Typ und stellt das Ergebnis amAUDI-Plug für die restliche Logik bereit.
Fazit¶
Die Übung verdeutlicht den Vorteil von Adaptern: Anstatt separate Linien für Ereignisse (REQ/CNF) und Daten (IN/OUT) ziehen zu müssen, reicht eine einzige Adapter-Verbindung aus. Dies reduziert die Fehleranfälligkeit und erhöht die Lesbarkeit des Programms erheblich.