Handbuch TwinCAT 3 Scope View

Transcrição

Handbuch TwinCAT 3 Scope View
Handbuch
TwinCAT 3 Scope View
TwinCAT 3
Version:
1.4
Datum:
26.07.2016
Bestell-Nr.: TE13xx
Inhaltsverzeichnis
Inhaltsverzeichnis
1 Vorwort ....................................................................................................................................................... 4
1.1
Hinweise zur Dokumentation ............................................................................................................ 4
1.2
Sicherheitshinweise .......................................................................................................................... 5
2 Übersicht .................................................................................................................................................... 6
2.1
Produktbeschreibung........................................................................................................................ 6
3 Installation.................................................................................................................................................. 9
3.1
Systemvoraussetzungen .................................................................................................................. 9
3.2
Herunterladen der Setup-Datei......................................................................................................... 9
3.3
Installation......................................................................................................................................... 9
3.4
Nach der Installation ....................................................................................................................... 12
3.5
Lizensierung ................................................................................................................................... 13
4 Konfiguration ........................................................................................................................................... 18
4.1
Scope View..................................................................................................................................... 18
4.1.1 Scope View - Architektur..................................................................................................... 18
4.1.2 Scope View - Scope Menü.................................................................................................. 24
4.1.3 Scope View - Toolbar.......................................................................................................... 26
4.1.4 Scope View - Scope Eigenschaften.................................................................................... 27
4.1.5 Scope View YT Graph ........................................................................................................ 29
4.1.6 Scope View XY Graph ........................................................................................................ 38
4.1.7 Scope View Bar Graph ....................................................................................................... 48
4.1.8 Recording............................................................................................................................ 56
4.1.9 Cursor ................................................................................................................................. 58
4.1.10 Trigger................................................................................................................................. 62
4.1.11 Daten speichern und exportieren........................................................................................ 66
4.1.12 Reporting ............................................................................................................................ 70
4.1.13 Scope Optionen .................................................................................................................. 73
5 .NET API ................................................................................................................................................... 77
5.1
Scope View Control Integration ...................................................................................................... 77
5.1.1 Sample YT Chart ................................................................................................................ 78
5.1.2 Sample XY Chart ................................................................................................................ 83
5.1.3 Sample YT Cursor .............................................................................................................. 88
5.1.4 Sample Scope Export ......................................................................................................... 94
5.2
Integration in ein WPF (Windows Presentation Foundation) Projekt.............................................. 95
5.3
API Dokumentation......................................................................................................................... 96
6 Beispiele................................................................................................................................................... 98
6.1
TwinCAT 3 Scope View Erste Schritte ........................................................................................... 98
7 Anhang ................................................................................................................................................... 107
7.1
FAQ - Häufig gestellte Fragen und Antworten.............................................................................. 107
7.2
TwinCAT Scope Glossar .............................................................................................................. 108
7.3
How To's ....................................................................................................................................... 109
7.3.1 Oversampling-Aufnahmen mit dem TwinCAT 3 Scope .................................................... 109
7.3.2 .svd Dateien aus einem Netzwerkverzeichnis öffnen ....................................................... 112
TwinCAT 3 Scope View
Version: 1.4
3
Vorwort
1
Vorwort
1.1
Hinweise zur Dokumentation
Diese Beschreibung wendet sich ausschließlich an ausgebildetes Fachpersonal der Steuerungs- und
Automatisierungstechnik, das mit den geltenden nationalen Normen vertraut ist.
Zur Installation und Inbetriebnahme der Komponenten ist die Beachtung der nachfolgenden Hinweise und
Erklärungen unbedingt notwendig.
Das Fachpersonal hat sicherzustellen, dass die Anwendung bzw. der Einsatz der beschriebenen Produkte
alle Sicherheitsanforderungen, einschließlich sämtlicher anwendbaren Gesetze, Vorschriften, Bestimmungen
und Normen erfüllt.
Disclaimer
Diese Dokumentation wurde sorgfältig erstellt. Die beschriebenen Produkte werden jedoch ständig weiter
entwickelt.
Deshalb ist die Dokumentation nicht in jedem Fall vollständig auf die Übereinstimmung mit den
beschriebenen Leistungsdaten, Normen oder sonstigen Merkmalen geprüft.
Falls sie technische oder redaktionelle Fehler enthält, behalten wir uns das Recht vor, Änderungen jederzeit
und ohne Ankündigung vorzunehmen.
Aus den Angaben, Abbildungen und Beschreibungen in dieser Dokumentation können keine Ansprüche auf
Änderung bereits gelieferter Produkte geltend gemacht werden.
Marken
Beckhoff®, TwinCAT®, EtherCAT®, Safety over EtherCAT®, TwinSAFE®, XFC®und XTS® sind eingetragene
und lizenzierte Marken der Beckhoff Automation GmbH.
Die Verwendung anderer in dieser Dokumentation enthaltenen Marken oder Kennzeichen durch Dritte kann
zu einer Verletzung von Rechten der Inhaber der entsprechenden Bezeichnungen führen.
Patente
Die EtherCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und
Patente:
EP1590927, EP1789857, DE102004044764, DE102007017835
mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern.
Die TwinCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und
Patente:
EP0851348, US6167425 mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen
anderen Ländern.
EtherCAT® ist eine eingetragene Marke und patentierte Technologie lizensiert durch die Beckhoff
Automation GmbH, Deutschland
Copyright
© Beckhoff Automation GmbH & Co. KG, Deutschland.
Weitergabe sowie Vervielfältigung dieses Dokuments, Verwertung und Mitteilung seines Inhalts sind
verboten, soweit nicht ausdrücklich gestattet.
Zuwiderhandlungen verpflichten zu Schadenersatz. Alle Rechte für den Fall der Patent-, Gebrauchsmusteroder Geschmacksmustereintragung vorbehalten.
4
Version: 1.4
TwinCAT 3 Scope View
Vorwort
1.2
Sicherheitshinweise
Sicherheitsbestimmungen
Beachten Sie die folgenden Sicherheitshinweise und Erklärungen!
Produktspezifische Sicherheitshinweise finden Sie auf den folgenden Seiten oder in den Bereichen Montage,
Verdrahtung, Inbetriebnahme usw.
Haftungsausschluss
Die gesamten Komponenten werden je nach Anwendungsbestimmungen in bestimmten Hard- und SoftwareKonfigurationen ausgeliefert. Änderungen der Hard- oder Software-Konfiguration, die über die
dokumentierten Möglichkeiten hinausgehen, sind unzulässig und bewirken den Haftungsausschluss der
Beckhoff Automation GmbH & Co. KG.
Qualifikation des Personals
Diese Beschreibung wendet sich ausschließlich an ausgebildetes Fachpersonal der Steuerungs-,
Automatisierungs- und Antriebstechnik, das mit den geltenden Normen vertraut ist.
Erklärung der Symbole
In der vorliegenden Dokumentation werden die folgenden Symbole mit einem nebenstehenden
Sicherheitshinweis oder Hinweistext verwendet. Die Sicherheitshinweise sind aufmerksam zu lesen und
unbedingt zu befolgen!
Akute Verletzungsgefahr!
Wenn der Sicherheitshinweis neben diesem Symbol nicht beachtet wird, besteht unmittelbare Gefahr für Leben und Gesundheit von Personen!
GEFAHR
Verletzungsgefahr!
Wenn der Sicherheitshinweis neben diesem Symbol nicht beachtet wird, besteht Gefahr für
Leben und Gesundheit von Personen!
WARNUNG
Schädigung von Personen!
Wenn der Sicherheitshinweis neben diesem Symbol nicht beachtet wird, können Personen
geschädigt werden!
VORSICHT
Schädigung von Umwelt oder Geräten
Wenn der Hinweis neben diesem Symbol nicht beachtet wird, können Umwelt oder Geräte
geschädigt werden.
Achtung
Tipp oder Fingerzeig
Dieses Symbol kennzeichnet Informationen, die zum besseren Verständnis beitragen.
Hinweis
TwinCAT 3 Scope View
Version: 1.4
5
Übersicht
2
Übersicht
2.1
Produktbeschreibung
Das TwinCAT 3 Scope ist das Charting- und Analyse-Tool für TwinCAT. Variablen in TwinCAT können
aufgezeichnet und grafisch zur Anzeige gebracht werden. Dabei lassen sich die Abtastraten individuell für
jeden Kanal einstellen. Aufnahmen im µs-Bereich sind genauso möglich wie Langzeitaufnahmen über
mehrere Tage. Aufgrund der Aufteilung in ein Scope View mit Multicore Support für die Darstellung der
Signale und einen Scope Server für die Aufzeichnung der Werte ist es möglich, sich von einem zentralen
View aus auf im Feld verteilte Server zu verbinden. Somit steht nicht nur ein Tool für die MaschinenInbetriebnahme, sondern auch für die Prozessüberwachung zur Verfügung. Zum Funktionsumfang des TC3
Scopes gehören auch ein Cursor-Tool und Triggerfunktionalitäten.
Auch im Bereich Engineering setzt das TC3 Scope neue Maßstäbe. Es ist, wie TwinCAT 3 selbst, auch im
Microsoft Visual Studio integriert. So ist es möglich, TwinCAT 3 Projekte und Scope-Projekte parallel in einer
Solution zu verwenden. Variablen können sehr einfach aus dem TwinCAT 3 Projekt heraus in eine ScopeKonfiguration verschoben werden. Selbstverständlich kann das Scope auch nach wie vor als StandaloneTool im Rahmen der Visual Studio Shell genutzt werden.
Aufgrund der stetig steigenden Anforderungen im Bereich der Datenanalyse-Tools ist das TwinCAT 3 Scope
in Produktlevel mit unterschiedlichem Feature-Umfang unterteilt. Das TwinCAT 3 Scope Base beinhaltet ein
lizenzfreies View und einen lizenzfreien Server. Beide werden zusammen mit TwinCAT 3 XAE installiert.
Produkthinweis
Die Software TwinCAT 3 Scope setzt sich aus zwei Produkten zusammen:
• TwinCAT 3 Scope View ist ein TwinCAT 3 Engineering Produkt und liefert die grafische Oberfläche für
die Konfiguration von Aufnahmen und die Darstellung von Signalverläufen. Das View ist in
verschiedenen Produktlevel verfügbar und wird auf dem Gerät lizensiert, wo das View auch angezeigt
wird. Die technische Produktbeschreibung erfolgt in diesem Dokument.
• TwinCAT 3 Scope Server ist eine TwinCAT 3 Function und liefert die Software für die
Datenaufzeichnung. Der Server sendet die aufgenommenen Daten an das View. Die Software wird auf
verteilten oder dem lokalen Zielgerät installiert. Die Lizensierung des Servers erfolgt ebenfalls auf dem
Gerät, wo der Server läuft. In den meisten Fällen ist die Base Version, welche mit TwinCAT XAE oder
dem Scope View zusammen installiert wird, ausreichend. Nur im Falle einer autarken Nutzung ohne
View, beispielsweise bei der Ansteuerung durch einen SPS-Baustein, wird die Lizenz für den Server
benötigt. Der TwinCAT 3 Scope Server wird im Bereich der TC3 Functions gesondert dokumentiert.
Um das Scope nutzen zu können, müssen beide Komponenten im System verfügbar sein.
Funktionsprinzip
Das TwinCAT Scope View kommuniziert über ADS mit den im System verteilten Scope Servern. Der lokale
Server, welcher sich mit dem View auf einem System befindet, kann für eine Aufnahme von lokalen
Variablen genutzt werden. Er wird aber auch immer dann verwendet, wenn abgespeicherte Scope Datenfiles
im View geöffnet werden. Das View übernimmt die Darstellung der Signalverläufe und dient zur
Konfiguration von Aufnahmen.
Produktlevel / Feature-Liste
Diese Tabelle zeigt, welche Funktionalitäten mit welchem TwinCAT Scope-Level bei entsprechender
Lizensierung zur Verfügung stehen.
6
Version: 1.4
TwinCAT 3 Scope View
Übersicht
Features
Scope Base
Server
View
Scope Server
Full Licence
Server
Full
7 days trial
version
Scope View Professional
Full
View
7 days trial
version
General:
Free of
charge
Local record
Remote
Record using
Target Server
Remote
Record using
Local Server
Scope
Control
Integration
Long Time
Records > 1h
Application
Settings (TC
3.0)
Ring Buffer
-
-
-
-
-
-
-
-
-
Auto Save
-
-
-
Restart
Record
View
Multicore
Support
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Base:
Create
Configuration
Target
Browser
Filter
Individual
Sample Rate
Drag and
Drop for
Configuration
Docking
Windows
YT Charts
YT Overview
Chart
Stacked YAxes
Time Based
Charts
TwinCAT 3 Scope View
Version: 1.4
7
Übersicht
Features
Scope Base
Scope Server
Full Licence
Scope View Professional
XY Charts
-
-
-
Array Bar
Charts
Logarithmic
Y-Axes
Channel
Marks
Channel
Offset
Channel
Scaling
Panning
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Zoom
-
-
-
Cursor
-
-
-
Print Report
-
-
-
Extended
data export
with Export
Tool
-
-
-
Trigger:
Start Record
-
-
-
Stop Record
-
-
-
Stop Display
-
-
-
Restart
Display
Start
Subsave
Stop
Subsave
-
-
-
-
-
-
-
-
-
8
Version: 1.4
TwinCAT 3 Scope View
Installation
3
Installation
3.1
Systemvoraussetzungen
Die folgenden Systemvoraussetzungen müssen für eine ordnungsgemäße Funktion des TwinCAT 3 Scope
Views erfüllt sein.
Unterstützte Betriebssysteme
Windows XP, Windows XP Embedded, Windows Embedded Standard 2009, Windows 7
TwinCAT
Minimum ist TwinCAT 3 ADS.
.NET Framework
Es wird das .NET Framework 4.0 benötigt.
Das TwinCAT 3 Scope Base wird zusammen mit TwinCAT 3 XAE installiert. Die weiteren Produktlevel und
Features werden durch die Lizensierung freigeschaltet. Möchten Sie außerhalb eines TwinCAT 3 XAE
Updates eine neuere Scope Version nutzen oder das Scope standalone auf einem PC ohne TwinCAT 3
Engineering installieren, so können Sie sich das entsprechende Setup aus dem Internet herunterladen.
Das Scope View ist als Vollversion und als 7-Tage-Testversion lizensierbar. Einschränkungen der
Testversion entnehmen Sie bitte der Produktübersichtsseite.
3.2
Herunterladen der Setup-Datei
Wie viele andere TwinCAT 3 Engineering Tools, steht das TwinCAT Scope View als Download auf den
Beckhoff Webseiten zur Verfügung. Es handelt sich hierbei um die jeweils aktuellste Version des Produkts,
welche für jedes Produkt Level lizensierbar ist. Bitte führen Sie die folgenden Schritte durch, um die SetupDatei zu downloaden:
1. Starten Sie einen Webbrowser Ihrer Wahl und öffnen Sie die Beckhoff Webseite www.beckhoff.de
2. Navigieren Sie im Baum zum Knoten Automation/TwinCAT3/TE1xxx | TC3 Engineering/TE13xx |
TC3 Scope View
3. Dort können Sie zwischen Download Full und Download Update auswählen. Wählen Sie Full aus, bringt
das Setup auch die Microsoft Visual Studio Shell, in der sich das TwinCAT Scope View integriert, mit
sich. Sollte die Shell oder eine andere Vollversion des Microsoft Visual Studios bereits auf dem
Zielsystem installiert sein, reicht das Update Setup aus.
4. Klicken Sie auf den Download-Link, um die Software in den Warenkorb zu legen. Klicken Sie
anschließend auf "Download starten"
(Optional) Übertragen Sie die heruntergeladene Datei auf das TwinCAT-Laufzeitsystem, auf welchem Sie
das Produkt installieren möchten
3.3
Installation
Die Installation der TwinCAT 3 Function für Windows basierte Betriebssysteme erfolgt Schritt-für-Schritt.
1. Führen Sie einen Doppelklick auf die herunter geladene Datei „TFxxxx" aus.
Hinweis: Bitte starten Sie die Installation unter Windows per „Als Administrator ausführen", indem Sie
die Setup-Dateien mit der rechten Maus anklicken und die entsprechende Option im Kontextmenü
auswählen.
TwinCAT 3 Scope View
Version: 1.4
9
Installation
2. Klicken Sie auf „Next" und akzeptieren Sie dann die Endbenutzervereinbarung
3. Geben Sie Ihre Benutzerdaten ein.
10
Version: 1.4
TwinCAT 3 Scope View
Installation
4. Für eine vollständige Installation wählen Sie „Complete" als Installationstyp. Alternativ können Sie jede
Komponente separat installieren, indem Sie "Custom" wählen.
5. Wählen Sie „Next“ und „Install" um die Installation zu beginnen.
Das TwinCAT System muss gestoppt werden um mit der Installation fortzufahren.
TwinCAT 3 Scope View
Version: 1.4
11
Installation
6. Bestätigen Sie den Dialog mit „Yes“
7. Wählen Sie „Finish" um das Setup zu beenden.
ð Damit ist die Installation abgeschlossen.
Der nächste Schritt nach einer erfolgreichen Installation ist die Lizensierung der TC3 Function [} 13].
3.4
Nach der Installation
Der nächste Schritt nach einer erfolgreichen Installation ist die Lizensierung der Produkte "TE130x Scope
View" und / oder "TF3300 Scope Server". Standardmäßig ist das Produkt Level Base aktiv und steht ohne
Lizenz zur Verfügung. Den erweiterten Funktionsumfang kann man durch eine entsprechende Lizensierung
z.B. auf das Produkt Level Professional freischalten. Weitere mögliche Schritte sind dann:
• Erste Schritte mit TwinCAT 3 Scope [} 98]
• Detail Dokumentation der einzelnen Funktionalitäten [} 18]
• Die Integration des TwinCAT 3 Scope View Controls in die eigene .NET basierte Visualisierung [} 77]
12
Version: 1.4
TwinCAT 3 Scope View
Installation
3.5
Lizensierung
Die TwinCAT 3 Function ist zusätzlich zur Vollversion auch in einer 7-Tage Testversion freischaltbar. Beide
Lizenztypen sind über TwinCAT XAE aktivierbar. Weitere Information zum TwinCAT 3
Lizensierungsverfahren finden Sie im TwinCAT 3 Hilfesystem. Das folgende Dokument beschreibt den
Lizensierungsvorgang einer TwinCAT 3 Function und gliedert sich dabei in die folgenden beiden
Unterkapitel:
• Lizensierung einer 7-Tage Testversion [} 13]
• Lizensierung einer Vollversion [} 14]
Lizensierung einer 7-Tage Testversion
1. Starten Sie TwinCAT XAE
2. Öffnen Sie ein bestehendes TwinCAT 3 Projekt, oder legen Sie ein neues Projekt an
3. Navigieren Sie im “Solution Explorer” zum Eintrag „System\License“
4. Öffnen Sie die Registerkarte „Manage Licenses" und fügen Sie eine „Runtime License" für Ihr
Produkt hinzu (in diesem Screenshot „TE1300: TC3 Scope View Professional")
5. Optional : Möchten Sie die Lizenz für ein Remote Gerät hinzufügen, müssen Sie sich zunächst mit
diesem Gerät über die TwinCAT XAE Toolbar verbinden
TwinCAT 3 Scope View
Version: 1.4
13
Installation
6. Aktivieren Sie in der Registerkarte „Order Information" über den Button „Activate 7 Days Trial
License..." eine Testversion
7. Starten Sie im Anschluss daran das TwinCAT 3 System einmal neu
Lizensierung einer Vollversion
8. Starten Sie TwinCAT XAE
9. Öffnen Sie ein bestehendes TwinCAT 3 Projekt oder legen Sie ein neues Projekt an
10. Navigieren Sie im "Solution Explorer" zum Eintrag „SYSTEM/License"
11. Öffnen Sie die Registerkarte „Manage Licenses" und fügen Sie eine „Runtime License" für Ihr
Produkt hinzu (in diesem Screenshot " TE1300: TC3 Scope View Professional ").
14
Version: 1.4
TwinCAT 3 Scope View
Installation
12. Optional: Möchten Sie die Lizenz für ein Remote Gerät hinzufügen, müssen Sie sich zunächst mit
diesem Gerät über die TwinCAT XAE Toolbar verbinden
13. Öffnen Sie die Registerkarte „Order Information"
Die Felder „System-ID" und „HW Platform" können nicht geändert werden, sie beschreiben die zu
lizensierende Plattform. Generell wird eine TwinCAT 3 Lizenz an zwei Kennzahlen gebunden:
Die „System-ID" identifiziert Ihr Gerät eindeutig.
Die „HW Platform" ist eine Kennzahl für die Performanz des Gerätes.
14. Tragen Sie optional eine eigene Bestellnummer und einen Kommentar für Ihre Zwecke ein
15. Generieren Sie in der Registerkarte „Order Information" über den Button „Generate License
Request File..." eine Lizenzanforderungs-Datei, die durch einen Beckhoff-Lizenzserver validiert wird
(wenn Ihnen Ihre „Beckhoff License ID“ nicht bekannt ist, wenden Sie sich an Ihren Ansprechpartner
aus dem Beckhoff Vertrieb).
16. Nachdem Sie das „License Request File“ gespeichert haben, fragt das System, ob die Datei per Mail an
den Beckhoff Lizenz Server geschickt werden soll:
17. Wenn Sie den Dialog mit „Yes" bestätigen, öffnet sich Ihr Standard E-Mail Client und erzeugt eine neue
E-Mail für „[email protected]", die das „License Request File" enthält
18. Senden Sie diesen Activation Request an Beckhoff
HINWEIS! das „License Response File“ wird an die dieselbe E-Mail Adresse versendet, die das
„License Request File“ verschickt hat
TwinCAT 3 Scope View
Version: 1.4
15
Installation
19. Kurz darauf erhalten Sie vom Beckhoff-Lizenzserver eine Lizenzdatei,
importieren Sie sie über den Button „Activate License Response File...“, um das Produkt zu aktivieren
20. Wählen Sie in Ihrem Ordnersystem das erhaltene „License Response File" aus
21. Das „License Response File" wird importiert und alle enthaltenen Lizenzen werden aktiviert, sämtliche
betroffenen Demo-Lizenzen werden entfernt
16
Version: 1.4
TwinCAT 3 Scope View
Installation
22. Starten Sie TwinCAT neu, um die Lizenz zu aktivieren
HINWEIS! Das Lizenzfile wird automatisch auf Ihre lokale Festplatte unter „...\TwinCAT
\3.1\Target\License" kopiert.
TwinCAT 3 Scope View
Version: 1.4
17
Konfiguration
4
Konfiguration
4.1
Scope View
4.1.1
Scope View - Architektur
Im TwinCAT Scope View werden nicht nur Signalverläufe dargestellt, sondern auch AufnahmeKonfigurationen erstellt. Für die Erstellung dieser Konfigurationen ist es wichtig die Architektur des Scope
Views zu kennen. Die Architektur spiegelt sich im Baumaufbau innerhalb des Measurement- Projekts im
Solution Explorer wieder.
Die Scope- Architektur:
18
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Measurement Scope Project:
Hauptebene, in der mehrere Scopes eingefügt werden können. Die Scopes innerhalb eines Projektes
können unabhängig voneinander gesteuert werden.
Standard Scope Project:
Ein Scope steht immer für eine Aufnahme-Konfiguration. Das heißt, alle darunter eingefügten Elemente
unterliegen den gleichen Aufnahmeeinstellungen. Wird ein Scope angeklickt, werden die
Einstellmöglichkeiten, wie Aufnahmedauer und Ringpuffer, im Visual Studio Property- Fenster angezeigt.
Siehe auch: Scope Eigenschaften [} 27]
YT Chart:
Es können parallel in einem Scope mehrere YT Charts existieren. Sie sind die eigentliche Anzeigefläche im
View und stellen die Zeitbasis zur Verfügung. Jedes Chart verfügt dabei über eine eigene Toolbar um die
Anzeige zu ändern. Die Farb- und Achs-Einstellungen können im Property- Fenster vorgenommen werden.
Bei einem Klick auf den Signalverlauf im Chart wird der entsprechende Kanal im Solution Explorer
hervorgehoben.
Siehe auch: YT Chart Eigenschaften [} 29]
Axis:
Ein Chart (YT oder XY) kann über mehrere Achsen verfügen. Eine Achse stellt den Wertebereich für die
angeschlossenen Kanäle zur Verfügung. Im Property- Fenster kann unter anderem die automatische oder
freie Skalierung eingestellt werden.
Siehe auch: Achsen Eigenschaften [} 32]
Kanal:
Ein Kanal verkörpert die Style- Eigenschaften von einer ausgewählten Variablen. Im Property- Fenster
können unter anderem die Farbe und die Marks eingestellt werden. Mit einem Doppelklick auf den Kanal
wird das entsprechende Signal im Chart hervorgehoben.
Acquisition:
In der Acquisition stehen die Informationen zu der tatsächlich ausgewählten Variablen.
Cursor:
Cursor sind hierarchisch den Charts zugeordnet. Innerhalb eines Charts können X- und Y-Cursor
hinzugefügt werden. Im Cursor Tool Window werden unter anderem die aktuellen Werte der Signal/CursorSchnittstelle und die Differenzen zu anderen Cursor angezeigt. Es können beliebig viele X- und Y-Cursor
gesetzt werden.
Siehe auch: Cursor Eigenschaften [} 58]
XY Chart:
In einem Scope können mehrere XY Charts parallel existieren. Sie sind die eigentliche Anzeigefläche im
View. Jedes Chart verfügt dabei über eine eigene Toolbar um die Anzeige zu ändern. Die Farb- und
Skalierungs-Einstellungen können im Property- Fenster vorgenommen werden. Bei einem Klick auf den
Signalverlauf im Chart wird der entsprechende Kanal im Solution Explorer hervorgehoben.
Siehe auch: XY Chart Eigenschaften [} 38]
Array Bar Chart:
Ein Array Bar Chart kann sich auf ein Array in der Steuerung verbinden und jedes Array-Element als ein
Balken anzeigen. Es können in einem Scope mehrere Array Bar Charts parallel existieren. Die
Einstellungen für das Chart können im Property- Fenster vorgenommen werden.
Trigger:
Trigger sind in der Baumstruktur des Scope Views den Scopes zugeordnet. Die Trigger-Aktion, z.B. ein
Stop Record, ist im Property- Fenster der Trigger Group einstellbar. Die darunter liegenden Trigger können
logisch zu einer Triggerbedingung verknüpft werden. Auch die Variablenauswahl findet an dieser Stelle im
Property- Fenster statt.
Siehe auch: Trigger Eigenschaften [} 62]
TwinCAT 3 Scope View
Version: 1.4
19
Konfiguration
Fenster
Die Oberflächen zur Steuerung des Scope View sind in mehrere einzelne Fenster (Tool Windows) aufgeteilt
und in ihrer Position sowie Größe frei konfigurierbar.
Die einzelnen Fenster im Überblick:
20
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Solution Explorer
Cursor [} 58]
Error List
Target Browser [} 56]
Properties
Scope View Control
Darstellung der Projektstruktur innerhalb einer
Solution.
Darstellung der Werte, die an dem X-/Y-Cursor
anliegen.
Auflistung der Fehler, Warnungen und Meldung.
Jedes Scope-Projekt listet hier eigenständig die
generierten Meldungen auf. Über den KontextmenüEintrag "Clear Error List" können die Meldungen des
jeweils selektierten Scope gelöscht werden.
Mit dem Target Browser können einer ScopeKonfiguration Kanäle über ihren Symbolnamen
hinzugefügt werden.
In den Properties können die Einstellungen des
jeweiligen Elementes geändert werden, welches im
Solution Explorer markiert ist.
Darstellung der einzelnen Charts. Die Charts können
innerhalb des Controls genau wie alle anderen
Fenster nebeneinander oder in überlappenden Tabs
dargestellt werden.
Konfiguration
Die Möglichkeiten eine Scope-Konfiguration zu erstellen bzw. zu bearbeiten sind im Folgenden erklärt. Wie
die Eigenschaften der jeweiligen Elemente verändert werden können, ist in der Beschreibung des
zugehörigen Fensters beschrieben.
Zum Erstellen eines Measurement- Projekt:
• File → New → Project → TwinCAT Measurement → Auswahl des gewünschten Templates.
Liste der verfügbaren Templates:
TwinCAT 3 Scope View
Version: 1.4
21
Konfiguration
Empty Measurement Project
Scope YT Project
Scope YT Project with Reporting
Scope YT NC Project
Scope XY Project
Scope XY Project with Reporting
Scope Array Bar Project
Leeres Measurement- Projekt. Hier können ScopeKonfigurationen (.sv2 | .tcscope) oder Scope- Daten
(.svd) nachträglich eingefügt werden.
Enthält eine Scope- Instanz sowie ein
vorkonfiguriertes YT Chart mit einer entsprechenden
Achse.
Siehe "Scope YT Project" eine vorgefertigte
Druckvorlage zum Drucken von Charts.
Enthält eine Scope- Instanz, die speziell für das
Arbeiten mit Antriebsachsen vorkonfiguriert wurde.
Das Template kann sehr einfach auf die Anzahl der
tatsächlich konfigurierten Antriebsachsen erweitert
werden.
Enthält eine Scope- Instanz sowie ein
vorkonfiguriertes XY Chart mit einer entsprechenden
Achse.
Siehe “Scope XY Project“ + eine vorgefertigte
Druckvorlage zum Drucken von Charts.
Enthält eine Scope- Instanz sowie ein
vorkonfiguriertes Array Bar Chart mit einer
entsprechenden Achse.
Hinzufügen eines Scope / Report zu einem Measurement- Projekt:
• Kontextmenü des Measurement Projekt → Add → New Item... → Auswahl des gewünschten
Templates.
Liste der verfügbaren Templates:
Scope Project
Scope NC Project
Standard Report
Scope- Instanz mit einem vorkonfigurierten Chart und
einer Achse.
Scope- Instanz, die speziell für das Arbeiten mit
Achsen vorkonfiguriert wurde.
Druckvorlage zum Drucken von Charts.
• Kontextmenü des Measurement- Projekts → Add → Existing Item... → Auswahl der gewünschten
Datei (.tcscope | .sv2 | .svd | .rdlc)
• Drag&Drop der gewünschten Datei (.tcscope | .sv2 | .svd | .rdlc) auf das Mesaurement-Projekt im
Solution Explorer.
22
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Hinzufügen von einzelnen Elementen:
Neues Chart
Kontextmenü der Scope- Instanz
→ New YT Chart
→ New XY Chart
Kontextmenü der Scope- / Chart- Instanz → New
Axis
Kontextmenü der Scope- / Chart- / Axis- Instanz →
New Empty Channel
Drag&Drop von Symboldaten aus dem Target
Browser auf eine vorhande Scope- / Chart- / AxisInstanz.
PLC Editor → Kontextmenü von Variablen → Add to
Scope
Neue Achse
Neuer Kanal
Löschen von Elementen:
• Auswahl des Elementes im Solution Explorer → <Entf> Taste.
• Kontextmenü des Elementes → Delete
Verschieben / kopieren einzelner Elemente:
• Jedes Element kann mit Drag&Drop im Solution Explorer verschoben werden. Es muss dabei immer
einem Element hinzugefügt werden, welches in der Hierarchie eine Ebene höher steht. Wird ein
Element zu einem anderen Scope verschoben, so wird es lediglich kopiert. Es steht dann also noch im
ursprünglichen Scope zur Verfügung.
• Die beschriebenen Verschiebeoperationen stehen innerhalb eines Scopes auch nach dem Start der
Aufnahme zur Verfügung.
• Bei gedrückter <Strg> Taste während des Drag&Drop wird das selektierte Element immer kopiert
anstatt verschoben.
Speichern einer Scope- Konfiguration:
• File → Save (Per Default vergebenes Tastenkürzel: Strg + S)
Laden einer Scope- Konfiguration:
• File → Open → Project/Solution → Auswahl der Solution / des Measurement-Projekts über den
Dateiauswahldialog.
• Sämtliche Scope- Dateien (.tcscope | .sv2 | .svd) können direkt per Doppelklick geöffnet werden. Da
hierzu aber ein Measurement- Projekt als Grundlage fehlt, erscheint ein Auswahldialog, in welchem ein
neues Projekt angelegt wird. Anschließend wird dem neu erstellten Projekt das per Doppelklick
aufgerufene Scope angefügt (Es wird eine Kopie der Datei in das neue Projektverzeichnis gelegt). Hier
bietet sich das "Empty Measurement Project" Template an.
• Measurement-Projekt- Dateien (.tcmproj) sowie Solutions (.sln) können direkt per Doppelklick geöffnet
werden.
Versenden von Projekten via E-Mail:
• Kontextmenü der zu versendenden Scope- Instanz → Send Project By E-Mail...
◦ Sollte das Scope-Daten enthalten (Scope State: Reply), so können Sie auswählen, ob auch
die Daten versendet werden sollen.
Kanal deaktivieren / aktivieren:
Ein Kanal kann in der Konfiguration deaktiviert werden, um nicht mit aufgenommen zu werden. Beim
Speichern der Konfiguration bleibt er aber erhalten.
• Auswahl des Kanals im Solution Explorer → Properties → Disabled → true
TwinCAT 3 Scope View
Version: 1.4
23
Konfiguration
4.1.2
Scope View - Scope Menü
Über das Menü sind die Funktionen des Scope erreichbar. Je nach angewähltem Knoten im Solution
Explorer stellt das Menü einen anderen Inhalt dar. (Aus diesem Grund weicht der unten abgebildete
Screenshot von der Beschreibung ab.) Dem Scope- Menü können auch die entsprechenden
Tastenbelegungen entnommen werden.
24
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Target Browser
Cursor Window
Send Project By E-Mail...
Clear Error List
Change Ads Symbol...
Change Index Group...
New YT Chart
New XY Chart
New Array Bar Chart
New Axis
New Empty Channel
Delete
Export to CSV
Export to Binary
Export to DAT
Export to TDMS
Extract Scope Configuration
Upload Configuration To Target
Save Data
Scope Messages
Local Scope Server...
Options...
TwinCAT 3 Scope View
Öffnet den Target Browser.
Öffnet das Cursor Window.
Kontextmenü der zu versendenden Scope- Instanz ->
Send Project By E-Mail...
Sollte das Scope Daten enthalten (Scope State:
Reply), so können Sie auswählen, ob auch die Daten
versendet werden sollen.
Löscht alle Einträge (Error | Warning | Message) des
derzeit aktiven Scope aus der Error List.
Dialog zum Ersetzen von Zeichenketten. Es werden
die Symbolnamen aller Kanäle bearbeitet, die sich
unterhalb des selektierten Elementes befinden.
Dialog zum Inkrementieren / Dekrementieren der
Index-Group / Index-Offset. Es werden die
Akquisitionen aller Kanäle bearbeitet, die sich
unterhalb des selektierten Elementes befinden.
Erstellt ein neues YT Chart innerhalb des Scope.
Erstellt ein neues XY Chart innerhalb des Scope.
Erstellt ein neues Array Bar Chart innerhalb des
Scope.
Erstellt eine neue Achse innerhalb des Charts. Ist
das selektierte Element kein Chart, so wird zusätzlich
ein neues Chart angelegt.
Erstellt einen neuen Kanal innerhalb der Achse. Ist
keine Achse selektiert, so wird zusätzlich eine neue
Achse angelegt.
Löscht das aktuell im Solution Explorer selektierte
Element.
Export in eine CSV oder TXT Datei
Export in eine binär Datei
Export in eine DAT Datei
Export in eine TDMS Datei
Löst die Scope- Konfiguration aus dem
angewählten .svd heraus.
Lädt die aktuelle Konfiguration als .tcscope Datei auf
ein zu wählendes Zielsystem runter.
Nach dem Stoppen der Aufnahme können die
aktuellen Daten inklusive der Konfiguration in
einer .svd-Datei gespeichert werden.
Die erzeugte Scope- Daten- Datei (.svd) kann direkt
dem Measurement- Projekt hinzugefügt werden oder
per Verzeichnisauswahl- Dialog in ein gewünschtes
Verzeichnis gespeichert werden.
Einige häufig auftretende Nachrichten-Felder im
Scope sind mit einem Schalter "Remember my
Answer and don't ask again!" ausgestattet, um diese
Frage beim nächsten Mal nicht zu wiederholen. Dies
dient dazu, die Handhabung des Programms für
jeden Nutzer individuell einstellbar zu machen. Ist ein
Nachrichtenfeld einmal abgewählt, so kann es hier
wieder aktiviert werden.
Öffnet die Konfigurationsoberfläche des Scope
Server.
Öffnet das Visual Studio Options Fenster und
selektiert den Scope-Eintrag.
Version: 1.4
25
Konfiguration
4.1.3
Scope View - Toolbar
Mit der Toolbar wird die Aufnahme des Scopes gestartet und gestoppt.
Falls die Toolbar nicht standardgemäß sichtbar ist, oder geschlossen wurde, kann die Toolbar unter View →
Toolbars → TwinCAT Measurement wieder aktiviert werden.
Folgende Elemente sind per Default in der Toolbar vorhanden:
26
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Start Record: Alle benötigten Server werden aufgerufen und die Aufnahmeeinstellungen sowie die
angeschlossenen Kanäle eingetragen. Sind bereits aufgenommene Daten aus einer
vorangegangenen Sitzung vorhanden, so erscheint eine Abfrage, ob die aktuellen Daten
gespeichert werden sollen. Danach wird die Aufnahme den obigen Einstellungen entsprechend
gestartet. Nach dem Start ist eine Veränderung der Scope-Settings, der Akquisition oder das
Hinzufügen oder Entfernen von Kanälen nicht mehr möglich.
Stop Record: Die Aufnahme wird beendet. Die aufgenommenen Daten verbleiben jedoch auf den
angeschlossenen Servern und können eingesehen werden.
Nach dem Stoppen der Aufnahme ist das Verändern der Scope-Konfiguration wieder möglich. Die
aktuellen Daten gehen dann allerdings verloren, sofern sie nicht gespeichert werden.
Die Toolbar kann über das Kontextmenü (Auf der rechten Seite der Toolbar einblendbar) → Add or Remove
Buttons → Customize... beliebig erweitert werden.
Die zum Scope gehörenden Befehle finden Sie anschließend unter Add Command → Categories: Scope
4.1.4
Scope View - Scope Eigenschaften
Vor dem Start einer Aufnahme müssen die Scope- Eigenschaften bestimmt werden. Die Einstellungen
werden über das Property- Fenster (bei selektiertem Scope- Element im Solution Explorer) vorgenommen.
TwinCAT 3 Scope View
Version: 1.4
27
Konfiguration
Auto Save
• Auto Save Path: Hier kann per Datei-Browser der Datei-Pfad für die zu speichernde Aufnahme
ausgewählt werden.
• Filename Mask: Beeinflusst den Dateinamen der zu speichernden Aufnahme. So können z.B.
fortlaufende Zeitstempel realisiert werden.
• Use Auto Save: Schaltet das automatische Abspeichern einer gestoppten Aufnahme ein.
Common
• Comment: Hier kann ein freier Kommentar abgelegt werden.
• File Name: Dateiname der aktuellen Scope- Instanz.
• File Path: Verzeichnis, in dem die Scope- Instanz gespeichert wurde.
• Graphics: Zeigt die aktuell verwendete Grafik an. Es wird zwischen GDI+ und DirectX unterschieden.
• ViewDetailLevel: Hier kann das Detail-Level eingestellt werden, welches verschiedene Optionen einoder ausblendet. Das Extended- Level wird wegen der besseren Übersicht insbesondere für XY Plots
empfohlen, daher gibt es die Option auch einmal nur für XY Plots. Für alle Chart-Typen gibt es die
Optionen Default und Extended.
Record
• Restart Record: Hier kann die zuvor gestoppte Aufnahme direkt wieder gestartet werden.
• Ringbuffer: Hier wird festgelegt, wie der Server reagieren soll, wenn die Aufnahmezeit erreicht worden
ist.
◦ Ist die Option deaktiviert, wird die Aufnahme beim Erreichen der Aufnahmedauer gestoppt. Ein
vorzeitiges Beenden der Aufnahme über den Stop-Button ist möglich.
28
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
◦ Ist die Option aktiviert, wird die Aufnahme nicht gestoppt, sondern die ältesten Daten im Speicher werden überschrieben. Damit steigt die Startzeit der Aufnahme an. Gestoppt wird die Aufnahme durch die Betätigung des Stop-Buttons.
• Start Record: Hier kann eingestellt werden, ob die Aufnahme bei Betätigung des Aufnahmeknopfes
(UserStart) oder bei Eintreffen eines Triggerereignisses (TriggerStart) erfolgen soll.
Record Mode
• File Store: Hier wird festgelegt, ob der Server die Daten in einer lokalen Datei zwischenspeichern
(True) oder nur im Arbeitsspeicher halten (False) soll. Die Auswahl ist abhängig von der Menge der
aufzunehmenden Daten und dem Aufnahmegerät. Die Zugriffszeit ist besser, wenn nur im
Arbeitsspeicher gearbeitet wird. Bei größeren Datenmengen ist es jedoch meist nötig die „File Store“Option zu aktivieren.
• Record Time: Hier wird die Gesamtzeit der Aufnahme bestimmt. Sie wird im Format
Tage:Stunden:Minuten:Sekunden eingegeben.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Scopes gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
4.1.5
Scope View YT Graph
Nachfolgend sind alle Eigenschaften der einzelnen Hierarchiestufen von YT Plots erklärt. Mit dem
ViewDetailLevel, welches in den Scope- Eigenschaften eingestellt werden kann, können auf Kanal-Ebene
durch eine zusätzliche Hierarchiestufe Kanal Style und Kanal Acquisition voneinander getrennt werden.
Kanal Style und Kanal Acquisition werden im Folgenden getrennt betrachtet.
4.1.5.1
YT Chart Eigenschaften
Hier können alle dem YT Chart zugeordneten Einstellungen vorgenommen werden.
TwinCAT 3 Scope View
Version: 1.4
29
Konfiguration
Behavior
• Auto Start: Ist diese Option aktiviert, startet das Chart die Live-Darstellung, wenn eine neue Aufnahme
begonnen wird.
• Data Tool Tip: Ist diese Option aktiviert, wird bei einem Klick auf einen Datenpunkt ein Tool-Tipp mit
den exakten Werten des Datenpunktes auf X- und Y- Achse angezeigt sowie der Zeitstempel und der
Name des entsprechenden Kanals.
• Default Display Time: Diese Zeit gibt die Standardbreite des zugehörigen Charts an. Dieser Wert wird
zum Beispiel eingestellt, wenn der Rescale - Button in der Chart-Toolbar gewählt wird.
• Inverse X-Axis: Schaltet den Signalverlauf von Default von links nach rechts auf rechts nach links um.
• Time Bar: Legt fest, ob die Time Bar im Chart angezeigt wird.
• Tool Bar: Legt fest, ob die Tool Bar im Chart angezeigt wird.
30
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Color
• Die Hintergrund- und Rahmenfarbe können mittels den Farb-Dialogen eingestellt werden.
Common
• Comment: Hier kann ein freier Kommentar hinterlegt werden.
• CPU Core: Hier kann für jedes Chart individuell eingestellt werden, welcher Kern der CPU für die
aktuelle Chart-Darstellung genutzt werden soll. Es können bei Bedarf auch mehrere Kerne der CPU für
ein Chart angegeben werden. Die Zeichen-Performance kann sich dadurch verbessern.
• Show Name: Legt fest, ob der Name des Charts in der Grafik angezeigt wird.
X-Axis Grid
• Use X-Axis Grid: Die X-Unterteilungen im Chart können hier zu- oder abgeschaltet werden.
• Use X-Axis SubGrid: Hilfslinien zur feineren X-Unterteilung des Hauptnetzes können hier ein- oder
ausgeblendet werden.
• X-Grid Color: Die Farbe des Grid.
• X-Grid Line Width: Linienstärke des Grid in Pixel.
• X-SubGrid Divisions: Anzahl der Bereiche, in die das Hauptnetz durch Hilfslinien unterteilt wird.
X-Axis Style
Da die X-Achse einem Chart fest zugeordnet ist, können hier alle zugehörigen Einstellungen vorgenommen
werden.
• Ticks: Die Anzahl der Unterteilungen.
• X-Axis Color: Die Farbe der X-Achse.
• X-Axis LineWidth: Linienstärke der Achse in Pixel.
Y-Settings
• Scale on Zoom: Ist diese Option gewählt, weist das Chart alle Achsen (X und Y) an, nach einer Zoomoder Panningaktion eine Autoskalierung durchzuführen. Dadurch kann der gewählte Bereich
aufgeweitet werden.
• Stacked Y-Aches: Mit dieser Einstellung kann gewählt werden, ob die Achsen eines Charts
nebeneinander liegen sollen, sodass die Werte der angefügten Kanäle innerhalb der gleichen Fläche
dargestellt werden oder ob die Achsen übereinander stehen sollen, um jeweils einen eigenen
Darstellungsbereich zu erhalten.
• Y-Zoom: Hier kann eingestellt werden, wie sich ein Chart beim Zoomen verhält. Wird die Option
gesetzt, kann in den Daten eines Charts auch in Y-Richtung navigiert werden. Das schließt sowohl
Zoomen als auch Panning (das Verschieben der Anzeige mit der Maus) ein.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Charts gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
Mit der Toolbar wird die Anzeige des Charts bedient. Die Übersicht zeigt alle Buttons und deren Erklärung
(von links):
• Play: Startet den Live-Darstellungsmodus. Die aktuell auflaufenden Daten werden angezeigt.
• Pause: Die Darstellung wechselt in den Pause-Modus. In den bereits aufgenommenen Daten kann
nun navigiert werden, ohne die Aufnahme zu stoppen.
• Display-Width: Hier wird die aktuelle Displayweite angezeigt. Sie kann im Format "hh:mm:ss,fff"
editiert werden. Es kann bis in den µs-Bereich gezoomt werden. Alternativ kann die Displayweite
verändert werden, indem in einem selektierten Chartfenster das Mausrad gedreht wird. Der veränderte
Wert wird automatisch übernommen.
TwinCAT 3 Scope View
Version: 1.4
31
Konfiguration
• Scroll Tasten: Die äußeren Scroll-Tasten bewegen die aktuelle Anzeige in Schritten, die der DisplayWidth entsprechen. Die inneren Scroll-Tasten bewegen die Anzeige nur um ein Zehntel der DisplayWidth und können gedrückt gehalten werden, um den Datensatz zu sichten.
• Position: Hier wird die Position angezeigt. Sie kann im Format "hh:mm:ss,fff" editiert werden. Die
Doppelpunkte dienen als Trennzeichen. Wenn nicht alle Einheiten editiert werden, wird das Format, bei
Sekunden beginnend, aufsteigend sortiert.
• Undo/Redo Time/Position: Hier können Sprünge der Displayweite oder der aktuellen Position,
unabhängig von ihrer Entstehung (z.B.: Zoom, Scroll, etc.), rückgängig gemacht werden. Die rechte
Maustaste ist ebenfalls mit dieser Funktion belegt. Einmal rückgängig gemachte Werte können mit
Redo wiederholt werden.
• Panning Horizontal: Im horizontalen Panning-Mode kann durch Klicken und Ziehen mit der Maus die
aktuelle Anzeige auf der X-Achse verschoben werden.
• Panning Free: Im freien Panning-Mode kann durch Klicken und Ziehen mit der Maus die aktuelle
Anzeige auf der X- und Y- Achse verschoben werden.
• Zoom Horizontal: Durch Aufspannen eines Rechtecks über der X-Achse kann ein neuer Zeitbereich
für die Anzeige gewählt werden.
• Zoom Free: Durch Aufspannen eines Rechtecks auf der Zeichenfläche kann in die aktuelle Anzeige
hineingezoomt werden.
• Rescale All: Führt ein Autoscale auf allen Achsen aus. Die X-Achse(n) werden auf die DefaultDisplaytime gesetzt.
• Zoom Out Max: Skaliert die x-Achse so, dass alle aktuellen Werte in der Aufnahme in der Anzeige
erscheinen.
• Overview Chart: Mit dem Overview Chart wird ein Chart im Chart eingeblendet. Der aktuell im HauptChart gezeigte Signalbereich wird im Overview Chart hervorgehoben. Zudem bietet das Overview
Chart eine absolute Zeit-Achse für die gesamte Aufnahmedauer.
Durch das Drehen am Mausrad kann ebenfalls ein Zoom auf die aktuelle Anzeige durchgeführt werden. Die
Cursorpositon der Maus gibt dabei das Zentrum vor.
Die aktuellen Aufnahmezeiten werden in der Chart Toolbar angezeigt:
• Start-Time: Der gemeinsame Anfangspunkt der Aufnahmen aller angeschlossenen Kanäle. Die StartTime gibt den Nullpunkt der Aufnahme an.
• End-Time: Die größte gemeinsame Zeit aller angeschlossenen Kanäle. Die End-Time markiert somit
den Endwert der Aufnahme. Die Differenz aus End-Time und Start-Time wird maximal so groß wie die
eingestellte Record-Time (siehe Scope Eigenschaften [} 27]).
• Position: Die Position-Time stellt den Nullpunkt des aktuellen Charts dar, also die Zeit von Start-Time
bis zum Beginn der Anzeige.
• Time: Die absolute Zeit im Ursprung des Charts.
• Date: Das absolute Datum im Ursprung des Charts.
4.1.5.2
YT Achsen Eigenschaften
An dieser Stelle können Einstellungen für jede verfügbare YT Achse separat vorgenommen werden.
32
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Common
• Caption: Hier kann die Beschriftung der Achse eingetragen werden.
• Comment: Hier kann ein freier Kommentar hinterlegt werden.
• Enabled: Hier kann die Achse vollständig ein- oder ausgeschaltet werden. Diese Funktionalität steht
auch über das Kontextmenu zur Verfügung.
• Show Caption: Legt fest ob der Name des Charts (Caption) in der Grafik angezeigt wird.
Grid
• Grid Color: Die Farbe des Grids.
• Grid Line Width: Linienstärke des Grid in Pixel.
• SubGrid Divisions: Anzahl der Bereiche, in die das Hauptnetz durch Hilfslinien unterteilt wird.
Bei logarithmischer Skalierung werden die Hilfslinien zur Bereichsunterteilung nur in der eingestellten
Anzahl angezeigt, wenn der Wertebereich pro Tick genau eine Dekade beträgt. Andernfalls zeigt die
dargestellte Hilfslinie die im Hauptnetz nicht dargestellten Dekaden an.
• Use Grid: Die Y-Unterteilungen der Achse können hier ein- oder ausgeblendet werden.
• Use SubGrid: Hilfslinien zur feineren Y-Unterteilung des Hauptnetzes können hier ein- oder
ausgeblendet werden. Hilfslinien besitzen keine Achsenbeschriftung.
TwinCAT 3 Scope View
Version: 1.4
33
Konfiguration
Scale
• Auto Scale: Ist Auto Scale aktiv, skaliert sich jede Achse so, dass das letzte bekannte Minimum und
Maximum aller angeschlossenen Kanäle innerhalb des Anzeigebereiches liegen.
• Axis Max: Ist Auto Scale inaktiv, kann der Maximalwert direkt editiert werden.
• Axis Min: Ist Auto Scale inaktiv, kann der Minimalwert direkt editiert werden.
• Logarithmic: Schaltet zwischen logarithmischer und linearer Skalierung der Achse um.
• Precision: Hier gibt man die Anzahl signifikanter Stellen für die Achsbeschriftung an. Dies entspricht
der sichtbaren Anzahl an Ziffern an der Achse.
• Scale Mode: Man kann zwischen zwei Auto Scale Modes wählen. Der Default-Mode ist
AutoGrowOnly. Das bedeutet, die Y-Achse skaliert immer auf das historische Maximum bis ein
Rescale für die aktuelle Ansicht durchgeführt wurde. Alternativ ist AutoGrowNShrink auszuwählen.
Dieser Modus passt das Maximum der Y-Achse immer automatisch auf das Maximum in der aktuellen
Ansicht (Displayweite) an.
Axis Style
• Color: Die Farbe der Achse.
• Line Width: Die Linienstärke in Pixel.
• Ticks: Maximale Anzahl der Unterteilungen. Wenn nicht genug Platz für die gewählte Anzahl an Ticks
ist, werden diese im Chart automatisch reduziert.
Bei logarithmischer Skalierung ist die Anzahl der Ticks abhängig vom dargestellten Wertebereich und
kann dadurch gegebenenfalls von den Einstellungen abweichen.
• Visible: Gibt an ob die Achse im Chart ein- oder ausgeblendet wird.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Achsen gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
4.1.5.3
YT Kanal Style
Hier können alle einem YT Kanal zugehörigen Style- Einstellungen vorgenommen werden.
34
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Common
• Comment: Hier kann ein freier Kommentar hinterlegt werden. Ggf. wird der Kommentar des
verbundenen ADS-Symbols übernommen.
• Visible: Hier kann eingestellt werden, ob der Kanal im Chart angezeigt werden soll.
Line
• Antialias: Diese Option entscheidet, wie die Linien gezeichnet werden. Antialias ist "schöner" aber
deutlich rechenaufwendiger. Besonders bei vielen Kanälen mit großen Bewegungen hat dies
Auswirkungen.
• Fill Color: Mit einem Fill Mode kann ein Bereich, wie zum Beispiel die Fläche über oder unter einer
Kurve, eingefärbt werden. Hier ist die entsprechende Farbe auszuwählen.
• Fill Mode: Mit einem Fill Mode kann ein Bereich, wie zum Beispiel die Fläche über oder unter einer
Kurve, eingefärbt werden. Default- Einstellung ist „None“. Eine Ausnahme bilden Variablen mit dem
Datentyp BOOL. Bei BOOL-Variablen ist der Default-Wert: „Horizontal Zero“. Weitere Alternativen:
Bottom, Top, Center und Source.
• Fill Transparency: Der Transparent-Wert der Fill Color kann hier eingestellt werden. Der Default-Wert
ist 50.
• Line Color: Die Farbe des Graphen.
• Line Width: Die Linienstärke des Graphen. Die Linienstärke 1 ist am wenigsten rechenaufwendig.
TwinCAT 3 Scope View
Version: 1.4
35
Konfiguration
• Type: Ändert die Darstellung des Wertverlaufs zwischen Linie, Treppe und Balken. Der Default- Wert
ist Linie.
Marks
• Mark Color: Die Farbe der Stützpunkt-Markierungen.
• Marks: Auswahl der Sichtbarkeit von Markierungen -> On (Dauerhaft sichtbar) | Auto (Abhängig von
der Zoomstufe) | Off (Markierungen ausgeschaltet).
• Mark Size: Die Größe der Stützpunkt-Markierungen.
Modify
• Bit Mask: Im Feld Bit Mask kann ein Wert eingegeben werden, mit dem der Anzeigewert maskiert
wird, sofern es sich nicht um einen Floatingpoint-Typ handelt. Das heißt, der Wert des Kanals wird mit
dem Binärwert der Maske UND-verknüpft. Dies hilft um beispielsweise einzelne Bits eines Statusbytes
zu beobachten.
• Offset: Im Offsetfeld kann ein freies Offset zum Funktionswert des Kanals addiert werden.
• Scale Factor: Mit dem Scale-Faktor kann der Anzeigewert eines Kanals verändert werden. Dies ist
zum Beispiel sinnvoll, wenn Winkelsignale nicht in Radianten sondern in Grad angezeigt werden
sollen. Mit einem Skalierungsfaktor von k = 360 / (2*Pi) = 57,296 würden also Grad statt Radianten
angezeigt.
• Time Shift: Diese Option ermöglicht es, den Graphen auf der Zeitachse zu verschieben. Dies kann
zum Beispiel sinnvoll sein, wenn eine bekannte Buslaufzeit ausgeglichen werden soll.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Kanäle gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
4.1.5.4
YT Kanal Acquisition
Hier können alle einem YT Kanal zugehörigen Acquisitions- Einstellungen vorgenommen werden.
36
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Eigenschaften können unterschiedlich sein
Die Eigenschaften der Kanäle können von der hier gezeigten Darstellung abweichen.
Manche Einstellungsmöglichkeiten sind nur bei speziellen Kanälen sichtbar / editierbar.
Hinweis
Bsp.: Die Einstellung Array Length ist nur sichtbar bei Array-Symbolen.
Acquisition
• Array Length: Zeigt die Anzahl der Array- Elemente an.
• Data-Type: Gibt den Datentyp der ausgewählten Variablen an.
• Disabled: Hier wird entschieden, ob der konfigurierte Kanal aufgezeichnet werden soll oder nicht.
• Force Oversampling: Diese Option wird nur bei Arrays eingeblendet. Wird die Option gesetzt, wird
das Array als eine Variable interpretiert und zeigt die Werte der einzelnen Array- Elemente
zusammenhängend an. Das entspricht dem Verhalten bei EtherCAT Oversampling-Klemmen.
Vergleiche: Oversampling-Aufnahmen [} 109].
• Sample State: Hier kann eingetragen werden, ob man die Daten der gewählten Variablen mit der
TaskSampleTime oder mit einer FreeSampleTime abtasten möchte.
• Sample Time: Wenn der Sample State „FreeSampleTime“ gewählt wurde, kann hier die Abtastrate
eingestellt werden. Diese ist immer größer als die TaskSampleTime.
• Symbol based: Wenn diese Option gesetzt ist, werden die Variablen per Symbolname kommuniziert.
Ist diese Option nicht gesetzt, werden die Variablen per Index Group und Offset kommuniziert und
folglich die Eingabefelder für Group und Offset freigeschaltet.
• Symbol Comment: Hier wird der tatsächliche Symbolkommentar angezeigt, sobald einer vorhanden
ist.
TwinCAT 3 Scope View
Version: 1.4
37
Konfiguration
• Symbol Index Group: Index Group der Variablen.
• Symbol Index Offset: Index Offset der Variablen.
• Symbol Name: Symbolname der ausgewählten Variablen.
• Symbol Size: Zeigt die Größe der Variablen in Bytes.
• Target Port: Zeigt den Port der Variablen auf dem entsprechenden TwinCAT- System an. Per DropDown- Box kann eine Auswahl der verfügbaren Ports des ausgewählten Zielsystems vorgenommen
werden.
• Target System: Gibt das Zielsystem an, von dem eine Aufnahme gemacht werden soll. Dies ist
automatisch das Zielsystem der gewählten Variablen.
• Time Offset [s]: Dient zur einmaligen Manipulation des Original- Zeitstempels bei der Aufnahme des
Datenpunktes. So können Gangunterschiede von verschiedenen Zielsystemen ausgeglichen werden.
Die Gangunterschiede müssen dabei manuell vom Nutzer ermittelt werden.
• Use Local Server: Wenn diese Option gesetzt ist, wird der auf dem System des Scope Views
installierte Scope Server für die Aufnahme verwendet. Ist die Option nicht gesetzt, wird eine
Verbindung mit dem Remote Server des Zielsystems aufgebaut.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Kanäle gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
4.1.6
Scope View XY Graph
Nachfolgend sind alle Eigenschaften der einzelnen Hierarchiestufen von XY Plots erklärt. Mit dem
ViewDetailLevel, welches in den Scope- Eigenschaften eingestellt werden kann, können auf Kanal-Ebene
durch eine zusätzliche Hierarchiestufe Kanal Style und Kanal Acquisition voneinander getrennt werden.
Kanal Style und Kanal Acquisition werden im Folgenden getrennt betrachtet.
4.1.6.1
XY Chart Eigenschaften
Hier können alle dem XY Chart zugeordneten Einstellungen vorgenommen werden.
38
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Behavior
• Auto Start: Ist diese Option aktiviert, startet das Chart die Live-Darstellung, wenn eine neue Aufnahme
begonnen wird.
• Data Tool Tip: Ist diese Option aktiviert, wird bei einem Klick auf einen Datenpunkt ein Tool-Tipp mit
den exakten Werten des Datenpunktes auf X- und Y-Achse angezeigt sowie der Zeitstempel und der
Name des entsprechenden Kanals.
• Default Display Time: Diese Zeit gibt die Anzeigedauer des Signals bzw. die Länge des Signals im
XY-Chart wieder. Dieser Wert wird z.B. eingestellt, wenn der Rescale - Button in der Chart-Toolbar
gewählt wird.
• Time Bar: Legt fest, ob die Time Bar im Chart angezeigt wird.
• Tool Bar: Legt fest, ob die Tool Bar im Chart angezeigt wird.
Color
• Die Hintergrund- und Rahmenfarbe können mittels den Farb-Dialogen eingestellt werden.
Common
• Comment: Hier kann ein freier Kommentar hinterlegt werden.
• CPU Core: Hier kann für jedes Chart individuell eingestellt werden, welcher Kern der CPU für die
aktuelle Chart-Darstellung genutzt werden soll. Es können bei Bedarf auch mehrere Kerne der CPU für
ein Chart angegeben werden. Die Zeichen-Performance kann sich dadurch verbessern.
• Show Name: Legt fest, ob der Name des Charts in der Grafik angezeigt wird.
Settings
TwinCAT 3 Scope View
Version: 1.4
39
Konfiguration
• Scale on Zoom: Ist diese Option gewählt, weist das Chart alle Achsen (X und Y) an, nach einer Zoomoder Panningaktion eine Autoskalierung durchzuführen. Dadurch kann der gewählte Bereich
aufgeweitet werden.
• Stacked Axes: Mit dieser Einstellung kann gewählt werden, ob die Achsen eines Charts
nebeneinander oder übereinander liegen sollen. Liegen sie nebeneinander, werden die Werte der
angefügten Kanäle innerhalb der gleichen Fläche dargestellt. Liegen sie übereinander, werden die
Kanäle in jeweils eigenen Darstellungsbereich gezeichnet.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Charts gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
Mit der Toolbar wird die Anzeige des Charts bedient. Die Übersicht zeigt alle Buttons und deren Erklärung
(von links):
• Play: Startet den Live-Darstellungsmodus. Die aktuell auflaufenden Daten werden angezeigt.
• Pause: Die Darstellung wechselt in den Pause-Modus. In den bereits aufgenommenen Daten kann
nun navigiert werden, ohne die Aufnahme zu stoppen.
• Display-Width: Hier wird die aktuelle Displayweite angezeigt. Sie kann im Format "hh:mm:ss,fff"
editiert werden. Alternativ kann die Displayweite verändert werden, indem in einem selektierten
Chartfenster das Mausrad gedreht wird. Der veränderte Wert wird automatisch übernommen.
• Scroll Tasten: Die äußeren Scroll-Tasten bewegen die aktuelle Anzeige in Schritten, die der DisplayWidth entsprechen. Die inneren Scroll- Tasten bewegen die Anzeige nur um ein Zehntel der DisplayWidth und können gedrückt gehalten werden, um den Datensatz zu sichten.
• Position: Hier wird die Position angezeigt. Sie kann im Format "hh:mm:ss,fff" editiert werden. Die
Doppelpunkte dienen als Trennzeichen. Wenn nicht alle Einheiten editiert werden, wird das Format, bei
Sekunden beginnend, aufsteigend sortiert.
• Panning Free: Im freien Pannning-Mode kann durch Klicken und Ziehen mit der Maus die aktuelle
Anzeige auf der X- und Y- Achse verschoben werden.
• Zoom Free: Durch Aufspannen eines Rechtecks auf der Zeichenfläche kann in die aktuelle Anzeige
hineingezoomt werden.
• Rescale All: Führt ein Autoscale auf allen Achsen aus. Die X-Achse(n) werden auf die DefaultDisplaytime gesetzt.
• Zoom Out Max: Skaliert die X- und Y-Achse so, dass alle aktuellen Werte in der Aufnahme in der
Anzeige erscheinen. Bis zur maximalen Anzahl von darstellbaren Datenpunkten. Die maximale Anzahl
beträgt 60.000 Datenpunkte.
Durch Drehen am Mausrad kann ebenfalls ein Zoom auf die aktuelle Anzeige durchgeführt werden. Die
Cursorpositon gibt dabei das Zentrum vor.
Die aktuellen Aufnahmezeiten werden in der Chart Toolbar angezeigt:
• Start-Time: Der gemeinsame Anfangspunkt der Aufnahmen aller angeschlossenen Kanäle. Die StartTime gibt somit den Nullpunkt der Aufnahme an.
40
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
• End-Time: Die größte gemeinsame Zeit aller angeschlossenen Kanäle. Die End-Time markiert den
Endwert der Aufnahme. Die Differenz aus End-Time und Start-Time wird maximal so groß wie die
eingestellte Record-Time (siehe Scope Eigenschaften [} 27]).
• Position: Die Position-Time stellt den Nullpunkt des aktuellen Charts dar, also die Zeit von Start-Time
bis zum Beginn der Anzeige.
• Time: Die absolute Zeit im Ursprung des Charts.
• Date: Das absolute Datum im Ursprung des Charts.
4.1.6.2
XY Achsen Eigenschaften
An dieser Stelle können Einstellungen für jede verfügbare XY Achse separat vorgenommen werden.
TwinCAT 3 Scope View
Version: 1.4
41
Konfiguration
Common
• Comment: Hier kann ein freier Kommentar hinterlegt werden.
• Enabled: Hier kann die Achse vollständig ein- oder ausgeschaltet werden. Diese Funktionalität steht
auch über das Kontextmenu zur Verfügung.
• Show X Caption: Legt fest, ob der Name der X-Achse in der Grafik angezeigt wird.
• Show Y Caption: Legt fest, ob der Name der Y-Achse in der Grafik angezeigt wird.
• X Caption: Hier kann die Beschriftung der X-Achse eingetragen werden.
• Y Caption: Hier kann die Beschriftung der Y-Achse eingetragen werden.
42
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
X Grid
• Use X Grid: Die X-Unterteilungen der Achse können hier ein- oder ausgeblendet werden.
• Use X SubGrid: Hilfslinien zur feineren X-Unterteilung des Hauptnetzes können hier ein- oder
ausgeblendet werden. Hilfslinien besitzen keine Achsenbeschriftung.
• X Grid Color: Die Farbe des Grids.
• X Grid Line Width: Linienstärke des Grid in Pixel.
• X SubGrid Divisions: Anzahl der Bereiche, in die das Hauptnetz durch Hilfslinien unterteilt wird.
Bei logarithmischer Skalierung werden die Hilfslinien zur Bereichsunterteilung nur in der eingestellten
Anzahl angezeigt, wenn der Wertebereich pro Tick genau eine Dekade beträgt. Andernfalls zeigt die
dargestellte Hilfslinie die im Hauptnetz nicht dargestellten Dekaden an.
X Scale
• X Auto Scale: Ist Auto Scale aktiv, skaliert sich jede Achse so, dass das letzte bekannte Minimum und
Maximum aller angeschlossenen Kanäle innerhalb des Anzeigebereiches liegen.
• X Axis Max: Ist Auto Scale inaktiv, kann der Maximalwert direkt editiert werden.
• X Axis Min: Ist Auto Scale inaktiv, kann der Minimalwert direkt editiert werden.
• X Logarithmic: Schaltet zwischen logarithmischer und linearer Skalierung der Achse um.
• X Precision: Hier gibt man die Anzahl signifikanter Stellen für die Achsbeschriftung an. Dies entspricht
der sichtbaren Anzahl an Ziffern an der Achse.
• X Scale Mode: Man kann zwischen zwei Auto Scale Modes wählen. Der Default-Mode ist
AutoGrowOnly. Das bedeutet, die X-Achse skaliert immer auf das historische Maximum bis ein
Rescale für die aktuelle Ansicht durchgeführt wurde. Alternativ ist AutoGrowNShrink auszuwählen.
Dieser Modus passt das Maximum der X-Achse immer automatisch auf das Maximum in der aktuellen
Ansicht (Displayweite) an.
X Style
• X Color: Die Farbe der Achse.
• X Line Width: Die Linienstärke in Pixel.
• X Ticks: Maximale Anzahl der Unterteilungen. Wenn nicht genug Platz für die gewählte Anzahl an
Ticks ist, werden diese im Chart automatisch reduziert.
Bei logarithmischer Skalierung ist die Anzahl der Ticks abhängig vom dargestellten Wertebereich und
kann dadurch gegebenenfalls von den Einstellungen abweichen.
• X Visible: Gibt an ob die Achse im Chart ein- oder ausgeblendet wird.
Y Grid
• Use Y Grid: Die Y-Unterteilungen der Achse können hier ein- oder ausgeblendet werden.
• Use Y SubGrid: Hilfslinien zur feineren Y-Unterteilung des Hauptnetzes können hier ein- oder
ausgeblendet werden. Hilfslinien besitzen keine Achsenbeschriftung.
• Y Grid Color: Die Farbe des Grids.
• Y Grid Line Width: Linienstärke des Grid in Pixel.
• Y SubGrid Divisions: Anzahl der Bereiche, in die das Hauptnetz durch Hilfslinien unterteilt wird.
Bei logarithmischer Skalierung werden die Hilfslinien zur Bereichsunterteilung nur in der eingestellten
Anzahl angezeigt, wenn der Wertebereich pro Tick genau eine Dekade beträgt. Andernfalls zeigt die
dargestellte Hilfslinie die im Hauptnetz nicht dargestellten Dekaden an.
Y Scale
• Y Auto Scale: Ist Auto Scale aktiv, skaliert sich jede Achse so, dass das letzte bekannte Minimum und
Maximum aller angeschlossenen Kanäle innerhalb des Anzeigebereiches liegen.
• Y Axis Max: Ist Auto Scale inaktiv, kann der Maximalwert direkt editiert werden.
• Y Axis Min: Ist Auto Scale inaktiv, kann der Minimalwert direkt editiert werden.
• Y Logarithmic: Schaltet zwischen logarithmischer und linearer Skalierung der Achse um.
• Y Precision: Hier gibt man die Anzahl signifikanter Stellen für die Achsbeschriftung an. Dies entspricht
der sichtbaren Anzahl an Ziffern an der Achse.
TwinCAT 3 Scope View
Version: 1.4
43
Konfiguration
• Y Scale Mode: Man kann zwischen zwei Auto Scale Modes wählen. Der Default-Mode ist
AutoGrowOnly. Das bedeutet, die Y-Achse skaliert immer auf das historische Maximum bis ein
Rescale für die aktuelle Ansicht durchgeführt wurde. Alternativ ist AutoGrowNShrink auszuwählen.
Dieser Modus passt das Maximum der Y-Achse immer automatisch auf das Maximum in der aktuellen
Ansicht (Displayweite) an.
Y Style
• Y Color: Die Farbe der Achse.
• Y Line Width: Die Linienstärke in Pixel.
• Y Ticks: Maximale Anzahl der Unterteilungen. Wenn nicht genug Platz für die gewählte Anzahl an
Ticks ist, werden diese im Chart automatisch reduziert.
Bei logarithmischer Skalierung ist die Anzahl der Ticks abhängig vom dargestellten Wertebereich und
kann dadurch gegebenenfalls von den Einstellungen abweichen.
• Y Visible: Gibt an ob die Achse im Chart ein- oder ausgeblendet wird.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Achsen gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
4.1.6.3
XY Kanal Style
Hier können alle einem XY Kanal zugehörigen Style- Einstellungen vorgenommen werden.
44
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Cap
• Cap Color: Legt die Farbe der eingeschalteten Caps fest.
• Cap Size: Legt die Größe der Caps fest.
• End Cap: Schaltet das End Cap des Kanals ein.
• Start Cap: Schaltet das Start Cap des Kanals ein.
Common
• Comment: Hier kann ein freier Kommentar hinterlegt werden. Ggf. wird der Kommentar des
verbundenen ADS-Symbols übernommen.
• Visible: Hier kann eingestellt werden ob der Kanal im Chart angezeigt werden soll.
TwinCAT 3 Scope View
Version: 1.4
45
Konfiguration
Line
• Antialias: Diese Option entscheidet wie die Linien gezeichnet werden. Antialias ist "schöner" aber
deutlich rechenaufwendiger. Besonders bei vielen Kanälen mit großen Bewegungen hat dies
Auswirkungen.
• Fill Color: Mit einem Fill Mode kann ein Bereich, wie zum Beispiel die Fläche über oder unter einer
Kurve, eingefärbt werden. Hier ist die entsprechende Farbe auszuwählen.
• Fill Mode: Mit einem Fill Mode kann ein Bereich, wie zum Beispiel die Fläche über oder unter einer
Kurve, eingefärbt werden. Default- Einstellung ist “None“. Alternativen sind: Horizontal Zero, Bottom,
Top, Center und Source.
• Fill Transparency: Der Transparent-Wert der Fill Color kann hier eingestellt werden. Der Default-Wert
ist 50.
• Line Color: Die Farbe des Graphen.
• Line Width: Die Linienstärke des Graphen. Die Linienstärke 1 ist am wenigsten rechenaufwendig.
Marks
• Mark Color: Die Farbe der Stützpunkt-Markierungen.
• Marks: Auswahl der Sichtbarkeit von Markierungen -> On (Dauerhaft sichtbar) | Auto (Abhängig von
der Zoomstufe) | Off (Markierungen ausgeschaltet).
• Mark Size: Die Größe der Stützpunkt-Markierungen.
Modify
• X Bit Mask: Im Feld Bit Mask kann ein Wert eingegeben werden, mit dem der Anzeigewert maskiert
wird, sofern es sich nicht um einen Floatingpoint-Typ handelt. Das heißt, der Wert des Kanals wird mit
dem Binärwert der Maske UND-verknüpft. Dies hilft um beispielsweise einzelne Bits eines Statusbytes
zu beobachten.
• X Offset: Im Offsetfeld kann ein freier Offset zum Funktionswert des Kanals addiert werden.
• X Scale Factor: Mit dem Scale-Faktor kann der Anzeigewert eines Kanals verändert werden.
• Y Bit Mask: Im Feld Bit Mask kann ein Wert eingegeben werden, mit dem der Anzeigewert maskiert
wird, sofern es sich nicht um einen Floatingpoint-Typ handelt. Das heißt, der Wert des Kanals wird mit
dem Binärwert der Maske UND-verknüpft. Dies hilft um beispielsweise einzelne Bits eines Statusbytes
zu beobachten.
• Y Offset: Im Offsetfeld kann ein freies Offset zum Funktionswert des Kanals addiert werden.
• Y Scale Factor: Mit dem Scale-Faktor kann der Anzeigewert eines Kanals verändert werden.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Kanäle gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
4.1.6.4
XY Kanal Acquisition
Hier können alle einem XY Kanal zugehörigen Acquisitions- Einstellungen vorgenommen werden.
46
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Eigenschaften können unterschiedlich sein
Die Eigenschaften der Kanäle können von der hier gezeigten Darstellung abweichen.
Manche Einstellungsmöglichkeiten sind nur bei speziellen Kanälen sichtbar / editierbar.
Hinweis
Bsp.: Die Einstellung Array Length ist nur sichtbar bei Array-Symbolen.
Acquisition
• Data-Type: Gibt den Datentyp der ausgewählten Variablen an.
• Disabled: Hier wird entschieden, ob der konfigurierte Kanal wirklich aufgezeichnet werden soll oder
nicht.
• Force Oversampling: Diese Option wird nur bei Arrays eingeblendet. Wird die Option gesetzt, wird
das Array als eine Variable interpretiert und zeigt die Werte der einzelnen Array-Elemente
zusammenhängend an. Das entspricht dem Verhalten bei EtherCAT Oversampling-Klemmen.
Vergleiche: Oversampling-Aufnahmen [} 109].
• Sample State: Hier kann eingetragen werden, ob man die Daten der gewählten Variablen mit der
TaskSampleTime oder mit einer FreeSampleTime abtasten möchte.
• Sample Time: Wenn der Sample State „FreeSampleTime“ gewählt wurde, kann hier die Abtastrate
eingestellt werden. Diese ist immer größer als die TaskSampleTime.
• Symbol based: Wenn diese Option gesetzt ist, werden die Variablen per Symbolname kommuniziert.
Ist diese Option nicht gesetzt, werden die Variablen per Index Group und Offset kommuniziert und
folglich die Eingabefelder für Group und Offset freigeschaltet.
• Symbol Comment: Hier wird der tatsächliche Symbolkommentar angezeigt, sobald einer vorhanden
ist.
• Symbol Index Group: Index Group der Variablen.
• Symbol Index Offset: Index Offset der Variablen.
• Symbol Name: Symbolname der ausgewählten Variablen.
• Symbol Size: Zeigt die Größe der Variablen in Bytes.
TwinCAT 3 Scope View
Version: 1.4
47
Konfiguration
• Target Port: Zeigt den Port der Variablen auf dem entsprechenden TwinCAT- System an. Per DropDown- Box kann eine Auswahl der verfügbaren Ports des ausgewählten Zielsystems vorgenommen
werden.
• Target System: Gibt das Zielsystem an, von dem eine Aufnahme gemacht werden soll. Dies ist
automatisch das Zielsystem der gewählten Variablen.
• Time Offset [s]: Dient zur einmaligen Manipulation des Original Zeitstempels bei der Aufnahme des
Datenpunktes. So können Gangunterschiede von verschiedenen Zielsystemen ausgeglichen werden.
Die Gangunterschiede müssen dabei manuell vom Nutzer ermittelt werden.
• Use Local Server: Wenn diese Option gesetzt ist, wird der auf dem System des Scope Views
installierte Scope Server für die Aufnahme verwendet. Ist die Option nicht gesetzt, wird eine
Verbindung mit dem Remote Server des Zielsystems aufgebaut.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Kanäle gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
4.1.7
Scope View Bar Graph
Nachfolgend sind alle Eigenschaften der einzelnen Hierarchiestufen von Array Bar Charts erklärt. Mit dem
ViewDetailLevel, welches in den Scope- Eigenschaften eingestellt werden kann, können auf Kanal-Ebene
durch eine zusätzliche Hierarchiestufe Kanal Style und Kanal Acquisition voneinander getrennt werden.
Kanal Style und Kanal Acquisition werden im Folgenden getrennt betrachtet.
4.1.7.1
Bar Chart Eigenschaften
Hier können alle dem Array Bar Chart zugeordneten Einstellungen vorgenommen werden.
48
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Behavior
• Auto Start: Ist diese Option aktiviert, startet das Chart die Live-Darstellung, wenn eine neue Aufnahme
begonnen wird.
• Data Tool Tip: Ist diese Option aktiviert, wird bei einem Klick auf einen Datenpunkt ein Tool-Tipp mit
den exakten Werten des Datenpunktes auf X- und Y-Achse angezeigt sowie der Zeitstempel und der
Name des entsprechenden Kanals.
• Default Display Time: Diese Zeit bezieht sich auf die Anzeigedauer der Min- und Max-Werte im Array
Bar Chart. Die Werte werden grundsätzlich erfasst und man kann mit einer längeren Display Time in
die vergangen Entwicklung der Extremwerte schauen.
• Time Bar: Legt fest, ob die Time Bar im Chart angezeigt wird.
• Tool Bar: Legt fest, ob die Tool Bar im Chart angezeigt wird.
Color
• Die Hintergrund- und Rahmenfarbe können mittels Farb-Dialogen eingestellt werden.
Common
• Comment: Hier kann ein freier Kommentar hinterlegt werden.
• CPU Core: Hier kann für jedes Chart individuell eingestellt werden, welcher Kern der CPU für die
aktuelle Chart-Darstellung genutzt werden soll. Es können bei Bedarf auch mehrere Kerne der CPU für
ein Chart angegeben werden. Die Zeichen-Performance kann sich dadurch verbessern.
• Show Name: Legt fest, ob der Name des Charts in der Grafik angezeigt wird.
Settings
TwinCAT 3 Scope View
Version: 1.4
49
Konfiguration
• Stacked Axes: Mit dieser Einstellung kann gewählt werden, ob die Achsen eines Charts
nebeneinander oder übereinander liegen sollen. Liegen sie nebeneinander, werden die Werte der
angefügten Kanäle innerhalb der gleichen Fläche dargestellt. Liegen sie übereinander, werden die
Kanäle in jeweils eigenen Darstellungsbereich gezeichnet.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Charts gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
Mit der Toolbar wird die Anzeige des Charts bedient. Die Übersicht zeigt alle Buttons und deren Erklärung
(von links):
• Play: Startet den Live-Darstellungsmodus. Die aktuell auflaufenden Daten werden angezeigt.
• Pause: Die Darstellung wechselt in den Pause-Modus. In den bereits aufgenommenen Daten kann
nun navigiert werden, ohne die Aufnahme zu stoppen.
• Display-Width: Diese Zeit bezieht sich auf die Anzeigedauer der Min- und Max-Werte im Array Bar
Chart. Die Werte werden grundsätzlich erfasst und man kann mit einer längeren Display Time in die
vergangen Entwicklung der Extremwerte schauen.
• Scroll Tasten: Die äußeren Scroll-Tasten bewegen die aktuelle Anzeige in Schritten, die der DisplayWidth entsprechen. Die inneren Scroll- Tasten bewegen die Anzeige nur um ein Zehntel der DisplayWidth und können gedrückt gehalten werden, um den Datensatz zu sichten.
• Position: Die angezeigte Position kann im Position-Feld im Format "hh:mm:ss,fff" editiert werden. Die
Doppelpunkte dienen hierbei als Trennzeichen. Wenn nicht alle Einheiten editiert werden, wird das
Format, bei Sekunden beginnend, aufsteigend sortiert.
• Undo/Redo Time/Position: Sprünge der Displayweite oder der aktuellen Position können hier,
unhabhängig von ihrer Entstehung (z.B.: Zoom, Scroll, etc.) rückgängig gemacht werden. Die rechte
Maustaste ist ebenfalls mit dieser Funktion belegt. Einmal rückgängig gemachte Werte können mit
Redo wiederholt werden.
• Panning Horizontal: Im horizontalen Panning-Mode kann durch Klicken und Ziehen mit der Maus die
aktuelle Anzeige auf der X-Achse verschoben werden.
• Panning Free: Im freien Panning-Mode kann durch Klicken und Ziehen mit der Maus die aktuelle
Anzeige auf der X- und Y- Achse verschoben werden.
• Zoom Horizontal: Durch Aufspannen eines Rechtecks über der X-Achse kann ein neuer Zeitbereich
für die Anzeige gewählt werden.
• Zoom Free: Durch Aufspannen eines Rechtecks auf der Zeichenfläche kann in die aktuelle Anzeige
hineingezoomt werden.
• Rescale All: Führt bei eingestelltem Autoscale ein Zoom auf die maximale Anzahl an Array-Elementen
aus. Bei deaktiviertem Autoscale wird automatisch auf die definierten Grenzwerte gezoomt.
• Zoom Out Max: Skaliert die x-Achse so, dass immer alle Array-Elemente angezeigt werden.
4.1.7.2
Bar Achsen Eigenschaften
Hier werden alle Einstellungen für die Achsen von Array Bar Charts beschrieben.
50
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Common
• Comment: Hier kann ein freier Kommentar hinterlegt werden.
• Enabled: Hier kann die Achse vollständig ein- oder ausgeschaltet werden. Diese Funktionalität steht
auch über das Kontextmenu zur Verfügung.
• Show X Caption: Legt fest, ob der Name der X-Achse in der Grafik angezeigt wird.
• Show Y Caption: Legt fest, ob der Name der Y-Achse in der Grafik angezeigt wird.
• X Caption: Hier kann die Beschriftung der X-Achse eingetragen werden.
• Y Caption: Hier kann die Beschriftung der Y-Achse eingetragen werden.
TwinCAT 3 Scope View
Version: 1.4
51
Konfiguration
X Grid
• Use X Grid: Die X-Unterteilungen der Achse können hier ein- oder ausgeblendet werden.
• Use X SubGrid: Hilfslinien zur feineren X-Unterteilung des Hauptnetzes können hier ein- oder
ausgeblendet werden. Hilfslinien besitzen keine Achsenbeschriftung.
• X Grid Color: Die Farbe des Grids.
• X Grid Line Width: Linienstärke des Grid in Pixel.
• X SubGrid Divisions: Anzahl der Bereiche, in die das Hauptnetz durch Hilfslinien unterteilt wird.
Bei logarithmischer Skalierung werden die Hilfslinien zur Bereichsunterteilung nur in der eingestellten
Anzahl angezeigt, wenn der Wertebereich pro Tick genau eine Dekade beträgt. Andernfalls zeigt die
dargestellte Hilfslinie die im Hauptnetz nicht dargestellten Dekaden an.
X Scale
• X Auto Scale: Ist Auto Scale aktiv, skaliert sich jede Achse so, dass das letzte bekannte Minimum und
Maximum aller angeschlossenen Kanäle innerhalb des Anzeigebereiches liegen.
• X Axis Max: Ist Auto Scale inaktiv, kann der Maximalwert direkt editiert werden.
• X Axis Min: Ist Auto Scale inaktiv, kann der Minimalwert direkt editiert werden.
• X Logarithmic: Schaltet zwischen logarithmischer und linearer Skalierung der Achse um.
• X Precision: Hier gibt man die Anzahl signifikanter Stellen für die Achsbeschriftung an. Dies entspricht
der sichtbaren Anzahl an Ziffern an der Achse.
X Style
• X Color: Die Farbe der Achse.
• X Line Width: Die Linienstärke in Pixel.
• X Ticks: Maximale Anzahl der Unterteilungen. Wenn nicht genug Platz für die gewählte Anzahl an
Ticks ist, werden diese im Chart automatisch reduziert.
Bei logarithmischer Skalierung ist die Anzahl der Ticks abhängig vom dargestellten Wertebereich und
kann dadurch gegebenenfalls von den Einstellungen abweichen.
• X Visible: Gibt an, ob die Achse im Chart ein- oder ausgeblendet wird.
Y Grid
• Use Y Grid: Die Y-Unterteilungen der Achse können hier ein- oder ausgeblendet werden.
• Use Y SubGrid: Hilfslinien zur feineren Y-Unterteilung des Hauptnetzes können hier ein- oder
ausgeblendet werden. Hilfslinien besitzen keine Achsenbeschriftung.
• Y Grid Color: Die Farbe des Grids.
• Y Grid Line Width: Linienstärke des Grid in Pixel.
• Y SubGrid Divisions: Anzahl der Bereiche, in die das Hauptnetz durch Hilfslinien unterteilt wird.
Bei logarithmischer Skalierung werden die Hilfslinien zur Bereichsunterteilung nur in der eingestellten
Anzahl angezeigt, wenn der Wertebereich pro Tick genau eine Dekade beträgt. Andernfalls zeigt die
dargestellte Hilfslinie die im Hauptnetz nicht dargestellten Dekaden an.
Y Scale
• Y Auto Scale: Ist Auto Scale aktiv, skaliert sich jede Achse so, dass das letzte bekannte Minimum und
Maximum aller angeschlossenen Kanäle innerhalb des Anzeigebereiches liegen.
• Y Axis Max: Ist Auto Scale inaktiv, kann der Maximalwert direkt editiert werden.
• Y Axis Min: Ist Auto Scale inaktiv, kann der Minimalwert direkt editiert werden.
• Y Logarithmic: Schaltet zwischen logarithmischer und linearer Skalierung der Achse um.
• Y Precision: Hier gibt man die Anzahl signifikanter Stellen für die Achsbeschriftung an. Dies entspricht
der sichtbaren Anzahl an Ziffern an der Achse.
Y Style
• Y Color: Die Farbe der Achse.
• Y Line Width: Die Linienstärke in Pixel.
52
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
• Y Ticks: Maximale Anzahl der Unterteilungen. Wenn nicht genug Platz für die gewählte Anzahl an
Ticks ist, werden diese im Chart automatisch reduziert.
Bei logarithmischer Skalierung ist die Anzahl der Ticks abhängig vom dargestellten Wertebereich und
kann dadurch gegebenenfalls von den Einstellungen abweichen.
• Y Visible: Gibt an ob die Achse im Chart ein- oder ausgeblendet wird.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Achsen gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
4.1.7.3
Bar Kanal Style
Hier werden alle Style Properties von Array Bar Chart Kanälen erläutert.
Common
• Comment: Hier kann ein freier Kommentar hinterlegt werden. Ggf. wird der Kommentar des
verbundenen ADS-Symbols übernommen.
• Visible: Hier kann eingestellt werden, ob der Kanal im Chart angezeigt werden soll.
Line
• Antialias: Diese Option entscheidet wie die Linien gezeichnet werden. Antialias ist "schöner" aber
deutlich rechenaufwendiger. Besonders bei vielen Kanälen mit großen Bewegungen hat dies
Auswirkungen.
TwinCAT 3 Scope View
Version: 1.4
53
Konfiguration
• Line Color: Die Farbe des Graphen.
• Line Width: Die Linienstärke des Graphen. Die Linienstärke 1 ist am wenigsten rechenaufwendig.
• Show Max: Wenn die Option auf TRUE steht, dann werden die Maximalwerte im Bezug auf die
eingestellte Display-Weite dargestellt.
• Show Min: Wenn die Option auf TRUE steht, dann werden die Minimalwerte im Bezug auf die
eingestellte Display-Weite dargestellt.
• Type: Hier kann zwischen verschiedenen Darstellungen umgeschaltet werden. Der Default-Wert bei
einem Array Bar Chart ist: Bar. Andere Möglichkeiten sind: Line und Stair.
Marks
• Mark Color: Die Farbe der Stützpunkt-Markierungen.
• Marks: Auswahl der Sichtbarkeit von Markierungen -> On (Dauerhaft sichtbar | Off (Markierungen
ausgeschaltet).
• Mark Size: Die Größe der Stützpunkt-Markierungen.
Modify
• X Offset: Im Offsetfeld kann ein freier Offset zum Funktionswert des Kanals addiert werden.
• X Scale Factor: Mit dem Scale-Faktor kann der Anzeigewert eines Kanals verändert werden.
• Y Offset: Im Offsetfeld kann ein freies Offset zum Funktionswert des Kanals addiert werden.
• Y Scale Factor: Mit dem Scale-Faktor kann der Anzeigewert eines Kanals verändert werden.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Kanäle gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
4.1.7.4
Bar Kanal Acquisition
Hier werden alle Einstellungen für die Kanal Acquisition von Array Bar Chart Kanälen erläutert.
54
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Acquisition
• Array Length: Gibt die Länge des ausgewählten Arrays an, welche auch maximal auf der X-Achse
dargestellt wird.
• Data-Type: Gibt den Datentyp der ausgewählten Variablen an.
• Disabled: Hier wird entschieden, ob der konfigurierte Kanal aufgezeichnet werden soll oder nicht.
• Sample State: Hier kann eingetragen werden, ob man die Daten der gewählten Variablen mit der
TaskSampleTime oder mit einer FreeSampleTime abtasten möchte. Bei Array Bar Charts ist der
Default-Wert „FreeSample“, da es keinen Sinn macht eine Balkenanzeige so schnell abzutasten, dass
es das menschliche Auge nicht mehr wahrnehmen kann.
• Sample Time: Wenn der Sample State „FreeSampleTime“ gewählt wurde, kann hier die Abtastrate
eingestellt werden. Diese ist immer größer als die „TaskSampleTime“ und bei Array Bar Charts per
Default auf 100ms eingestellt. Das ist eine für das menschliche Auge angenehme Abtastrate für
Balkendiagramme.
• Symbol based: Wenn diese Option gesetzt ist, werden die Variablen per Symbolname kommuniziert.
Ist diese Option nicht gesetzt, werden die Variablen per Index Group und Offset kommuniziert und
folglich die Eingabefelder für Group und Offset freigeschaltet.
• Symbol Comment: Hier wird der tatsächliche Symbolkommentar angezeigt, sobald einer vorhanden
ist.
• Symbol Index Group: Index Group der Variablen.
• Symbol Index Offset: Index Offset der Variablen.
• Symbol Name: Symbolname der ausgewählten Variablen.
• Symbol Size: Zeigt die Größe der Variablen in Bytes.
• Target Port: Zeigt den Port der Variablen auf dem entsprechenden TwinCAT System an. Per Drop
Down Box kann eine Auswahl der verfügbaren Ports des ausgewählten Zielsystems vorgenommen
werden.
TwinCAT 3 Scope View
Version: 1.4
55
Konfiguration
• Target System: Gibt das Zielsystem an, von dem eine Aufnahme gemacht werden soll. Dies ist
automatisch das Zielsystem der gewählten Variablen.
• Time Offset [s]: Dient zur einmaligen Manipulation des Original- Zeitstempels bei der Aufnahme des
Datenpunktes. So können Gangunterschiede von verschiedenen Zielsystemen ausgeglichen werden.
Die Gangunterschiede müssen dabei manuell vom Nutzer ermittelt werden.
• Use Local Server: Wenn diese Option gesetzt ist, wird der auf dem System des Scope Views
installierte Scope Server für die Aufnahme verwendet. Ist die Option nicht gesetzt wird versucht sich
auf den Remote Server des Zielsystems zu verbinden.
Gruppenweise Änderung
Zum Ändern von Einstellungen mehrerer Kanäle gleichzeitig beachten Sie bitte das Kapitel
Mehrfachselektierung [} 75].
4.1.8
Recording
4.1.8.1
TwinCAT Scope View - Target Browser
Mit dem Target Browser können einer Scope-Konfiguration Kanäle über ihren Symbol-Namen hinzugefügt
werden. Der Target Browser ist in zwei Hälften unterteilt. Die eine zeigt einen Baum mit dem ersten Eintrag:
ROUTES. Darunter werden alle im System-Manager angemeldeten Geräte angezeigt. Die Farbe des
Targets gibt Aufschluss über den System-Zustand: Rot = nicht erreichbar (Stop-Modus), Blau = KonfigModus, Grün = System in Run-Modus.
Die zweite Hälfte zeigt eine detaillierte Liste der Unterpunkte des gewählten Elementes der Baum-Struktur.
Zudem hat man mit einem „Upper Folder“ Button die Möglichkeit einfach innnerhalb der Baumstruktur eine
Ebene nach oben zu springen.
56
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Kanal anfügen
In der Listen-Struktur kann jetzt ein oder mehrere Kanäle selektiert werden und mit Doppelklick oder Rechte
Maus → "Add Symbol" ("Add Subsymbols") oder durch einen der Button in der Toolbar der Konfiguration
hinzugefügt werden.
Ausgewählte Elemente können ausserdem per Drag&Drop an eine beliebige Stelle innerhalb der
Konfiguration eingefügt werden.
Wird ein Ordner, ein Ads-Bigtype oder ein Array selektiert, der Sub-Symbole enthält, fügt die Option "Add
Subsymbols" für jedes Subsymbol einen Kanal an. Die Option "Add Symbol" fügt nur einen Kanal mit den
Informationen des selektierten Symbols ein.
Task wählen
Wählt man in der Baum- oder Listen-Struktur einen Zielrechner, werden die angeschlossenen Tasks
sichtbar. Diese sind farbig markiert: Grün = PLC-Task, Blau = NC-Task, Rot = Andere.
Wird eine Task nicht angezeigt, so kann durch die Enable - Servertypes Option ein Auswahlmenü
aufgerufen werden, welches die Einschränkung auf bestimmte Tasks anzeigt.
TwinCAT 3 Scope View
Version: 1.4
57
Konfiguration
Hier werden alle gängigen Ads-Ports, unabhängig davon ob es sich um einen Server-Tasks handelt,
angezeigt. Ist ein Port hier nicht aufgeführt, kann er im Textfeld unten links eingegeben werden. Alle
selektierten Ports, bei denen es sich um Server handelt, werden nach dem Bestätigen mit OK übernommen.
Anschließend wird geprüft, welche der Ports existieren, um die Anzeige zu aktualisieren.
Symbol Liste einsehen
Ist für die gewählte Task eine Symbol-Liste verfügbar, kann diese durch Selektieren aufgerufen werden. Alle
Symbole einer Task, werden nach Trennzeichen (z.B: '.') in eine hierarchische Ansicht überführt, die ein
einfaches Browsen ermöglicht.
Settings
Mit der Option 'Name Detail Level' in den Settings kann die Detailstufe des aus dem Symbolnamem
gebildeten Kanalnamen eingestellt werden. Ist die Detailstufe null, so wird nur der Teil des Symbolnamen
nach dem letzten Punkt übergeben. Jedes weitere Level fügt dann den Term vor dem jeweils nächsten
Punkt hinzu. Z.B. wird das Symbol: "Main.Signals.Sinus" mit einer Detailstufe 0 zu: "Sinus", mit Detailstufe 1
zu "Signals.Sinus" und mit 2 oder höher zu "Main.Signals.Sinus".
Record
Nach dem alle Kanäle für die Aufnahme ausgewählt wurden, kann die Aufnahme mit Start Record aus der
Scope Toolbar gestartet werden.
4.1.9
Cursor
4.1.9.1
TwinCAT Scope View - Cursor
Über das Cursor Modul können einem Chart Cursor hinzugefügt und verändert werden.
58
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Cursor Modul
Das Cursor Modul (In jedem Chart-Element als "Cursor" aufgeführt) bietet folgende
Einstellungsmöglichkeiten:
TwinCAT 3 Scope View
Version: 1.4
59
Konfiguration
• Delta Values: Werden mehrere Cursor in einer Richtung verwendet können die Differenzen angezeigt
werden, wenn Delta Types aktiviert ist.
• Hex Valies: Hexadezimale Schreibweise der Schnittwerte der einzelnen Kanäle.
Cursor Settings
Jeder X-/Y-Cursor innerhalb des Cursor Modul bietet eigene Einstellungsmöglichkeiten
• Color: Farbe des Cursors.
• Comment: Hier kann ein Kommentar hinterlegt werden.
• Line Width: Linienstärke des Cursors in Pixel.
Cursor Window
Die Wertedarstellung erfolgt im Cursor Window (Scope Kontextmenü -> Cursor Window)
60
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Status Times
Die zu einem angefügten X-Cursor gehörenden Zeiten werden hier in drei Formaten angezeigt.
• Absolute Position: Entspricht der tatsächlich registrierten Uhrzeit.
• Record Position: Zeitwert des Cursors seit Beginn der Aufnahme.
• Chart Position: Zeitwert des Cursors innerhalb der Aufnahme.
Channel
Im Channel-Feld werden die Schnittwerte der einzelnen Kanäle mit dem jeweiligen X-Cursor angezeigt. Die
angezeigten Schnittwerte sind, wie die Anzeige, auf Pixelbreite komprimiert. Um die Zwischenwerte
anzuzeigen, kann in die Aufnahme hineingezoomt werden.
Axis
Die Werte der Y-Cursor auf den jeweiligen Achsen werden im untersten Feld angezeigt.
TwinCAT 3 Scope View
Version: 1.4
61
Konfiguration
4.1.10
Trigger
4.1.10.1
TwinCAT Scope View - Trigger
Der Scope-Konfiguration können verschiedene Triggerfunktionen hinzugefügt werden.
Um eine möglichst einfache und freie Kombination von einzelnen Triggerbedingungen und -aktionen zu
ermöglichen, werden diese in Trigger-Gruppen zusammengefasst.
62
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Eigenschaften der Trigger Group können abweichen
Hinweis
Die Eigenschaften der Trigger Group können von der hier gezeigten Darstellung abweichen.
Manche Einstellungsmöglichkeiten sind nur bei speziellen Trigger Actions sichtbar / editierbar.
Bsp. Die Einstellung Trigger Position ist nur sichtbar bei der Trigger Action "Stop Display".
Trigger-Groups und Trigger-Sets können über das Trigger-Kontextmenü hinzugefügt werden.
Trigger-Gruppe
Die Trigger Group bietet folgende Einstellungsmöglichkeiten:
TwinCAT 3 Scope View
Version: 1.4
63
Konfiguration
• StartRecord: Wird diese Option gewählt, sollte die Start-Record-Bedingung in den Scopesettings auf
Trigger-Start stehen. Andernfalls würde das Scope die Aufnahme wie gewohnt beginnen. Beim
Einstellen dieser Aktion erscheint daher ein Fragefeld, welches die Einstellung ggf. vornimmt. Betätigt
man den Record-Knopf in der Menüleiste, verbindet sich das Scope wie gewohnt mit den beteiligten
Servern und beginnt die angeschlossenen Kanäle zu sichten, ohne jedoch die eigentliche Aufnahme
zu starten. Die Aufnahme beginnt mit dem Auslösezeitpunkt der letzten Trigger-Set-Bedingung.
• StopRecord: Wird die Stop-Aktion gewählt, sollte das Scope im Ringbuffermode betrieben werden.
Beim Einstellen dieser Aktion erscheint daher ein Fragefeld, welches die Einstellung ggf. vornimmt. Im
Feld darunter kann man angeben ob ein fester Zeitbereich vor und/oder nach dem Triggerevent in der
Aufnahme erscheinen soll. Ist der Pre-Trigger gewählt, werden Triggerevents vor dem Ablauf dieser
Zeit ignoriert. Ist der Post-Trigger aktiv, läuft die Aufnahme nach Eintreffen des Triggerevents die
angegebene Zeit nach.
• StopDisplay: Die Stop-Display-Aktion hält alle Charts des Scope, die zum Auslösezeitpunkt im LiveModus sind, an. Dabei kann mit der Trigger-Position gewählt werden wieviel Prozent des angezeigten
Displays (Display-Breite) vor, bzw. hinter dem Triggerereignis liegen sollen (Im Beispiel: positiver 0Durchgang des grünen Signals bei 10% von 2.5s = 0,25s). Wird die Triggerbedingung wiederholt
erfüllt, springt die Anzeige zu diesem neuen Ereignis. Um dieses Nachtriggern zu unterbinden, kann im
Chart Pause betätigt werden.
• RestartDisplay: Alle duch einen StopDispay-Trigger pausierenden Charts werden beim Erfüllen der
Trigger-Bedingung wieder fortgeführt.
• StartSubsave: Beim Eintreten dieses Triggerereignisses wird eine Hintergrundaufnahme, mit der
aktuellen Konfiguration, gestartet. Dieser Subsave läuft immer im Ringbuffer-Mode (unabhängig von
den Einstellungen in den Scope-Settings). Es ist möglich, bis zu 5 Subsaves gleichzeitig zu starten
(über einen oder mehrere Triggerevents). Die maximale Speichergröße des Subsaves kann im
'Record-Time'-Feld angegeben werden. Diese Aufnahmedauer darf auch länger sein als die
Aufnahmedauer der Basiskonfiguration (hier sollte, dann jedoch ebenfalls der Ringbuffer-Betrieb
gewählt werden.
• StopSubsave: Nach dem StopSubsave-Triggerevent, wird das älteste Subsave gestoppt und im
Hintergrund an das View übertragen. Von hier aus wird es unter dem angegebenen Pfad in ein .svdFile gespeichert. Der erzeugte Dateiname besteht aus dem Namen des Scopes in der
Basiskonfiguration und einer Kennung aus Datum und Uhrzeit, in alphanumerischer Anordnung.
64
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Trigger-Set
Jedes Trigger Set kann als eigenständige Triggerbedingung angesehen werden.
Im Aktionsbericht der Trigger-Gruppe ist festgelegt was beim Auslösen einer Trigger-Gruppe geschieht
Das Trigger Set bietet folgende Einstellungsmöglichkeiten:
• Channel: Jedem Set ist ein Kanal zugeordnet, dessen Zustand auf die gewählte Auslösebedingung
geprüft werden soll
• Combine: Durch die Wahl einer Verknüpfung können diese einzelnen Bedingungen in Relation
gesetzt werden. Hierbei ist zu beachten, dass UND-Verknüpfungen vor ODER-Verküpfungen
behandelt werden.
• Hit: Zeigt an, ob das Trigger Set ausgelöst wurde (
) oder nicht (
).
• Release: Die Release-Bedingung kann entweder ein steigender (RisingEdge) oder fallender
(FallingEdge) Durchgang sein.
• Threshold: Der zugehörige Grenzwert.
Sobald ein Triggerset ausgelöst wird, verändert sich das Icon im Solution Explorer von
auf
.
Alle Triggersets bleiben solange gesetzt, bis die gesamte Trigger-Gruppe ausgelöst hat.
Manuelles Auslösen von Trigger-Set
Über den Trigger Set Kontextmenü-Eintrag "Manual Trigger Hit" können Trigger zu Testzwecken manuell
ausgelöst werden.
TwinCAT 3 Scope View
Version: 1.4
65
Konfiguration
4.1.11
Daten speichern und exportieren
4.1.11.1
Speichern
Daten die mit dem TwinCAT 3 Scope aufgenommen worden sind, können als .svd Datei abgespeichert
werden. Eine .svd Datei ist ein spezifisches, nicht offengelegtes Datenformat des Scope Views.
Speichern von Daten
• Im Scope Menu → Save Data
Die dann erzeugte Scope Daten Datei (svd) kann direkt dem Measurement Projekt hinzugefügt oder
per Verzeichnisauswahl-Dialog in ein gewünschtes Verzeichnis gespeichert werden.
• Fügt man mehrere svd Dateien zu einem Measurement Projekt hinzu, wird automatisch der Name der
svd Datei mit einer Ziffer inkrementiert.
Laden von Daten
• Doppelklick auf die gewünschte .svd Datei → Visual Studio öffnet sich und bietet einen „New Project“
Dialog an. Die gängigste Auswahl ist dann häufig ein Empty Measurement Project.
• Wenn ein Measurement Projekt bereits vorhanden ist, kann man die svd Datei über Add Existing Item
auswählen und öffnen.
• Man wählt direkt das Measurement Projekt aus, dem die erstellte svd Datei hinzugefügt worden ist
File → Open → Project/Solution.
Reload von svd Dateien
• Wenn bereits abgespeicherte Daten durch ein Disconnect in der Scope internen Kommunikation zum
Scope Server nicht mehr angezeigt werden, wird automatisch für das svd im Kontextmenu ein Eintrag
mit Reload angeboten. So können die Daten erneut geladen werden.
Extrahieren von Scope Konfigurationen aus einem svd
Eine svd Datei ist als solche visuell gekennzeichnet. Im Solution Explorer wird ein entsprechendes gelbes
Daten-Icon eingeblendet. So ist ausschließlich die Datenanalyse in der Datei möglich.
Möchte man die Konfiguration aber weiterverwenden, beispielsweise um eine neue Aufnahme mit gleicher
Konfiguration zu machen, so kann man über das Scope Menu die Option „Extract Scope Configuration“
auswählen.
66
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
4.1.11.2
Export CSV / Binary
Aufgenommene Scope- Daten können in einem Scope Daten File (.svd) gespeichert werden. Alternativ
können Daten auch nach einem Stopp der aktuellen Aufnahme in .csv, .txt oder in ein Binär-Format
exportiert werden, um sie auch in anderen Programmen nutzen zu können.
Kontextmenü des Scope → Export to CSV / Export to Binary
Export to CSV:
Die erzeugte Datei ist im Tabellenformat gehalten. Die Reihen sind hierbei durch Zeilen und die Spalten
durch Tabulatoren getrennt. Die ersten Reihen beinhalten Informationen über die Aufnahme, wie ScopeName und Start- und Endzeit der Aufnahme.
Danach folgt für jeden Kanal ein Definitionsbereich mit den Akquisitionsdaten.
TwinCAT 3 Scope View
Version: 1.4
67
Konfiguration
Zum Schluss folgt für jeden Kanal eine Liste mit den aufgenommenen Daten. Jedem Zeitwert als Offset von
der StartRecord- Zeit wird der entsprechende Datenwert zugeordnet.
Export to Binary:
Das binäre Datenformat ist an das Textformat angelehnt, enthält aber keinerlei Trennzeichen. Dafür ist in
den entsprechenden Headern die Byte-Länge aller variablen Datentypen (wie Zeichenketten) enthalten. Alle
Zeiten sind im File-Time-Format angegeben: 1Tick = 100ns; Ursprung ist der 1.1.1601 0h. Alle Zeichen sind
in UTF8 gespeichert.
68
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Variable
MAIN-HEADER
HeaderSize
NameSize
Name
StartTime
EndTime
ChannelCount
Size (Bytes) or Number of character DataType
8
4
NameSize
8
8
4
Int64
Int32
Array of Char
Int64
Int64
Int32
Variable
Size (Bytes)
Channel - Header #1
ChannelHeaderSize
8
NameSize
4
Name
NameSize
NetIdSize
4
NetId
NetIdSize
Port
4
Sample Time
8
SymbolBased
1
SymoblNameSize
4
Symbolname:
SymbolNameSize
CommentSize
4
Comment
CommentSize
IndexGroup
8
IndexOffset
8
DataTypeSize
4
DataType
DataTypeSize
DataTypeId
4
VariableSize
4
Samples in File
8
Data in File
8
File-StartPosition
8
Scalefactor
8
Offset
8
Bitmask
8
Channel - Header #2
...
Channel-Header #MainHeader.ChannelCount
DataType
Variable
Size (Bytes)
Data Channel #1
DataPoint #1
Timestamp
4
Value
ChannelHeader1.VariableSize
DataPoint #2
...
DataPoint ChannelHeader #1.Samples In File
Data Channel #2
...
DataType
TwinCAT 3 Scope View
Version: 1.4
Int64
Int32
Array of Char
Int32
Array of Char
Int32
Int64
bool (as byte)
Int32
Array of Char
Int32
Array of Char
Int64
Int64
Int32
Array of Char
Int32
Int32
Int64
Int64
Int64
Real64
Real64
Int64
UInt32
ChannelHeader.DataType
69
Konfiguration
Data Channel #MainHeader.ChannelCount
4.1.11.3
Export tdms / dat
Aufgenommene Daten können in einem Scope Daten File (.svd) gespeichert werden. Alternativ können
Daten nach einem Stopp der aktuellen Aufnahme in .tdms oder .dat exportiert werden. Beide Datenformate
sind in der Messtechnik weitverbreitet und können mit der TwinCAT 3 Scope View Professional Version
genutzt werden.
Kontextmenü des Scope → Export to DAT / Export to TDMS
4.1.11.4
Automatisierter Export
Ab der Scope Version 3.2.3129 wird ein sogenanntes TC3ScopeExportTool zusätzlich im TE130X-ScopeView Ordner installiert. Dieses kann genutzt werden um nachträglich Inhalte von .svd Dateien in die
unterstützten Exportformate zu wandeln. Das Tool bringt seine Dokumentation bereits mit und benötigt eine
Professional Lizenz.
Das TC3ScopeExportTool kann durch Parameter auch über einen Kommandozeilenaufruf den Export
durchführen. In der Kommandozeile kann man mit dem Schlüsselwort „silent“ dafür sorgen, dass die hier
gezeigte Oberfläche nicht gestartet wird. Der Export wird dann im Hintergrund durchgeführt.
Zur völligen Automatisierung des Exports kann das Tool aus der SPS mit NT_StartProcess aufgerufen
werden. Hier ein kleines Code-Beispiel mit festen Strings und fbStartExport als Instanz von
NT_StartProcess:
fbStartExport(
NETID:= '',
PATHSTR:= 'C:\TwinCAT\Functions\TE130X-Scope-View\TC3ScopeExportTool.exe',
DIRNAME:= 'C:\TwinCAT\Functions\TE130X-Scope-View',
COMNDLINE:= '"svd=c:\Scope Project.svd" target=c:\TestExport.csv silent',
START:= bStart,
TMOUT:= T#20S,
BUSY=> ,
ERR=> ,
ERRID=> );
4.1.12
Reporting
4.1.12.1
TwinCAT Scope View - Reporting
Mit Hilfe des Microsoft Visual Studio Report Designer ist es möglich komplexe Druckvorlagen zu generieren,
welche vom TwinCAT Measurement benutzt werden, um beispielsweise Scope Charts zu drucken.
70
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
Aus der hier dargestellten Aufnahme wird über die "Drucken"-Funktion von Visual Studio (File → Print |
<Strg> + P) folgender Report generiert: http://infosys.beckhoff.com/content/1031/TE13xx_TC3_ScopeView/
Resources/pdf/18014398691815691.pdf.
Einbinden eines Report in ein TwinCAT Measurement Projekt
Beckhoff liefert mit dem TwinCAT Measurement bereits eine vorgefertigte Druckvorlage mit jeder Installation
von TwinCAT 3.1 aus.
Sie kann in jedes vorhande TwinCAT Measurement Projekt über das Kontextmenü → Add → New Item →
Standard Report hinzugefügt werden. Bei dem TwinCAT Measurement Template "Measurement Scope
Project with Reporting" ist diese Druckvorlage bereits im Projekt enthalten.
Bearbeiten eines Reports
Um einen Report zu bearbeiten kann der Microsoft Visual Studio Report Designer über einen Doppelklick auf
die Druckvorlage geöffnet werden.
TwinCAT 3 Scope View
Version: 1.4
71
Konfiguration
Zur Bearbeitung von Report-Vorlagen schauen Sie sich bitte folgenden Artikel an: Report Designer (Visual
Studio).
Daten des DataSet
Für die eigene Gestalltung von Druckvorlagen bietet Beckhoff ein vorgefertiges DataSet an, welches alle
relevanten Daten eines Scope-Chart enthält.
• Built-in Fields
◦ Execution Time: Zeitpunkt zu dem der Druckauftrag erstellt wurde.
◦ Page Number: Aktuelle Seitenzahl.
◦ Report Name: Name des Report.
◦ Total Pages: Gesamtzahl der Seiten des Dokumentes.
◦ User ID: Benutzer-ID des Benutzers, der den Report in Autrag gegeben hat.
◦ Language: Eingestellte Systemsprache.
• Parameters
◦ ChartImage: Konvertierte Grafik des Chart. Kann über Expression (System.Convert.FromBase64String(Parameters!ChartImage.Value) wieder in eine Grafik konvertiert werden.
◦ FilePath: Speicherort der zugehörigen Scope-Datei.
72
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
◦ Comment: Der im Scope-Element hinterlegte Kommentar.
◦ RecordStart: Startzeitpunkt der Aufnahme.
◦ RecordStop: Stopzeitpunkt der Aufnahme.
• Images
◦ logo: Beckhoff Logo, welches in der Standard Vorlage verwendet wird.
• Channel_Properties
◦ AxisName: Name der Achse.
◦ ChannelColorHex: Farbe des Kanals in hexadezimaler Schreibweise.
◦ ChannelComment: Kommentar des Kanals.
◦ ChannelName: Name der Kanals.
• Cursor_Status_Times
◦ ColorHex: Farbe des Cursor in hexadezimaler Schreibweise.
◦ Column: Name der Cursor Column.
◦ Row: Name der Cursor Row.
◦ Value: Angezeigter Wert.
• Cursor_X_Values
◦ ColorHex: Farbe des Cursor in hexadezimaler Schreibweise.
◦ Column: Name der Cursor Column.
◦ Row: Name der Cursor Row.
◦ Value: Angezeigter Wert.
• Cursor_Y_Values
◦ ColorHex: Farbe des Cursor in hexadezimaler Schreibweise.
◦ Column: Name der Cursor Column.
◦ Row: Name der Cursor Row.
◦ Value: Angezeigter Wert.
• Chart_Data
◦ Channel: Name des Kanals.
◦ Time: Zeitstempel des Wertes.
◦ Value: Angezeigter Wert.
Nutzung von Chart_Data
Hinweis
Die Chart_Data sind die Rohdaten des Charts. Sie werden nur exportiert, wenn die Einstellung "Export Raw Data to Report" ausgewählt wurde (Menu Options [} 73])
Diese Einstellung verzögert die Erstellung von Reports erheblich.
Die Rohdaten des Charts dienen zur Erstellung eigener Darstellungen.
4.1.13
Scope Optionen
4.1.13.1
TwinCAT Scope View - Scope Menü: Optionen
Über den Scope- Menüpunkt "Options..." gelangen Sie direkt zu den TwinCAT Measurement- Optionen im
Visual Studio Options Window.
TwinCAT 3 Scope View
Version: 1.4
73
Konfiguration
Hier können die Standard- bzw. Default- Einstellungen vorgenommen werden.
Reporting
• General
◦ Show Chart Timebar: Gibt an, ob die Zeitleiste des Scope-Chart in der Druckvorlage sichtbar
sein soll.
◦ Show Chart Toolbar: Gibt an, ob die Toolbar des Scope-Chart in der Druckvorlage sichtbar
sein soll.
74
Version: 1.4
TwinCAT 3 Scope View
Konfiguration
◦ Use Curstom Color: Wenn "Use Custom Color" aktiv ist werden die folgenden Farbeinstallungen angwendet, bevor das Chart für den Report exportiert wird (Hier können Farbkombinationen gewählt werden, die den Tintenverbrauch für Druckvorgänge reduzieren).
◦ Border Background Color: Farbe für den Rahmen des Chart.
◦ Chart Background Color: Farbe für den Hintergrund des Chart.
◦ X-Axis Color: Farbe für die Beschriftung der X-Achse.
◦ X-Axis Color: Farbe für Raster der X-Achse.
◦ Y-Axis Color: Farbe für die Beschriftung der Y-Achse.
◦ Y-Axis Color: Farbe für Raster der Y-Achse.
◦ Y-Axis Color: Farbe für Raster der Y-Achse.
◦ Export Raw Data to Report: Liefert die Rohdaten des Chart an den Report. (Verlängert die
Generierungsdauer eines Reports erheblich | Nur für die Erstellung eigener Chart-Darstellungen notwendig).
Scope
• Root: Hier können Einstellungen zum Tracing der Scope View Produkt-Komponenten vorgenommen
werden.
• Acquisition: Festlegen der Standard- Akquisitionsdaten (Wird benutzt, wenn leere Kanäle eingefügt
werden), zur detaillierten Beschreibung siehe Akquisition [} 36].
• Axis: Festlegen der Standard- Achseneinstellungen (Wird benutzt, wenn neue Achsen eingefügt
werden), zur detaillierten Beschreibung siehe Achsen Eigenschaften [} 32].
• Channel: Festlegen der Standard- Kanaleinstellungen (Wird benutzt, wenn leere Kanäle eingefügt
werden), zur detaillierten Beschreibung siehe Kanal Eigenschaften [} 34].
• Chart: Festlegen der Standard- Charteinstellungen (Wird benutzt, wenn neue Charts eingefügt
werden), zur detaillierten Beschreibung siehe Chart Eigenschaften [} 29].
• Scope: Festlegen der Standard- Scope-Einstellungen (Wird benutzt, wenn neue Scope-Instanzen
eingefügt werden), zur detaillierten Beschreibung siehe Scope Eigenschaften [} 27].
• Error List
◦ Clear on Record: Löscht die jeweiligen Fehlermeldungen für die Scope-Instanz aus der Error
List, sobald ein Scope in den Record-Mode wechselt.
◦ Show Clear List Command: Zeigt den Kontextmenü-Eintrag "Clear Error List...".
◦ Show Messages: Zeigt Nachrichten vom Scope in der Error List.
◦ Show Warnings: Zeigt Warnungen vom Scope in der Error List.
4.1.13.2
TwinCAT Scope View - Mehrfachselektierung
Gruppenweise ändern
Einige Parameter, werden oft für mehrere oder alle Elemente geändert. Dazu können Sie über den Solution
Explorer mehrere Elemente markieren und die Einstellungen aller markierten Elemente gleichzeitig
bearbeiten. Daten, die sich zwischen den selektierten Elementen unterscheiden, werden als leere Felder
dargestellt.
Zur Mehrfachselektierung halten Sie während der Auswahl der Kanäle die <Strg>-Taste gedrückt. Bei
aufeinanderfolgenden Elementen können Sie das erste Element auswählen, die <Shift>-Taste gedrückt
halten und anschließend das letzte Element anwählen, um sämtliche dazwischenliegende Elemente zu
markieren. Des Weiteren besteht die Möglichkeit, alle Kanäle eines Scopes unabhängig von der
Konfigurationsstruktur sehr leicht zu selektieren. Dazu hält man die <Alt>-Taste gedrückt und führt einen
Doppelklick auf den ersten Kanal in der Scope-Konfiguration aus.
TwinCAT 3 Scope View
Version: 1.4
75
Konfiguration
Es können sämtliche Elemente des gleichen Typs ausgewählt werden.
Mehrfachselektierung ist implementiert für:
• Scopes
• Charts
• Achsen
• Kanäle
• Cursor
• Trigger Groups
• Trigger Sets
76
Version: 1.4
TwinCAT 3 Scope View
.NET API
5
.NET API
5.1
Scope View Control Integration
Integration des ScopeViewControl in eigene Anwendungen
Das TwinCAT Scope besteht aus verschiedenen Komponenten. Hauptkomponenten sind das Scope View
und der Scope Server. Das View beinhaltet wiederum das ScopeViewControl, welches als eigenständige
Komponente für die kundenspezifische Visualisierung nutzbar ist. Die in .NET entwickelte
ScopeViewControlLib steht mit der Installation des TwinCAT 3.1 ab Version 4006 zur Verfügung. Auf diese
Weise ist eine einfache Einbindung in C#, VB.Net oder WPF-Applikationen möglich.
Benötigte Software
Das ScopeViewControl benötigt das .NET Framework 4.0. Das ".NET Framework 4 Client
Profile" wird nicht unterstützt.
Hinweis
Installation des .NET Framework 4.0
1. Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie „Properties“ aus.
2. Wählen Sie unter „Application“ das Target framework „.NET Framework 4“ aus.
ð Das .NET Framework 4.0 ist installiert.
MS Visual Studio
Um das ScopeViewControl einem bestehenden oder neu angelegten Projekt hinzuzufügen, verwenden Sie
den Designer des Visual Studios:
1. Öffnen Sie die Form oder das Control, dem das ScopeViewControl hinzugefügt werden soll.
TwinCAT 3 Scope View
Version: 1.4
77
.NET API
2. Klicken Sie in der Toolbox mit der rechten Maustaste auf eine freie Stelle und wählen Sie „Choose
Items..“ aus.
ð Ein Dialog öffnet sich.
3. Wählen Sie „Browse“ aus.
4. Suchen Sie den Installationspfad des TE130X- Scope- View und öffnen diesen.
5. Wählen Sie die „TwinCAT.Scope2.View.Control.dll“ aus und bestätigen Sie.
ð In der Toolbox erscheint nun ein Zahnrad mit dem Eintrag „ScopeViewControl“.
6. Ziehen Sie ein oder mehrere ScopeViewControls mit der Maus in den Designer und positionieren Sie
ihn.
ð Sie haben das ScopeViewControl einem Projekt hinzugefügt.
Wird das Projekt nun kompiliert, meldet das Visual Studio ggf. fehlende Verweise zur
'TcAdsScope2Communications' und zur 'TwinCAT.Scope2.Tools' –Library. In diesem Fall führen Sie
folgende Schritte aus:
1. Klicken Sie im Solution Explorer mit der rechten Maustaste auf das aktuelle Projekt und wählen Sie
„Add Reference“ aus.
ð Ein Dialog öffnet sich.
2. Wählen Sie im „Browse“- Tab den Installationspfad des .NET-GAC (Global Assembly Cache) aus.
3. Fügen Sie dem Projekt die folgenden Bibliotheken hinzu:
• TwinCAT.Ads.dll
• TwinCAT.Scope2.Tools.dll
• TwinCAT.Scope2.Communications.dll
5.1.1
Sample YT Chart
Um die wichtigsten Aspekte bei der Anwengung des ScopeViewControls zu demonstrieren, wird im
Folgenden beispielhaft die abgebildete Anwendung erstellt.
Erstellen Sie dazu eine neue Windows-Anwendung und fügen Sie der Form im Designer eine Toolbar und
die dargestellten Buttons hinzu. Durch einen Doppelklick können Sie für jeden Button einen ClickEventhandler erzeugen, der im Folgenden mit dem Beispielcode gefüllt wird. Fügen Sie dann der Form, wie
oben beschrieben, ein ScopeViewControl hinzu und setzen das 'Dock'-Property auf Full.
78
Version: 1.4
TwinCAT 3 Scope View
.NET API
Benötigte Software
Das ScopeViewControl benötigt das .NET Framework 4.0. Das ".NET Framework 4 Client
Profile" wird nicht unterstützt.
Hinweis
Installation des .NET Framework 4.0
1. Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie „Properties“ aus.
2. Wählen Sie unter „Application“ das Target framework „.NET Framework 4“ aus.
ð Das .NET Framework 4.0 ist installiert.
Das hier entwickelte Beispiel ist als VS2010 - Projekt verfügbar: http://infosys.beckhoff.com/content/1031/
TE13xx_TC3_ScopeView/Resources/zip/2646930955.zip
Das Beispiel greift auf Variablen des Beispiel PLC-Programms zu: http://infosys.beckhoff.com/content/1031/
TE13xx_TC3_ScopeView/Resources/zip/2282225419.zip
5.1.1.1
Konfiguration laden
Konfiguration laden
Das nun ausführbare Projekt zeigt beim Start eine graue Fläche, da noch keine Konfiguration geladen oder
erstellt ist. Prinzipiell kann eine Konfiguration programmatisch erstellt oder eine mit dem TwinCAT Scope
erstellte Datei geladen werden.
Das C# Codebeispiel zeigt den Aufruf aus einem 'ButtonClick-EventHandler' :
private string filename = @"ScopeTest.sv2";
private void button_Load_Click(object sender, EventArgs e)
{
FileInfo finfo = new FileInfo(filename);
if (!finfo.Exists)
{
MessageBox.Show(this, "File not found! Please use the 'New' buttons to create a config.\r\n
Once a config is created and saved it can be load using the 'Load' -Button!", "File not found!", TwinCAT 3 Scope View
Version: 1.4
79
.NET API
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else
{
// alte Konfiguration löschen
while (scopeViewControl1.Charts.Count > 0)
{
scopeViewControl1.DeleteChart(scopeViewControl1.Charts[0]);
}
// Konfiguration laden
scopeViewControl1.LoadScopeConfig(filename);
foreach (ScopeViewControlChannel channel in scopeViewControl1.ConnectedChannels)
{
channel.Acquisition.AmsNetId = AmsNetId.Local;
}
}
}
Konfiguration programmatisch erstellen
Das ScopeViewControl bietet Methoden für alle Funktionen an, die auch vom TwinCAT Scope aufgerufen
werden. Für Details sei auf die separate API-Dokumentation der ScopeViewControlLib verwiesen:
ScopeViewControlLib
5.1.1.2
Hinzufügen von Elementen
Alle Elemente die im TwinCAT Scope hinzugefügt werden können, werden im ScopeViewControl durch eine
Methode im jeweils höheren Element erzeugt:
• Charts:
private void buttonChart_Click(object sender, EventArgs e) { ScopeViewControlChart chart = scopeViewControl1.NewChart(); }
• (Y-)Axes:
private void buttonAxis_Click(object sender, EventArgs e) { if (scopeViewControl1.Charts.Count == 0) { MessageBox.Show(this, "Please create a chart first!", "No chart connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { ScopeViewControlYAxis axis = scopeViewControl1.Charts[0].NewAxis(); } }
• Channels:
private void buttonChannel_Click(object sender, EventArgs e) { if (scopeViewControl1.Charts.Count == 0) { MessageBox.Show(this, "Please create a chart first!", "No chart connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else if (scopeViewControl1.Charts[0].Axes.Count == 0) { MessageBox.Show(this, "Please create an YAxis first!", "No axis connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else if (scopeViewControl1.Charts[0].Axes[0].Channels.Count > 0) { MessageBox.Show(this, "This sample contains only one channel!", "Channel still connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } else { ScopeViewControlChannel channel = scopeViewControl1.Charts[0].Axes[0].NewChannel(); ChangeChannelSettings(channel); SetAcquisition(channel); } }
5.1.1.3
Anpassen der Styles
Jedes der erstellten Elemente hat ein 'Style'-Property, in dem alle Eigenschaften gespeichert sind, die auch
im entsprechenden Properties Fenster des Visual Studio zu sehen sind. Einem Kanal etwa können Farbe
und Linienstärke zugewiesen werden.
private void ChangeChannelSettings(ScopeViewControlChannel channel)
{
if (scopeViewControl1.Charts.Count == 0)
{
MessageBox.Show(this, "Please create a chart first!", "No chart connected!",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else if (scopeViewControl1.Charts[0].Axes.Count == 0)
{
MessageBox.Show(this, "Please create an YAxis first!", "No axis connected!",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else if (scopeViewControl1.Charts[0].Axes[0].Channels.Count == 0)
{
MessageBox.Show(this, "Please create a Channel first!", "No channel connected!",
80
Version: 1.4
TwinCAT 3 Scope View
.NET API
MessageBoxButtons.OK,
}
else
{
channel.Style.LineColor =
channel.Style.MarkColor =
channel.Style.LineWidth =
}
}
5.1.1.4
MessageBoxIcon.Exclamation);
Color.Red;
Color.DarkRed;
2;
Anpassen der Akquisitionsdaten
Jeder Kanal besitzt neben dem 'Style' auch das 'Acquisition'-Property. Hier wird die Verbindung zu einer
System Variable eingestellt:
private void SetAcquisition(ScopeViewControlChannel channel)
{
if (scopeViewControl1.Charts.Count == 0)
{
MessageBox.Show(this, "Please create a chart first!", "No chart connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else if (scopeViewControl1.Charts[0].Axes.Count == 0)
{
MessageBox.Show(this, "Please create an YAxis first!", "No axis connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else if (scopeViewControl1.Charts[0].Axes[0].Channels.Count == 0)
{
MessageBox.Show(this, "Please create a Channel first!", "No channel connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else
{
// AmsNetId und AmsPort benötigen die TwinCAT.Ads.dll
channel.Acquisition.AmsNetId = AmsNetId.Local;
channel.Acquisition.TargetPort = 851;
channel.Acquisition.IsSymbolBased = true;
channel.Acquisition.SymbolName = "Variables.fStairs";
channel.Acquisition.DataType = DataTypeConverter.AdsToScope2Datatype(AdsDatatypeId.ADST_INT16);
channel.Acquisition.SampleTime = (uint)(10 * TimeSpan.TicksPerMillisecond);
}
}
5.1.1.5
Steuern der Aufnahme
Alle Methoden und Eigenschaften um das ScopeViewControl zu steuern sind im 'Operating'-Property
zusammengefasst. Hier sind alle Eigenschaften zu finden, die auch im Properties Fenster des VisualStudio
bei selektiertem Scope zu sehen sind. Darüber hinaus stehen Methoden zum Starten und Stoppen der
Aufnahme oder zum Speichern und Exportieren zur Verfügung.
private void button_StartRecord_Click(object sender, EventArgs e)
{
try
{
// alte Daten verwerfen
if (scopeViewControl1.State == ScopeViewControlStates.REPLY)
scopeViewControl1.Operating.DisConnect(false);
// Aufnahme starten
if (scopeViewControl1.State == ScopeViewControlStates.CONFIG)
scopeViewControl1.Operating.StartRecord();
// alle Charts starten
if (scopeViewControl1.State == ScopeViewControlStates.CONNECTED)
scopeViewControl1.Operating.StartAllDisplays();
}
catch (Exception err)
{
MessageBox.Show(this, err.Message, "Error on start record!",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
TwinCAT 3 Scope View
Version: 1.4
81
.NET API
private void button_StopRecord_Click(object sender, EventArgs e)
{
try
{
if (scopeViewControl1.State == ScopeViewControlStates.RECORD)
scopeViewControl1.Operating.StopRecord();
}
catch (Exception err)
{
MessageBox.Show(this, err.Message, "Error on stop record!",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void button_Save_Click(object sender, EventArgs e)
{
try
{
// wenn Daten da sind speichern
if (scopeViewControl1.State == ScopeViewControlStates.REPLY)
{
File.Create("ExportData.svd").Close();
scopeViewControl1.Operating.SaveData("ExportData.svd");
}
// sonst nur die Konfiguration speichern
else
{
File.Create(filename).Close();
scopeViewControl1.SaveScopeConfig(filename);
}
}
catch (Exception err)
{
MessageBox.Show(this, err.Message, "Error on save!",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
5.1.1.6
Steuern eines Chart
Alle Charts die der Konfiguration hinzugefügt wurden verfügen über eine eigene Toolbox um sie bedienbar
zu machen. Es ist jedoch auch möglich, diese Funktionen über das 'ChartOperating'-Property zu bedienen.
Dort finden sich auch Optionen um die Toolbar und die Zeitleiste ein und aus zu blenden.
private void button_Run_Click(object sender, EventArgs e)
{
if (scopeViewControl1.State != ScopeViewControlStates.RECORD)
{
MessageBox.Show(this, "Only possible if a record is running!", "Run not possible!",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
if (scopeViewControl1.State == ScopeViewControlStates.RECORD)
scopeViewControl1.Charts[0].ChartOperating.StartDisplay();
}
private void button_Pause_Click(object sender, EventArgs e)
{
if (scopeViewControl1.State != ScopeViewControlStates.RECORD)
{
MessageBox.Show(this, "Only possible if a record is running!", "Pause not possible!",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
if (scopeViewControl1.State == ScopeViewControlStates.RECORD)
scopeViewControl1.Charts[0].ChartOperating.StopDisplay();
}
private void toolStripButtonDelChart_Click(object sender, EventArgs e)
{
if (scopeViewControl1.Charts.Count == 0)
{
MessageBox.Show(this, "No chart is connected!", "Nothing to delete!",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else if (scopeViewControl1.State == ScopeViewControlStates.RECORD)
{
82
Version: 1.4
TwinCAT 3 Scope View
.NET API
scopeViewControl1.Operating.StopRecord();
scopeViewControl1.Operating.DisConnect(false);
}
else if (scopeViewControl1.State == ScopeViewControlStates.REPLY)
{
scopeViewControl1.Operating.DisConnect(false);
}
else
{
scopeViewControl1.DeleteChart(scopeViewControl1.Charts[scopeViewControl1.Charts.Count - 1]);
}
}
5.1.2
Sample XY Chart
In der oben abgebildeten Form ist eine Scope View Control Integration in C# mit einem XY-Chart dargestellt.
Die Vorgehensweise wird im Folgenden erläutert.
Zuerst wird eine Windows Forms Application mit einer Toolbar, in der die Buttons, welche oben in der Form
zu sehen sind, erstellt. Danach wird ein ScopeViewControl zu der Form hinzugefügt und die ‚Dock‘-Property
auf Full gesetzt, damit der Graph das ganze Fenster ausnutzen kann.
Benötigte Software
Das ScopeViewControl benötigt das .NET Framework 4.0. Das ".NET Framework 4 Client
Profile" wird nicht unterstützt.
Hinweis
Installation des .NET Framework 4.0
1. Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie „Properties“ aus.
2. Wählen Sie unter „Application“ das Target framework „.NET Framework 4“ aus.
ð Das .NET Framework 4.0 ist installiert.
TwinCAT 3 Scope View
Version: 1.4
83
.NET API
Das Programm ist in der folgenden Datei zu finden: http://infosys.beckhoff.com/content/1031/
TE13xx_TC3_ScopeView/Resources/zip/2282227083.zip
Die Variablen beziehen sich auf das TwinCAT Programm hinter folgender Datei: http://infosys.beckhoff.com/
content/1031/TE13xx_TC3_ScopeView/Resources/zip/2282225419.zip
5.1.2.1
Konfiguration laden
private void button_load_Click(object sender, EventArgs e)
{
FileInfo finfo = new FileInfo(filename);
if (!finfo.Exists)
{
MessageBox.Show(this, "File not found! Please use the 'Add Chart' buttons to create a config.\r\nOnce a config is created and saved it can be load using the 'Load' -Button!", "File not found!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else
{
// alte Konfiguration löschen
while (scopeViewControl1.Charts.Count > 0)
{
scopeViewControl1.DeleteChart(scopeViewControl1.Charts[0]);
}
// Konfiguration laden
scopeViewControl1.LoadScopeConfig(filename);
foreach (ScopeViewControlChannel channel in scopeViewControl1.ConnectedChannels)
{
channel.Acquisition.AmsNetId = AmsNetId.Local;
}
}
}
Der oben angegebene Code wird ausgeführt, wenn in der Oberfläche auf den Button „Load“ geklickt wird.
Dieser dient dazu, eine Konfigurationsdatei (.tcscope), welche mit dem TwinCAT Scope erstellt wird, zu
öffnen. Diese Datei enthält nur die Informationen über die Achsen und die Channels, aber nicht den Graphen
(Messdaten) an sich.
In dieser Methode wird zuerst die Existenz der Methode überprüft. Wenn dies der Fall ist, wird die im
Programm geöffnete Konfiguration gelöscht und die aus der Datei wird an das ScopeViewControl
übergeben.
Der Graph wird dann mit einem Klick auf den Button „Start“ dargestellt. Nähere Informationen dazu sind
unter dem Punkt „Aufnahme steuern“ zu finden.
5.1.2.2
Konfiguration erstellen
In diesem Beispielprogramm wird eine Konfiguration mit drei Buttons erstellt, da eine Konfiguration auch aus
drei Hierarchiestufen besteht, welche aufeinander aufbauen.
Im Scope wird zunächst mit dem Button „Add Chart“ ein neues Chart erstellt. Das Chart ist die Umgebung, in
welcher der Graph mit dem Koordinatensystem erscheint. Damit stellt das Chart das Grundgerüst dar und
muss als erstes erstellt werden. Es ist zu beachten, dass die Property ChartType auf XY gesetzt ist.
private void button_AddChart_Click(object sender, EventArgs e)
{
ScopeViewControlChart chart = scopeViewControl1.NewChart();
scopeViewControl1.Charts[scopeViewControl1.Charts.Count - 1].ChartType = TwinCAT.Scope2.Communications.scopeDisplayModes.XY;
scopeViewControl1.ViewDetailLevel = ScopeViewDetailLevel.Extended;
}
Anschließend werden mit dem Button „Add Axis“ die X- und die Y-Achse hinzugefügt und so das
Koordinatensystem erstellt. Da dieses Koordinatensystem im Chart angelegt wird, muss geprüft werden, ob
es ein Chart gibt. Ohne ein Chart kann das Koordinatensystem nicht erzeugt werden.
private void button_AddAxis_Click(object sender, EventArgs e)
{
if (scopeViewControl1.Charts.Count == 0)
{
84
Version: 1.4
TwinCAT 3 Scope View
.NET API
MessageBox.Show(this, "Please create a chart first!", "No chart connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else
{
ScopeViewControlYAxis axis = scopeViewControl1.Charts[0].NewAxis();
if (axis is ScopeViewControlXYAxis)
{
ScopeViewControlXYAxis xyAxis = (ScopeViewControlXYAxis)axis;
}
}
}
Wenn die Achsen erstellt sind, kann mit dem Button „Add Channel“ ein XY-Kanal hinzugefügt werden.
Dieser XY-Kanal wird direkt mit den Achsen verbunden. Deshalb wird zuerst überprüft, ob auch schon
Charts und Achsen erstellt wurden. Bei dem Erstellen des XY-Kanals ist zu beachten, dass von den YObjekten in die XY-Objekte gecasted wird. Dies ist einfach möglich, da die XY-Objekte von den Y-Objekten
erben.
private void button_AddChannel_Click(object sender, EventArgs e)
{
if (scopeViewControl1.Charts.Count == 0)
{
MessageBox.Show(this, "Please create a chart first!", "No chart connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else if (scopeViewControl1.Charts[0].Axes.Count == 0)
{
MessageBox.Show(this, "Please create the Axis first!", "No axis connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else if (scopeViewControl1.Charts[0].Axes[0].Channels.Count > 0)
{
MessageBox.Show(this, "This sample contains only one channel!", "Channel still connected!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else
{
ScopeViewControlYAxis axis = scopeViewControl1.Charts[0].Axes[0];
if (axis is ScopeViewControlXYAxis)
{
ScopeViewControlXYAxis xyAxis = (ScopeViewControlXYAxis)axis;
ScopeViewControlXYChannel channel = xyAxis.NewChannelPair();
ChangeChannelSettings(channel);
SetAcquisition(channel);
}
}
}
Nach dem Erstellen des Kanals, kann der Style des Graphen geändert werden und die Akquisition
eingestellt werden. Diese Methoden werden in den folgenden Kapiteln genauer erläutert.
5.1.2.3
Channel bearbeiten
Style bearbeiten:
Jeder Channel besitzt ein „Style“ Property, in dem Werte für die Graphen festgelegt werden. Dort können
beispielsweise Farben und Linienstärke zugewiesen werden.
private void ChangeChannelSettings(ScopeViewControlXYChannel channel)
{
channel.Style.LineColor = Color.Red;
channel.Style.MarkColor = Color.DarkRed;
channel.Style.LineWidth = 2;
}
Akquisitionsdaten bearbeiten:
Die Akquisitionsdaten eines Channels beschreiben die Verbindung zwischen dem Scope und dem jeweiligen
Wert der Maschinen-Steuerung. So wird bei der Akquisition den „SymbolName“ gesetzt. Dies ist der
hierarchische Name des zu überwachenden Signals. Von dem Signal hängt der Datentyp ab, welcher bei
„DataType“ eingegeben wird. Die „AmsNetId“ und der „TargetPort“ sind die Verbindungsdaten, die zu dem
TwinCAT- Projekt führen.
TwinCAT 3 Scope View
Version: 1.4
85
.NET API
private void SetAcquisition(ScopeViewControlXYChannel channel)
{
channel.Acquisition.AmsNetId = AmsNetId.Local;
channel.Acquisition.TargetPort = 851;
channel.Acquisition.IsSymbolBased = true;
channel.Acquisition.SymbolName = "MAIN.Puls2";
channel.Acquisition.DataType = DataTypeConverter.AdsToScope2Datatype(AdsDatatypeId.ADST_REAL32);
channel.Acquisition.SampleTime = (uint)(10 * TimeSpan.TicksPerMillisecond);
channel.XAcquisition.AmsNetId = AmsNetId.Local;
channel.XAcquisition.TargetPort = 851;
channel.XAcquisition.IsSymbolBased = true;
channel.XAcquisition.SymbolName = "MAIN.Puls1";
channel.XAcquisition.DataType = DataTypeConverter.AdsToScope2Datatype(AdsDatatypeId.ADST_REAL32);
channel.XAcquisition.SampleTime = (uint)(10 * TimeSpan.TicksPerMillisecond);
}
5.1.2.4
Aufnahme steuern
Mit den Buttons „Start“ und „Stop“ wird die Aufnahme gestartet und gestoppt.
private void button_Start_Click(object sender, EventArgs e)
{
try
{
// alte Daten verwerfen
if (scopeViewControl1.State == ScopeViewControlStates.REPLY)
scopeViewControl1.Operating.DisConnect(false);
// Aufnahme starten
if (scopeViewControl1.State == ScopeViewControlStates.CONFIG)
scopeViewControl1.Operating.StartRecord();
// alle Charts starten
if (scopeViewControl1.State == ScopeViewControlStates.CONNECTED)
scopeViewControl1.Operating.StartAllDisplays();
}
catch (Exception err)
{
MessageBox.Show(this, err.Message, "Error on start record!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void button_Stop_Click(object sender, EventArgs e)
{
try
{
if (scopeViewControl1.State == ScopeViewControlStates.RECORD)
scopeViewControl1.Operating.StopRecord();
}
catch (Exception err)
{
MessageBox.Show(this, err.Message, "Error on stop record!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
Für den Start oder Stopp der Aufnahme sowie für die Einstellungen des Scopes stehen im Scope View
Control die Properties „Operating“ zur Verfügung.
Falls aktuell eine Aufnahme angezeigt wird, muss diese vor einer neuen Aufnahme erst entfernt werden.
Danach wird die Aufnahme gestartet. Zur Darstellung auf der Oberfläche wird danach zusätzlich das Display
gestartet.
Um eine Aufnahme wieder zu stoppen, muss die Methode „StopRecord“ ausgeführt werden. Dazu muss der
„Stop“- Button gedrückt werden.
5.1.2.5
Konfiguration/Aufnahme abspeichern
private void button_Save_Click(object sender, EventArgs e)
{
try
{
86
Version: 1.4
TwinCAT 3 Scope View
.NET API
// wenn Daten da sind speichern
if (scopeViewControl1.State == ScopeViewControlStates.REPLY)
{
File.Create("ExportData.svd").Close();
scopeViewControl1.Operating.SaveData("ExportData.svd");
}
// sonst nur die Konfiguration speichern
else
{
File.Create(filename).Close();
scopeViewControl1.SaveScopeConfig(filename);
}
}
catch (Exception err)
{
MessageBox.Show(this, err.Message, "Error on save!", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
Wie dem Code entnommen werden kann, gibt es zwei Möglichkeiten des Abspeicherns:
• Speichern der Aufnahmedaten in einer .svd- Datei
• Erstellen einer Konfigurationsdatei (.tcscope)
Der Unterschied besteht darin, dass die .svd- Datei in jedem TwinCAT 3 Scope View geöffnet werden kann,
um sich die Daten anzeigen zu lassen. Die .tcscope- Datei beinhaltet dagegen nur die Konfiguration ohne
Daten. Mit ihr kann man immer wieder neue Aufnahmen starten.
5.1.2.6
Chart steuern
Mit den Buttons „Run“ und „Pause“ lässt sich der Graph während der Aufnahme pausieren und fortsetzen.
Mit dem Button „DelChart“ wird der Chart geschlossen.
private void button_Run_Click(object sender, EventArgs e)
{
if (scopeViewControl1.State != ScopeViewControlStates.RECORD)
{
MessageBox.Show(this, "Only possible if a record is running!", "Run not possible!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
if (scopeViewControl1.State == ScopeViewControlStates.RECORD)
scopeViewControl1.Charts[0].ChartOperating.StartDisplay();
}
private void button_Pause_Click(object sender, EventArgs e)
{
if (scopeViewControl1.State != ScopeViewControlStates.RECORD)
{
MessageBox.Show(this, "Only possible if a record is running!", "Pause not possible!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
if (scopeViewControl1.State == ScopeViewControlStates.RECORD)
scopeViewControl1.Charts[0].ChartOperating.StopDisplay();
}
private void btn_DelChart_Click(object sender, EventArgs e)
{
if (scopeViewControl1.Charts.Count == 0)
{
MessageBox.Show(this, "No chart is connected!", "Nothing to delete!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
else if (scopeViewControl1.State == ScopeViewControlStates.RECORD)
{
scopeViewControl1.Operating.StopRecord();
scopeViewControl1.Operating.DisConnect(false);
}
else if (scopeViewControl1.State == ScopeViewControlStates.REPLY)
{
scopeViewControl1.Operating.DisConnect(false);
}
else
{
scopeViewControl1.DeleteChart(scopeViewControl1.Charts[scopeViewControl1.Charts.Count - 1]);
}
}
TwinCAT 3 Scope View
Version: 1.4
87
.NET API
Da diese Funktion nur im Aufnahmebetrieb genutzt werden kann, muss eine Abfrage erfolgen, ob aktuell
Signale aufgenommen werden.
Danach kann mit dem Run-Button und der dahinter liegenden Methode „StartDisplay“ das Chart fortgesetzt
werden. Mit der Methode „StopDisplay“ kann über den Pause-Button das Display angehalten werden. Die
Aufnahme läuft im Hintergrund weiter. Dies ist z.B. bei eingeschaltetem Overview-Chart erkennbar.
Zum Löschen des Charts wird zunächst überprüft, ob ein Chart offen ist. Danach wird überprüft, ob
momentan eine Aufnahme stattfindet. Ist dies der Fall, wird die aktuelle Aufnahme beendet. Mit der Methode
„DisConnect“ in „Operating“ kann der Graph aus dem Chart gelöscht werden. Mit der Methode „DeleteChart“
kann ein Chart aus dem ScopeViewControl gelöscht werden.
5.1.3
Sample YT Cursor
Im Folgenden wird die Verwendung von Cursorn in einem ScopeViewControl unter der Nutzung eines YTCharts erläutert.
In diesem Sample wird die Programmiersprache C# verwendet.
Zuerst wird eine Windows Forms Application erstellt. Mithilfe einer Tool-Bar kann das Menü mit den oben im
Bild zu sehenden Buttons erstellt werden.
Der Code hinter den Buttons „Load“ und „Create Configuration“ ist aus dem Sample zum ScopeViewControl
YT Chart zu entnehmen.
Benötigte Software
Das ScopeViewControl benötigt das .NET Framework 4.0. Das ".NET Framework 4 Client
Profile" wird nicht unterstützt.
Hinweis
88
Version: 1.4
TwinCAT 3 Scope View
.NET API
Installation des .NET Framework 4.0
1. Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie „Properties“ aus.
2. Wählen Sie unter „Application“ das Target framework „.NET Framework 4“ aus.
ð Das .NET Framework 4.0 ist installiert.
Das Programm ist in der folgenden Datei zu finden: http://infosys.beckhoff.com/content/1031/
TE13xx_TC3_ScopeView/Resources/zip/2282228747.zip
Die Variablen beziehen sich auf das TwinCAT Programm hinter folgender Datei: http://infosys.beckhoff.com/
content/1031/TE13xx_TC3_ScopeView/Resources/zip/2282225419.zip
5.1.3.1
Cursor hinzufügen
Die Cursors eines Charts befinden sich in dem CursorModule. Um hier einen weiteren Cursor hinzufügen zu
können, wird die Methode NewCursor(Boolean) aufgerufen.
Mit dem Boolean-Wert wird festgelegt, ob der Cursor ein X- oder ein Y-Cursor ist. Um einen X-Cursor zu
erstellen, wird der Wert auf „false“ gesetzt. Für einen Y-Cursor wird der Wert auf „true“ gesetzt.
Nach dem Erstellen der Cursor werden Methoden- Events hinzugefügt, sodass die Tabellen auf der
Oberfläche aktualisiert werden. Diese Methoden werden später genauer erläutert.
Der letzte Event wird ausgelöst, wenn ein Mausklick auf den Cursor ausgeführt wurde. Diese Methode wird
auch später genauer erläutert.
Danach wird der neue Cursor inklusive seiner Farbe in der Tabelle hinzugefügt. Des Weiteren wird die
refreshX-Methode aufgerufen, damit die aktuellen Werte in der Tabelle eingetragen werden und nicht erst,
wenn jeder einzelne Cursor neue Werte bekommt.
Zuletzt wird die Methode aufgerufen, welche die Ansicht der Delta-Werte neu erstellt. Diese Methoden
werden später genauer beschrieben.
Damit die Delta-Werte auch passend unter dem neuen Cursor dargestellt werden, werden zuerst alle alten
Delta-Werte gelöscht. Danach werden alle neuen Delta-Werte ausgerechnet und in der Tabelle hinzugefügt.
Dabei ist zu beachten, dass X-Cursor mehrere Werte haben, wenn es mehrere Channel gibt. Deshalb
müssen bei diesen Cursor alle Channel-Werte noch einmal durchgegangen werden. Diese Abfragen fallen
bei den Y-Cursor weg, da diese lediglich die Position haben.
private void buttonXCursor_Click(object sender, EventArgs e)
{
try
{
ScopeViewControlCursor newCursor = scopeViewControl1.Charts[0].CursorModule.NewCursor(false);
newCursor.ChannelValuesChanged += new System.EventHandler(this.resfreshX);
newCursor.StatusTimesChanged += new System.EventHandler(this.timeRefreshX);
newCursor.Selected += new System.EventHandler(this.actCursorRefresh);
dataGridView1.Rows.Insert(scopeViewControl1.Charts[0].CursorModule.XCursor.Count - 1, newCursor.StatusTimes.ChartPositionTime.ToString(), newCursor.Style.Name);
dataGridView1.Rows[scopeViewControl1.Charts[0].CursorModule.XCursor.Count - 1].Cells[1].Style.ForeColor = newCursor.Style.Color;
resfreshX(newCursor, null);
setXDeltaView();
}
catch (Exception) { }
}
private void buttonYCursor_Click(object sender, EventArgs e)
{
try
{
ScopeViewControlCursor newCursor = scopeViewControl1.Charts[0].CursorModule.NewCursor(true);
newCursor.AxesValuesChanged += new System.EventHandler(this.resfreshY);
newCursor.Selected += new System.EventHandler(this.actCursorRefresh);
dataGridView2.Rows.Insert(scopeViewControl1.Charts[0].CursorModule.YCursor.Count - 1, newCursor.Style.Name, newCursor.AxesValues[0]);
dataGridView2.Rows[scopeViewControl1.Charts[0].CursorModule.YCursor.Count - 1].DefaultCellStyle.ForeColor = newCursor.Style.Color;
setYDeltaView();
TwinCAT 3 Scope View
Version: 1.4
89
.NET API
}
catch (Exception) { }
}
5.1.3.2
Cursor löschen
Die Methode CurserModule.DeleteCursor() löscht den ihr übergebenen Cursor aus der Liste.
Die Cursordaten der Tabelle werden im Anschluss aktualisiert.
Danach wird die Tabelle mit den Cursordaten überarbeitet. Dazu wird der Cursor zunächst aus der Tabelle
gelöscht. Anschließend wird die Methode aufgerufen, welche die Delta-Werte aktualisiert.
private void buttonDeleteXC_Click(object sender, EventArgs e)
{
try
{
scopeViewControl1.Charts[0].CursorModule.DeleteCursor(scopeViewControl1.Charts[0].CursorModule.XCursor[dataGridView1.SelectedCells[0].RowIndex]);
dataGridView1.Rows.RemoveAt(dataGridView1.SelectedCells[0].RowIndex);
setXDeltaView();
}
catch (Exception) { }
}
private void butteonDeleteYC_Click(object sender, EventArgs e)
{
try
{
scopeViewControl1.Charts[0].CursorModule.DeleteCursor(scopeViewControl1.Charts[0].CursorModule.YCursor[dataGridView2.SelectedCells[0].RowIndex]);
dataGridView2.Rows.RemoveAt(dataGridView2.SelectedCells[0].RowIndex);
setYDeltaView();
}
catch (Exception){}
}
5.1.3.3
Delta-Werte
Damit die Delta-Werte auch passend unter den bearbeiteten Cursor dargestellt werden, werden zuerst alle
alten Delta-Werte gelöscht. Danach werden alle neuen Delta-Werte ausgerechnet und in der Tabelle
hinzugefügt.
Dabei ist zu beachten, dass X-Cursor mehrere Werte haben, wenn es mehrere Channel gibt. Deshalb
müssen bei diesen Cursor alle Channel-Werte noch einmal durchgegangen werden. Diese Abfragen fallen
bei den Y-Cursor weg, da diese lediglich die Position haben.
Die Aktualisierung der Werte wird in Events vorgenommen. Dieses Vorgehen wird unter dem Punkt „Werte
aktualisieren“ erstellt.
private void setXDeltaView()
{
//delete old values
while (scopeViewControl1.Charts[0].CursorModule.XCursor.Count != dataGridView1.Rows.Count)
{
dataGridView1.Rows.RemoveAt(dataGridView1.Rows.Count - 1);
}
//set new values
for (int i = 0; i < scopeViewControl1.Charts[0].CursorModule.XCursor.Count; i++)
{
for (int k = i + 1; k < scopeViewControl1.Charts[0].CursorModule.XCursor.Count; k++)
{
dataGridView1.Rows.Add(TimeSpan.Parse(dataGridView1[0, i].Value.ToString()) - TimeSpan.Parse(dataGridView1[0, k].Value.ToString()), dataGridView1[1, i].Value + " - " + dataGridView1[1, k].Value);
for (int h = 2; h < scopeViewControl1.Charts[0].Axes[0].Channels.Count + 2; h++)
{
if (dataGridView1[h, k].Value != null)
{
dataGridView1[h, dataGridView1.Rows.Count - 1].Value = Convert.ToDouble(dataGridView1[h, i].Value) Convert.ToDouble(dataGridView1[h, k].Value);
}
}
}
}
90
Version: 1.4
TwinCAT 3 Scope View
.NET API
}
private void setYDeltaView()
{
//delete old values
while (scopeViewControl1.Charts[0].CursorModule.YCursor.Count != dataGridView2.Rows.Count)
{
dataGridView2.Rows.RemoveAt(dataGridView2.Rows.Count - 1);
}
//add new values
for (int i = 0; i < scopeViewControl1.Charts[0].CursorModule.YCursor.Count; i++)
{
for (int k = i + 1; k < scopeViewControl1.Charts[0].CursorModule.YCursor.Count; k++)
{
dataGridView2.Rows.Add(dataGridView2[0, i].Value + " - " + dataGridView2[0, k].Value, Convert.ToDouble(dataGridView2[1, i].Value) - Convert.ToDouble(dataGridView2[1, k].Value));
}
}
}
5.1.3.4
Werte aktualisieren
Da diese Methoden durch Events aufgerufen werden, werden die Cursor in den Parametern mitgeschickt.
Dadurch kann dieser Cursor zuerst in der Tabelle gesucht werden, um dann die Werte abändern zu können.
Folgend werden die Deltawerte überarbeitet. Hierbei werden mehrere Zeilen bearbeitet. Jede Zelle wird neu
berechnet. Es sollte nur der Wert jeder Zelle bearbeitet werden und nicht die Zeile gelöscht und neu erstellt
werden, da dies die Performance stark beeinträchtigen würde. Die Oberfläche würde anfangen zu flackern,
da das Programm die Werte nicht schnell genug aktualisieren kann.
Auch hierbei ist zu beachten, dass es bei den X-Cursor im Gegensatz zu den Y- Cursor mehrere Channel
geben kann.
Da sich bei den X-Cursor auch die Zeit ändern kann, gibt es eine weitere Methode, um die Zeit zu
aktualisieren. Diese Methode läuft so ab, wie die oben erläuterten Funktionen, wobei nur die Zeit-Zeilen
angesprochen werden.
private void resfreshX(object sender, EventArgs e)
{
try
{
ScopeViewControlCursor tmpCursor = (ScopeViewControlCursor)sender;
//set new channel value
for (int k = 0; k < scopeViewControl1.Charts[0].CursorModule.XCursor.Count; k++)
{
if (scopeViewControl1.Charts[0].CursorModule.XCursor[k] == tmpCursor)
{
for (int j = 0; j < tmpCursor.ChannelValues.Count; j++)
{
dataGridView1[j + 2, k].Value = tmpCursor.ChannelValues[j];
}
break;
}
}
//refresh all delta values
int m = scopeViewControl1.Charts[0].CursorModule.XCursor.Count;
for (int i = 0; i < scopeViewControl1.Charts[0].CursorModule.XCursor.Count; i++)
{
for (int k = i + 1; k < scopeViewControl1.Charts[0].CursorModule.XCursor.Count; k++)
{
for (int h = 2; h < scopeViewControl1.Charts[0].Axes[0].Channels.Count + 2; h++)
{
if (dataGridView1[h, k].Value != null)
{
dataGridView1[h, m].Value = Convert.ToDouble(dataGridView1[h, i].Value) - Convert.ToDouble(dataGridView1[h, k].Value);
}
}
m++;
}
}
}
catch (Exception) { }
TwinCAT 3 Scope View
Version: 1.4
91
.NET API
}
private void resfreshY(object sender, EventArgs e)
{
try
{
ScopeViewControlCursor tmpCursor = (ScopeViewControlCursor)sender;
//set new axes value
for (int i = 0; i < dataGridView2.Rows.Count; i++)
{
if (dataGridView2[0, i].Value.ToString() == tmpCursor.Style.Name)
{
dataGridView2[1, i].Value = tmpCursor.AxesValues[0].ToString();
break;
}
}
//refresh all deltavalues
int m = scopeViewControl1.Charts[0].CursorModule.YCursor.Count;
for (int i = 0; i < scopeViewControl1.Charts[0].CursorModule.YCursor.Count; i++)
{
for (int k = i + 1; k < scopeViewControl1.Charts[0].CursorModule.YCursor.Count; k++)
{
dataGridView2[1, m].Value = Convert.ToDouble(dataGridView2[1, i].Value) - Convert.ToDouble(dataGridView2[1, k].Value);
}
m++;
}
}
catch (Exception) { }
}
private void timeRefreshX(object sender, EventArgs e)
{
//refresh the cursortime
for (int i = 0; i < scopeViewControl1.Charts[0].CursorModule.XCursor.Count; i++)
{
dataGridView1[0, i].Value = scopeViewControl1.Charts[0].CursorModule.XCursor[i].StatusTimes.ChartPositionTime.ToString();
}
//refresh the deltatime
int m = scopeViewControl1.Charts[0].CursorModule.XCursor.Count;
for (int i = 0; i < scopeViewControl1.Charts[0].CursorModule.XCursor.Count; i++)
{
for (int k = i + 1; k < scopeViewControl1.Charts[0].CursorModule.XCursor.Count; k++)
{
dataGridView1[0, m].Value = TimeSpan.Parse(dataGridView1[0, i].Value.ToString()) - TimeSpan.Parse(dataGridView1[0, k].Value.ToString());
m++;
}
}
}
5.1.3.5
Cursor per Tastatur steuern
Beim Bewegen der Cursor per Tastatureingaben wird immer der zuletzt markierte Cursor bewegt. Dies ist
immer der, welcher in der Oberfläche markiert ist.
Hierzu wird das KeyDown-Event der Form benutzt. Dieses Event wird immer ausgelöst, wenn eine Taste
gedrückt wird. Unter dem Parameter des Typs KeyEventArgs befindet sich unter der Property „KeyCode“ der
Wert der gedrückten Taste. Dieser Wert kann dann mit den erwarteten Werten verglichen werden.
Um den Cursor zu bewegen, wird die Methode MoveCursor(int) verwendet. Der Parameter gibt an, wie weit
sich der Cursor verschiebt. Wird eine positive Zahl eingegeben, wird der Cursor in den positiven Teil
geschoben und bei einer negativen Zahl entsprechend in den negativen Teil.
Die Methode wird direkt auf einen Cursor aufgerufen. Dieser befindet sich wie oben beschrieben in dem
CursorModule. Die Stelle des Cursors im CursorModule kann aus der markierten Zelle in der Tabelle
entnommen werden.
Ein Cursor kann über zwei Wege in der Tabelle markiert werden:
• durch direktes Klicken auf die Zeile in der Tabelle. Hierzu braucht man auch keinen weiteren Code.
• durch Klicken auf den Cursor im ScopeViewControl
92
Version: 1.4
TwinCAT 3 Scope View
.NET API
In dem Moment wird das „Select“ Event des Cursors aufgerufen. Dieser Event ruft die unten angegebene
Methode auf und in dem ersten Parameter wird der Cursor übergeben.
So wird zuerst bei dem Cursor in der „Style.Orientation“- Eigenschaft geprüft, ob es ein X- oder Y-Cursor ist
und danach wird der Cursor in dem Cursormodul gefunden. Hierbei wird mitgezählt, an welcher Stelle sich
der Cursor im CursorModule befindet, damit die passende Zeile in der Tabelle markiert werden kann.
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.D)
{
try
{
scopeViewControl1.Charts[0].CursorModule.XCursor[dataGridView1.SelectedCells[0].RowIndex].MoveCursor(5);
}
catch (Exception)
{
MessageBox.Show("There is no X-Axis to move!");
}
}
else if (e.KeyCode == Keys.A)
{
try
{
scopeViewControl1.Charts[0].CursorModule.XCursor[dataGridView1.SelectedCells[0].RowIndex].MoveCursor(-5);
}
catch (Exception)
{
MessageBox.Show("There is no X-Axis to move!");
}
}
else if (e.KeyCode == Keys.W)
{
try
{
scopeViewControl1.Charts[0].CursorModule.YCursor[dataGridView2.SelectedCells[0].RowIndex].MoveCursor(5);
}
catch (Exception)
{
MessageBox.Show("There is no Y-Axis to move!");
}
}
else if (e.KeyCode == Keys.S)
{
try
{
scopeViewControl1.Charts[0].CursorModule.YCursor[dataGridView2.SelectedCells[0].RowIndex].MoveCursor(-5);
}
catch (Exception)
{
MessageBox.Show("There is no Y-Axis to move!");
}
}
}
private void actCursorRefresh(object sender, EventArgs e)
{
ScopeViewControlCursor tmpCursor = (ScopeViewControlCursor)sender;
if (tmpCursor.Style.Orientation == TwinCAT.Scope2.Charting.ChartingBase.CursorDirection.Vertical)
{
for (int i = 0; i < scopeViewControl1.Charts[0].CursorModule.XCursor.Count; i++)
{
if (tmpCursor == scopeViewControl1.Charts[0].CursorModule.XCursor[i])
{
dataGridView1.ClearSelection();
dataGridView1[1, i].Selected = true;
}
}
}
else
{
for (int i = 0; i < scopeViewControl1.Charts[0].CursorModule.YCursor.Count; i++)
{
TwinCAT 3 Scope View
Version: 1.4
93
.NET API
if (tmpCursor == scopeViewControl1.Charts[0].CursorModule.YCursor[i])
{
dataGridView2.ClearSelection();
dataGridView2[0, i].Selected = true;
}
}
}
}
5.1.4
Sample Scope Export
Im folgenden Beispiel wird erläutert, wie eine Scope- Datei in einen anderen Dateityp (Beispielsweise .txt
oder.csv) exportiert wird.
Die Grundlage dieses Samples ist die Programmiersprache C# in einem Windows Forms- Projekt.
Die Oberfläche dieses Samples besteht aus zwei Textboxen zur Eingabe der Pfade und einem Button um
den Export zu starten.
Das ScopeViewControl benötigt das .NET Framework 4.0.
Das ".NET Framework 4 Client Profile" wird nicht unterstützt.
Diese Anwendung ist eine 32-Bit basierte Anwendung.
Hinweis
Installation des .NET Framework 4.0
1. Klicken Sie mit der rechten Maustaste auf das Projekt und wählen die „Properties“ aus.
2. Wählen Sie unter „Application“ das Target framework „.NET Framework 4.0“ aus
Das Programm ist in der folgenden Datei zu finden: http://infosys.beckhoff.com/content/1031/
TE13xx_TC3_ScopeView/Resources/zip/2282223499.zip
Die Variablen beziehen sich auf das TwinCAT Programm hinter folgender Datei: http://infosys.beckhoff.com/
content/1031/TE13xx_TC3_ScopeView/Resources/zip/2282225419.zip
5.1.4.1
Export
Zunächst wird überprüft, ob beide Pfade richtig angegeben wurden.
Danach wird die Konfigurationsdatei (.svd-Datei) in einem ScopeViewControl geladen. Dieses wird aber
nicht wie in den anderen Samples dazu verwendet, die Konfiguration auf der Oberfläche auszugeben,
sondern soll zum Exportieren dienen.
Ist die Konfiguration geladen, wird der Pfad, in dem die neue Datei gespeichert werden soll, gesplittet,
sodass einen String gebildet wird, in dem das Dateiformat enthalten ist. Dabei wird die Dateiendung zuerst
auf alle zum Export möglichen Dateiformate überprüft. Ist das passende Format gefunden, wird auf die
Instanz des ScopeViewControl die jeweilige Export-Methode aufgerufen. Als Parameter wird der Methode
der Ziel- Pfad der neuen Datei übergeben.
Danach ist zu beachten, dass die Konfiguration mit der Methode „DisConnect(true)“ vom Control getrennt
wird und der Chart mit der Methode „DeleteChart()“ gelöscht wird.
94
Version: 1.4
TwinCAT 3 Scope View
.NET API
static String svdFile, destination;
ScopeViewControl control = new ScopeViewControl();
private void export_button_Click(object sender, EventArgs e)
{
svdFile = @textBox_SVD.Text;
destination = @textBox_Export.Text;
try
{
//Checking the existens of the path
if (destination == null)
destination = Environment.CurrentDirectory;
if (string.IsNullOrEmpty(svdFile) || !File.Exists(svdFile))
{
Console.Write("SVD File could not be found.");
}
else
{
control.LoadScopeConfig(svdFile);
}
if (string.IsNullOrEmpty(destination))
{
Console.Write("No destination file defined.");
}
else
{
//search the Method with the right export
FileInfo fInfo = new FileInfo(destination);
string format = fInfo.Extension;
if (format.Equals(ScopeViewControl.socpeExportTdmsExtention))
{
control.Operating.ExportDataToTDMS(destination);
}
else if (format.Equals(ScopeViewControl.ScopeExportCSVExtension) || format.Equals(ScopeViewControl.ScopeExportTXTExtension))
{
control.Operating.ExportData(destination);
}
else if (format.Equals(ScopeViewControl.ScopeExportBinaryExtention))
{
control.Operating.ExportDataBinary(destination);
}
else if (format.Equals(ScopeViewControl.ScopeExportDatExtention))
{
control.Operating.ExportDataToDat(destination);
}
else
{
Console.Write("Unknown format.");
}
}
//Disconnect the .svd File
control.Operating.DisConnect(true);
control.DeleteChart(control.Charts[0]);
}
catch (Exception ex)
{
Console.Write(ex.ToString());
Console.ReadLine();
control.Operating.DisConnect(true);
}
}
5.2
Integration in ein WPF (Windows Presentation
Foundation) Projekt
Um das ScopeViewControl auch innerhalb von WPF Anwendungen zu nutzen, benötigen Sie einen
WindowsFormsHost als Grundlage, da das ScopeViewControl ein Windows Forms UserControl ist.
TwinCAT 3 Scope View
Version: 1.4
95
.NET API
1. Platzieren Sie in Ihrer erstellten WPF Applikation ein WindowsFormsHost- Control aus der Toolbar auf
Ihrer Benutzeroberfläche.
2. Initialisieren Sie das ScopeViewControl wie es in den Windows Forms- Beispielen beschrieben ist und
fügen Sie das erstellte ScopeViewControl dem WindowsFormsHost hinzu. Bei der Nutzung des
ScopeViewControl innerhalb der WPF Applikation muss lediglich das Property
"ScopeViewControl.Operating.SupportWpfRefresh" gesetzt werden.
Eine beispielhafte Implementierung sähe demnach folgendermaßen aus:
namespace WpfApplication
{
///
/// Interaction logic for MainWindow.xaml
///
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
ScopeViewControl scopeViewControl = new ScopeViewControl();
scopeViewControl.Operating.SupportWpfRefresh = true;
// Initialisierung des ScopeViewControl
windowsFormsHost1.Child = scopeViewControl;
}
}
} 5.3
API Dokumentation
Die angehängte Klassenbibliothek bietet eine umfangreiche Informationsquelle für Entwickler, die mit den
Technologien und Diensten von TwinCAT Scope arbeiten. Die Library enthält unter anderem Anleitungs- und
Referenzdokumentationen, sowie Beispielcodes.
96
Version: 1.4
TwinCAT 3 Scope View
.NET API
Um die gewünschten Inhalte zu finden, navigieren Sie durch das Inhaltsverzeichnis, verwenden Sie die
Suchfunktion, oder wechseln Sie mithilfe eines Quicklinks in einen der Bereiche der Bibliothek
Für Beispielcodes wechseln Sie im linken Bereich der Oberfläche auf den Tab "Search" und suchen Sie
nach dem Stichwort "examples".
In den Suchergebnissen finden Sie so Beispielcodes zu den Bereichen TriggerModule, Cursor und vielen
mehr.
Dokumentation der Klassenbibliothek
TwinCAT 3 Scope View
Version: 1.4
97
Beispiele
6
Beispiele
6.1
TwinCAT 3 Scope View Erste Schritte
Um den schnellen Einstieg zu ermöglichen und die Arbeit mit dem Software-Oszilloskop TwinCAT 3 Scope
zu vereinfachen, werden auf dieser Seite die ersten Schritte kurz beschrieben. Es wird hier bewusst darauf
verzichtet auf jedes Detail einzugehen. So sind beispielsweise triggergesteuerte Aufnahmen und die
Reporterstellung nicht Gegenstand dieser Dokumentation.
1. Installation:
Für das Grundverständnis ist es wichtig zu wissen, dass mit einem Scope View auch grundsätzlich ein
Scope Server mitinstalliert wird, da andernfalls keine gespeicherten Daten lokal im View angezeigt werden
könnten. Im Gegensatz dazu kann die Scope Komponenteninstallation den Server auch ohne View auf
einem Zielgerät installieren.
2. Lizensierung:
Egal ob das Scope View durch sein eigenes Setup oder durch das TwinCAT 3 XAE Setup installiert wurde,
zunächst ist die aktivierte Lizenz "Base" für View und Server. Mit welchem Lizenzschlüssel welche
Funktionalität freigeschaltet wird erfahren Sie hier [} 6].
3. Neues Projekt:
Im Windows Start Menu kann das Scope View unter dem Eintrag Beckhoff ausgewählt werden.
Es öffnet sich das Visual Studio in seiner Shell oder in einer möglicherweise installierten Vollversion. Es
kann zwischen verschiedenen Templates ausgewählt werden.
98
Version: 1.4
TwinCAT 3 Scope View
Beispiele
Im Solution Explorer baut sich dann der Ausgangspunkt für die neue Scope Konfiguration automatisch
zusammen.
4. Auswählen von Kanälen:
Der erzeugten Konfiguration müssen jetzt noch Variablen bzw. Kanäle hinzugefügt werden. Diese kann man
über den Target Browser auswählen. Bei der erstmaligen Verwendung kann es sein, dass dieser nicht direkt
als Fenster im Visual Studio sichtbar ist. Mit einem Rechtsklick auf den Scope Knoten kann der Target
Browser im Kontextmenu ausgewählt werden.
TwinCAT 3 Scope View
Version: 1.4
99
Beispiele
Alternativ kann der Target Browser auch über das Scope Menu im Visual Studio ausgewählt werden. Hat
sich der Target Browser geöffnet, so kann das Fenster an einer beliebigen Stelle in der Oberfläche
angedockt werden. Durch das Hineinbrowsen in das jeweilige Zielsystem ist es möglich die gewünschten
Variablen auszuwählen.
Die Variablen können per Multiselect ausgewählt und per Rechtsklick "Add Symbol" oder per Drag & Drop
zur Konfiguration hinzugefügt werden.
100
Version: 1.4
TwinCAT 3 Scope View
Beispiele
Die gewählten Kanäle werden der zuletzt selektierten Achse zugewiesen. In diesem Fall ist nur eine Achse
vorhanden.
5. Die Aufnahme:
Vor einer Aufnahme müssen in den Scope Properties noch die grundlegenden Einstellungen zur Aufnahme
gemacht werden. Standard ist eine zehn minütige Aufnahme, welche manuell gestartet und nach der
entsprechenden Zeit automatisch gestoppt wird. Für alle Hierarchieebenen Scope, Chart, Achse und Kanal,
sowie für Trigger und Cursor können die Einstellungen im Standard Property Fenster vom Visual Studio
vorgenommen werden. Ein einfacher Klick auf dem entsprechenden Element im Solution Explorer genügt,
vorausgesetzt das Property Fenster wurde bereits unter View im Visual Studio erstmalig geöffnet.
TwinCAT 3 Scope View
Version: 1.4
101
Beispiele
Wenn man die Standardeinstellungen belässt, kann man die Aufnahme starten. Dazu muss bei erstmaliger
Verwendung noch die Scope Toolbar geöffnet werden.
Im Visual Studio > View Toolbars > TwinCAT Measurement.
Klickt man das Icon mit dem roten Aufnahmesymbol an startet die Aufzeichnung.
102
Version: 1.4
TwinCAT 3 Scope View
Beispiele
6. Während der Aufnahme:
Um die Darstellung der Kanäle im View zu verbessern, können im TwinCAT 3 Scope View Charts und
Achsen auch während der Aufnahme hinzugefügt und Kanäle innerhalb des Scopes verschoben werden.
TwinCAT 3 Scope View
Version: 1.4
103
Beispiele
X- und Y-Cursor können ebenfalls zur Laufzeit hinzugefügt und gelöscht werden.
104
Version: 1.4
TwinCAT 3 Scope View
Beispiele
Ein wichtiges Feature ist die Möglichkeit, das Display der aktuellen Aufnahme anzuhalten, während die
Aufzeichnung der Daten im Hintergrund weiter läuft. Ist das Display gestoppt, kann man ganz in Ruhe in die
Daten hineinzoomen und mit den Cursorn den Signalverlauf analysieren.
7. Aufnahme stoppen und Daten abspeichern: In diesem Fall wird die gestartete Aufnahme automatisch
nach Ablauf der Aufnahmezeit von zehn Minuten gestoppt. Alternativ kann natürlich auch zu jeder Zeit die
Aufnahme manuell über den Stopp-Button in der Scope Toolbar beendet werden. Die aufgenommenen
Daten sind erst konsitent, wenn sie als .svd Datei abgespeichert werden. Im Visual Studio auf das Scope
Menu klicken und Save Data auswählen.
TwinCAT 3 Scope View
Version: 1.4
105
Beispiele
106
Version: 1.4
TwinCAT 3 Scope View
Anhang
7
Anhang
7.1
FAQ - Häufig gestellte Fragen und Antworten
In diesem Bereich werden häufig gestellte Fragen beantwortet, um Ihnen die Arbeit mit TwinCAT 3 Scope zu
erleichtern.
Wenn Sie noch weitere Fragen haben, kontaktieren Sie bitte unseren Support (-157)
1. Ist es richtig, dass in der TwinCAT 3 Welt "TC3 Scope" kein Produkt, sondern ein Oberbegriff für
verschiedene Produkte ist?
2. Weshalb gibt es für das TC3 Scope unterschiedliche Produktlevel?
3. Kann man das Scope View Professional mit dem Scope Server Base betreiben? Welche
Einschränkungen gibt es?
4. Wozu braucht man die TF3300 Scope Server, wenn man auch die "Use local Server" Option
einschalten kann?
5. Kann man das TwinCAT Scope View in eine eigene Visualisierung einbinden?
6. Ist es möglich aufgenommene Scope Charts aus zu drucken?
7. Gibt es Multimedia Dokumentationen zum TwinCAT 3 Scope?
8. Meine Scope .svd Dateien liegen auf einem Netzlaufwerk. Warum kann ich diese nicht öffnen?
? Ist es richtig, dass in der TwinCAT 3 Welt "TC3 Scope" kein Produkt, sondern ein Oberbegriff für
verschiedene Produkte ist?
! Ja, "TC3 Scope" ist ein Oberbegriff. Das TC3 Scope ist in die Produkte Scope View und Scope Server
unterteilt. Dies bedeutet, dass sich ein TC3 Scope immer aus den Produkten View und Server
zusammensetzt. Darüber hinaus gibt es noch unterschiedliche Produktlevel.
? Weshalb gibt es für das TC3 Scope unterschiedliche Produktlevel?
! Das Scope ist ein ständig wachsendes Tool für Datenaufzeichnung und Analyse, allerdings benötigt nicht
jeder Scope-Nutzer immer den vollen Funktionsumfang für seine Zwecke. Daher bieten wir möglichst auf
den Anwendungsfall zugeschnittene Produktlevel. Aktuell gibt es die Produktlevel Base und Professional.
Base ist lizenzkostenfrei und kann hervorragend für die Maschineninbetriebnahme verwendet werden.
Professional ist über die Maschineninbetriebnahme hinaus bestens für die Prozessüberwachung geeignet.
? Kann man das Scope View Professional mit dem Scope Server Base betreiben? Welche
Einschränkungen gibt es?
! Ja, man kann das Professional View auch mit dem Base Server betreiben. Es sind lediglich die
Einschränkungen der Base Server Version zu beachten. Auch möglich ist es beispielsweise ein RemoteGerät mit dem lokalen Base Server zu scopen. Dazu muss nur die Option "Use local Server" in den
Kanaleinstellungen gesetzt werden.
? Wozu braucht man die TF3300 Scope Server, wenn man auch die "Use local Server" Option
einschalten kann?
! Sobald ein Scope Server autark auf einem Remote-Gerät laufen soll, wird die TwinCAT Function TF3300
Scope Server benötigt. Der Server kann so z.B. aus der SPS gesteuert werden, ohne das ein View
verbunden ist.
? Kann man das TwinCAT Scope View in eine eigene Visualisierung einbinden?
! Ja, man kann das Scope Control in die eigene .NET basierte Visualisierungs-Applikation einbinden. Das
Lizenzmodell bleibt identisch. Details und Beispiele findet man hier.
? Ist es möglich aufgenommene Scope Charts aus zu drucken?
! Durch das Einfügen eines Reports in ein Scope Projekt kann der aktuell angezeigte Chart ausgedruckt
werden. Darüber hinaus werden Randdaten wie Kanalname, Achsenname oder Werte, welche von Cursor
dargestellt werden angezeigt und dem Ausdruck hinzugefügt. Mehr dazu erfahren Sie hier.
TwinCAT 3 Scope View
Version: 1.4
107
Anhang
? Gibt es Multimedia Dokumentationen zum TwinCAT 3 Scope?
! Ja es gibt eine Aufzeichnung von einem TwinCAT 3 Scope Webinar auf der Beckhoff Homepage.
? Meine Scope .svd Dateien liegen auf einem Netzlaufwerk. Warum kann ich diese nicht öffnen?
! Das wird daran liegen, dass der TwinCAT 3 Scope Server Service keine Zugriffsrechte auf das
Netzwerkverzeichnis hat. Damit dennoch .svd Dateien geöffnet werden können, müssen diese entweder auf
das lokale System kopiert oder dem Scope Server Service die entsprechenden Rechte eingeräumt [} 112]
werden.
7.2
TwinCAT Scope Glossar
Begriff
Scope
Scope Server
Scope View
YT Chart
Overview Chart
XY Chart
Array Bar Chart
Achse
Kanal
Data Picker
Target Browser
Solution Explorer
Measurement Project
Cursor
Marks
Trigger
Quick View Chart
108
Beschreibung
Das Scope bildet das oberste hierarchische Element in einer ScopeKonfiguration und verwaltet alle Aufnahmeeinstellungen.
Der Scope Server ist das Logger-Programm vom TwinCAT Scope. Ein
Scope verbindet sich mit einem Server um neue Daten aufzunehmen oder
ein vorhandene Datei (.svd) auszulesen.
Das Scope View ist das Front-End vom TwinCAT Scope. Von hier werden
Konfigurationen erstellt oder geladen, die Anzeige eingestellt und
Aufnahmen gesteuert.
Das Chart stellt eine Zeichenfläche mit Zeitachse zur Verfügung. Alle
angeschlossenen Kanäle werden auf den gleichen Zeitausschnitt skaliert.
Ein Overview Chart kann in einem YT Chart eingeblendet werden. Er liefert
eine Übersicht über die gesamte Aufnahmedauer mit absoluten Zeiten.
Das Chart stellt eine Zeichenfläche für einen Kanal zur Verfügung, welcher
sich aus zwei Variablen berechnet. Eine Variable wird auf der X-Achse und
eine auf der Y-Achse angegeben.
Das Chart stellt die Zeichenoberfläche für ein Array- Datentyp zur
Verfügung, dessen Elemente jeweils einer Bar-Linie bzw. einem Balken
zugeordnet sind.
Eine (Y-) Achse stellt die Werteskalierung für angeschlossene Kanäle dar.
Der Kanal bildet die Verbindung von Systemvariable und Graph. Daher gibt
es ein Einstellfenster für die Akquisition und eines für die allgemeinen
Einstellungen (Farben, Marks etc.).
Ist ein Mauszeiger-Instrument, welches automatisch im Chart bei
Überfahren eines Datenpunktes aktiviert wird. Durch einen Klick werden in
einem Tool-Tipp die Werte von X- und Y- Achse, Kanalname und
Absolutzeit für den ausgewählten Datenpunkt angezeigt.
Mit dem Target Browser können alle angeschlossenen Systeme und deren
Geräte einfach nach Systemvariablen durchsucht werden.
Der Solution Explorer ist eine Art Projekt-Verwalter, unter anderem auch für
die Measurement- Projekte, welche für eine Scope-Aufnahme notwendig
sind.
Das Measurement Project kann mehrere Scope-Projekte beinhalten, worin
die tatsächlichen Aufnahmekonfigurationen erstellt werden.
Zur Anzeige von Graph- und Achswerten und deren Differenzen dient das
Cursor-Modul.
Marks sind die tatsächlichen Datenpunkte einer aufgenommenen
Variablen. Sie können über die Kanal-Eigenschaften eingestellt werden.
Mit frei konfigurierbaren Triggergruppen können verschiedene Aktionen
ausgelöst werden.
Das Quick View Chart ist ein Chart, welches im Target Browser zur
Verfügung steht. Dieses hilft um sich schnell ohne fertige Konfiguration
eine Übersicht zu verschaffen, ob aktuell Werte geliefert werden.
Version: 1.4
TwinCAT 3 Scope View
Anhang
7.3
How To's
7.3.1
Oversampling-Aufnahmen mit dem TwinCAT 3 Scope
Mit dem TwinCAT 3 Scope ist es möglich, Oversamping-Werte in einer einzigen Variablen darzustellen. Da
beim Oversampling für jeden Zyklus n Werte (n = Oversampling-Faktor) aufgenommen werden, generiert der
TwinCAT System Manager ein ADS-Symbol, welches für jeden einzelnen Wert einen eigenen Zeitstempel
beinhaltet. Verbindet man sich auf dieses ADS-Symbol mit dem Scope, so übernimmt das Scope alle
weiteren Einstellungen, um die n Werte in einer zeitlich korrekten Reihenfolge darzustellen.
Damit das ADS-Symbol erzeugt wird und direkt von einer EtherCAT-Klemme (z.B. EL3702 oder EL3632)
gescopet werden kann, müssen einige Einstellungen in der TwinCAT System Manager Konfiguration
vorgenommen werden:
Im EtherCAT Prozessabbild muss im Karteireiter ADS der ADS-Server aktiviert und die Option Symbole
Erzeugen eingeschaltet werden. Der zugewiesene ADS-Port muss später im Scope angegeben werden, um
die ADS-Symbole zu finden.
Für die entsprechende Oversampling Klemme sollte der gewünschte Oversampling-Faktor im TwinCAT
System Manager eingestellt werden, bevor dann die Konfiguration aktiviert wird.
TwinCAT 3 Scope View
Version: 1.4
109
Anhang
Wenn die Konfiguration erfolgreich geladen wurde und TwinCAT im Run-Mode ist, kann man in das
TwinCAT 3 Scope wechseln. Im Target Browser des Scopes sind die Server Settings aufzurufen. Im
entsprechenden Dialog muss die vom TwinCAT System Manager zugewiesene ADS-Portnummer
eingetragen und mit dem Add-Button hinzugefügt werden, vorausgesetzt der Port ist nicht schon zuvor
eingetragen worden.
110
Version: 1.4
TwinCAT 3 Scope View
Anhang
Jetzt sollte im Scope Target Browser AdsPort of Image X (27905) erscheinen. Über diesen neuen Eintrag
kann man in die EtherCAT Klemmen und so auch in die gewünschte Oversampling-Klemme hinein browsen.
In der Oversampling-Klemme sollte die rot gekennzeichnete Variable mit dem Zusatz [T20] (20 steht in
diesem Fall für 20-fach Oversampling, diese Zahl kann entsprechend dem Oversampling-Faktor variieren)
für die Scope-Aufnahme ausgewählt werden.
TwinCAT 3 Scope View
Version: 1.4
111
Anhang
Die INT16 Variable kann jetzt im TwinCAT Scope direkt aufgezeichnet werden. Im folgenden Screenshot 20fach Oversampling bei 1ms Zykluszeit.
7.3.2
.svd Dateien aus einem Netzwerkverzeichnis öffnen
Wenn eine .svd Datei aus dem Netzwerk in die Solution eingebunden werden soll, wird ohne entsprechende
Vorbereitung vermutlich folgende Fehlermeldung auftreten:
112
Version: 1.4
TwinCAT 3 Scope View
Anhang
An unknown Error occured. Error handling .svd file within scope server. Enable and check scope server
tracing.
Im Server Tracing Log findet sich dann meistens einer der folgenden Einträge:
"ScopeServerTraceSource",Error,8442,"Access to the path '\\remote-PC\SVDs\test.svd' is
denied.",,368,,"16","2014-04-28T07:26:59.9720667Z",,
oder
"ScopeServerTraceSource",Error,8442," Could not find file '\\remote-PC\SVDs\test.svd
'.",,3376,,"16","2014-04-28T07:26:59.9720667Z",,
Beide Fehler sagen aus, dass der TwinCAT Scope Server Service keine Zugriffsrechte auf das
Netzwerkverzeichnis hat.
Um dem TwinCAT Scope Server die nötigen Rechte zu erteilen, gehen Sie bitte wie folgt vor
(Beispielhaft für Windows 7):
1. Machen Sie einen Rechtsklick auf das freizugebende Verzeichnis -> Properties -> Tab Sharing -> Share
2. Tragen Sie die Benutzer ein, die Zugriff auf das Verzeichnis bekommen sollen. Permisson Level Read
ist für den Scope Server Zugriff und zur Darstellung der .svd Datei ausreichend.
3. Klicken Sie auf Windows-Taste + R -> „services.msc“ -> TwinCAT3 Scope Server -> Log on ->
TwinCAT 3 Scope View
Version: 1.4
113
Anhang
4. Geben Sie den Account an, mit dem Sie auf das Netzwerkverzeichnis Zugriffsrechte haben.
5. Achten Sie gegebenenfalls auf die korrekte Anwendung Ihrer Server Domain.
6. Starten Sie nach dem Bestätigen den Service einmal neu, um die neuen Benutzerdaten zu
übernehmen.
ð Anschließend können auf diesem System .svd Dateien aus dem eingerichteten Netzwerkverzeichnis im
Measurement Projekt geöffnet werden.
114
Version: 1.4
TwinCAT 3 Scope View

Documentos relacionados