Fb_stringtopbox, 2 fb_stringtopbox, Beispiel in st – NORD Drivesystems BU0000 Benutzerhandbuch

Seite 138

Advertising
background image

NORD CON Hilfe

138

BU 0000 DE

9.8.6.2 FB_STRINGToPBox

Dieser Funktionsbaustein kopiert einen String (Zeichenkette) in das P-Box Speicherarray. Über
ROW und COLUMN wird die Startposition des Strings im P-Box Display gesetzt. Der
Parameter TEXT übergibt den gewünschten String an den Funktionsbaustein, der Stringname
kann aus der Variablentabelle entnommen werden. Solange ENABLE auf 1 ist, werden alle
Änderungen an den Eingängen sofort übernommen. Beim gesetzten CLEAR Eingang wird der
gesamte Display Inhalt mit Leerzeichen überschrieben, bevor der selektierte String geschrieben
wird. Geht DONE auf 1, dann ist der String korrekt übertragen worden. 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

Übergabe des String

BOOL

DONE

String übergeben

BOOL

CLEAR

Display löschen

BOOL

ERROR

Fehler im FB

BOOL

ROW

Zeile des Display
Wertebereich = 0 bis 3

BYTE

ERRORID

Fehlercode

INT

COLUMN

Spalte des Display
Wertebereich = 0 bis 19

BYTE

TEXT

anzuzeigender Text

INT

ERRORID

Erläuterung

0

Kein Fehler

1500h

String überschreibt den Speicherbereich des P-Box Arrays

1501h

beim Eingang ROW wurde der Wertebereich überschritten

1502h

beim Eingang COLUMN wurde der Wertebereich überschritten

1503h

Die gewählte String Nummer existiert nicht

1506h

In der PLC Konfiguration ist die Option „Parameterbox Funktionsbausteine zulassen“ nicht
aktiviert.

Beispiel in ST:

(* Initialisierung *)

if FirstTime then

StringToPBox.ROW := 1;

StringToPBox.Column := 16;

FirstTime := False;

end_if;

(* Aktuelle Position abfragen *)

ActPos(Enable := TRUE);

if ActPos.Valid then

(* Position in der PBox anzeigen (PBox P1003 = PLC Anzeige ) *)

DintToPBox.Value := ActPos.Position;

DintToPBox.Column := 9;

DintToPBox.LENGTH := 10;

DintToPBox(Enable := True);

end_if;

(* Gerät über DIG1 ein oder ausschalten *)

Power(Enable := _5_State_digital_input.0);

Advertising