Erstellung von und Umgang mit Tasks

In diesem Artikel wird beschrieben, wie Tasks mit Hilfe des TwinCAT Automation Interface erstellt und gehandhabt werden. Er besteht aus folgenden Themen:

Allgemeine Informationen

Es können zwei Task-Typen in TwinCAT XAE und daher auch mit dem Automation Interface konfiguriert werden: Tasks mit und ohne Prozessabbild. Wenn Sie ein neues Task in TwinCAT XAE einfügen, dann können Sie entscheiden, ob Sie ein Prozessabbild einfügen möchten oder nicht, in dem Sie die entsprechende Checkbox im Dialogfenster „Task einfügen“ auswählen oder nicht.

Erstellung von und Umgang mit Tasks 1:

Daraufhin beinhaltet die eingefügte Task entweder drei weitere untergeordnete Knoten (Abbild, Inputs, Outputs) oder nicht – wie im folgenden Beispiel gezeigt (Task 1 = mit Abbild, Task 2 = ohne Abbild).

Erstellung von und Umgang mit Tasks 2:

Tasks einfügen

Um eine Task über das Automation Interface einzufügen, können Sie die Methode ITcSmTreeItem::CreateChild() mit den entsprechenden SubTypes für "Mit Abbild" (SubType = 0) und "Ohne Abbild" (SubType = 1) verwenden.

Code-Ausschnitt (C#)

ITcSmTreeItem tasks = systemManager.LookupTreeItem("TIRT");
tasks.CreateChild("Task 1 (With Image)", 0, null, null);

Code-Ausschnitt (Powershell):

$tasks = $systemManager.LookupTreeItem("TIRT")
$tasks.CreateChild("Task 1 (With Image)", 0, $null, $null)

Code-Ausschnitt (C#)

ITcSmTreeItem tasks = systemManager.LookupTreeItem("TIRT");
tasks.CreateChild("Task 2 (Without Image)", 1, null, null);

Code-Ausschnitt (Powershell):

$tasks = $systemManager.LookupTreeItem("TIRT")
$tasks.CreateChild("Task 1 (Without Image)", 1, $null, $null)

Ein-/Ausgangsvariablen einfügen

An Prozessabbildern (Task „Mit Abbild“) können Ein- und Ausgangsvariablen angefügt werden, welche dann mit den verschiedenen E/A-Geräten oder Variablen anderer Tasks verknüpft werden können. Über den entsprechenden TwinCAT XAE-Dialog können Sie z.B. den Datentyp und die Adresse der Ein-/Ausgangsvariablen im Prozessabbild auswählen. Durch Klicken auf „Ok“ wird die Variable dem Prozessabbild hinzugefügt.

Erstellung von und Umgang mit Tasks 3:

Diese Prozedur kann auch über das Automation Interface unter Verwendung der Methode ITcSmTreeItem::CreateChild() mit entsprechendem Variablendatentyp als vInfo ausgelöst werden. In diesem Falle spezifiziert SubType die „Startadresse“ wie oben im Dialog gezeigt.

Code-Ausschnitt (C#):

ITcSmTreeItem task1 = systemManager.LookupTreeItem("TIRT^Task 1 (With Image)^Inputs");
task1.CreateChild("bInput", -1, null, "BOOL");

Code-Ausschnitt (Powershell):

$task1 = $systemManager.LookupTreeItem("TIRT^Task 1 (With Image)^Inputs")
$task1.CreateChild("bInput", -1, $null, "BOOL")

Wenn SubType = -1, dann hängt TwinCAT die neue Variable automatisch ans Ende der Variablenliste an.