TwinCAT-2-SPS-Projekt öffnen
- TwinCAT XAE ist gestartet. Ein TwinCAT-Projekt ist geöffnet. Ihnen sollten die unterhalb der folgenden Anleitung beschriebenen Einschränkungen bewusst sein.
- 1. Markieren Sie das SPS-Objekt in der Ansicht Projektmappen-Explorer und wählen Sie im Menü Projekt oder im Kontextmenü den Befehl Vorhandenes Element hinzufügen.
- 2. Wählen Sie im Dialog Öffnen das gewünschte Plc 2.x-Projekt oder Bibliothek aus dem Dateisystem. Zur Suche können Sie den Dateifilter in der rechten unteren Ecke des Dialogs setzen.
- Danach startet automatisch der TwinCAT 2.x-Konverter.
- 3. Der TwinCAT 2.x-Konverter prüft, ob das Projekt fehlerfrei kompilierbar ist. Wenn ja, bearbeitet er das Projekt automatisch.
Wenn das Projekt Visualisierungsobjekte mit Platzhaltervariablen enthält, die der Konverter nicht auflösen kann, erfolgt ein direktes Einbinden der jeweiligen Visualisierungen als Gruppierung an Stelle der Visualisierungsreferenzen. - 4. Bibliothekskonvertierung: Wenn im zu öffnenden Projekt eine Bibliothek referenziert ist, für die noch keine Konvertierungsregel definiert ist, erscheint der Dialog Konvertierung einer Bibliotheksreferenz. Legen Sie hier fest, ob und wie der Konverter die bisherige Bibliotheksreferenz durch eine aktuelle ersetzen soll. Falls Sie dabei eine Bibliothek auswählen, für die Projektinformationen fehlen, erscheint der Dialog Projektinformationen, den Sie ausfüllen müssen.
- Der Konverter lädt das angepasste Projekt.
Einschränkungen beim Weiterverwenden eines TwinCAT-2.x-Projekts in TwinCAT 3.1
![]() | Automatische Syntaxanpassungen nur bei vorheriger Übersetzbarkeit Zwischen TwinCAT 2 (TC2) und TwinCAT 3 (TC3) unterscheidet sich die Syntax an einigen Stellen (z. B. bei der Initialisierung von Arrays). Beachten Sie, dass der Konverter die Syntax an diesen Codestellen nur dann anpasst, wenn das zu konvertierende TwinCAT-2-Projekt „TwinCAT-2-seitig“ kompiliert werden kann. Im Detail bedeutet das: Bei dem Konvertierungsprozess übersetzt der Konverter, der in TwinCAT 3 enthalten ist, das ausgewählte TwinCAT-2-Projekt zunächst mit einem TwinCAT-2-Compiler. Nur wenn diese „TwinCAT-2-seitige“ Übersetzung erfolgreich ist, werden bei der Erstellung des TwinCAT-3-SPS-Projekts Syntaxanpassungen des TwinCAT-2-Codes vorgenommen. Voraussetzung für eine erfolgreiche „TwinCAT-2-seitige“ Übersetzung ist, dass Sie dem Konverter alle benötigten TwinCAT-2-Bibliotheken zur Verfügung stellen. Dies können Sie z. B. erreichen, indem Sie die Bibliotheken, die im TwinCAT-2-Projekt referenziert werden, in den Ordner C:\TwinCAT\3.1\Components\Plc\Converter\Lib einfügen. Alternativ können Sie dem Konverter die Speicherorte der TwinCAT-2-Bibliotheken über die angezeigten Konvertierungsdialoge mitteilen. |
Kompilierung | Das Projekt muss ohne Übersetzungsfehler in TwinCAT 2.x PLC Control kompilierbar sein. TwinCAT gibt bei der Übersetzung dennoch Warnungen aus. Diese werden durch implizite Konvertierungen hervorgerufen, die zu Informationsverlust führen können (beispielsweise durch Vorzeichenwechsel). TwinCAT 3.1 prüft case-Anweisungen gegen die Switch-Variable: CASE USINT OF INT wird in TwinCAT 2.x nicht überprüft, es gibt jedoch eine Fehlermeldung beim Import in TwinCAT 3.1. |
Bibliotheken | Alle Variablen und Konstanten, die in einer Bibliothek verwendet werden, müssen auch in dieser Bibliothek deklariert sein. Die Bibliothek muss in TwinCAT 2.x fehlerfrei übersetzbar sein. |
Syntaktische und semantische Einschränkungen |
|
Speicher |
|
Visualisierung
Platzhalter und deren Ersetzung | Platzhalter | VAR_INPUT | Verwendung | Ersetzung | ||
| MAIN.$LocalVar$.aArr[0] | localVar: MyStruct; | localVar.aArr[0] | localVar := MAIN.myStructVar | ||
| $Var$.aArr[0] | Var : MyStruct; | Var.aArr[0] | Var := MAIN.myStructVar | ||
| MAIN.myStructVar.aArr[$Index$] | Index : INT; | MAIN.myStructVar.aArr[Index] | Index := 0 | ||
Problematische Platzhalter |
| |||||
Nicht importierbare Elemente | Trend, ActiveX - Der Import ist nicht möglich, weil die Implementierung sehr unterschiedlich ist. In TwinCAT 3.1 wird eine entsprechende Warnung ausgegeben und ein entsprechender manueller Nachbau ist nötig. | |||||
Programmiersprachen | ST, AWL, FUP | Keine Einschränkungen | ||||
| KOP | TwinCAT 3.1 importiert Funktionsbausteine mit Parallelverzweigungen so, dass der Teil vor der Verzweigung für jeden Zweig wiederholt wird. Das entspricht dem generierten Code, den TwinCAT 2.x für Parallelverzweigungen erzeugt.
| ||||
| AS |
Erklärung: In TwinCAT 3.1 erhalten die impliziten Variablen, welche TwinCAT 3.1 für Aktionen anlegt, einen Unterstrich als Präfix. Es würde ein ungültiger Kennzeichner mit doppeltem Unterstrich entstehen. | ||||
| CFC |
|
Siehe auch: