Übersicht
Die SPS-Bibliothek Tc2_XmlDataSrv wird mit dem TC3 XML Server mitgeliefert und während der Installation in den Ordner ...C:\TwinCAT\3.1\Components\Plc\Managed Libraries\Beckhoff Automation GmbH kopiert.
Es gibt jeweils zwei Funktionsbausteine zum Auslesen von Variablen aus der XML-Datei:
- FB_XmlSrvRead
- FB_XmlSrvReadByName
und zwei Funktionsbausteine zum Schreiben von SPS-Variablen in die XML-Datei:
- FB_XmlSrvWrite
- FB_XmlSrvWriteByName
Die erste Variante (FB_XMLSrvRead, FB_XMLSrvWrite) verwendet die Adresse und die Größe der Variable in der SPS, um die Variable zu spezifizieren. Die zweite Variante (FB_XMLSrvReadByName, FB_XMLSrvWriteByName) verwendet den Symbolnamen, um die Variable zu spezifizieren. Die erste Variante ist performanter. Zusätzlich zu Adresse und Größe bzw. Symbolname muss der Pfad der XML‑Datei und der Standort der Variablen im XML‑Dokument den Funktionsbausteinen als Eingangsparameter übergeben werden.
Primitive Datentypen
Folgende Primitive Datentypen werden unterstützt:
Datentyp | Beispiel in der SPS | Beispiel in XML |
---|---|---|
UDINT, DINT, UINT, INT, USINT, SINT, DWORD, WORD, BYTE | value1 : DINT := -1; value2 : UDINT := 65535; | <dataentry> <MAIN.value1>-1</MAIN.value1> |
LREAL, REAL | value1 : LREAL = 1.2; | <dataentry> <MAIN.value1>1.2</MAIN.value1> |
STRING | str1 : STRING = 'hallo'; | <dataentry> <MAIN.str1>hallo</MAIN.str1> |
TIME, DATE, TOD,DT | date1:DATE :=D#2005-05-04; (* Time-Typen werden in der XML-Datei als DWORD gespeichert*) | <dataentry> <MAIN.date1>1115164800</MAIN.date1> |
BOOL | bool1:BOOL := TRUE; bool2:BOOL := FALSE; | <dataentry> <MAIN.bool1>true</MAIN.bool1> |
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken |
---|---|---|
TwinCAT v3.1 Build 4011 | PC oder CX (x86, x64, ARM) | Tc2_XmlDataSrv |