XFC_TRIGGER_REF

Der Datentyp XFC_TRIGGER_REF enthält Status und Parameter eines digitalen Eingangs, der für den Funktionsbaustein XFC_TouchProbe verwendet wird.

TYPE XFC_TRIGGER_REF :
STRUCT
    Signal               : BOOL; 
    TimestampRisingEdge  : T_DCTIME32;
    TimestampFallingEdge : T_DCTIME32; 
    Edge                 : E_SignalEdge;
    FreeRun              : BOOL; 
    EncoderIndex         : UINT;
    ModuloPositions      : BOOL;
    ModuloFactor         : LREAL := 360.0;
END_STRUCT
END_TYPE

Name

Typ

Beschreibung

Signal

BOOL

Aktueller Zustand des digitalen Eingangssignals.
Der aktuelle Zustand muss an dieser Stelle eingespeist werden.

TimestampRisingEdge

T_DCTIME32

Zeitstempel der letzten steigenden Flanke des digitalen Eingangssignals.
Es ist nur notwendig, den Zeitstempel der über Edge definierten Flanke einzuspeisen.
Falls das Eingangssignal einen 64 Bit Zeitstempel T_DCTIME liefert, werden hier nur die unteren 32 Bit eingespeist. Es muss daher sichergestellt sein, dass der Wert zum Zeitpunkt der Auswertung nicht älter als 2 Sekunden ist.

TimestampFallingEdge

T_DCTIME32

Zeitstempel der letzten fallenden Flanke des digitalen Eingangssignals.
Es ist nur notwendig, den Zeitstempel der über Edge definierten Flanke einzuspeisen.
Falls das Eingangssignal einen 64 Bit Zeitstempel T_DCTIME liefert, werden hier nur die unteren 32 Bit eingespeist. Es muss daher sichergestellt sein, dass der Wert zum Zeitpunkt der Auswertung nicht älter als 2 Sekunden ist.

Edge

E_SignalEdge

Edge definiert die Signalflanke, die zur Auswertung der Achsposition verwendet werden soll.
TYPE E_SignalEdge : ( RisingEdge, FallingEdge ); END_TYPE

FreeRun

BOOL

Wenn FreeRun TRUE ist, wird der Eingang fortlaufend gelatcht.
Beim Funktionsbaustein XFC_TouchProbe muss dann der Eingang Execute TRUE bleiben. Es ist also keine Flanke an Execute notwendig, um den nächsten neuen Positionswert aufzuzeichnen.

EncoderIndex

UINT

Wenn mehr als ein Encoder mit der Achse verbunden ist, kann der Encoder-Index [0..9] hier festgelegt werden. Der erste Encoder hat den Index 0.

ModuloPositions

BOOL

Wenn ModuloPositions TRUE ist, werden alle Positionen modulo interpretiert. Zur Berechnung des Modulo-Zyklus wird der Parameter ModuloFactor verwendet.

ModuloFactor

LREAL

ModuloFactor gibt die Länge eines Modulo-Zyklus in der Positionseinheit der Achse an und wird nur verwendet, wenn ModuloPositions TRUE ist.