Einleitung
Datenaustausch über V.E.
V.E-Variablen erlauben es, Daten zwischen einem NC-Programm und der SPS in beliebiger Richtung auszutauschen. Aus Sicht der CNC existieren als Minimum ein kanalunabhängiger 'globaler' und je NC-Kanal je ein weiterer kanalspezifischer V.E-Speicherbereich. Der steuerungsinterne Zugriff auf den von der CNC angelegten Speicher (Shared Memory) der V.E-Speicherblöcke bzw. der darin enthaltenen Variablen erfolgt direkt über Adresszeiger und ist daher sowohl von der SPS als auch CNC zeiteffizient.
Nachbildung in PLC
Jede der V.E-Variablen entspricht einem "Basistyp" (REAL64, ...) oder selbstdefinierten Strukturen, die wiederum aus Strukturen oder Basistypen bestehen können. Zusätzlich sind (eindimensionale) Arrays adressierbar.
Bisher war es erforderlich, Adresse und Speicherplatz für jede V.E-Variable selbst zu bestimmen. Seit V2.10.1025.00 ist dies nicht mehr notwendig. In Folge scheitert der SPS-Programmierer oft daran, die in den CNC-Listen beschriebenen Strukturen fehlerfrei nachzubilden. Werden zudem alle möglichen Kombination aus Basistypen und/oder Variablenstrukturen sowie selbstdefinierter indexbasierter und automatisierter Adressierung genutzt, verliert der SPS-Programmierer schnell die Übersicht. Hilfskonstruktionen, um Fehlern in der Speicherzuteilung, -adressierung bzw. -überscheibern auf die Spur zu kommen, helfen nur bedingt weiter. Verzögerungen während der Inbetriebnahme sind die Folge.
Unterstützung durch #EXPORT VE
Die nachfolgende Dokumentation beschreibt die Anwendung des #EXPORT Befehls. Der Befehl kann in einem NC-Programm stehen oder als Handsatz ausgeführt werden. Mit dem Befehl werden Dateien erzeugt, die alle in einem CNC-Kanal angelegten V.E-Variablen in deckungsgleiche IEC 61131 Variablen bzw. Strukturen (nach-)deklarieren. Die erzeugten Dateien sind passend für die Entwicklungsumgebungen CoDeSys (3S) und MULTIPROG (KW-Software) und dort direkt importierbar.
Alle in den folgenden genannten Beispielen sind in Structured Text (ST) realisiert und werden als 3S kompatibler SPS-Code dargestellt. Die Erzeugungsvariante für KW-Software enthält zusätzliche Strukturdeklarationen, da Arrays innerhalb von Strukturen nicht direkt deklariert werden können. |