Übersicht
Der TwinCAT XML Server bietet eine SPS-Bibliothek, mit der ein Schreib- und Lesezugriff auf XML‑Dateien realisiert werden kann. Der XML Server zeichnet sich durch seine einfache Handhabung aus. Besonders eignet er sich beispielsweise für das Laden von Initialisierungsdaten, so wie es häufig beim Aufstarten einer Maschine benötigt wird. Außerdem ist es möglich, SPS-Variablen formatiert in einer XML-Datei inklusive SPS-Kommentar zu speichern. Die Struktur einer Variablen im XML-Dokument entspricht dabei der Struktur der Variablen in der SPS. So ist es möglich, auch direkt auf einzelne Unterelemente einer Variablen zuzugreifen. Dabei werden nur die Unterelemente (Elemente einer Struktur oder Elemente eines Arrays) übertragen, die auch in der XML-Datei definiert sind. Beim Schreiben der SPS-Variablen gibt es jedoch auch die Möglichkeit, fehlende Elemente hinzuzufügen.
Komponenten
- TwinCAT XML Server: Ist ein Service der mit TwinCAT zusammen gestartet und gestoppt wird. Er ist das Bindeglied zwischen TwinCAT und der XML-Datei.
- SPS-Bibliothek: Die SPS-Bibliothek bietet vier verschiedene Funktionsbausteine, mit denen Daten aus der SPS-Bibliothek in die XML-Datei geschrieben und aus ihr ausgelesen werden können. So können Variablen formatiert in einer XML-Datei gespeichert werden und Variablen in TwinCAT aus einer XML-Datei initialisiert werden.
Funktionsprinzip
Der XML Server kommuniziert mit der TwinCAT PLC über ADS. Bei einem Schreibvorgang werden alle zu schreibenden Variablen in Text konvertiert und über den MSXML DOM Parser in die XML-Datei geschrieben. Die XML-Datei beinhaltet keine Informationen über die Datentypen, sondern lediglich den Namen der Variablen als Tag-Namen und den Wert: <Variablenname> Wert </Variablenname>.
Bei einem Lesevorgang werden für die zu lesenden Variablen die Datentypen über ADS ermittelt und die Texte aus der XML-Datei entsprechend konvertiert.