logiBUS_PI_S


Einleitung

Der Funktionsblock logiBUS_PI_S ist ein Struktur-Datentyp (Structured Type), der für die Konfiguration eines digitalen Eingangs (PI - wahrscheinlich „Peripheral Input“) innerhalb des logiBUS-Frameworks dient. Er definiert die notwendigen Parameter, um einen spezifischen physischen Pin eines I/O-Moduls oder Controllers anzusprechen. Dieser Datentyp wird typischerweise als Eingabeparameter für entsprechende IO-Funktionsblöcke verwendet.

Schnittstellenstruktur

Als Datentyp (STRUCT) besitzt logiBUS_PI_S keine ereignisgesteuerten Schnittstellen, sondern definiert ausschließlich Datenfelder.

Daten-Eingänge

Nicht zutreffend – dies ist ein Datentyp, kein ausführbarer Funktionsblock.

Daten-Ausgänge

Nicht zutreffend – dies ist ein Datentyp, kein ausführbarer Funktionsblock.

Interne Struktur (Variablen)

Die Struktur besteht aus einem einzigen Mitglied:

  • Pin (USINT, Initialwert: 255): Diese Variable spezifiziert die Hardware-Pinnummer, die als digitaler Eingang genutzt werden soll. Der Datentyp USINT (Unsigned Short Integer) erlaubt Werte von 0 bis 255. Der voreingestellte Initialwert 255 dient häufig als inaktiver oder undefinierter Zustand.

Adapter

Nicht vorhanden.

Funktionsweise

Der Datentyp logiBUS_PI_S fungiert als reiner Konfigurations-Container. Er kapselt die Information, welcher physikalische Pin angesteuert werden soll. Die eigentliche Logik zur Abfrage des Pin-Zustands liegt in den Funktionsblöcken, die eine Variable dieses Typs als Eingang erwarten (z.B. logiBUS_PI oder ähnliche). Diese Blöcke lesen den Wert aus dem Pin-Feld aus und verwenden ihn, um die entsprechende Hardware-Schnittstelle anzusteuern.

Technische Besonderheiten

  • Initialwert: Der Initialwert von 255 für Pin ist eine gängige Praxis, um einen nicht konfigurierten oder fehlerhaften Zustand zu kennzeichnen, da Pinnummern in der Praxis meist deutlich niedriger liegen.

  • Paketzuordnung: Der Datentyp ist Teil des Pakets logiBUS::io::PI, was ihn der Kategorie der Peripherie-Eingänge (Input) innerhalb der logiBUS-Bibliothek zuordnet.

  • Typ-Hash: Das Attribut eclipse4diac::core::TypeHash mit einem leeren Wert weist darauf hin, dass für die Typkompatibilität innerhalb des Systems ein automatisch generierter Hash verwendet wird.

Zustandsübersicht

Da es sich um einen passiven Datentyp handelt, gibt es keine Zustandsmaschine oder aktiven Zustände.

Anwendungsszenarien

Dieser Strukturdatentyp wird verwendet, um die Konfiguration von digitalen Eingangskanälen in Steuerungsapplikationen mit logiBUS-kompatibler Hardware zentral und typsicher zu halten. Typische Anwendungen sind:

  • Konfiguration von Taster-, Schalter- oder Sensorsignalen (z.B. Endschalter, Lichtschranken).

  • Parametrierung von Funktionsblöcken, die digitale Eingänge in einem verteilten I/O-System (wie logi.BUS) auslesen.

  • Vereinfachung der Wiederverwendung und Lesbarkeit von Code, da die Pin-Konfiguration in einer benannten Struktur gebündelt ist.

⚖️ Vergleich mit ähnlichen Bausteinen

  • Einfache Datentypen (z.B. USINT direkt): Die Verwendung einer strukturierten logiBUS_PI_S-Variable ist einer direkten Verwendung einer USINT-Variable für die Pinnummer vorzuziehen, da sie semantisch klarer ist und bei Erweiterungen der Konfiguration (z.B. um Filterzeit oder Invertierung) einfacher erweitert werden kann, ohne alle Aufrufstellen ändern zu müssen.

  • logiBUS_PO_S (Digitaler Ausgang): Es existiert sehr wahrscheinlich ein komplementärer Datentyp logiBUS_PO_S für die Konfiguration digitaler Ausgänge (PO - Peripheral Output) mit identischer oder sehr ähnlicher Struktur.

Fazit

Der logiBUS_PI_S-Datentyp ist ein grundlegender, spezifischer Konfigurationsbaustein für die Anbindung digitaler Eingangssignale in logiBUS-basierten IEC 61499-Anwendungen. Durch seine einfache, auf einen Parameter reduzierte Struktur ermöglicht er eine klare und zentrale Hardware-Konfiguration und bildet die Basis für die entsprechende Funktionalität in den ausführenden IO-Funktionsblöcken.