Typ | Funktionsbaustein |
Beschreibung | Schreibt Daten in eine geöffnete Datei.Geben Sie das gültige Datei-Handle der Datei, in die geschrieben werden soll, am Eingang Handle an. Das Datei-Handle wird erzeugt, wenn die Datei zuvor mit dem Funktionsbaustein FILE_OPEN geöffnet wurde.Erzeugen Sie einen Datenpuffer in ausreichender Größe für die zu schreibenden Daten (Ein-/Ausgang Buffer). Der Datenpuffer für die Daten kann auf verschiedene Weise deklariert werden. Der Typ des Datenpuffers ist ein anwenderdefinierter Datentyp, z.B. ein Byte-Array (siehe folgendes Beispiel). Zeichenfolgen können nicht direkt als Datenpuffer verwendet werden. Soll eine Zeichenfolge in einer Datei gespeichert werden, muss die Zeichenfolge zunächst mit dem Funktionsbaustein STRING_TO_BUF in ein Array gespeichert werden.
Beispiel: Byte-Array verwendet als Datenpuffer
TYPE FileBuffer : ARRAY [1..100] OF BYTE; END_TYPE Die Größe des Datenpuffers beträgt in diesem Fall 100 Zeichen.
Die Anzahl der zu schreibenden Bytes wird am Eingang Length angegeben.Der Funktionsbaustein wird mit einer steigenden Flanke am Eingang Execute aktiviert. Die Ausführung des Funktionsbausteins ist abgeschlossen, wenn der Ausgang Done auf 1 gesetzt wird.Konnte der Funktionsbaustein nicht erfolgreich ausgeführt werden, wird die Anzahl der geschriebenen Bytes am Ausgang LengthWritten zurückgeliefert. Der Wert ist gleich der Anzahl der zu schreibenden Zeichen.Tritt bei der Ausführung ein Fehler auf, wird der Ausgang Error auf 1 gesetzt. Die ErrorID gibt die Nummer der Fehlerursache an. |
Hinweise |
- Der Status der Ausgänge Done, Error und ErrorID bleibt solange erhalten, bis am Eingang Execute eine fallende Flanke erkannt wird. Der Status des Ausgangs LengthWritten wird gehalten.
- Funktionsbausteine müssen instanziiert werden. Der FB-Instanzname muss in der 'Variablen'-Tabelle der POE deklariert werden, in welcher der FB verwendet werden soll. Der Instanzname muss innerhalb der POE eindeutig sein.
|
Parameter | Eingänge
Execute
Datentyp: | BOOL |
Beschreibung: | Schreibt Daten in die Datei bei einer steigenden Flanke. |
Handle
Datentyp: | UINT |
Beschreibung: | Datei-Handle der Datei, in die Daten geschrieben werden sollen. |
Length
Datentyp: | ANY_INT |
Beschreibung: | Anzahl der zu schreibenden Zeichen. Der Wert muss größer oder gleich 0 sein. |
Ein-/Ausgang
Buffer
Datentyp: | ANY |
Beschreibung: | Datenpuffer, der die zu schreibenden Daten enthält. |
Ausgänge
Done
Datentyp: | BOOL |
Beschreibung: |
0 | Der Funktionsbaustein wurde nicht ausgeführt. |
1 | Der Funktionsbaustein wurde ausgeführt. |
|
LengthWritten
Datentyp: | UDINT |
Beschreibung: | Anzahl der geschriebenen Zeichen. |
Error
Datentyp: | BOOL |
Beschreibung: |
0 | Beim Schreiben ist kein Fehler aufgetreten. |
1 | Beim Schreiben ist ein Fehler aufgetreten. |
|
ErrorID
Datentyp: | UINT |
Beschreibung: | Fehlernummer des beim Schreiben aufgetretenen Fehlers:
0 | Keine Fehlerinformationen vorhanden. |
1 | Ungültiges Datei-Handle. |
11 | Es ist kein Speicher zum Schreiben der Daten verfügbar. |
12 | Die Anzahl der zu schreibenden Zeichen ist größer als der Datenpuffer. |
14 | Ungültige Länge. Der Wert muss >= 0 sein. |
23 | Es konnten keine Daten geschrieben werden. |
|
|