Vorgehen bei TwinCAT 2

TwinCAT Scope2 unterstützt das Einlesen und die Anzeige von Oversampling-Prozessdaten wie sie von oversampling-fähigen Klemmen/Box zur Verfügung stehen.

Vorraussetzungen

Es muss ein TwinCAT Scope2 auf dem System installiert sein.
Es muss eine oversampling-fähige Klemme/Box in der Konfiguration vorhanden sein.

Das TwinCAT Scope2 bekommt über die ADS-Daten auch den Datentyp der Variablen übermittelt. Deshalb ist die ARRAY-Variable anzulegen

Im Scope2 sind für beide Fälle dieselben Einstellungen vorzunehmen, siehe Schritt 2

Aufzeichnung einer PLC Variablen mit dem TwinCAT 2 – Scope2

Schritt 1a: Erzeugen einer PLC Variable über eine POU

Da die Kanaldaten in der PLC verwendet werden sollen, ist dort eine verlinkbare ARRAY-Variable anzulegen, wie in folgendem Beispiel gezeigt:

Vorgehen bei TwinCAT 2 1:
PLC Deklaration

Im System Manager erscheint diese dann in der Liste, in der Regel ist sie dann auch ohne weitere Maßnahmen über ADS erreichbar da PLC-Variablen immer als ADS-Symbol im Hintergrund angelegt werden.

Vorgehen bei TwinCAT 2 2:
PLC im System Manager

Hinweis: das Scope2 kann solche Variablen im Variablen Browser nur "sehen", wenn sich TwinCAT und die PLC im RUN befinden.

Schritt 1b: Erzeugen einer PLC Variable über eine freie Task

Die für das Scope2 notwendige Array-Variable kann alternativ auch manuell im System Manager definiert und angelegt werden.

Vorgehen bei TwinCAT 2 3:
Add Variable Type

Wie bisher im Programm (POU „Main“) ist auch hier eine ARRAY-Variable vom gleichen Typ wie die oversampling PDO der jeweiligen Klemme/Box anzulegen. In diesem Beispiel nun ein Array 0..9 vom Typ INT, also mit 10 Feldern.

Vorgehen bei TwinCAT 2 4:
Definieren des Variablen Typs

Wenn diese Variable dem System Manager bekannt ist, kann eine Instanz davon einer zusätzlichen Task mit Rechtsklick zugeordnet werden. Sie erscheint in der nach Bitgröße sortierten Übersicht.

Vorgehen bei TwinCAT 2 5:
Übersicht deklarierte Typen

In diesem Beispiel wird die Variable Var152 angelegt. Sie kann nun mit dem PDO-Array vom jeweiligen Kanal der Klemme/Box verlinkt werden.

Vorgehen bei TwinCAT 2 6:
Verlinken

Wenn im Dialog MatchingSize aktiviert ist, bieten sich direkt die einzelnen Kanäle an.

Vorgehen bei TwinCAT 2 7:
Array-Variablen einer Oversampling-Klemme

Damit die Variablen auch über ADS im Scope2 zu finden sind, sind die ADS-Symbole zu aktivieren, so wie das Enable Auto-Start, sonst läuft die Task nicht selbsttätig. Dann werden ADS-Symboltabellen von allen Variablen angelegt, die diese Task in ihren Prozessdatenimages hat.

Vorgehen bei TwinCAT 2 8:
Einstellungen in der zusätzlichen Task

Schritt 2: Konfiguration im Scope2

Damit die Verlinkung funktioniert, muss im System Manager je eine Array-Variable mit den Kanaldaten der jeweiligen Klemme/Box vorliegen, d. h. jedes Oversampling-Datenpaket muss in einem Array vorliegen. Diese Array-Variable ist manuell zu definieren und anzulegen, siehe oben.

Im Scope2 kann nun bis zur betreffenden Variable gebrowst werden.

Vorgehen bei TwinCAT 2 9:
Variablenbrowser bis zum Array VAR152

Es ist dann nicht das Array zu öffnen, sondern direkt das Array-Symbol per Rechtsklick AddSymbol auszuwählen.

