ADSLOGEVENT

ADSLOGEVENT 1:

Der Funktionsbaustein erlaubt das Absenden und Quittieren von Meldungen zum TwinCAT EventLogger.

ADSLOGEVENT 2:

TwinCAT EventLogger vs. TwinCAT 3 EventLogger

Der TwinCAT EventLogger wurde durch den Nachfolger TwinCAT 3 EventLogger abgelöst. Der ältere TwinCAT EventLogger wird von TwinCAT 3 bis zur Version 3.1.4024 unterstützt. Neuere TwinCAT-Versionen (>= 3.1.4026.0) unterstützen nur den neueren TwinCAT 3 EventLogger. SPS-Funktionsbausteine hierzu befinden sich in der SPS Bibliothek Tc3_EventLogger.

ADSLOGEVENT 3: Eingänge

VAR_INPUT
    NETID             : T_AmsNetId;
    PORT              : T_AmsPort;
    Event             : BOOL;
    EventQuit         : BOOL;
    EventConfigData   : TcEvent;
    EventDataAddress  : PVOID;
    EventDataLength   : UDINT;
    FbCleanup         : BOOL;
    TMOUT             : TIME := DEFAULT_ADS_TIMEOUT;
END_VAR

Name

Typ

Beschreibung

NETID

T_AmsNetId

String, der die AMS-Netzwerkkennung des Zielgerätes enthält, an das der ADS-Befehl gerichtet wird (Typ: T_AmsNetId).

PORT

T_AmsPort

Portnummer des ADS-Gerätes. Der TwinCAT EventLogger hat die Portnummer 110 (Typ: T_AmsPort).

Event

BOOL

Mit der steigenden Flanke wird das „Kommen“ des Events signalisiert, mit der fallenden Flanke das „Gehen“ des Events.

EventQuit

BOOL

Mit der steigenden Flanke wird das Event quittiert.

EventConfig
Data

TcEvent

Datenstruktur mit den Event-Parametern (Typ: TcEvent).

EventData
Address

PVOID

Adresse mit den Daten, die mit dem Event geschickt werden sollen.

EventData
Length

UDINT

Länge der Daten, die mit dem Event geschickt werden sollen.

FbCleanup

BOOL

Bei TRUE wird der Baustein komplett initialisiert.

TMOUT

TIME

Gibt die Zeit bis zum Abbruch der Funktion an.

ADSLOGEVENT 4: Ausgänge

VAR_OUTPUT
    EventState : UDINT;
    Err        : BOOL;
    ErrId      : UDINT;
    Quit       : BOOL;
END_VAR

Name

Typ

Beschreibung

EventState

UDINT

Zustand des Events.

Err

BOOL

Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in ErrId enthalten. Wenn der Baustein ein Timeout-Fehler hat, so ist Err = TRUE und ErrId = 1861 (Hexadezimal 0x745). Wird durch das Ausführen eines Befehls an den Eingängen auf FALSE zurückgesetzt.

ErrId

UDINT

ADS-Fehlercode oder befehlsspezifischer Fehlercode des zuletzt ausgeführten Befehls. Wird durch das Ausführen eines Befehls an den Eingängen auf 0 zurückgesetzt.

Quit

BOOL

Quittiert das Event.

Meldungen quittieren

ADSLOGEVENT 5:

Das obere Bild stellt den prinzipiellen Ablauf dar.

Bei nicht quittierungspflichtigen Meldungen wird mit der steigenden Flanke am Event-Eingang des Bausteins das Event gemeldet und damit aktiv im Eventlogger. Die fallende Flanke am Event-Eingang löst den Reset aus. Mit diesem Signal wird das Event im EventLogger wieder abgemeldet.

Bei quittierungspflichtigen Meldungen wird das Event wieder mit der steigenden Flanke am Event‑Eingang aktiviert. Deaktiviert wird das Event entweder

Wenn zwischen Event-Aktivierung und dem Ankommen der Quittierung ein Reset des Events kommt, heißt das nächste Ankommen des Event-Eingangs „Signal“. Damit wird ein Request bei bereits aktiven Events gemeldet.

Beispiel für den Aufruf des Bausteins in ST:

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.0
up to
TwinCAT v3.1.4024

PC oder CX (x86, x64, ARM)

Tc2_System (System)