FB_GET_ATTRIBUTE_SINGLE

FB_GET_ATTRIBUTE_SINGLE 1:

Der Funktionsbaustein FB_GET_ATTRIBUTE_SINGLE ermöglicht das Auslesen von Parametern aus einem EtherNet/IP Gerät.

Service Code: 0x0E

VAR_INPUT

VAR_INPUT
    sNetId               : T_AmsNetID;
    sIPv4Addr            : T_IPv4Addr;
    bExecute             : BOOL;
    nClass               : WORD;
    nInstance            : WORD;
    nAttribute           : WORD;
    pDst                 : POINTER TO BYTE;
    nMaxLen              : WORD;
    nSessionTimeoutMSec  : DWORD;
    nCmdTimeoutMSec      : DWORD;
    bRackComm            : BOOL;
    nPort                : BYTE;
    nSlot                : BYTE;
END_VAR

sNetId: AMSNetId des TwinCAT EtherNet/IP Scanners über den der Befehl laufen soll

sIPv4Addr: IP Adresse des Ziel Teilnehmers

bExecute: Positive Flanke startet den Befehl

nClasss: Class Nummer des CIP Dienst

nInstance: Instance Nummer des CIP Dienst

nAttribut: Attribut Nummer des CIP Dienst

pDst: Pointer auf die Variable in die der Wert kopiert werden soll (ermitteln des Pointers mit ADR)

nMaxLen: Größe der Variable auf die der Pointer pDst zeigt (ermitteln mit SizeOf)

nSessionTimeoutMSec: TimeOut für die Session, Default 30 sec

nCmdTimeoutMSec: TimeOut für das Kommando, Default 7,5 sec
bRackComm: TRUE wenn es sich um eine Modulare CPU handelt, also eine CPU mit einem Rack Aufbau zum Beispiel eine CompactLogix

nPort: Port Nummer der CPU (das TF6281 unterstützt aktuell nur Port 1)

nSlot: Slot Nummer wenn die CPU nicht auf Slot 0 steckt

VAR_OUTPUT

VAR_OUTPUT
    bBusy     : BOOL;
    bError    : BOOL;
    nErrId    : UDINT;
    nDataLen  : WORD;
END_VAR

bBusy: Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt. Während Busy = TRUE wird an den Eingängen kein neuer Befehl angenommen.

bError: Sollte ein Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der bBusy-Ausgang zurückgesetzt wurde.

nErrId: Liefert bei einem gesetzten bError-Ausgang eine Fehlernummer.

nDataLen: Liefert die Anzahl der gültigen Daten (Anzahl der Bytes) zurück.