Uebung_083_AX: Beispiel für AUDI_CTUD_UDINT (Adapter-basiert)¶
Dieser Artikel beschreibt die logiBUS®-Übung Uebung_083_AX. Sie ist die adapterbasierte Variante der Übung 083 und demonstriert einen Auf-/Abwärtszähler (AUDI_CTUD_UDINT) für vorzeichenlose 32-Bit-Ganzzahlen in einer AX-Umgebung.
Ziel der Übung¶
Erlernen der adapterbasierten Steuerung eines Hochleistungs-Zählers und der Anzeige des Zählwerts auf einem ISOBUS-Terminal. Die Übung zeigt die Nutzung von AX-Adaptern für die Eingänge (CU, CD, R, LD) und den Zählwert (CV) sowie für die Ansteuerung der numerischen Anzeige.
Beschreibung und Komponenten¶
Die Subapplikation Uebung_083_AX.SUB nutzt folgende adapterbasierte Funktionsbausteine:
Funktionsbausteine (FBs)¶
DigitalInput_CLK_I1bisI4: Eingangsbausteine vom TyplogiBUS::io::DI::logiBUS_IXA. Sie liefern über einen AX-Adapter ein Ereignis und ein Bool-Signal bei Tasterdruck.AUDI_CTUD_UDINT: Der adapterbasierte Auf-/Abwärtszähler. Er erwartet Events anCU,CD,Rund einenAUDI-Adapter anPVsowie gibt den Zählwert über denCV-Adapter aus.DigitalOutput_Q1&Q2: Ausgangsbausteine vom TyplogiBUS::io::DQ::logiBUS_QXAfür die Anzeige des Zählerstatus (QU,QD).Q_NumericValue_AUDI: ISOBUS-Ausgangsbaustein für die numerische Anzeige am Terminal, empfängt den Wert über einenAUDI-Adapter.AUDI_UDINT_TO_UDI: Konvertierungsbaustein, der einenUDINT-Literal (UDINT#5) in einenAUDI-Adapter umwandelt, um denPV-Eingang des Zählers zu versorgen.
Funktionsweise¶
- Zählen:
DigitalInput_CLK_I1.OUT(Taster I1) triggertAUDI_CTUD_UDINT.CU(Zähler hoch).DigitalInput_CLK_I2.OUT(Taster I2) triggertAUDI_CTUD_UDINT.CD(Zähler runter). - Reset/Load:
DigitalInput_CLK_I3.OUT(Taster I3) triggertAUDI_CTUD_UDINT.R(Reset).DigitalInput_CLK_I4.INDtriggertAUDI_UDINT_TO_UDI.REQ, der den WertUDINT#5anAUDI_CTUD_UDINT.PVübergibt und damit den Zähler lädt. - Anzeige: Der Zählerstatus
QUundQDsteuertDigitalOutput_Q1.OUTundDigitalOutput_Q2.OUT. Der aktuelle Zählerwert (AUDI_CTUD_UDINT.CV) wird anQ_NumericValue_AUDI.u32NewValuegesendet und am ISOBUS-Terminal angezeigt.
Hinweise zur Implementierung¶
- Eingangstypen: Die
DigitalInput_CLK_IBausteine sind vom TyplogiBUS_IE, obwohllogiBUS_IXAdie Adapter-Variante wäre. DerenInputEvent-Parameter sind in einem AX-Kontext redundant und könnten entfernt werden, wennlogiBUS_IXAverwendet wird. - PV-Initialisierung: Die direkte Zuweisung eines
PV-Parameters (UINT#5) anAUDI_CTUD_UDINTist nicht adaptergerecht. Die aktuelle Lösung über den KonverterAUDI_UDINT_TO_UDIist funktional, aber etwas umständlich.