CF_INFO_T
Einleitung
Der Datentyp CF_INFO_T (Control Function Information Type) ist eine strukturierte Datenkomponente, die innerhalb der ISO 11783 (ISOBUS)-Kommunikation verwendet wird. Er dient der standardisierten Abbildung und Verwaltung von Informationen über einen Teilnehmer (Control Function oder User) im ISOBUS-Netzwerk. Dieser Typedef fasst alle wesentlichen Merkmale und Zustände eines Netzwerkteilnehmers in einer einzigen Datenstruktur zusammen.
Schnittstellenstruktur
CF_INFO_T ist ein strukturierter Datentyp (StructuredType) und verfügt über keine Ereignis- oder Adapterschnittstellen im herkömmlichen Sinne eines Funktionsbausteins. Seine Struktur besteht ausschließlich aus Daten-Elementen (Variablen).
Daten-Eingänge
Nicht vorhanden, da es sich um einen reinen Datentyp handelt.
Daten-Ausgänge
Nicht vorhanden, da es sich um einen reinen Datentyp handelt.
Daten-Elemente (Struktur)
Die interne Struktur des Typs CF_INFO_T besteht aus den folgenden Elementen:
Name |
Typ |
Kommentar / Beschreibung |
Initialwert |
|---|---|---|---|
|
|
Netzwerk-Member-Handle der Control Function (CF) / des Users. Dient als eindeutiger Identifikator innerhalb der Anwendung. |
|
|
|
Quelladresse (Source Address, SA) der Control Function (CF) / des Users im ISOBUS-Netzwerk. |
|
|
|
CAN-Bus Node / Index der Control Function (CF) / des Users. Identifiziert den physischen Bus-Knoten. |
– |
|
|
Der ISOBUS-NAME der Control Function. Dies ist eine 64-bit eindeutige Kennung gemäß ISO 11783-5. |
– |
|
|
Intern verwendeter CF-Funktionstyp (z.B. Arbeitsgerät, Terminal, Task-Controller). |
|
|
|
Kennzeichnet, ob es sich um eine externe CF im CAN-Netzwerk handelt ( |
– |
|
|
|
– |
|
|
NIU-spezifisch (Network Interface Unit): |
– |
Funktionsweise
Der Datentyp CF_INFO_T ist eine passive Datenhaltungsstruktur. Er wird verwendet, um den Zustand und die Identität eines ISOBUS-Netzwerkteilnehmers zu speichern und zwischen verschiedenen Komponenten einer Steuerungsanwendung auszutauschen. Die enthaltenen Informationen werden typischerweise durch andere Funktionsbausteine gelesen, geschrieben und interpretiert, die für die Netzwerkverwaltung (z.B. Adressvergabe, NAME-Verwaltung) oder die Applikationslogik zuständig sind.
Technische Besonderheiten
Typedef für ISOBUS: Speziell für die Anwendung in ISO 11783-Umgebungen (Landtechnik) konzipiert.
Zustandsflags: Enthält mehrere boolesche Flags (
bIsAnnounced,bIsActive), die den Lebenszyklus und Betriebszustand einer CF abbilden.Initialwerte: Kritische Identifikatoren wie
s16Handleundu8SourceAddresswerden mit definierten Konstanten (UNVALID,NULL_A) initialisiert, um einen ungültigen Ausgangszustand sicherzustellen.Integration: Verwendet den benutzerdefinierten Typ
isobus::pgn::CF_NAME_Tfür die Abbildung des 64-bit ISOBUS-NAMEN.
Zustandsübersicht
Da es sich um einen Datentyp und keinen aktiven Baustein handelt, existiert keine Zustandsmaschine. Der „Zustand“ wird durch die Kombination der enthaltenen Datenfelder beschrieben, insbesondere durch die Flags:
Ungültig/Inaktiv:
s16Handle == UNVALID,bIsAnnounced == FALSEGültig & Aktiv:
s16Handle != UNVALID,bIsAnnounced == TRUE,bIsActive == TRUEGültig & Fehlerhaft/Inaktiv:
s16Handle != UNVALID,bIsActive == FALSE
Anwendungsszenarien
Teilnehmerverwaltung: In einem ISOBUS-Manager-Baustein, der eine Liste aller bekannten Netzwerkteilnehmer (
CF_INFO_T[]) verwaltet.Diagnose und Anzeige: Weitergabe von Teilnehmerinformationen an ein Diagnose- oder Display-System, um den Netzwerkstatus anzuzeigen.
Kommando-Weiterleitung: Als Parameter für Kommunikationsbausteine, um Nachrichten gezielt an eine bestimmte CF (identifiziert durch
u8SourceAddressundau8Name) zu adressieren.Filterung: Logikbausteine können anhand der Felder
eIsoUserFunctoderbExternalCfentscheiden, ob Nachrichten einer bestimmten CF verarbeitet werden sollen.
⚖️ Vergleich mit ähnlichen Bausteinen
CF_INFO_T ist kein Funktionsbaustein und kann daher nicht direkt mit Blöcken wie E_SR oder E_CYCLE verglichen werden. Innerhalb der ISOBUS-Kommunikation ist er vergleichbar mit anderen strukturierten Datentypen, die Netzwerk- oder Geräteinformationen bündeln (z.B. PGN_INFO_T für Parameter Group Numbers). Seine Besonderheit liegt in der spezifischen Zusammenstellung von Daten, die für die Identifikation und das Zustandsmanagement einer Control Function erforderlich sind.
Fazit
Der Datentyp CF_INFO_T ist ein grundlegender und wesentlicher Bestandteil für die Implementierung von ISOBUS-fähigen Steuerungsapplikationen in 4diac. Er bietet eine standardisierte, typsichere Methode, um alle relevanten Informationen eines Netzwerkteilnehmers zu gruppieren und zu transportieren. Durch seine Verwendung wird die Wiederverwendbarkeit von Code erhöht und die Konsistenz in der Netzwerkkommunikationslogik sichergestellt.