Vorgehen bei TwinCAT 2 10:
AddSymbol auf dem Array

Im Einstellungsdialog des nun erzeugten Kanals ist ForceOversampling und DataType INT16 einzustellen. Ggf. ist dazu vorübergehend SymbolBased zu deaktivieren.

Vorgehen bei TwinCAT 2 11:
Channel-Einstellungen

Zur Überprüfung, dass wirklich die einzelnen Oversampling-Werte geloggt werden, können im Scope2 die Marks aktiviert werden. Bitte beachten Sie die Zusammenhänge aus Task-Zykluszeit, Sampling-Zeit des Scope2-Kanals und Oversamplingfaktor.

Vorgehen bei TwinCAT 2 12:
Aktivieren der Marks

Ein weiteres Beispiel zeigt die folgende Abbildung der Darstellung einer Oversampling – Variablen der EL3751 mit 10 x Oversampling:

Vorgehen bei TwinCAT 2 13:
Darstellung einer 10 x Oversampling-Variablen der EL3751 mit dem Scope2

In der Abbildung ist nachträglich eingezeichnet, das die von der PLC stammende Oversampling Variable mit „Add Symbol“ einfach als Y-Kanal der Achse eingefügt wurde (Auswahl des PLC-POU Namen „MAIN“ im „ROUTES“ - Baum beachten). Hierbei ist „Force Oversampling“ aktiviert, da es sich nicht um eine von der Klemme/Box bereit gestellte Oversampling-Variablen handelt.

Vorgehen bei TwinCAT 2 / alternativ per ADS

Bei früheren TwinCAT 2 Versionen (oder einer kleineren Revision der Klemme als wie in obiger Tabelle angegeben) kann per Aktivierung des ADS Servers das Oversampling-PDO der betreffenden oversampling fähigen Klemme/Box für das Scope2 sichtbar gemacht werden.

Es kann so ebenfalls auf die Erstellung einer Feldvariablen in einer PLC verzichtet werden. Dazu ist der ADS Server des EtherCAT Device zu aktivieren, an dem die oversampling fähige Klemme/Box angeschlossen ist.

Vorgehen bei TwinCAT 2 14:
Aktivierung des ADS Servers des EtherCAT Device (TwinCAT 2)

Die Aktivierung des Servers erfolgt durch Auswahl des „Device – Image“ im linksseitigen Konfigurationsbaum: „I/O – Configuration → I/O Devices → Device .. (EtherCAT) → Device .. – Image“.

Hier wird dann der Karteireiter „ADS“ ausgewählt und jeweils die Checkbox „Enable ADS Server“ und dann „Create symbols“ aktiviert (der Port Eintrag erfolgt automatisch).

Dadurch kann ohne eine eingebundene POU bzw. ohne einen Variablenverweis mit dem Scope2 per Target Browser auf Prozessdaten zugegriffen werden:

Vorgehen bei TwinCAT 2 15:
Direkter Zugriff des Scope2 auf PDOs der Klemme

Siehe hierzu im Beckhoff Information System

infosys.beckhoff.com → TwinCAT 2 → TwinCAT Supplement → Kategorie Measurement TS3xxx → TS3300 | TwinCAT Scope 2 → Anhang → Oversampling Aufnahme
Vorgehen bei TwinCAT 2 16:

Beckhoff TwinCAT unterstützt das Scope2 bei einigen Oversampling-Geräten in spezieller Weise, indem es automatisch im Hintergrund ein besonderes ADS-Array-Symbol berechnet, das im Scope2 im Variablenbrowser erscheint. Dieses kann dann als Variable verlinkt werden und bringt automatisch die Array-Information mit.

Vorgehen bei TwinCAT 2 17:
Automatisch berechnete Array-Variable (rot) im Scope2

Zusammenfassung: es muss eine ARRAY-Variable vorliegen die über ADS erreichbar ist. Dies kann eine PLC-Variable, eine im System Manager definierte ARRAY-Variable sein oder alternativ ist der ADS Server des Device der Klemme/Box aktiviert. Diese wird dann vom Scope2 erkannt.