Erstellung von und Umgang mit Motion-Projekten
In diesem Kapitel wird die Erstellung und der Umgang mit Motion-Projekten ausführlich erklärt. Die folgende Liste enthält alle Kapitel dieses Artikels:
- Allgemeine Informationen über TwinCAT 3 Motion
- Ein NC-Task erstellen
- Achsen erstellen
- Achsen parametrisieren
Allgemeine Informationen über TwinCAT Motion
TwinCAT 3 Motion besteht aus den drei folgenden Komponenten: NC-I, NC-PTP und CNC. Es ist daher eine Zusammenstellung von Funktionsgruppen, die für die Steuerung und Regelung von Achsen oder von synchronisierten Achsgruppen verwendet wird. Weitere Informationen über TwinCAT Motion finden Sie in TwinCAT 3 Motion Dokumentation.
Ein NC-Task erstellen
Der erste Schritt bei der Erstellung eines TwinCAT 3 Motion-Projekts ist die Erstellung eines sogenannten NC-Tasks. Im TwinCAT-Automation Interface können Sie dieses Task einfach mittels Aufruf der Methode ITcSmTreeItem::CreateChild() und Verwendung des SubType Parameter 1 erstellen, wie in folgendem Code-Ausschnitt gezeigt.
Code-Ausschnitt (C#):
ITcSmTreeItem ncConfig = systemManager.LookupTreeItem("TINC");
ncConfig.CreateChild("NC-Task", 1);
Code-Ausschnitt (Powershell):
$ncConfig = $systemManager.LookupTreeItem("TINC")
$ncConfig.CreateChild("NC-Task", 1)
Achsen erstellen
Da ein NC-Task standardmäßig keine Achsen beinhaltet, müssen Sie diese hinzufügen, erneut unter Verwendung der CreateChild()-Methode, nur diesmal auf einer Referenz zu einem Achsknoten unterhalb des NC-Task.
Code-Ausschnitt (C#):
ITcSmTreeItem axes = systemManager.LookupTreeItem("TINC^NC-Task^Axes");
axes.CreateChild("Axis 1", 1);
Code-Ausschnitt (Powershell):
$axes = $systemManager.LookupTreeItem("TINC^NC-Task^Axes")
$axes.CreateChild("Axis 1", 1)
Achsen parametrisieren
Achsen können über ihre XML-Beschreibung parametrisiert werden. Um eine beispielhafte XML-Beschreibung zu erhalten, können Sie eine Achse manuell in TwinCAT XAE hinzufügen und den entsprechenden Eintrag im Kontextmenü verwenden oder die Achse über das Automation Interface hinzufügen und die Methode ITcSmTreeItem::ProduceXml() verwenden, um sie zu erhalten.
Code-Ausschnitt (C#):
ITcSmTreeItem axis = systemManager.LookupTreeItem("TINC^NC-Task^Axes^Axis 1");
string xmlDescription = axis.ProduceXml();
Code-Ausschnitt (Powershell):
$axis = $systemManager.LookupTreeItem("TINC^NC-Task^Axes^Axis 1")
$xmlDescription = $axis.ProduceXml()
Sie können diese XML-Beschreibung Ihren Bedürfnissen entsprechend anpassen und dann erneut mit der Methode ITcSmTreeItem::ConsumeXml() importieren, um Ihre Achse zu parametrisieren.
Code-Ausschnitt (C#):
ITcSmTreeItem axis = systemManager.LookupTreeItem("TINC^NC-Task^Axes^Axis 1");
axis.ConsumeXml(xmlDescription);
Code-Ausschnitt (Powershell):
$axis = $systemManager.LookupTreeItem("TINC^NC-Task^Axes^Axis 1")
$axis.ConsumeXml($xmlDescription)