Fb_pdoreceive, 5 fb_pdoreceive – NORD Drivesystems BU0000 Benutzerhandbuch

Seite 146

Advertising
background image

NORD CON Hilfe

146

BU 0000 DE

Word4 := 0);

State := 10;

RETURN;

END_IF;

(* Ist der Digitaleingang 2 gesetzt *)

IF _5_State_digital_input.1 THEN

(* PDO Senden - Geräte freigeben und Sollfrequenz 50% der Maximalfrequenz *)

PDOSend(Execute := TRUE, Number := 1, Word1 := 1151, Word2 := 16#2000, Word3 :=

0, Word4 := 0);

State := 10;

RETURN;

END_IF;

10:

PDOSend;

IF PDOSend.Done THEN

PDOSend(Execute := FALSE);

State := 0;

END_IF;

END_CASE;

9.8.7.5 FB_PDOReceive

Dieser FB überwacht einen vorher konfigurierten PDO Kanal auf eingehende Botschaften. Die
Überwachung startet wenn der ENABLE Eingang auf 1 steht. Nach dem Aufruf der Funktion ist
der NEW Ausgang zu prüfen. Wenn er auf 1 geht, dann ist eine neue Botschaft angekommen.
Der NEW Ausgang wird mit dem nächsten Aufruf der Funktion gelöscht. In WORD1 bis
WORD4 stehen die empfangenen Daten. Über TIME kann der PDO Kanal auf zyklischen
Empfang überwacht werden. Wird in TIME ein Wert zwischen 1 und 32767ms eingetragen,
dann muss in dieser Zeitspanne eine Botschaft empfangen werden. Anderenfalls geht der FB in
den Fehlerzustand (ERROR = 1). Über den Wert 0 kann diese Funktion ausgeschaltet werden.
Der Überwachungstimer läuft in 5ms Schritten. Im Fehlerfall wird ERROR auf 1 gesetzt. DONE
ist in diesem Fall 0. In der ERRORID ist dann der entsprechende Fehlercode gültig. Bei einer
negativen Flanke an ENABLE werden DONE, ERROR und ERRORID zurückgesetzt.

VAR_INPUT

VAR_OUTPUT

Eingang

Erläuterung

Typ

Ausgang

Erläuterung

Typ

ENABLE

Ausführen

BOOL NEW

Neues PDO empfangen

BOO
L

NUMBER

Messagebox Nummer
Wertebereich = 0 bis 19

BYTE

ERROR

Fehler im FB

BOO
L

TIME

Watchdog-Funktion
Wertebereich = 0 bis 32767
0 = ausgeschaltet
1

bis

32767

=

Überwachungszeit

INT

ERRORID

Fehlercode

INT

WORD1

Empfangsdaten Wort 1

INT

WORD2

Empfangsdaten Wort 2

INT

WORD3

Empfangsdaten Wort 3

INT

Advertising