FiFoWrite

FiFoWrite 1:

FiFoWrite liest Positionsdaten für iColDim Achsen des FIFO-Kanals aus AdrDataArray und überträgt iRowsToWrite Einträge in den FIFO.

Interface

VAR_INPUT
    iChannelId    : UDINT;
    AdrDataArray  : POINTER TO LREAL; (* PLC: ARRAY[ ROWS, COLUMNS ] OF LREAL *)
    iColDim       : UDINT; (* second array dimension (COLUMNS) *)
    iRowsToWrite  : UDINT; (* number of rows to write <= RowDim *)
    bExecute      : BOOL;
    tTimeout      : TIME;
END_VAR
VAR_OUTPUT
    bBusy     : BOOL;
    bErr      : BOOL;
    iErrId    : UDINT;
END_VAR

iChannelId: Kanal-ID des FIFO-Kanals

AdrDataArray : Adresse eines Datenfeldes, dass die Positionsdaten für Master- und Slave-Achsen enthält. Die erste Dimension des Feldes beschreibt die Tabellenzeilen, die zweite Dimension die Tabellenspalten.

iColDim : Anzahl der Spalten des Datenfeldes. Dieser Wert muss der tatsächlichen Größe der zweiten Felddimension entsprechen.

iRowsToWrite : Anzahl der Tabellenzeilen. Dieser Wert darf kleiner oder gleich der Größe der ersten Felddimension sein.

bExecute : Flankengetriggertes Signal zum Ausführen des Kommandos

tTimeout : ADS-Timeout (ca. 1 Sekunde)

bBusy : wird mit steigender Flanke an bExecute TRUE und bleibt TRUE, solange der Baustein das Kommando ausführt

bErr : wird TRUE, wenn beim Ausführen des Kommandos ein Fehler aufgetreten ist.

bErrId : Fehlernummer (ADS- oder NC-Fehlernummer)