Download canAnalyser

Transcript
Softwarehandbuch
canAnalyser
Version 3
IXXAT Automation GmbH
Leibnizstr. 15
88250 Weingarten
Germany
Tel.: +49 751 56146-0
Fax: +49 751 56146-29
Internet: www.ixxat.de
E-Mail: [email protected]
Support
Sollten Sie zu diesem, oder einem unserer anderen Produkte Support benötigen, wenden Sie sich bitte schriftlich an:
Fax: +49 751 56146-29
E-Mail: [email protected]
Unsere internationalen Supportkontakte finden Sie im Internet
unter www.ixxat.de
Copyright
Die Vervielfältigung (Kopie, Druck, Mikrofilm oder in anderer Form) sowie
die elektronische Verbreitung dieses Dokuments ist nur mit ausdrücklicher, schriftlicher Genehmigung von IXXAT Automation GmbH erlaubt.
IXXAT Automation GmbH behält sich das Recht zur Änderung technischer Daten ohne vorherige Ankündigung vor. Es gelten die allgemeinen
Geschäftsbedingungen sowie die Bestimmungen des Lizenzvertrags. Alle
Rechte vorbehalten.
Geschützte Warenzeichen
Alle in diesem Dokument genannten und ggf. durch Dritte geschützten
Marken- und Warenzeichen unterliegen uneingeschränkt den Bestimmungen des jeweils gültigen Kennzeichenrechts und den Besitzrechten
der jeweiligen eingetragenen Eigentümer. Eine fehlende Kennzeichnung
von Marken- und Warenzeichen bedeutet nicht automatisch, dass diese
nicht markenrechtlich geschützt sind.
Handbuchnummer: 1.02.0133.30000
Version: D-3.00
Inhaltsverzeichnis
Inhaltsverzeichnis
1 Übersicht
1.1 Einsatzbereich . . . . . . . . .
1.2 Funktionsweise . . . . . . . . .
1.3 Grundfunktionen . . . . . . . .
1.4 Der Begriff Analysekonfiguration
.
.
.
.
1
1
1
2
9
2 Installation und Inbetriebnahme
2.1 Systemvoraussetzungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 Starten des canAnalysers . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
11
11
11
3 Die Module des canAnalysers
3.1 Control Panel . . . . . . . . . . . . . . . .
3.1.1 Übersicht . . . . . . . . . . . . . .
3.1.2 Start/Stop der Hardware . . . . . .
3.1.3 Control Panel Hauptfenster . . . . .
3.1.4 Statusfenster . . . . . . . . . . . .
3.1.5 Ereignisprotokoll . . . . . . . . . .
3.1.6 Verwalten von Fensteranordnungen
3.1.7 Einfügen von Modulen . . . . . . .
3.1.8 Konfigurationsbaum . . . . . . . .
3.1.9 Startkonfiguration . . . . . . . . . .
3.1.10 Sprachauswahl . . . . . . . . . . .
3.1.11 Modul-Einstellungen . . . . . . . .
3.1.12 Zeitstempel-Einstellungen . . . . .
3.1.13 Menüreferenz . . . . . . . . . . . .
3.1.14 Schalterleiste . . . . . . . . . . . .
3.1.15 Tastaturkürzel . . . . . . . . . . . .
3.2 Receive-Modul . . . . . . . . . . . . . . .
3.2.1 Übersicht . . . . . . . . . . . . . .
3.2.2 Scroll-Ansicht . . . . . . . . . . . .
3.2.3 Overwrite-Ansicht . . . . . . . . . .
3.2.4 Datenänderungsanzeige . . . . . .
3.2.5 Anzeige von Fehlern . . . . . . . .
3.2.6 Filterung von Nachrichten . . . . .
3.2.7 Menüreferenz . . . . . . . . . . . .
3.2.8 Schalterleiste . . . . . . . . . . . .
3.2.9 Statusleiste . . . . . . . . . . . . .
3.2.10 Tastaturkürzel . . . . . . . . . . . .
3.3 Transmit-Modul . . . . . . . . . . . . . . .
13
13
13
13
13
15
15
16
16
17
22
23
24
24
26
27
27
28
28
29
30
30
31
31
32
33
33
34
34
canAnalyser
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
iii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Copyright IXXAT Automation GmbH
Inhaltsverzeichnis
3.4
3.5
3.6
3.7
3.3.1 Übersicht . . . . . . . . . . . . . . . . . . .
3.3.2 Programmfenster . . . . . . . . . . . . . . .
3.3.3 Erstellen von Sendeobjekten . . . . . . . . .
3.3.4 Bearbeiten der Sendetabelle . . . . . . . . .
3.3.5 Manuelles Senden . . . . . . . . . . . . . .
3.3.6 Zyklisches Senden . . . . . . . . . . . . . .
3.3.7 Drag-and-Drop . . . . . . . . . . . . . . . .
3.3.8 Menüreferenz . . . . . . . . . . . . . . . . .
3.3.9 Schalterleiste . . . . . . . . . . . . . . . . .
3.3.10 Statusleiste . . . . . . . . . . . . . . . . . .
3.3.11 Tastaturkürzel . . . . . . . . . . . . . . . . .
Trace-Modul . . . . . . . . . . . . . . . . . . . . .
3.4.1 Übersicht . . . . . . . . . . . . . . . . . . .
3.4.2 Programmfenster . . . . . . . . . . . . . . .
3.4.3 Trace-Aufzeichnung . . . . . . . . . . . . . .
3.4.4 Triggerung . . . . . . . . . . . . . . . . . .
3.4.5 Weiterverarbeitung einer Trace-Aufzeichnung
3.4.6 Menüreferenz . . . . . . . . . . . . . . . . .
3.4.7 Schalterleiste . . . . . . . . . . . . . . . . .
3.4.8 Statusleiste . . . . . . . . . . . . . . . . . .
3.4.9 Tastaturkürzel . . . . . . . . . . . . . . . . .
Replay-Modul . . . . . . . . . . . . . . . . . . . . .
3.5.1 Übersicht . . . . . . . . . . . . . . . . . . .
3.5.2 Replay-Fenster . . . . . . . . . . . . . . . .
3.5.3 Menüreferenz . . . . . . . . . . . . . . . . .
3.5.4 Statusleiste . . . . . . . . . . . . . . . . . .
3.5.5 Tastaturkürzel . . . . . . . . . . . . . . . . .
Signal-Modul . . . . . . . . . . . . . . . . . . . . .
3.6.1 Übersicht . . . . . . . . . . . . . . . . . . .
3.6.2 Projektdatenbasen . . . . . . . . . . . . . .
3.6.3 Scroll-Ansicht . . . . . . . . . . . . . . . . .
3.6.4 Overwrite-Ansicht . . . . . . . . . . . . . . .
3.6.5 Datenänderungserkennung . . . . . . . . . .
3.6.6 Logging-Ansicht . . . . . . . . . . . . . . . .
3.6.7 Graphansicht . . . . . . . . . . . . . . . . .
3.6.8 Signalauswahlbaum . . . . . . . . . . . . .
3.6.9 Kontextmenü des Signalauswahlbaums . . .
3.6.10 Tastaturkürzel des Signalauswahlbaums . . .
3.6.11 Menüreferenz . . . . . . . . . . . . . . . . .
3.6.12 Schalterleiste . . . . . . . . . . . . . . . . .
3.6.13 Statusleiste . . . . . . . . . . . . . . . . . .
3.6.14 Tastaturkürzel . . . . . . . . . . . . . . . . .
Signal-Transmit-Modul . . . . . . . . . . . . . . . .
3.7.1 Übersicht . . . . . . . . . . . . . . . . . . .
3.7.2 Programmfenster . . . . . . . . . . . . . . .
3.7.3 Auswählen von Signalen . . . . . . . . . . .
3.7.4 Senden von Signalen . . . . . . . . . . . . .
3.7.5 Menüreferenz . . . . . . . . . . . . . . . . .
3.7.6 Werkzeugleiste . . . . . . . . . . . . . . . .
3.7.7 Statusleiste . . . . . . . . . . . . . . . . . .
canAnalyser
iv
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
34
35
35
37
37
37
38
38
39
39
40
40
40
40
41
42
45
45
46
47
47
48
48
48
49
49
49
49
49
50
51
51
53
54
55
57
59
59
60
62
62
62
64
64
64
64
66
67
67
67
Copyright IXXAT Automation GmbH
Inhaltsverzeichnis
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
67
67
67
68
69
72
73
73
74
74
75
76
77
78
80
80
80
82
83
84
84
84
86
86
86
.
.
.
.
89
89
89
89
90
B Definitionen
B.1 Definitionen, Akronyme, Abkürzungen . . . . . . . . . . . . . . . . . . . . . . .
91
91
C Urheberrechte
C.1 Urheberrechte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.1.1 Urheberrecht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.1.2 Zusätzliche Urheberrechte . . . . . . . . . . . . . . . . . . . . . . . . .
93
93
93
93
3.8
3.9
3.10
3.11
3.7.8 Tastaturkürzel . . . . . . . . . . . . . . . . . .
Sequencer-Modul . . . . . . . . . . . . . . . . . . .
3.8.1 Übersicht . . . . . . . . . . . . . . . . . . . .
3.8.2 Befehlssyntax . . . . . . . . . . . . . . . . . .
3.8.3 Befehlsübersicht . . . . . . . . . . . . . . . .
3.8.4 Menüreferenz . . . . . . . . . . . . . . . . . .
3.8.5 Schalterleiste . . . . . . . . . . . . . . . . . .
3.8.6 Statusleiste . . . . . . . . . . . . . . . . . . .
3.8.7 Tastaturkürzel . . . . . . . . . . . . . . . . . .
Handhabung von Filtern . . . . . . . . . . . . . . . .
3.9.1 Filterkonfiguration . . . . . . . . . . . . . . . .
3.9.2 ID Range Filter . . . . . . . . . . . . . . . . .
3.9.3 ID/Data Mask Filter . . . . . . . . . . . . . . .
Integration von eigenen Analysemodulen . . . . . . .
Scripting-Host . . . . . . . . . . . . . . . . . . . . .
3.11.1 Übersicht . . . . . . . . . . . . . . . . . . . .
3.11.2 Der Scripting-Host in der Analyse-Konfiguration
3.11.3 Das Scripting-Host Fenster . . . . . . . . . . .
3.11.4 Skript bearbeiten . . . . . . . . . . . . . . . .
3.11.5 Skript ausführen . . . . . . . . . . . . . . . .
3.11.6 Skript anhalten . . . . . . . . . . . . . . . . .
3.11.7 Skript debuggen . . . . . . . . . . . . . . . .
3.11.8 Menüreferenz . . . . . . . . . . . . . . . . . .
3.11.9 Schalterleiste . . . . . . . . . . . . . . . . . .
3.11.10Tastaturkürzel . . . . . . . . . . . . . . . . . .
A Export
A.1 Export von CSV-Dateien . . . . . . . .
A.1.1 Verwendetes CSV-Format . . .
A.1.2 Import in Microsoft ® Excel . . .
A.1.3 Import in OpenOffice/LibreOffice
canAnalyser
v
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Copyright IXXAT Automation GmbH
Kapitel 1
Übersicht
1.1
Einsatzbereich
Der canAnalyser ist ein modernes, leistungsfähiges Werkzeug für die Entwicklung, Inbetriebnahme, Pflege und den Test von CAN-Netzwerken.
Der canAnalyser basiert auf der VCI-Softwareschnittstelle von IXXAT und ist für alle HardwareInterfaces von IXXAT verfügbar.
1.2
Funktionsweise
Der canAnalyser basiert auf einem modularen Konzept: Die Kommunikation mit Treiber und
Hardware wird von einer zentralen Server-Applikation, dem Control Panel übernommen, auf das
mehrere Client-Applikationen, sog. Analyse-Module, aufsetzen können. Diese Analyse-Module
werden vom Control Panel verwaltet und ihnen werden die von der Hardware empfangenen
Nachrichten zur Verfügung gestellt.
Auf der Hardware erfolgt die zeitkritische Vorverarbeitung wie die Zwischenspeicherung und das
Stempeln der Telegramme mit dem Empfangszeitpunkt.
Die Analyse-Module stellen durch die Weiterverarbeitung und Aufbereitung der vom Control Panel bereitgestellten Telegramme die eigentliche Analyse-Funktionalität zur Verfügung. Die Stimulation des Netzwerkes erfolgt gleichfalls über Analyse-Module, welche die zu sendenden Nachrichten dem Server übergeben, der die weitere Kommunikation mit der Hardware übernimmt.
Der Vorteil dieser Struktur liegt in der Modularität und einfachen Erweiterbarkeit, außerdem
können gleiche Analyse-Module mehrfach gestartet werden. Durch unterschiedliche ModulEinstellungen (z.B. Filter) wird eine bessere Übersichtlichkeit erreicht.
Folgende Grundfunktionen werden von den Analyse-Modulen zur Verfügung gestellt:
• Online-Anzeige von Schicht-2-Nachrichten (Receive-Modul)
• Einmaliges und zyklisches Senden von Schicht-2-Telegrammen (Transmit-Modul)
• Aufzeichnung und Offline-Auswertung von Schicht-2-Nachrichten (Trace-Modul)
• Textuelle und grafische Anzeige von interpretierten Nachrichteninhalten (Signalen) sowie
Statistik-Signalen (Signal-Modul)
• Senden von Signalen (SignalTransmit-Modul)
• Zeitsynchrones Analysieren mehrerer Busse
canAnalyser
1
Copyright IXXAT Automation GmbH
Kapitel 1. Übersicht
• Darstellung der Buslast
• Emulation von Knoten und Protokollabläufen durch Abarbeitung von kommandogesteuerten Nachrichtensequenzen (Sequencer-Modul, CAN)
• Datenänderungs- und Zykluszeitüberwachung
Weitergehende Analyse-Möglichkeiten können über benutzerdefinierte Module in .NETkompatiblen Sprachen realisiert werden. Beispiele in C# und VB.NET für die gängige Szenarien
werden mitinstalliert. Weitere Informationen entnehmen Sie bitte der .NET API Dokumentation.
1.3
Grundfunktionen
Das folgende Kapitel führt in die wichtigsten Funktionen des Control Panels und der AnalyseModule ein. Eine tiefergehende Erläuterung der einzelnen Programmmodule finden Sie in Kapitel
5 - Die Module des canAnalysers.
Konfiguration
Das Control Panel ist die Steuerzentrale des canAnalysers und stellt die folgenden Funktionen
bereit:
• Konfiguration der Hardware
• Bestimmung der zu verwendenden Projektdatenbasen. Die Projektdatenbasen enthalten
u.a. die Namen der Nachrichten die Zykluszeit und die Datenlänge und stellt die Grundlage
für die Interpretation von Schicht-2-Nachrichten dar.
• Anzeige von Bus- und Controller-Status
• Erstellen, Laden und Speichern der Analyse-Konfiguration
Das Control Panel (Abb. 1.1) stellt folgende Anzeigebereiche zur Verfügung:
• Modul-Übersicht mit verfügbaren Analyse-Modulen
• Konfigurationsbaum mit der aktuellen Analyse-Konfiguration
• Busstatus-Fenster
• Layouts-Fenster
• Fehlerprotokoll-Fenster
Aus dem Konfigurationsbaum sind folgende Informationen ersichtlich:
• Name der geladenen Konfiguration
• Liste der virtuellen Busse
• Zuordnung der Controller mit ihren Einstellungen
• Zuordnung der Analyse-Module zu den einzelnen virtuellen Bussen
Um ein Analyse-Modul aus der Modulübersicht mit einem Controller zu verbinden, wird das entsprechende Modul mit der Maus per Drag und Drop von der Modulübersicht auf den gewünschten Controller gezogen.
canAnalyser
2
Copyright IXXAT Automation GmbH
1.3. Grundfunktionen
Abbildung 1.1: Control Panel des canAnalysers
canAnalyser
3
Copyright IXXAT Automation GmbH
Kapitel 1. Übersicht
Abbildung 1.2: Receive-Modul
Empfangen von Nachrichten
Das Receive-Modul stellt die folgenden Analyse-Funktionen bereit:
• Empfang und Darstellung von Schicht-2-Nachrichten in zeitlicher Empfangsreihenfolge
(Scroll-Modus)
• Darstellung der empfangenen Nachrichten sortiert nach Identifiern (Overwrite-Modus)
• Ein- und Ausblenden beliebiger Nachrichten (Filterfunktion)
• Anzeige von Änderungen im Datenbereich der empfangenen Nachrichten
• Überwachung der Zykluszeit einzelner Nachrichten
• Anzeige von Busfehlern/Errorframes
• Anzeige der Daten in unterschiedlicher Darstellung (hexadezimal, dezimal, ASCII)
• Anzeige der Anzahl der empfangenen Nachrichten insgesamt (Scroll-Modus) oder je Identifier (Overwrite-Modus)
Zur einfacheren Identifizierung der Nachrichten wird in jedem Analyse-Modul der dem Identifier
zugeordnete Name aus den Projektdatenbasen angezeigt. Abb. 1.2 zeigt ein Receive-Modul.
Senden von Nachrichten
Mit dem Transmit-Modul (Abb. 1.3) lassen sich Sende-Nachrichten spezifizieren und einzeln
oder zyklisch versenden. Beim zyklischen Senden lässt sich die Anzahl der Nachrichten, ihre
Zykluszeit und ein Inkrement festlegen.
Nachrichtenaufzeichnung (Trace) von mehreren Bussen
Das Trace-Modul ermöglicht die parallele Nachrichtenaufzeichnung von mehreren Bussen auf
die Festplatte.
canAnalyser
4
Copyright IXXAT Automation GmbH
1.3. Grundfunktionen
Abbildung 1.3: Transmit-Modul
Abbildung 1.4: Trace-Modul
Die Nachrichtenaufzeichnung (Trace) erfolgt für die konfigurierten Bussysteme in getrennte Dateien. Die Nachrichten werden nach der Aufzeichnung in zeitlicher Relation zueinander und farblich gekennzeichnet dargestellt.
Über das Trace-Modul (Abb. 1.4) erfolgt sowohl die Steuerung und Konfiguration des Trace als
auch die Anzeige der Trace-Aufzeichnung.
canAnalyser
5
Copyright IXXAT Automation GmbH
Kapitel 1. Übersicht
Abbildung 1.5: Signal-Modul, Overwrite-Modus
Nachrichtenfilterung
Filter werden dazu verwendet innerhalb von Analysemodulen das Nachrichtenaufkommen zu
reduzieren. Hierzu konfiguriert der Anwender verschiedene Filter mit benutzerdefinierten Analysekriterien um den Nachrichtenstrom unter spezifischen Aspekten betrachten zu können. Filter
sind applikationsweit verfügbar und werden über einen benutzerdefinierten Namen identifiziert.
Der Anwender kann somit innerhalb eines Analysemoduls komfortabel einen Filter über dessen
Namen auswählen und sehr schnell zwischen verschiedenen Filterkonfigurationen wechseln.
Interpretation von Nachrichten
Mit dem Signal-Modul ist es möglich, empfangene Schicht-2-Nachrichten in Form von Signalen interpretiert darzustellen. Grundlage für die Interpretation sind die Datenbasen, die bei
der Konfiguration der Analyse-Umgebung spezifiziert wurden. Datenbasen können unter anderem mit dem Datenbasis-Editor erstellt werden. Weitere Informationen sind im Handbuch des
Datenbasis-Editors zu finden.
Auch im Signal-Modul kann die Nachrichtendarstellung in zeitlicher Empfangsreihenfolge (ScrollModus) oder vorkonfiguriert im Overwrite-Modus (Abb. 1.5) erfolgen. Im Overwrite-Modus wird
die Anzeige von Signalwert-Änderungen und die Überwachung der Zykluszeit unterstützt.
Zeitsynchrone Analyse
Die Anzeige empfangener Schicht-2-Nachrichten und interpretierter Signale der verschiedenen
Analyse-Module kann anhand des Zeitstempels synchronisiert werden.
Durch Doppelklick auf eine empfangene Nachricht oder auf ein empfangenes Signal wird die
canAnalyser
6
Copyright IXXAT Automation GmbH
1.3. Grundfunktionen
Abbildung 1.6: Sequencer-Modul
Anzeige der anderen Analyse-Module auf den der markierten Nachricht zeitlich am nächsten
liegenden Eintrag gescrollt und dieser markiert.
Die zeitsynchrone Analyse ist besonders hilfreich, wenn der Nachrichtenverkehr verschiedener
Bussysteme mit unterschiedlich hohem Busverkehr analysiert werden müssen und wenn Korrelationen zwischen verschiedenen Bussystemen hergestellt werden müssen.
Anzeige der Buslast
Für einen schnellen Überblick über die Buslast und eventuelle Fehlerzustände kann im ControlPanel für jeden Bus ein Statusdialog geöffnet werden, der die entsprechenden Informationen
anzeigt. Eine grafische Auswertung der Buslast kann auch über das Signal-Modul und die entsprechenden Statistik-Signal erfolgen.
Emulation von Knoten oder Protokollen durch Abspielen von Sequenzen
Das Sequencer-Modul (Abb. 1.6) stellt die Abarbeitung kommandogesteuerter NachrichtenSequenzen zur Verfügung und kann verwendet werden, um Knoten bzw. Protokollabläufe zu
emulieren oder eine bestimmte Buslast zu generieren.
Außerdem ermöglicht das Sequencer-Modul ein sog. Trace-Replay. Eine durch das Trace-Modul
aufgezeichnete Trace-Datei kann zu einer Nachrichten-Sequenz konvertiert und abgearbeitet
werden.
Graphische Anzeige von Dateninhalten
Das Signal-Modul unterstützt die Darstellung von Signalen in Form von y-t-Diagrammen (LinienSchreibern).
Integration von eigenen Analysemodulen
Durch die offene .NET Programmierschnittstelle hat der Anwender die Möglichkeit den canAnalyser um eigene Module oder Benutzerschnittstellen zu erweitern. Mit gängigen Windows Entwicklungssystemen (z. B. Visual Studio .NET, Delphi) können neue, eigenständige, auf .NET
canAnalyser
7
Copyright IXXAT Automation GmbH
Kapitel 1. Übersicht
Abbildung 1.7: Control Panel mit "C# CAN Tx" Beispiel-Analysemodul
Framework basierende Module entwickelt und dem canAnalyser hinzugefügt werden. So können z. B. Bedienoberflächen für eigene Systeme bzw. für bestimmte Geräte oder Werkzeuge mit
systemspezifischen Analysefunktionen erstellt werden.
.NET Module müssen einem vorgegebenen Schema entsprechen (siehe Beispiele und .NETAPI-Dokumentation) und werden in folgenden Verzeichnissen beim Start des canAnalysers gesucht:
• im Installationspfad (z.B. "c:\Program Files (x86)\IXXAT\canAnalyser3 standard")
• %UserDocs%\IXXAT\canAnalyser\3.0\UDModules (z.B. c:\Users\Hans\Documents\IXXAT\canAnalyse
• %PublicDocs%\IXXAT\canAnalyser\3.0\UDModules
c:\Users\Public\Documents\IXXAT\canAnalyser\3.0\UDModules)
(z.B.
Das Analysemodul wird übersetzt und dem canAnalyser als Assembly zur Verfügung gestellt. Die
beim Startup der canAnalyser Applikation automatisch erkannten benutzerspezifischen Module
werden zusammen mit den Standardmodulen in der Modulübersicht des Control Panels zur
Verfügung gestellt und können so mittels Drag-and-Drop gestartet werden (Abb. 1.7).
Ausführung von Skripten
Skripte erleichterten sowohl die Arbeit des Entwicklers während der Testphase als auch dem
Servicetechniker die Fehlersuche vor Ort, da die Erstellung und Änderung von Skripten sehr
flexibel und kosteneffektiv durchgeführt werden kann. Hierbei ist nicht zwingend eine Entwicklungsumgebung erforderlich und jede Modifikation kann sofort getestet werden.
Für die Konfiguration und Ausführung von Skripten stellt das Control Panel in der Modulübersicht
einen Scripting-Host als Analysemodul bereit (Abb. 1.8). Hierin ausführbare Skripte basieren auf
canAnalyser
8
Copyright IXXAT Automation GmbH
1.4. Der Begriff Analysekonfiguration
Abbildung 1.8: Scripting-Host mit Programmierbeispielen.
derselben offenen .NET Programmierschnittelle, die für die Integration von eigenen Analysemodulen verwendet wird. Der Scripting-Host unterstützt sowohl Console-basierte Skripte als auch
Skripte mit grafischer Benutzerschnittstelle (GUI).
1.4
Der Begriff Analysekonfiguration
Als Analysekonfiguration wird die Gesamtheit der Konfigurationsdaten im Control Panel und der
Einstellungen aller darin konfigurierten Analysemodule bezeichnet. D.h. es sind sowohl Hardwareparameter als auch Filtereinstellungen und modulspezifische Einstellungen, wie die Liste der
Sendenachrichten eines Transmit-Moduls enthalten. Des Weiteren umfasst eine Analysekonfiguration Layoutinformationen wie Position und Größe aller canAnalyser-Fenster.
Über das Control Panel kann die komplette Analysekonfiguration zentral in eine Konfigurationsdatei abgespeichert und später anhand dieser wiederhergestellt werden.
Um lediglich einzelne Teile einer Analysekonfiguration (z.B. die Liste der Sendenachrichten eines
Transmit-Moduls oder die Filtereinstellungen) in eine zweite Analysekonfiguration übernehmen
zu können bietet der canAnalyser an vielen Stellen die Möglichkeit, solche durch Export in eine
separate Datei zu abzulegen. In einer anderen Analysekonfiguration können die exportierten
Einstellungen an gleicher Stelle durch Importieren dieser Datei wiederhergestellt werden.
canAnalyser
9
Copyright IXXAT Automation GmbH
Kapitel 2
Installation und Inbetriebnahme
2.1
Systemvoraussetzungen
Für den Betrieb des canAnalysers müssen die folgenden Systemvoraussetzungen erfüllt sein:
• x86 kompatibler Processor mit minimum 800 MHz oder höher
• Windows XP, Windows Vista, Windows 7
• Mindestens 1GB Arbeitsspeicher
• Installierter IXXAT VCI-Treiber, Version 3 oder höher
Vor der Installation des canAnalysers muss die zu verwendende Hardware mit dem IXXAT VCITreiber installiert werden.
Zur Installation der CAN-Hardware lesen Sie bitte das Hardware-Installationshandbuch. Zur Installation des benötigten IXXAT VCI-Treibers beachten Sie bitte das VCI-Installationshandbuch.
2.2
Installation
Zur Installation des canAnalysers legen Sie die mitgelieferte Programm-CD in das CD-Laufwerk
ihres Rechners. Sollte das Installationprogramm nicht automatisch gestartet werden führen Sie
bitte die Setup-Datei(z.B. canAna30_std_XXXX.exe) auf der CD aus. Folgen Sie den Anweisungen des Installationsprogramms.
2.3
Starten des canAnalysers
Der canAnalyser wird durch Anklicken des auf dem Desktop angelegten Programmsymbols oder
über das Windows-Startmenü gestartet.
canAnalyser
11
Copyright IXXAT Automation GmbH
Kapitel 3
Die Module des canAnalysers
In diesem Kapitel werden die einzelnen Komponenten des canAnalysers detailliert beschrieben.
Die Bedienelemente, Menüs und Dialoge werden jeweils im Zusammenhang mit den einzelnen
Modulen erläutert.
3.1
3.1.1
Control Panel
Übersicht
Das Control Panel bildet die Steuerzentrale des canAnalysers. Über das Control Panel werden
die Analyse-Konfigurationen zusammengestellt und die einzelnen Module gestartet. Die eigentliche Analyse-Funktionalität wird von den konfigurierten Analyse-Modulen bereitgestellt.
3.1.2
Start/Stop der Hardware
Die Analyse kann über die Schalterleiste gestartet werden. Durch Betätigen des Schalters Controller starten in der Schalterleiste des Control Panels werden alle in der Konfiguration enthaltenen Feldbus-Controller gestartet.
Zum Anhalten der Hardware wird der Schalter Controller stoppen betätigt. Nur wenn die Hardware gestartet ist, können Objekte empfangen oder gesendet werden.
Das Starten und Stoppen der Controller/Hardware kann auch über die Menüpunkte Steuerung
| Kommunikation starten und Steuerung | Kommunikation stoppen vorgenommen werden.
3.1.3
Control Panel Hauptfenster
Das Programmfenster des Control Panels (Abb. 3.1) ist in folgende Bereiche unterteilt:
• Modulübersicht mit allen verfügbaren Analyse-Modulen
• Konfigurationsbaum mit der aktuellen Analyse-Konfiguration
• Statusfenster für jeden vorhandenen Bus/Controller.
• Ereignisprotokoll, hält interne Ereignisse fest
• Layoutliste, verwaltet mehrere Fensteranordnungen (Layouts) per Namen
canAnalyser
13
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.1: Die sichtbaren Bereiche des Control Panels
canAnalyser
14
Copyright IXXAT Automation GmbH
3.1. Control Panel
Abbildung 3.2: CAN-Statusfenster
3.1.4
Statusfenster
Für jeden vorhanden Controller hält das Control Panel ein Statusfenster (Abb. 3.2). Durch einen
Rechtsklick auf einen Controller im Konfigurationsbaum wird ein Popup-Menü (Abb. 3.6) sichtbar,
welches das ein- bzw. ausblenden des entsprechenden Statusfensters ermöglicht.
CAN-Statusfenster
Das CAN-Statusfenster enthält folgende Informationen:
Bedeutung
Anzeige aus
Anzeige an
CAN
Pend (Transmit pending)
CAN-Controller ist gestartet
Alle Nachrichten versendet,
Sendequeue ist leer
Ovr (Data overrun)
Warn (Warning level)
-
B.off (Bus off)
-
CAN-Controller ist gestoppt
Es stehen noch nicht gesendete Nachrichten in der HardwareSendequeue
CAN-Controller Overrun
CAN-Controller Fehlerzähler in
Error Warning Level
CAN-Controller in Bus off
Eine Online-Analyse ist ausschließlich bei gestarteter Hardware möglich.
Nach erstmaligem Auftreten eines Data Overrun bleibt die Data Overrun-LED an, sie erlischt erst
nach Stoppen und erneutem Starten der Controller.
Leuchtet die Bus off-LED, befindet sich der CAN-Controller im Bus off-Zustand, d.h. er wurde vom Bus abgetrennt und nimmt somit nicht mehr an der Netzwerkkommunikation teil. Die
Hardware muss gestoppt und wieder gestartet werden, um eine CAN-Kommunikation wiederherzustellen.
Die Buslast-Anzeige (Abb. 3.2) zeigt die prozentuale Auslastung des Busses an. Die Buslastmessung ist eine Hardwarefunktion, die nicht von allen Interfacekarten unterstützt wird. Die Anzeige der Buslast erfolgt nur dann wenn dies vom Interface unterstützt wird.
3.1.5
Ereignisprotokoll
Das Control Panel hat eine eigene Protokolleinrichtung zur Aufzeichnung von internen Ereignissen und Fehlern. Über den Menübefehl Ansicht | Ereignisprotokoll wird es angezeigt mit den
folgenden Informationen:
canAnalyser
15
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.3: Control Panel, Modul-Liste
Spalte
Bedeutung
Symbol
Timestamp
Sequence
Code
Thread
Module
Message
Art des Ereignisses: Erfolg, Nachricht, Warnung, Fehler, oder Folgezeile
Datum und Uhrzeit des Eintritts
Nachrichtennummer bezogen auf den jeweiligen canAnalyser Programmlauf
Hexadezimaler Fehlercode
Hexadezimaler Thread identifier
canAnalyser Modul, bei dem das Ereignis aufgetreten ist
Meldungstext
Das Ereignisprotokoll ist eine durch Kommata getrennte Textdatei, die sich im Benutzerverzeichnis unter C:\Users\fferg\AppData\Local\IXXAT\canAnalyser\3.0\Log\*\canAnalyser.log befindet.
Mit den entsprechenden Menübefehlen des Ansicht-Menüs läßt sich festlegen, welche Ereignisarten im Ereignisprotokollfenster angezeigt werden sollen. Der Menübefehl Ansicht | Ereignisprotokoll löschen leert das Ereignisprotokoll.
3.1.6
Verwalten von Fensteranordnungen
In der Layoutliste kann das aktuelle Fenster-Layout gespeichert, benannt und mit einem Hotkey
versehen werden, mit dem schnell auf ein gepeichertes Layout umgeschaltet werden kann.
3.1.7
Einfügen von Modulen
Einfügen von Modulen über Drag und Drop
Die Modul-Liste (Abb. 3.3) zeigt alle verfügbaren Analyse Funktionen und ist in Verbindung mit
der Erstellung einer Konfiguration relevant. Durch Drag und Drop der Icons wird die gewählte
Analyse-Funktion aus der Modul-Liste in den Konfigurationsbaum auf einen Bus gezogen und
kann in dieser Konfiguration als Analyse-Modul aktiviert werden. Eine Analyse-Funktion kann
durch wiederholtes Ziehen von der Modul-Liste in den Konfigurationsbaum für eine bestimmte
Konfiguration beliebig häufig aktiviert werden (nur bei canAnalyser standard möglich).
canAnalyser
16
Copyright IXXAT Automation GmbH
3.1. Control Panel
Abbildung 3.4: Kontextmenü des Konfigurationsbaums zum Einfügen von Modulen
Einfügen von Modulen über das Menü des Konfigurationsbaums
Durch Drücken der Einfügen-Taste wird im Konfigurationsbaum ein Menü (Abb. 3.4) angezeigt,
welches das Einfügen von Modulen in die Konfiguration ermöglicht. Das Menü zeigt jeweils nur
die vom Controller unterstützen Module an.
3.1.8
Konfigurationsbaum
Im Konfigurationsbaum (Abb. 3.5) ist die aktuelle Analyse-Konfiguration hierarchisch dargestellt.
Eine Analyse-Konfiguration definiert die folgenden Objekte:
• Projekt mit Namen der Projekt-/Konfigurations-Datei.
• Bus mit Kommunikationsparametern
• Analyse-Module
In diesem Abschnitt werden die Einstellungen, die über die Popup-Menüs des Konfigurationsbaums konfiguriert werden können, erläutert. Die vollständige Analyse-Konfiguration kann gespeichert und wieder hergestellt werden.
Um eine Analyse-Konfiguration zu erstellen werden die benötigten Analyse-Funktionen per Drag
und Drop von der Modul-Liste in den Konfigurationsbaum auf einen Bus/Controller gezogen. Anschließend werden die Elemente des Konfigurationsbaums konfiguriert. Hierzu hat jedes Symbol
im Konfigurationsbaum ein eigenes Popup-Menü (Abb. 3.6), welches über die rechte Maustaste
aktiviert werden kann. Folgende Einstellungen müssen vorgenommen werden:
• Einstellen der Eigenschaften des Busses
• Einstellen der Eigenschaften des Controllers
• Benutzerdefinierte Bezeichnung der Analyse-Module
Nach einer Änderung der Konfigurationseinstellungen wird eine aktive Konfiguration automatisch
kurzzeitig gestoppt und anschließend mit den aktualisierten Einstellungen wieder gestartet.
canAnalyser
17
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.5: Konfigurationsbaum des Control Panels
Abbildung 3.6: Popup-Menü eines CAN-Busses
canAnalyser
18
Copyright IXXAT Automation GmbH
3.1. Control Panel
Abbildung 3.7: Einstellung eines symbolischen Busnamens
Abbildung 3.8: Interpretations-Datenbasis auswählen/entfernen
Eingabe eines symbolischen Busnamens
Im Eingabefeld Name in der Kategorie Bus des Buseigenschaften-Dialogs (Abb. 3.7) kann der
Benutzer einen symbolischen Namen für den Bus definieren, der anschließend im Konfigurationsbaum des Control Panels angezeigt wird.
Auswahl einer Interpretations-Datenbasis
Mit dem Datenbasis Editor (siehe Handbuch Datenbasis-Editor) ist es möglich, einzelnen Identifiern und Daten von Schicht-2-Nachrichten symbolische Bedeutungen zuzuordnen und sie unter
Verwendung dieser Informationen zu interpretieren.
Existiert noch keine Datenbasis, so kann der Datenbasis-Editor direkt aus dem Menü Tools
| DIM Editor des Control Panels gestartet werden. Durch Betätigen des Öffnen-Schalters im
Feld Datenbasen (Abb. 3.8) öffnet sich eine Dialogbox mit der die Datenbasis, die dem Bus
zugrunde liegen soll, ausgewählt werden kann. Diese Datenbasis kann entweder im DIM(*.xml),
FIBEX(*.xml) oder im CANDB(*.dbc) Format vorliegen. Das Format der Datenbasis kann in der
der Dateityp Dropdown Liste des "Import File" Dialogs ausgewählt werden.
canAnalyser
19
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.9: CAN-Einstellungen
Alle Analyse-Module zeigen dann in ihrer Nachrichten-Spalte den symbolischen Namen, der
dem jeweiligen Identifier in der Datenbasis zugeordnet ist. Das Signal-Modul verwendet die Datenbasis zur vollständigen Interpretation einer empfangenen Schicht-2-Nachricht.
Einer Interpretationsdatenbasis liegt immer ein bestimmtes Nachrichtenformat zugrunde. Stimmen die Nachrichtenformate von Bus und Datenbasis nicht überein, werden Telegramme nicht
oder falsch interpretiert. Es ist darauf zu achten, dass die Nachrichtenformate von Bus und Datenbasis zusammenpassen.
CAN-Einstellungen
Über den Eigenschaften-Eintrag des Popup-Menüs eines CAN-Busses werden die Einstellungen des CAN-Controllers festgelegt. Dies sind:
• Nachrichtenformat
• Fehlertelegrammerkennung
• Bestätigungs-Verhalten
• Timing-Parameter
• Busankopplung (High- oder Lowspeed)
Abb. 3.9 zeigt den Dialog zur Einstellung der CAN-Controller-Parameter. Um Timing-Parameter
leichter zu identifizieren, werden diese über symbolische Namen verwaltet. Über die neben dem
Namen stehenden Schaltsymbole können die Parameter, die zu diesem Namen konfiguriert sind,
geändert werden und es können neue Einträge hinzugefügt werden.
Die Bedeutung der Parameter im CAN-Einstellungen-Dialog:
canAnalyser
20
Copyright IXXAT Automation GmbH
3.1. Control Panel
Abbildung 3.10: Bitrate auswählen, hinzufügen, bearbeiten oder löschen
Einstellung
Operation Mode Funktion
Protokoll
Definiert das Nachrichtenformat, mit dem der CAN-Controller
arbeitet (standard 11 Bit Identifier bzw. extended 29 Bit Identifier)
Ist diese Checkbox gesetzt, so werden auch Errorframes an die
verbunden Analyse-Module weitergeleitet
Ist diese Checkbox gesetzt, so wird der CAN-Controller im TxPassive Modus initialisiert, d.h. er hört am Bus, verhält sich aber
passiv und sendet somit keine Bestätigungen oder Fehlerrahmen.
Auswahl der physikalischen Busankopplung des CANControllers (Normalerweise Highspeed, ggf. Lowspeed).
Lowspeed ist ein fehlertoleranter 2-Draht Standard mit einer
maximalen Bitrate von 125 kBit/sec.
Fehlertelegramme erkennen
Tx passiv
Busankopplung
Einstellung Bitrate
Die Bitrate wird über den symbolischen Namen des Timings ausgewählt. Die dem Namen zugeordneten Timing-Parameter können geändert werden und es können neue Parametersätze
hinzugefügt oder alte gelöscht werden. Hierzu werden die Schalter neben dem symbolischen
Namen (Abb. 3.10) betätigt.
CAN Bitratenrechner
Der Bitratenrechner (Abb. 3.11) kann durch Betätigen des Hinzufügen oder Bearbeiten Schalters geöffnet werden. Hier können mittels Eingabe der gewünschten Bitrate die entsprechenden
Bittimingwerte berechnet werden.
Beschreibung der Eingabefelder im Bitraten-Einstellungsdialog:
Eingabefeld
Beschreibung
Bezeichnung
Bitrate (kbit/s)
Der symbolische Name des Timings
Zu berechnende Bitrate in kbit pro Sekunde
Beschreibung der Spalten in der Berechnungsliste:
canAnalyser
21
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.11: Der Bitratenrechner
Spalte
Beschreibung
BRP
TSEG1
TSEG2
SJW
Reg 0 (hex)
Reg 1 (hex)
Sample Point
Bitrate (kbit/s)
Baudrate Prescaler
Timing Segement 1
Timing Segement 2
Synchronisation Jump Width
Bus Timing Register 0 (Hexadezimale Darstellung)
Bus Timing Register 1 (Hexadezimale Darstellung)
Sample Location
Berechnete Bitrate mit den Werten der markierten Zeile
Analyse-Modul Popup-Menü
Durch Rechtsklick auf das Symbol eines Analyse-Moduls im Konfigurationsbaum erscheint ein
Popup-Menü (Abb. 3.12). Jedes Analyse-Modul kann über dieses Kontextmenü gestartet, umbenannt oder aus der Konfiguration entfernt werden. Außerdem ist es möglich, die Fenstergröße
eines Moduls zu verändern.
Ein Doppelklick auf ein Symbol eines Analyse-Moduls hat dieselbe Wirkung, wie das Modul
wiederherstellen-Kommando im Popup-Menü und versetzt das Fenster des entsprechenden
Moduls in der Vordergrund.
3.1.9
Startkonfiguration
Über den Optionen-Dialog kann festgelegt werden, welche Konfiguration das Programm beim
Start verwenden soll. Möglich sind:
• die Grundkonfiguration
• die leere Konfiguration
canAnalyser
22
Copyright IXXAT Automation GmbH
3.1. Control Panel
Abbildung 3.12: Popup-Menü der Analyse-Module
Abbildung 3.13: Dialog zur Startkonfiguration
• die zuletzt verwendete Konfiguration
• die Konfiguration aus einer festgelegten Konfigurationsdatei
Die Einstellung wird beim nächsten Neustart des canAnalysers angewendet.
3.1.10
Sprachauswahl
Mit dem Sprachauswahldialog (Abb. 3.14) kann die Spracheinstellung des canAnalysers verändert werden. In einer Liste werden die verfügbaren Sprachen angezeigt. Nach dem Ändern der
canAnalyser
23
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.14: Dialog zur Sprachauswahl
Spracheinstellungen ist ein Neustart des canAnalysers notwendig, um die Änderung wirksam
werden zu lassen.
3.1.11
Modul-Einstellungen
In diesem Dialog (Abb. 3.15) können Modul-spezifische Einstellungen vorgenommen werden.
Momentan ist das
• Die Sichtbarkeit der Module in der Taskleiste
• Zeilenanzahl der Scrollanzeige in ReceiveModulen (Standard 10000, max. 50000 Zeilen)
• Größe der Konsole in Scripting-Host Programmen (Standard 200, max. 20000 Zeilen)
Um die Einstellungen wirksam werden zu lassen, ist ein Neustart des canAnalysers notwendig.
3.1.12
Zeitstempel-Einstellungen
Der Zeitstempel-Einstellungen Dialog (Abb. 3.16). dient dazu die für Zeitstempel verwendete
Referenz-Zeit einzustellen. Zwei Optionen sind möglich:
• Zeitstempel bei Start der Kommunikation zurücksetzen
• Start der Kommunikation auf Systemzeit beziehen
Die erste Option setzt die Referenzzeit zum Zeitpunkt des Starts der Kommunikation auf null. Alle
weiteren Zeitstempel sind relativ zu diesem Zeitpunkt. Bei Verwendung der zweiten Option wird
zum Startzeitpunkt der Kommunikation die aktuelle Systemzeit ermittelt, und als Referenzzeit für
die folgenden Zeitstempel verwendet.
Für die Synchronisation der Startzeit gibt es zwei Verfahren, zwischen denen mit den Optionen:
canAnalyser
24
Copyright IXXAT Automation GmbH
3.1. Control Panel
Abbildung 3.15: Modul-Einstellungen Dialog
• Gemeinsame Uhr
• Mehrere Uhren
umgeschaltet werden kann.
Die Grundeinstellung "Gemeinsame Uhr" sollte verwendet werden, wenn entweder nur eine
CAN-Karte verwendet wird oder wenn alle verwendeten Karten PCIe basiert sind (diese verwenden eine gemeinsame Uhr). Da hier alle Quellen eine gemeinsame Uhr verwenden, wird der
erste Zeitstempel auf den Start der ersten Quelle bezogen.
Die Einstellung "Mehrere Uhren" ist nur dann sinnvoll, wenn der Startzeitpunkt mehrerer CANKarten, die keine gemeinsame Zeit-Basis haben, synchronisiert werden soll. Aufgrund der Laufzeiten im System kann dabei ein kleiner Versatz zwischen den verschiedenen Quelle auftreten.
Da zudem nur der Startzeitpunkt synchronisiert wird, kann sich über die Laufzeit hinweg die
unterschiedlich Drift der Uhren auswirken und die Beziehung der empfangenen Nachrichten zueinander verfälschen.
Um die Einstellungen wirksam werden zu lassen, ist ein Neustart der Kommunikation notwendig.
canAnalyser
25
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.16: Zeitstempel-Einstellungen Dialog
3.1.13
Menüreferenz
Datei-Menü
Menüpunkt
Funktion
Neu
Öffnen ...
Speichern
Erstellt eine neue leere Konfiguration
Öffnet eine bestehende Konfiguration und stellt diese her
Speichert die aktuelle Konfiguration unter dem bereits angegebenen Dateinamen
Speichert die aktuelle Konfiguration unter einem neu einzugebenden Dateinamen
Anzeige der zuletzt geöffneten Analyse-Konfigurationen
Beendet den canAnalyser
Speichern unter...
zuletzt geöffnete Dateien
Beenden
Ansicht-Menü
Menüpunkt
Funktion
Modulübersicht
Hardwarecontroller
Layoutliste
Ereignisprotokoll
Symbolleiste
Statusleiste
Schaltet die Modulübersicht sichtbar/unsichtbar
Schaltet die Hardwarecontroller Übersicht sichtbar/unsichtbar
Schaltet die Layoutliste sichtbar/unsichtbar
Einstellungen des Ereignisprotokolls
Schaltet die Symbolleiste sichtbar/unsichtbar
Schaltet die Statusleiste sichtbar/unsichtbar
canAnalyser
26
Copyright IXXAT Automation GmbH
3.1. Control Panel
Steuerung-Menü
Menüpunkt
Funktion
Kommunikation starten
Kommunikation stoppen
Starten der Online-Analyse
Anhalten der Online-Analyse
Fenster-Menü
Menüpunkt
Funktion
Alle schließen
Alle wiederherstellen
Alle anordnen
Horizontal anordnen
Vertikal anordnen
Layout merken
Frühere Layouts
Schließt alle Modulfenster
Schließt alle Modulfenster
Ordnet die Module hintereinander an
Ordnet die Module nebeneinander an (horizontale Aufteilung)
Ordnet die Module nebeneinander an (vertikale Aufteilung)
Speichert die aktuellen Fensterpositionen und -größen
Listet die zuletzt gespeicherten Layouts auf
Konfiguration-Menü
Menüpunkt
Funktion
Einstellungen...
Öffnet den Dialog zur Auswahl der modulübergreifenden canAnalyser Einstellungen
Einstellen von applikationsweit verfügbaren Nachrichtenfiltern (siehe Kapitel 3.9.1)
Verfügbare Filter...
Hilfe-Menü
Menüpunkt
Funktion
Hilfethemen
Info...
Öffnet die Online-Hilfe des Control Panels
Öffnet die Anzeige der Versionsinformationen des canAnalysers
3.1.14
Schalterleiste
Die wichtigsten Funktionen des Control Panels sind auch über die Schalterleiste (Abb. 3.17)
aufrufbar.
3.1.15
Tastaturkürzel
Strg+N
Strg+O
Strg+S
Strg+M
Strg+L
F5
Umschalten+F5
Alt+L
F1
Entf
canAnalyser
Eine neue Konfiguration erstellen
Eine vorhandene Konfiguration öffnen
Aktuelle Konfiguration speichern
Module ein/ausblenden
Layout Liste ein/ausblenden
Kommunikation starten
Kommunikation stoppen
Layout merken
Öffnet die Online-Hilfe
Modul entfernen
27
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.17: Schalterleiste des Control Panels
3.2
3.2.1
Receive-Modul
Übersicht
Das Receive-Modul stellt ein zentrales Modul für die Analyse von Schicht-2-Nachrichten dar. Es
stellt die folgenden Analyse-Funktionen bereit:
• Empfang und Anzeige von Schicht-2-Nachrichten in zeitlicher Empfangsreihenfolge
(Scroll-Modus)
• Darstellung der empfangenen Nachrichten sortiert nach Identifiern (Overwrite-Modus)
• Ein- und Ausblenden beliebiger Nachrichten (Filterfunktion)
• Anzeige von Änderungen im Datenbereich der empfangenen Nachrichten (OverwriteModus)
• Überwachung der Zykluszeit einzelner Nachrichten (Overwrite-Modus)
• Anzeige von Busfehlern/Errorframes
• Anzeige der Daten in unterschiedlicher Darstellung (hexadezimal, dezimal, ASCII)
• Anzeige der Anzahl der empfangenen Nachrichten insgesamt (Scroll-Modus) oder je Identifier (Overwrite-Modus)
• Anzeige der Namen von Nachrichten anhand der Definitionen Projektdatenbasis
Die Overwrite- und die Scroll-Ansicht (Abb. 3.18) werden simultan aktualisiert, somit ist es möglich während des Nachrichtenempfangs zwischen den Ansichts-Modi zu wechseln. In Klammern
hinter dem Modusname steht die Anzahl der vorgehaltenen empfangenen Nachrichten (Zeilen).
Da verschiedene Instanzen des Receive-Moduls vom Control Panel gestartet werden können,
kann jedes Receive-Modul individuell an die zu analysierenden Nachrichten oder Nachrichtengruppen angepasst werden.
canAnalyser
28
Copyright IXXAT Automation GmbH
3.2. Receive-Modul
Abbildung 3.18: Receive-Modul
3.2.2
Scroll-Ansicht
In der Scroll-Ansicht (Abb. 3.18) werden die Nachrichten in der Reihenfolge ihres Empfangs mit
folgenden Informationen aufgelistet:
Spalte
Bedeutung
Nr
Zeit (rel/abs)
Laufende Nummer des empfangenen Objektes
Zeitstempel des Empfangs, wahlweise absolut im UTC-Zeitformat oder relativ zur zuvor empfangenen Nachricht; durch Rechtsklick auf die Spaltenüberschrift kann die Anzeige von Stunden und Minuten ein- und ausgeschaltet werden
Anzeige des Empfangsstatus
Identifier der empfangenen Nachricht
Data length code, Anzahl der Datenbytes
Name, der in der zugrunde liegenden Datenbasis dem Identifier der empfangenen Nachricht zugeordnet ist
Anzeige der empfangenen Daten in Byte-Interpretation
Anzeige der empfangenen Daten in ASCII-Interpretation
Status
ID (hex/dez)
Länge
Nachricht
Daten (hex/dez)
ASCII
Anzeige des Empfangsstatus
Der Empfangsstatus wird im Receive-Modul in der Spalte Status durch verschiedene Buchstaben angezeigt. Ist der Buchstabe sichtbar, so ist der Status gesetzt:
Status
Typ
Bedeutung
C
D
-
Q
-
S
-
E
CAN
Controller Overrun: Es gingen Nachrichten verloren.
Treiber Queue Overrun: Der PC konnte die Treiber Queue nicht schnell genug
auslesen. Es gingen Nachrichten verloren.
Software-Queue Overrun: Der PC konnte die interne Softwarequeue nicht
schnell genug auslesen. Es gingen Nachrichten verloren.
Self reception: Sende- und Empfangsmodul verwenden den gleichen Controller
Extended CAN frame: Wenn E nicht angezeigt wird, wurde ein standard CAN
frame empfangen.
canAnalyser
29
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.19: Erster Empfang eines Identifiers in der Overwrite-Ansicht
3.2.3
Overwrite-Ansicht
Diese Anzeigeart ist hilfreich um den aktuellen Stand der Nachrichten im Netzwerk zu überblicken. In der Overwrite-Ansicht des Receive-Moduls (Abb. 3.18) werden die Nachrichten nach
Identifiern sortiert aufgelistet. Es werden immer die jeweils zuletzt eingegangenen Informationen einer Nachricht angezeigt. Bei eingeschalteter Änderungsanzeige werden geänderte Daten
farblich hervorgehoben. Ist in der Datenbasis eine Zykluszeit definiert, werden Überschreitungen
signalisiert.
dieser durch das Symbol
Die Registerkarte Overwrite ist in die folgenden Spalten aufgeteilt:
Spalte
Bedeutung
Anzahl
Zykluszeit / Zeit (abs)
Anzahl empfangener Nachrichten mit diesem Identifier
Wahlweise letzte Zykluszeit der Nachricht oder absoluter Zeitstempel des letzten Empfangs bezogen auf den Startzeitpunkt der Hardware; durch Rechtsklick auf die Spaltenüberschrift kann die Anzeige
von Stunden und Minuten ein- bzw. ausgeschaltet werden
Ist in der Datenbasis eine Zykluszeit definiert, werden Überschrei-
Zykluszeitüberwachung
Status
ID (hex/dez)
Länge
Nachricht
Daten (hex/dez)
ASCII
Min.Zykluszeit
Max.Zykluszeit
Durchschn.Zykluszeit
3.2.4
tungen dieser durch ein
-Symbol angezeigt
Anzeige des Empfangsstatus (wie Scroll-Ansicht)
Identifier der empfangenen Nachricht
Data length code, Anzahl der Datenbytes
In der Datenbasis zugeordneter Name der Nachricht
Anzeige der empfangenen Daten in Byte-Interpretation. Ist die Änderungsanzeige aktiviert, sind hier die Dateninhalte, die sich einmal
geändert haben, farbig markiert
Anzeige der empfangenen Daten in ASCII-Interpretation
Kleinste gemessene Zykluszeit der Nachricht
Größte gemessene Zykluszeit der Nachricht
Gemittelte Zykluszeit der Nachricht
Datenänderungsanzeige
Die Datenänderungsanzeige erfolgt im Overwrite-Modus des Receive-Moduls und kann über
den Menüpunkt Optionen aktiviert und deaktiviert werden.
Mit dem ersten Empfang eines Identifiers wird in der Overwrite-Ansicht eine neue Nachricht
eingefügt (Abb. 3.19). Der Empfangszähler (Anzahl) zählt eine empfangene Nachricht. Es wird
noch keine Zykluszeit angezeigt, da zur Berechnung einer solchen derselbe Identifier mindestens zwei Mal empfangen worden sein muss.
Nach dem zweiten Empfang des Identifiers werden in der Spalte Daten die gegenüber dem
ersten Empfang veränderten Nachrichteninhalte farblich markiert dargestellt, sofern die Datenänderungsanzeige eingeschaltet ist. Ist die Darstellung der Daten auf hexadezimal eingestellt,
dann werden die veränderten Nibbles (obere bzw. untere 4 Bits eines Datenbytes) eingefärbt
(Abb. 3.20).
Bei dezimaler Ausgabe des Datenfelds können Änderungen der empfangenen Datenbytes nur
als Ganzes markiert werden. (Abb. 3.21).
canAnalyser
30
Copyright IXXAT Automation GmbH
3.2. Receive-Modul
Abbildung 3.20: Hexadezimale Datenänderungsanzeige
Abbildung 3.21: Dezimale Datenänderungsanzeige
Die Datenänderungsanzeige und die Signalisierung von Timeouts kann im Kontextmenü des
Anzeigebereichs zurückgesetzt werden.
Durch Anklicken einer Nachricht mit der rechten Maustaste kann ausgewählt werden, ob die Datenänderungsanzeige für diese oder für alle Nachrichten zurückgesetzt werden soll (Abb. 3.22).
Die Datenänderungsanzeige erfolgt immer in Bezug auf die Datenbytes des ersten Empfangs
eines Identifiers bzw. in Bezug auf den Inhalt des Datenfelds zum Zeitpunkt des Zurücksetzens
der Datenänderungsanzeige. Wenn für ein Datenbyte einmal ein anderer Wert als in der Referenznachricht (erster Empfang oder Nachricht beim Zurücksetzen) empfangen wurde, dann
bleibt dieses Datenbyte markiert, selbst wenn wieder ein mit der Referenznachricht identisches
Datenfeld empfangen wird.
3.2.5
Anzeige von Fehlern
Gestörte bzw. fehlerhafte Nachrichten werden im Receive-Modul wie gewöhnliche Nachrichten
behandelt. Statt dem Identifier oder symbolischem Namen wird Error in der Identifierspalte angezeigt.
Der Grund für das Auftreten des Fehlers wird in folgender Form in der Daten-Spalte angegeben:
Error <ECC Fehlercode> : <Beschreibung der gesetzten Fehlercode-Bits>
Der ECC Fehlercode ist der Inhalt des Error Code Capture Registers eines SJA1000 CANControllers. Nach dem Doppelpunkt folgen, jeweils durch ein "|"-Zeichen getrennt, Beschreibungen der im ECC-Fehlercode gesetzten Bits.
Fehlertyp
Bedeutung
bit error
stuff error
Bitmonitoring-Fehler
Bitstuffing-Fehler: Ein über Bitstuffing codiertes Formatfeld enthält eine Folge von
6 oder mehr gleichwertigen Bits
Formfehler: Bitfeld mit festgelegtem Wert hat unzulässigen Wert
Anderer als die oben genannten Fehler
form error
other error
3.2.6
Filterung von Nachrichten
Für jedes Receive-Modul lässt sich konfigurieren, welche Nachrichten es empfangen soll. Mit Hilfe eines Filters werden bestimmte Nachrichten für das Receive-Modul sichtbar oder unsichtbar.
Über den Menüpunkt Funktionen | Verfügbare Filter... können globale Nachrichtenfilter erstellt
Abbildung 3.22: Kontextmenü zur Überwachungsanzeige
canAnalyser
31
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
werden, die einzelne Nachrichten für den Empfang zulassen oder sperren. Die Filterauswahl
erfolgt über Menüpunkt Funktionen | Filter auswählen.
3.2.7
Menüreferenz
Datei-Menü
Menüpunkt
Funktion
Datei-Export...
Beenden
Exportiert die empfangenen Nachrichten in eine Datei
Beendet das Receive-Modul
Bearbeiten-Menü
Menüpunkt
Funktion
Kopieren als CSV
Markierte Zeilen im CSV-Format in die Zwischenablage
kopieren
Anlegen oder Entfernen eines Lesezeichens für die markierte Nachricht
Zum vorigen Lesezeichen springen
Zum folgenden Lesezeichen springen
Nullzeitpunkt auf markierte Nachricht legen / Zuvor festgelegten Nullzeitpunkt freigeben
Zum zuvor festgelegten Nullzeitpunkt springen
Lesezeichen umschalten *
Voriges Lesezeichen *
Folgendes Lesezeichen *
Nullzeitpunkt festlegen/freigeben *
Zum Nullzeitpunkt gehen *
* Steht nur in der Scroll-Ansicht zur Verfügung
Ansicht-Menü
Menüpunkt
Funktion
Zeit relativ
Anzeige des Zeitstempels absolut oder relativ zum zuvor angezeigten Telegramm
Anzeige der Nachrichten-Identifier in hexadezimaler oder dezimaler Notation
Darstellungsoptionen der Identifier Spalte
Anzeige der Daten der Schicht-2-Nachricht in hexadezimaler
oder dezimaler Notation
Darstellungsoptionen der Daten Spalte
Stellt die Daten BYTE-weise dar oder fasst jeweils zwei Bytes
als WORD zusammen. Bei WORD-Darstellung kann zwischen
Little Endian- (Intel) oder Big Endian-Format (Motorola) ausgewählt werden.
Stellt das Datenfeld über mehrere Zeilen dar, falls die angegebene Spaltenbreite nicht zur Darstellung des gesamten Datenfeldes ausreicht.
Es werden im Scroll-Modus immer die aktuellsten Telegramme
angezeigt
Schaltet die Fortlaufende Ansicht sichtbar/unsichtbar
Schaltet die Kumulierte Ansicht sichtbar/unsichtbar
Schaltet die Schalterleiste sichtbar/unsichtbar
Schaltet die Statusleiste sichtbar/unsichtbar
ID hex
ID Darstellung
Daten hex
Daten Darstellung
Datengranularität
Zeilenumbruch
Letzte Nachrichten anzeigen
Fortlaufende Ansicht
Kumulierte Ansicht
Symbolleiste
Statusleiste
canAnalyser
32
Copyright IXXAT Automation GmbH
3.2. Receive-Modul
Funktionen-Menü
Menüpunkt
Funktion
Start
Starten des Nachrichtenempfangs des ReceiveModuls
Anhalten des Nachrichtenempfangs
Einstellen von applikationsweit verfügbaren
Nachrichtenfiltern (siehe Kapitel 3.9.1)
Auswahl eines Nachrichtenfilters
Setzt die Datenänderungsanzeige zurück
Setzt die Zykluszeitüberwachung zurück
Löschen der Anzeige und Zurücksetzen der
Empfangszähler
Stellt ideale Spaltenbreiten ein
Stop
Verfügbare Filter...
Filter auswählen
Datenänderungsanzeige zurücksetzen Alle
Zykluszeitüberwachung zurücksetzen Alle
Anzeige löschen
Automatische Spaltenbreiten
Optionen-Menü
Menüpunkt
Funktion
Datenänderungsanzeige
Zykluszeitüberwachung
Farbe der Datenänderungsanzeige...
Schaltet die Datenänderungsanzeige ein oder aus
Schaltet die Zykluszeitüberwachung ein oder aus
Öffnet einen Dialog zur Auswahl der Farbe, mit der geänderten Daten hervorgehoben werden
Öffnet einen Dialog zu Auswahl der Schriftart, in der
die Daten angezeigt werden
Schriftart...
Hilfe-Menü
Menüpunkt
Funktion
Hilfethemen
Info...
Öffnet die Online-Hilfe des Receive-Moduls
Öffnet die Anzeige der Versionsinformationen des Receive-Moduls
3.2.8
Schalterleiste
Die wichtigsten Funktionen des Receive-Moduls sind auch über die Schalterleiste (Abb. 3.23)
aufrufbar.
3.2.9
Statusleiste
In der Statusleiste befindet sich ein LED-Symbol, das den Status des Control Panels bzw. des
Receive-Moduls anzeigt:
LED-Farbe
Bedeutung
Grün:
Rot blinkend:
Rot:
Control Panel und Receive-Modul sind gestartet
Control Panel ist gestoppt
Receive-Modul ist gestoppt
canAnalyser
33
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.23: Schalterleiste des Receive-Modul
3.2.10
Tastaturkürzel
Strg+E
Strg+C
Strg+F2
Umschalten+F2
F2
Strg+0
F5
Umschalten+F5
Strg+I
F8
F1
Strg+TAB
BildNachOben
BildNachUnten
Strg+BildNachOben
Strg+BildNachUnten
Strg+1..9
3.3
3.3.1
Exportiert alle vorgehaltenen empfangenen Nachrichten in eine Datei
Kopiert die markierten Zeilen in die Zwischenablage
Lesezeichen umschalten
Zum vorigen Lesezeichen springen
Zum folgenden Lesezeichen springen
Zum Nullzeitpunkt springen
Startet den Datenempfang
Stoppt den Datenempfang
Filterdialog öffnen
Anzeige löschen
Öffnet die Online-Hilfe
Umschalten zwischen Scroll-Ansicht und Overwrite-Ansicht
Eine Seite zurück scrollen
Eine Seite voraus scrollen
1000 Nachrichten zurück scrollen
1000 Nachrichten voraus scrollen
Zu 10%..90% des vorgehaltenen Anzeigebereichs springen
Transmit-Modul
Übersicht
Das Transmit-Modul stellt Funktionen zum manuellen und zyklischen Senden von CANNachrichten bereit und kann verwendet werden, um Knoten zu simulieren oder die Reaktion
von Knoten auf bestimmte Nachrichten zu testen.
Folgende Funktionalität wird vom Transmit-Modul bereitgestellt:
• Senden einzelner Daten- und Remote-Nachrichten
canAnalyser
34
Copyright IXXAT Automation GmbH
3.3. Transmit-Modul
• Senden einer beliebigen Anzahl von Daten- bzw. Remote-Nachrichten
– mit einer bestimmten Zykluszeit
– mit Inkrementierung des Identifiers oder eines beliebigen Datenbytes oder -worts
3.3.2
Programmfenster
Im Transmit-Modul (Abb. 3.24) werden die zu sendenden Objekte in eine Tabelle eingetragen,
die zentral im Transmit-Modul angezeigt wird. Das Senden der Einträge erfolgt durch Selektion
der Nachricht und den Befehl Nachricht senden bzw. Nachricht zyklisch senden.
Die Sendetabelle hat die folgenden Spalten:
Spalte
Tx
Symbol
Identifier
Nachricht
Beschreibung
Ext.
RTR
Daten
Zyklisches Senden
Anzahl
Intervall
Modus
Byte
3.3.3
Bedeutung
rotiert während zyklischem Sendens der Nachricht.
Symbol
zeigt an, dass das Senden direkt auf der Hardware ausgeführt
wird.
Identifier des Sendeobjektes
Name, der dem Identifier in der verwendeten Datenbasis zugeordnet ist
Zusätzliche benutzerdefinierte Beschreibung zu diesem Sendeobjekt.
Diese Beschreibung erlaubt eine Unterscheidung der Sendeobjekte mit
gleichem Identifier und wird nur innerhalb des Transmit-Moduls verwendet.
Legt fest ob die Nachricht als Extended Frame (29 Bit Identifier) gesendet
wird. Diese Einstellung überschreibt NICHT die Protokoll Einstellung im
CAN-Eigenschaften Dialog.
Legt fest, ob ein Daten- oder ein Remote-Telegramm gesendet wird (nur
CAN)
Daten der Schicht-2-Nachricht
Innerhalb dieser Spalten werden die Einstellung für zyklische Sendeobjekte spezifiziert
Anzahl der Sendewiederholungen; 0 steht für andauerndes Senden
Zykluszeit in Millisekunden
Betriebsart des zyklischen Sendens (mit/ohne Inkrement).
None: Kein inkrementieren.
Identifier: Inkrementieren des Identifieres bei jedem Senden.
Byte (Data): Inkrementieren des in der Spalte Byte definierten Datenbytes bei jedem Senden.
Word (Data): Inkrementieren eines 16-bit Werts (zusammengefasst aus
2 Datenbytes), beginnend mit dem in der Spalte Byte definierten Datenbyte bei jedem Senden
Startbyte, bei dem ein Inkrement des Datenfeldes vorgenommen wird,
wenn ein Inkrement-Modus eingeschaltet ist (siehe Modus-Spalte).
Erstellen von Sendeobjekten
Um eine neue Sendenachricht zu definieren wird eine freie Zeile in der Sendeliste angewählt.
Ist kein freier Eintrag vorhanden, wird über den Menü-Befehl Bearbeiten | Nachricht einfügen
ein neuer Eintrag generiert. Ein neuer Eintrag wird auch erzeugt, wenn in der letzten Zeile der
Sendetabelle die Cursortaste
gedrückt wird. Die neue Zeile ist dann mit dem Selektionsbalken markiert. Die einzelnen Spalten können mit der Maus oder mit den Cursortasten
und
canAnalyser
35
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.24: Transmit-Modul
Abbildung 3.25: Editier-Modus der Zellen
ausgewählt werden. Editierbare Felder sind durch eine andersartige Farbe innerhalb des Selektionsbalkens zu erkennen. Ein Sendeobjekt wird durch Eingabe des Identifiers, der Beschreibung
und der zu sendenden Daten definiert. Hierbei wechseln die Editierfelder automatisch in den
Editiermodus sobald eine numerische bzw. alphanumerische oder die Taste F2 gedrückt wird
(Abb. 3.25).
Der Nachrichtenname eines Sendeobjektes wird der im Control Panel spezifizierten Projektdatenbasis entnommen und automatisch eingefügt.
Die Bearbeitung der einzelnen Editierfelder bzw. Spalten der Sendetabelle wird durch Betätigen der Taste Enter, der Cursortasten
oder
oder durch Anklicken einer anderen Zelle der
Sendetabelle abgeschlossen.
canAnalyser
36
Copyright IXXAT Automation GmbH
3.3. Transmit-Modul
3.3.4
Bearbeiten der Sendetabelle
Die Sendetabelle kann beliebig bearbeitet werden. Hierfür stehen unter dem Menüeintrag Bearbeiten die folgenden Funktionen zur Verfügung:
Funktion
Beschreibung
Nachricht einfügen
Nachricht verdoppeln
Anlegen einer neuen Nachricht
Duplizieren der selektierten Nachricht, die Kopie erscheint direkt unter
der selektierten Nachricht in der Liste
Löschen der selektierten Nachricht
Nachricht löschen
3.3.5
Manuelles Senden
Das Senden einzelner Nachrichten aus der Tabelle erfolgt durch die Auswahl der Botschaft und
das Auslösen des Sendebefehls.
Eine Botschaft wird ausgewählt durch:
• Anklicken der Botschaft mit der Maus
• Verschieben des Markierungsbalkens mit den Cursortasten
oder
.
Eine farblich hinterlegte Nachricht ist ausgewählt. Sie wird gesendet durch:
• Betätigen der Taste F5
• Betätigen des Menüpunktes Funktion | Nachricht senden
• Betätigen des Nachricht senden-Schalters in der Schalterleiste
• Klick mit der linken Maustaste auf das Sendesymbol
in der ersten Spalte.
In der Statuszeile des Transmit-Moduls wird angezeigt, ob eine Nachricht erfolgreich gesendet
werden konnte.
3.3.6
Zyklisches Senden
Um Nachrichten zyklisch versenden zu können, müssen in den Feldern Anzahl und Intervall
der Spalte Zyklisches Senden Werte eingetragen sein. Eine zyklische Nachricht kann sowohl
zyklisch (automatisch) als auch manuell einzeln versendet werden. Vor dem Senden muss die
zyklische Nachricht selektiert werden.
Das Zyklische Senden erfolgt durch:
• die Tastenkombination F6
• Betätigen des Menüeintrages Funktion | Nachricht zyklisch senden
• Betätigen des Nachricht zyklisch senden-Schalters in der Schalterleiste
• Drücken der Strg-Taste und gleichzeitiger Klick mit der linken Maustaste auf das Sendesymbol in der ersten Spalte
• Drücken der Strg-Taste und gleichzeitiger Klick auf den Nachricht zyklisch sendenSchalter um alle Nachrichten zyklisch zu senden
canAnalyser
37
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Solange die ausgewählte Nachricht zyklisch versandt wird, rotiert deren Symbol in der Sendetabelle
. Ist die Nachrichte so oft wie unter Anzahl angegeben versendet worden, bleibt das
Symbol wieder stehen.
Der zyklische Versand einer selektierten Nachricht kann manuell gestoppt werden durch:
• Erneutes Betätigen des Nachricht zyklisch senden-Schalters in der Schalterleiste
• Erneutes Drücken der F6-Taste.
3.3.7
Drag-and-Drop
Empfangene CAN-Nachrichten lassen sich aus der Scrolldarstellung eines anderen canAnalyser
Moduls auf die Sendetabelle des TransmitModuls ziehen. Sie werden beim Fallenlassen als
neue Sendenachricht in der Sendeliste angelegt und alle ihre Eigenschaften (CAN-Identifier,
Datenfeld, RTR, Extended Format) bleiben erhalten.
3.3.8
Menüreferenz
Datei-Menü
Menüpunkt
Funktion
Neu
Sendeobjekte importieren...
Sendeobjekte exportieren...
Zuletzt geöffnete Dateien
Beenden
Erstellen einer neuen, leeren Sendetabelle
Sendetabelle aus einer Datei importieren (siehe Kapitel 1.4)
Sendetabelle in eine Datei exportieren (siehe Kapitel 1.4)
Anzeige der zuletzt geöffneten Sendetabellen
Beendet das Transmit-Modul
Bearbeiten-Menü
Menüpunkt
Funktion
Nachricht einfügen
Nachricht verdoppeln
Erstellt einen neuen Eintrag in der Sendetabelle
Kopiert das selektierte Sendeobjekt und trägt die Kopie unterhalb des
selektierten Objektes in die Liste ein
Löscht das selektierte Sendeobjekt aus der Liste
Nachricht löschen
Ansicht-Menü
Menüpunkt
Funktion
ID Hex
Daten Hex
Datengranularität
Anzeige der Objekt-Identifier in hexadezimaler oder dezimaler Notation
Anzeige der Objektdaten in hexadezimaler oder dezimaler Notation
Stellt die Daten BYTE-weise dar oder fasst jeweils zwei Bytes als WORD
zusammen. Bei WORD-Darstellung kann zwischen Little Endian- (Intel)
oder Big Endian-Format (Motorola) ausgewählt werden.
Anzeigen bzw. Verbergen der Spalten: Nachricht, Beschreibung, Zyklisches Senden
Schaltet die Schalterleiste sichtbar/unsichtbar
Schaltet die Statusleiste sichtbar/unsichtbar
Spalten
Symbolleiste
Statusleiste
canAnalyser
38
Copyright IXXAT Automation GmbH
3.3. Transmit-Modul
Abbildung 3.26: Schalterleiste des Transmit-Moduls
Funktionen-Menü
Menüpunkt
Funktion
Nachricht senden
Nachricht zyklisch senden
Zeile nach oben bewegen
Zeile nach unten bewegen
Automatische Spaltenbreite
Senden einer selektierten Einzelnachricht
Senden der selektierten zyklischen Nachricht
Ausgewählte Zeile um eine Position nach oben schieben
Ausgewählte Zeile um eine Position nach unten schieben
Ideale Spaltenbreiten einstellen
Optionen-Menü
Menüpunkt
Funktion
Schriftart...
Öffnet einen Dialog zu Auswahl der Schriftart, in der die Daten angezeigt werden
Hilfe-Menü
Menüpunkt
Funktion
Hilfethemen
Info...
Öffnet die Online-Hilfe des Transmit-Moduls
Öffnet die Anzeige der Versionsinformationen des Transmit-Moduls
3.3.9
Schalterleiste
Die wichtigsten Funktionen des Transmit-Moduls sind auch über die Schalterleiste (Abb. 3.26)
aufrufbar.
3.3.10
Statusleiste
In der Statusleiste des Transmit-Moduls befindet sich ein LED-Symbol, das den Status des Control Panels bzw. des Transmit-Moduls anzeigt:
canAnalyser
39
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
LED-Farbe
Bedeutung
Grün
Rot blinkend
Control Panel und Transmit-Modul sind gestartet
Control Panel ist gestoppt.
3.3.11
Tastaturkürzel
Strg+Einfg
Strg+D
Strg+Entf
F5
F6
Strg+NachOben
Strg+NachUnten
F1
3.4
Nachricht einfügen
Nachricht verdoppeln
Nachricht löschen
Nachricht senden
Nachricht zyklisch senden
Zeile nach oben bewegen
Zeile nach unten bewegen
Öffnet die Online-Hilfe
Trace-Modul
3.4.1
Übersicht
Das Trace-Modul dient zum gleichzeitigen Aufzeichnen des Busverkehrs von mehreren Bussen.
Somit besteht die Möglichkeit, den Nachrichtenverkehr busübergreifend und nach dem Ablauf
eines gesamten Kommunikationszyklusses zu analysieren.
Durch Verwendung verschiedener Trigger kann die Trace-Aufzeichnung automatisch gestartet
und wieder gestoppt werden, um die Aufzeichnung auf bestimmte Daten zu beschränken und
übersichtlich zu halten.
Folgende Funktionalität wird vom Trace-Modul bereitgestellt
• Aufzeichnung des Busverkehrs von mehreren Bussen
• Konfiguration verschiedener Trigger zum automatischen Starten bzw. Stoppen der TraceAufzeichnung
– Triggerung auf eine konfigurierbare Anzahl empfangener Nachrichten
– Triggerung auf über Bit-Masken spezifizierbare Identifier und/oder Datenbyte-Werte
– Triggerung auf CAN RTR und/oder Errorframes
• Verknüpfung der Trigger der aufzuzeichnenden Busse
3.4.2
Programmfenster
Das Programmfenster des Trace-Moduls (Abb. 3.27) zeigt zwei Ansichten:
Ansicht
Verwendung
Aufnahme
Einstellung von Parametern für die Trace-Aufzeichnung (Auswahl der aufzuzeichnenden Busse/Controller, Konfiguration der Filter und Triggerereignisse)
Stellt die aufgezeichneten (und nicht ausgefilterten) Nachrichten in der Reihenfolge ihres Empfangs dar. Dies entspricht der Scroll-Anzeige des Receive-Moduls.
Nach Beenden einer Trace-Aufzeichnung wechselt das Programm automatisch
auf diese Ansicht.
Anzeiger
canAnalyser
40
Copyright IXXAT Automation GmbH
3.4. Trace-Modul
Abbildung 3.27: Trace-Modul
In der Ansicht Aufnahme (Abb. 3.27) ist für jede Trace-Aufzeichnung zunächst der Dateiname zu
wählen, unter dem die Aufzeichnung abgespeichert werden soll. Hierzu muss im Feld Tracedatei
ein Dateiname mit vollständigem Pfad eingetragen sein. Durch Mausklick auf das DiskettenSymbol wird ein Dialog zur Festlegung des Speicherorts angezeigt.
Im Feld Buskonfiguration sind die aufzuzeichnenden Busse, evtl. Vorfilterungen und Triggerereignisse zu bestimmen.
Eine abgeschlossene Trace-Aufzeichnung wird im Trace-Modul im Anzeiger (Abb. 3.27) ausgegeben. Die aufgezeichneten Telegramme werden in der zeitlichen Reihenfolge des Empfangs
dargestellt und entsprechend dem Bus, von dem sie stammen, farblich markiert. Die Farbe der
Markierung wird im Menü Optionen | Anzeigeoptionen... zugewiesen.
Die Anzahl sichtbarer Telegramme kann über den Menü-Befehl Funktionen | Filter der Traceanzeige... (Abb. 3.28) mittels Filterung von Nachrichten oder Ausblenden eines ganzen Busses/Controllers reduziert werden.
3.4.3
Trace-Aufzeichnung
Das Trace-Modul zeichnet den Busverkehr von mehreren Bussen gleichzeitig auf. Deshalb wird
dieses Modul nicht einem einzelnen Bus/Controller, sondern übergeordnet allen Bussen/Controllern in der aktuellen Konfiguration zugeordnet. Der Busverkehr wird vom PC direkt auf die
Festplatte gespeichert und die Trace-Aufzeichnung erfolgt für alle Bussysteme in getrennte Dateien. Nach Beenden des Trace werden die aufgezeichneten Nachrichten in zeitlicher Relation
zueinander angezeigt.
Nach der zwingend erforderlichen Definition des Speicherorts für die Tracedatei(en) kann die
Trace-Aufzeichnung über den Schalter Start gestartet werden. Ist kein Starttrigger eingestellt,
so beginnt das Trace-Modul sofort mit der Aufzeichnung auf die Festplatte. Ohne einen konfigucanAnalyser
41
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.28: Filter der Traceanzeige
rierten Stoptrigger muss die Aufzeichnung manuell durch Betätigen des Schalters Stop wieder
angehalten werden.
Optional können Busse/Controller in der Spalte Bus von der Aufzeichnung ausgeschlossen werden. Nicht aufzuzeichnende Busse/Controller werden grau dargestellt und haben keine Einfluss
auf die Triggerung.
Mit einem Klick auf den Eintrag in der Spalte Filter eines Busses/Controllers läßt sich ein Filter
auswählen. Dieser reduziert den aufzuzeichnenden Nachrichtenverkehr. Zur Konfiguration von
Filtern lesen Sie bitte Kapitel 3.9.1.
Zur Filterkonfiguration ist allerdings zu beachten, daß die Filterung keinen Einfluß auf die Triggerung hat. Der ungefilterte Nachrichtenstrom wird zur Prüfung der Triggerbedinungen verwendet,
d.h der Trigger ist dem Filter vorgeschaltet.
3.4.4
Triggerung
Die Trace-Aufzeichnung kann durch die Definition von Start- und/oder Stoptrigger-Ereignissen
in Abhängigkeit vom Busverkehr automatisch gestartet bzw. gestoppt werden. D.h. das TraceModul beginnt erst nach dem Eintritt des Starttriggerer-Ereignisses die Aufzeichnung bzw. hält
diese automatisch nach dem Eintritt des Stoptrigger-Ereignisses an. Nach Beenden der Aufzeichnung wechselt das Trace-Modul automatisch in den Anzeiger.
Die Prüfung der Stoptrigger-Bedingungen beginnt erst nach Beginn der Aufzeichnung, d.h. nach
eingetretenem Starttrigger-Ereignis (falls ein Starttrigger konfiguriert wurde).
Die Start- und Stoptrigger der aufzuzeichnenden Busse/Controller sind untereinander über UNDoder ODER-Operatoren verknüpft.
Operator
Funktion
ODER
Das Trigger-Ereigniss ist eingetreten, sobald die Trigger-Bedingung eines der Startbzw. Stoptrigger erfüllt ist
Das Trigger-Ereigniss tritt ein, wenn die Trigger-Bedingungen aller Start- bzw.
Stoptrigger erfüllt sind
UND
Das Trace-Modul stellt verschiedene Trigger zur Auswahl. Die Auswahl und Konfiguration der
Trigger erfolgt über ein Popup-Menü, das über die rechte Maustaste geöffnet wird. Der ausgewählte Trigger kann über einen Doppelklick konfiguriert werden.
canAnalyser
42
Copyright IXXAT Automation GmbH
3.4. Trace-Modul
Abbildung 3.29: Message Count Trigger
Abbildung 3.30: ID/Daten Trigger
Trigger
Funktion
Message Count Trigger
Triggerung auf eine konfigurierbare Anzahl empfangener Nachrichten
Triggerung auf Identifier und/oder Datenbyte-Werte, die über
Bit-Masken spezifiziert werden
Triggerung auf CAN RTR und/oder Errorframes
ID/Daten Trigger
CAN RTR/Errorframe Trigger
Message Count Trigger
Die Trigger-Bedingung des Message Count Triggers (Abb. 3.29) ist nach Empfang der konfigurierten Anzahl Nachrichten erfüllt. D.h. als Stoptrigger definiert der Message Count Trigger die
Anzahl aufzuzeichnender Nachrichten.
ID/Daten Trigger
Mit dem ID/Daten Trigger (Abb. 3.30) kann auf bestimmte Identifier und/oder Datenbytes getriggert werden. Die Triggerbedingung wird über Bitmasken definiert, die später mit den Feldern je-
canAnalyser
43
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.31: CAN RTR/Errorframe Trigger
der Empfangsnachricht verglichen werden. Die Trigger-Bedingung der einzelnen Bits kann über
einen Klick mit der linken Maustaste verändert werden.
Bit
Bedeutung
0
1
x
Mit 0 beschriftete Bits müssen den Wert 0 haben damit die Trigger-Bedingung erfüllt ist
Mit 1 beschriftete Bits müssen den Wert 1 haben damit die Trigger-Bedingung erfüllt ist
Mit x beschriftete Bits sind für die Trigger-Bedingung nicht relvant und werden nicht geprüft
Die Bitmasken der Triggerbedingungen können auch manuell über die Eingabefelder Maske
und Wert verändert werden. In Maske werden die Bits mit Wert 1 für die Trigger-Bedingung
als relevant markiert. In Wert erhalten diese relevanten Bits ihren Sollwert (0 oder 1). Die Eingabe/Anzeige der Eingabefelder kann entsprechend den Einstellungen in der Box DEZ/HEX in
dezimaler oder hexadezimaler Form erfolgen.
Die Schalter Byte und Word legen die Granularität des Datenfelds fest. Ist Word-Granularität
ausgewählt, kann für die Bytereihenfolge Intel- (little endian) oder Motorola- (big endian) Format
eingestellt werden.
Die Triggerbedingung ist erfüllt, wenn alle als relevant markierten Bits den für sie definierten
Sollwert besitzen. Das heißt aber auch, daß eine Trigger-Bedingung, in der alle Bits als nicht
relevant markiert sind, für jedes Telegramm erfüllt ist.
CAN RTR/Errorframe Trigger
Mit einem CAN RTR/Errorframe Trigger (Abb. 3.31) kann auf CAN-Remoteframes und/oder
CAN-Errorframes getriggert werden. Die Triggerung auf den jeweiligen Frametyp kann über den
entsprechenden Schalter Aktiv ein- oder ausgeschalten werden.
Die Definition des Remote-Identifiers erfolgt über Bitmasken (siehe Kapitel 3.4.4), über das Feld
DLC kann die Datenlänge definiert werden. Bei der Einstellung Alle wird die Datenlänge bei
Prüfung der Triggerbedingung nicht berücksichtigt.
Ist weder Trigger Errorframes noch Trigger Remoteframes aktiviert so ist die TriggerBedingung für jedes empfangene CAN-Datentelegramm erfüllt.
canAnalyser
44
Copyright IXXAT Automation GmbH
3.4. Trace-Modul
3.4.5
Weiterverarbeitung einer Trace-Aufzeichnung
Eine abgespeicherte Trace-Aufzeichnung kann zur erneuten Analyse über den Menüpunkt Datei
| Trace öffnen... ins Trace-Modul importiert werden.
Im Replay-Modul kann eine Traceaufzeichnung erneut wiedergegeben werden. Dadurch kann
die Aufzeichnung beliebig oft in den verschiedenen Modulen des canAnalysers analysiert werden.
Das Sequencer-Modul ermöglicht den Import von Tracedateien. Hierbei werden die CANTelegramme der Trace-Datei zu Sendebefehlen des Sequencer-Moduls konvertiert.
Soll eine Trace-Aufzeichnung in einem anderen Programm weiterverarbeitet werden, so kann
die aktuell angezeigte Trace-Aufzeichnung in eine Textdatei exportiert werden. Der Export erfolgt
in der Schalterleiste. Die
über den Menüeintrag Datei | Daten-Export... oder den Schalter
erzeugte Textdatei enthält alle Spalten des Trace-Moduls. Durch die Trennung der Spalten mittels
Kommata bzw. Semikolon kann die ASCII-Tracedatei problemlos als CSV(Comma Separated
Value)-Datei in Standardwerkzeugen wie z.B. Excel, importiert und weiterverarbeitet werden.
3.4.6
Menüreferenz
Datei-Menü
Menüpunkt
Funktion
Trace öffnen...
Daten-Export...
Beenden
Öffnet eine zuvor abgespeicherte Trace-Aufzeichnung
Exportiert die angezeigte Trace-Aufzeichnung in eine Textdatei
Beendet das Trace-Modul
Bearbeiten-Menü
Menüpunkt
Funktion
Suchen
Öffnet ein Dialogfeld zur Festlegung der Suchoptionen für
eine bestimmte Nachricht in einer Trace-Datei
Zeigt die nächste Nachricht an, die den Suchoptionen entspricht
Markierte Zeilen im CSV-Format in die Zwischenablage kopieren
Anlegen oder Entfernen eines Lesezeichens für die markierte Nachricht
Zum vorigen Lesezeichen springen
Zum folgenden Lesezeichen springen
Nullzeitpunkt auf markierte Nachricht legen / Zuvor festgelegten Nullzeitpunkt freigeben
Zum zuvor festgelegten Nullzeitpunkt springen
Weitersuchen
Kopieren als CSV
Lesezeichen umschalten
Voriges Lesezeichen
Folgendes Lesezeichen
Nullzeitpunkt festlegen/freigeben
Zum Nullzeitpunkt gehen
canAnalyser
45
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Ansicht-Menü
Menüpunkt
Funktion
Zeit relativ
Anzeige der Zeit im Anzeiger absolut oder relativ zur zuvor angezeigten
Nachricht
Anzeige der Nachrichtenidentifier im Anzeiger in hexadezimaler oder dezimaler Notation
Darstellungsoptionen der Identifier Spalte im Anzeiger
Anzeige der Nachrichtendaten im Anzeiger in hexadezimaler oder dezimaler Notation
Darstellungsoptionen der Daten Spalte im Anzeiger
Stellt die Daten im Anzeiger BYTE-weise dar oder fasst jeweils zwei Bytes als WORD zusammen. Bei WORD-Darstellung kann zwischen Little
Endian- (Intel) oder Big Endian-Format (Motorola) ausgewählt werden.
Stellt das Datenfeld im Anzeiger über mehrere Zeilen dar, falls die angegebene Spaltenbreite nicht zur Darstellung des gesamten Datenfeldes
ausreicht.
Schaltet die Aufnahme Ansicht sichtbar/unsichtbar
Schaltet die Anzeiger Ansicht sichtbar/unsichtbar
Schaltet die Schalterleiste sichtbar/unsichtbar
Schaltet die Statusleiste sichtbar/unsichtbar
ID Hex
ID Darstellung
Daten Hex
Daten Darstellung
Datengranularität
Zeilenumbruch
Aufnahme
Anzeiger
Symbolleiste
Statusleiste
Funktionen-Menü
Menüpunkt
Funktion
Aufnahme starten
Aufnahme stoppen
Verfügbare Filter...
Beginnt eine Trace-Aufzeichnung
Beendet eine Trace-Aufzeichnung
Einstellen von applikationsweit verfügbaren Nachrichtenfiltern
(siehe Kapitel 3.9.1)
Öffnet einen Dialog zur Filterung der Nachrichtenaufzeichnung
Ideale Spaltenbreiten einstellen
Filter der Traceanzeige...
Automatische Spaltenbreiten
Optionen-Menü
Menüpunkt
Funktion
Anzeigeoptionen...
Öffnet einen Dialog zur Auswahl der Farben, in denen die Nachrichten
der verschiedenen Busse im Anzeiger angezeigt werden
Öffnet einen Dialog zur Auswahl der Schriftart in der die Nachrichten im
Anzeiger angezeigt werden
Schriftart...
Hilfe-Menü
Menüpunkt
Funktion
Hilfethemen
Info...
Öffnet die Online-Hilfe des Trace-Moduls
Öffnet die Anzeige der Versionsinformationen des Trace-Moduls
3.4.7
Schalterleiste
Die wichtigsten Funktionen des Trace-Moduls sind auch über die Schalterleiste (Abb. 3.32) aufrufbar.
canAnalyser
46
Copyright IXXAT Automation GmbH
3.4. Trace-Modul
Abbildung 3.32: Schalterleiste des Trace-Moduls
3.4.8
Statusleiste
In der Statusleiste des Trace-Moduls befindet sich ein LED-Symbol, das den Status des Control
Panels bzw. des Trace-Moduls anzeigt:
LED-Farbe
Bedeutung
Grün:
Rot blinkend:
Gelb:
Control Panel ist gestartet
Control Panel ist gestoppt
Nachrichtenaufzeichnung im Trace-Modul läuft
3.4.9
Tastaturkürzel
Strg+O
Strg+E
Strg+F
F3
Strg+C
Strg+F2
Umschalten+F2
F2
Strg+0
F5
Umschalten+F5
Strg+I
F1
Strg+TAB
BildNachOben
BildNachUnten
Strg+BildNachOben
Strg+BildNachUnten
Strg+1..9
canAnalyser
Vorhandene Traceaufzeichnung öffnen
Exportiert empfangene Nachrichten in eine Datei
Suchdialog anzeigen
Zum nächsten Vorkommen des Suchbegriffs
Kopiert die markierten Zeilen in die Zwischenablage
Lesezeichen umschalten
Zum vorigen Lesezeichen springen
Zum folgenden Lesezeichen springen
Zum Nullzeitpunkt springen
Startet den Datenempfang
Stoppt den Datenempfang
Filterdialog öffnen
Öffnet die Online-Hilfe
Wechseln zwischen Aufzeichnungssteuerung und Nachrichtenanzeige
Eine Seite zurück scrollen
Eine Seite voraus scrollen
1000 Nachrichten zurück scrollen
1000 Nachrichten voraus scrollen
Zu 10%..90% des vorgehaltenen Anzeigebereichs springen
47
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.33: Replay-Modul
3.5
3.5.1
Replay-Modul
Übersicht
Das Replay-Modul dient zum Abspielen von Tracedateien. Das Abspielen wird dabei je nach
Zustand des Controllers unterschiedlich gehandhabt:
• Ist der Controller online, werden die Nachrichten auf den physischen Bus übertragen, und
per Selfreception wieder empfangen. Die Zeitstempel der Nachrichten spiegeln dabei den
Empfangszeitpunkt wider.
• Im Offline-Modus werden die Nachrichten an die angeschlossenen Module verteilt, dabei
werden die Zeitstempel aus der Tracedatei beibehalten.
3.5.2
Replay-Fenster
Das Replay-Modul (Abb. 3.33) bietet verschiedene Möglichkeiten, das Abspiel-Verhalten zu beeinflussen.
Im oberen Teil wird der Dateiname der Tracedatei angezeigt. Das Info-Feld beinhaltet einige
Kenndaten, die aus der Tracedatei entnommen werden.
Des weiteren gibt es die Möglichkeit, die Abspielgeschwindigkeit zu beeinflussen. Dabei sind
drei Optionen verfügbar:
• Maximale Geschwindigkeit
• Einstellbare Verzögerung zwischen den Nachrichten
• Verzögerung aus den Zeitstempeln der Tracedatei berechnen
Mit der Einstellung Schrittweise Abarbeitung kann der Anwender die Tracedatei schrittweise
mit einer einstellbaren Schrittweite abspielen.
Mit der Einstellung Stop bei kann das Abspielen bei einer bestimmten Nachricht gestoppt werden.
Im Feld Aktuelle Nachricht wird der aktuelle Nachrichtenindex angezeigt. Dieser kann auch
manuell geändert werden, um das Abspielen an einer bestimmten Position zu starten.
Die zwei Schalter auf der linken Seite ermöglichen das Zurücksetzen des aktuellen Nachrichtenindex bzw. das Abspielen der Tracedatei.
canAnalyser
48
Copyright IXXAT Automation GmbH
3.6. Signal-Modul
3.5.3
Menüreferenz
Datei-Menü
Menüpunkt
Funktion
Trace öffnen...
Trace Schließen
Beenden
Öffnet eine Trace-Datei
Schließt die Trace-Datei
Beendet das Replay-Modul
Ansicht-Menü
Menüpunkt
Funktion
Statusleiste
Schaltet die Statusleiste sichtbar/unsichtbar
Hilfe-Menü
Menüpunkt
Funktion
Hilfethemen
Info...
Öffnet die Online-Hilfe des Replay-Moduls
Öffnet die Anzeige der Versionsinformationen des Replay-Moduls
3.5.4
Statusleiste
In der Statusleiste befindet sich ein LED-Symbol, das den Status des Control Panels anzeigt:
LED-Farbe
Bedeutung
Grün:
Rot blinkend:
Control Panel ist gestartet
Control Panel ist gestoppt
3.5.5
Tastaturkürzel
Strg+O
F5
Umschalten+F5
F4
F7
F1
3.6
3.6.1
Trace öffnen
Wiedergabe
Wiedergabe anhalten
Zurückspulen
Schrittweise Abarbeitung
Öffnet die Online-Hilfe
Signal-Modul
Übersicht
Das Receive- und das Trace-Modul des canAnalysers zeigen die in einem Feldbus-System übertragenen Nachrichten mit ihren Schicht-2-Informationen (Identifier und Daten) an. Durch eine
Interpretation der übertragenen Daten und deren Darstellung in Klartext wird die Analyse eines
Systems sehr viel transparenter.
Mit dem Signal-Modul (Abb. 3.34) ist es möglich, empfangene Schicht-2-Nachrichteninhalte in interpretierter Form anzuzeigen. Dieses Analyse-Modul ist daher für Installation, Test und Wartung
von Feldbussystemen besonders geeignet, da es einen einfachen Umgang mit physikalischen
und logischen Größen ermöglicht.
canAnalyser
49
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Die interpretierten Signale können bezüglich der Änderungen ihrer Werte und der Einhaltung
der in der Datenbasis festgelegten Zykluszeit überwacht werden. Auch die Einhaltung der definierten Grenzwerte eines Signals wird überwacht, und eine Überschreitung farblich und mit
Statussymbol angezeigt.
Um das Signal-Modul nutzen zu können, muss zuvor im Control Panel für den Virtuellen
Bus die zu verwendende Projektdatenbasis und daraus der gewünschte Strang spezifiziert werden.
Das Hauptfenster des Signal-Moduls ist zweigeteilt: Auf der linken Seite befindet sich der zentrale Signalauswahlbaum, der die Struktur der Projektdatenbasen hierarchisch anzeigt. Den größeren Teil des Fensters nehmen die rechts davon gelegenen Einzelansichten der empfangenen
Signale ein:
• Scroll-Ansicht
• Overwrite-Ansicht
• Graph-Ansicht
• Logging-Ansicht
Jede Ansicht kann so konfiguriert werden, dass sie nur bestimmte Signale empfängt. Dazu dient
der zentrale Signalauswahlbaum.
Die Logging-Ansicht stellt eine spezialisierte Scroll-Ansicht dar, die derzeit Wertebereichsabweichungen protokolliert.
Da verschiedene Instanzen des Signal-Moduls vom Control Panel gestartet werden können,
kann jedes Signal-Modul individuell an die zu analysierenden Signale oder Signalgruppen angepasst werden.
3.6.2
Projektdatenbasen
Grundlage für die Interpretation und symbolische Darstellung der in Schicht-2-Nachrichten übertragenen Daten ist eine Projektdatenbasis. Diese kann mit Hilfe des Datenbasis-Editors vom
Anwender erstellt werden. Der Datenbasis-Editor ist Bestandteil des canAnalysers. Er wird im
Control Panel gestartet.
In der Projektdatenbasis kann jeder Schicht-2-Nachricht ein symbolischer Name zugeordnet
werden. Innerhalb einer Nachricht lassen sich Einzeldaten (Signale) definieren. Jedes Signal
ist festgelegt durch Bitposition und Länge in der Schicht-2-Nachricht und kann eine analoge
Information, eine Zustandsinformation oder eine Zeichenkette (String) beinhalten:
• Analoge Signale werden beschrieben durch ihren Datentyp und Datenformat (Intel/Motorola), Skalierung, Offset, Wertebereich sowie physikalischer Einheit.
• Einzelnen Werten von Zustandssignalen können symbolische Bezeichner zugeordnet
werden, die bei der Interpretation als Text angezeigt werden (Zustände).
• Bei Stringsignalen wird ein Teil der Schicht-2-Nachricht als ASCII-String interpretiert
Wichtig: Die Nachrichten werden in der Interpretationsdatenbasis mit einer festen Datenlänge
definiert. Telegramme, deren Identifier zwar in der Datenbasis definiert ist, aber deren Datenlänge nicht mit der in der Datenbasis definierten übereinstimmt, werden nicht interpretiert. Nicht
interpretierte Nachrichten werden vom Signal-Modul in der Scroll-Ansicht nicht aufgelistet bzw.
in der Overwrite-Ansicht grau markiert.
canAnalyser
50
Copyright IXXAT Automation GmbH
3.6. Signal-Modul
Abbildung 3.34: Signal-Modul Scroll-Ansicht
3.6.3
Scroll-Ansicht
Auf der Scroll-Registerseite (Abb. 3.34) werden die Signale in der Reihenfolge ihres Empfangs
dargestellt.
Die einzelnen Spalten der Scroll-Ansicht haben folgende Bedeutung:
Spalte
Bedeutung
Nr
Zeit (abs/rel)
Laufende Nummer des empfangenen Objektes
Zeitstempel des Empfangs, wahlweise absolut (bezogen auf den Startzeitpunkt
des Controllers) oder relativ zur zuvor empfangenen Nachricht
Wenn Nachrichten verlorengegangen sind, wird dies hier durch das Symbol
Status
angezeigt. Ist der zulässige Wertebereich unter- oder überschritten, so wird
Channel
dies durch die Symbole
und
angezeigt
Name des physikalischen Busses bzw Strangs gemäß Projektdatenbasis. Wird
bei der Wahl der zu verwendenden Projektdatenbasis im Control Panel festgelegt. ( )
Quell-ECU
Sender der Nachricht (
Signal
Phys.Wert
Rohwert
Untergrenze
Obergrenze
Signalbezeichnung in der Datenbasis ( )
Wert des Signals und ggf. physikalische Einheit
Uninterpretierter aus der Nachricht extrahierter Zahlenwert
Untergrenze des Wertebereichs
Obergrenze des Wertebereichs
3.6.4
)
Overwrite-Ansicht
Auf der Registerkarte Overwrite (Abb. 3.35) werden die jeweils neuesten Werte ausgewählter Signale angezeigt. Die anzuzeigenden Signale sind hierzu im Signalauswahlbaum per Doppelklick bzw. Menübefehl in das Empfangsfenster zu übernehmen. Die Overwrite-Ansicht kann
außerdem auf eine benutzerdefinierte Darstellungsreihenfolge der Signale konfiguriert werden.
Die Schalter der Schalterleiste zur Darstellungskonfiguration
dienen dazu,
den jeweils markierten Eintrag von der Ansicht zu löschen, ihn innerhalb der Liste nach oben
oder unten zu verschieben oder alle Einträge der Ansicht zu löschen.
canAnalyser
51
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.35: Signal-Modul in Overwrite-Ansicht
Die Datenanzeige der Overwrite-Ansicht hat die folgenden Spalten:
canAnalyser
52
Copyright IXXAT Automation GmbH
3.6. Signal-Modul
Spalte
Bedeutung
Anzahl
Zykluszeit / Zeit (abs)
Anzahl der empfangenen Nachrichten
Wahlweise letzte Zykluszeit des Signals oder absoluter Zeitstempel des letzten Empfangs bezogen auf den Startzeitpunkt; durch
Rechtsklick auf die Spaltenüberschrift kann die Anzeige von Stunden
und Minuten ein- bzw. ausgeschaltet werden
Störungen des Empfangs werden mit Symbolen angezeigt:
Status
•
Nachrichten sind verloren gegangen und angezeigte Daten
können dadurch eventuell verfälscht sein
•
Nachrichten sind verloren gegangen. Die angezeigte Anzahl in der Spalte Anzahl ist dadurch eventuell zu klein
•
Eine Überschreitung zu der in der Datenbasis vorgegebenen Zykluszeit ist aufgetreten
•
Ein empfangener Wert lag unterhalb seines zulässigen Wertebereichs
•
Ein empfangener Wert lag oberhalb seines zulässigen Wertebereichs
Channel
Name des physikalischen Busses bzw Strangs gemäß Projektdatenbasis. Wird bei der Wahl der zu verwendenden Projektdatenbasis im
Control Panel festgelegt. ( )
Quell-ECU
Sender der Nachricht (
Signal
Phys.Wert
Rohwert
Untergrenze
Obergrenze
Min.Zykluszeit
Max.Zykluszeit
Signalbezeichnung in der Datenbasis ( )
Wert des Signals und ggf. physikalische Einheit
Uninterpretierter aus der Nachricht extrahierter Zahlenwert
Untergrenze des Wertebereichs
Obergrenze des Wertebereichs
Kleinste gemessene Zykluszeit der Nachricht
Größte gemessene Zykluszeit der Nachricht
)
Zu jedem in der Overwrite-Ansicht eingetragenen Signal gibt es eine Signalwert-Historie,
die beim Auswählen des Eintrags im Signalverlauf-Fenster grafisch dargestellt wird. Das
Signalverlauf-Fenster wird auf dieselbe Art bedient wie die Graphansicht.
Es ist außerdem möglich, einen zweiten Signalverlauf zum Vergleich dazu mit anzuzeigen. Klicken sie dazu mit der linken Maustaste auf das Vergleichssignal und halten dabei die Strg-Taste
gedrückt (Strg+Klick).
In den Koordinatensystemen der Signalwert-Historie sind die zulässigen Wertebereiche des Signals farblich hinterlegt. Der Signalverlauf verläßt also idealerweise nie diesen Bereich, so daß
die Hintergrundfärbung möglicherweise vom Anwender gar nicht bewußt wahrgenommen wird.
3.6.5
Datenänderungserkennung
Die Datenänderungserkennung erfolgt in der Overwrite-Ansicht des Signal-Moduls und kann
über den Menü-Befehl Optionen | Datenänderungsanzeige aktiviert und deaktiviert werden.
Es gibt sowohl eine Erkennung der Wertänderung eines Signals, als auch seiner Wertebereichsüberschreitung. Eine weitere Überwachung prüft die zulässige Zykluszeit der Signale. Auch für
canAnalyser
53
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.36: Signal zur Overwrite-Ansicht hinzugefügt
Abbildung 3.37: Erster Empfang eines Signals in der Overwrite-Ansicht
letztere Erkennungen gibt es entsprechende Menübefehle am gleichen Ort, mit denen sie aktiviert und deaktiviert werden können.
Wird eine Abweichung erkannt, erscheint ein entsprechendes Symbol in der Statusspalte, das
so lange ansteht, bis es einzeln manuell zurückgesetzt wird, oder bis der Anwender den Inhalt
des Anzeigefensters löscht.
Nach der Übernahme eines Signals in die Overwrite-Ansicht des Signal-Moduls erscheint das
Signal vor dem ersten Empfang der Nachricht in grauer Schrift (Abb. 3.36).
Mit dem ersten Empfang wird das Signal in der Overwrite-Ansicht in blauer Schrift und mit dem
empfangenen Wert dargestellt. Es wird noch keine Zykluszeit angezeigt, da zu deren Berechnung das Signal mindestens zweimal empfangen worden sein muss (Abb. 3.37).
Nach dem zweiten Empfang des Signals wird bei eingeschalteter Datenänderungsanzeige in
der Spalte Phys.Wert der gegenüber dem ersten Empfang veränderte Wert farblich markiert
(Abb. 3.38).
Die Änderungserkennungen und die Signalisierung von Timeouts kann im Kontextmenü des
Anzeigebereichs zurückgesetzt werden. Hierzu wird mit der rechten Maustaste auf das Signal
geklickt, dessen Datenänderungsanzeige zurückgesetzt werden soll. Im erscheinenden Kontextmenü kann die Anzeige für das selektierte Signal oder für alle Signale zurückgesetzt werden
(Abb. 3.39).
Die Datenänderungsanzeige erfolgt immer in Bezug auf den Signalwert des ersten Empfangs
eines Signals bzw. in Bezug auf den Signalwert zum Zeitpunkt des Zurücksetzens der Datenänderungsanzeige. Wenn also für ein Signal einmal ein anderer Wert als der Referenzwert (erster empfangener Wert oder Signalwert beim Zurücksetzen) empfangen wurde, dann bleibt der
Signalwert markiert, selbst wenn wieder ein mit dem Referenzwert identischer Signalwert empfangen wird.
3.6.6
Logging-Ansicht
Die Logging Registerseite (Abb. 3.40) zeigt das Ereignisprotokoll der Wertebereichsüberwachung in chronologischer Reihenfolge an. Dieses beinhaltet den Zeitpunkt der
Wertebereichsüber- bzw. -unterschreitung, sowie den Zeitpunkt der Rückkehr in den Normalbereich.
Die einzelnen Spalten des Ereignisprotokolls haben folgende Bedeutung:
Abbildung 3.38: Zweiter Empfang des Signals mit verändertem Wert
canAnalyser
54
Copyright IXXAT Automation GmbH
3.6. Signal-Modul
Abbildung 3.39: Kontextmenü zur Überwachungsanzeige
Abbildung 3.40: Signal-Modul Logging-Ansicht
Spalte
Bedeutung
Zeit (abs/rel)
Zeitstempel des Empfangs, wahlweise absolut (bezogen auf den Startzeitpunkt
des Controllers) oder relativ zur zuvor empfangenen Nachricht
Beschreibung des Ereignisses
Wenn Signalwerte ihren zulässigen Wertebereich verlassen, wird dies durch die
Ereignis
Status
Symbole
Channel
bzw
angezeigt. Wenn Signalwerte wieder in ihren Normbereich
bzw
angezeigt
zurückkehren, wird dies durch die Symbole
Name des physikalischen Busses bzw Strangs gemäß Projektdatenbasis. Wird
bei der Wahl der zu verwendenden Projektdatenbasis im Control Panel festgelegt. ( )
Quell-ECU
Sender der Nachricht (
Signal
Phys.Wert
Rohwert
Untergrenze
Obergrenze
Signalbezeichnung in der Datenbasis ( )
Wert des Signals und ggf. physikalische Einheit
Uninterpretierter aus der Nachricht extrahierter Zahlenwert
Untergrenze des Wertebereichs
Obergrenze des Wertebereichs
3.6.7
)
Graphansicht
Die Graphansicht kann bis zu 15 Signale in bis zu 4 Koordinatensystemen gleichzeitig darstellen
(Abb. 3.41).
Verschiedene Modi ermöglichen das automatische Anpassen der Zeitachse während der Datenerfassung:
• Aus - es wird keine Anpassung der Zeitachse vorgenommen. Nach dem Zoomen der
Zeitachse mit der Maus wird automatisch in diesen Modus geschaltet.
canAnalyser
55
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.41: Signal-Modul in Graphansicht
canAnalyser
56
Copyright IXXAT Automation GmbH
3.6. Signal-Modul
• Bereich - Die Zeitachse wird automatisch am kleinsten und am größten Zeitstempel ausgerichtet, d.h. der Zoomfaktor wird laufend angepasst. Nach dem Start ist dieser Modus
aktiv.
• Ausrichten - Der Zoomfaktor bleibt konstant, der Bereich wird am letzten Zeitstempel ausgerichtet.
Nach der Zuweisung beginnt die grafische Darstellung der empfangenen Werte für die ausgewählten Signale. Dabei kann online gescrollt und gezoomt werden.
Die Koordinatensysteme blenden zusätzliche waagerechte gestrichelte Linien zur Visualisierug
des zulässigen Wertebereichs ein. Der Signalverlauf bleibt also idealerweise immer zwischen
diesen beiden.
Im unteren Teilfenster werden die aktuellen Signalwerte und Zeitstempel tabellarisch im Klartext ausgeben. Wurde für ein Signal noch kein Wert empfangen, ist dies durch den fehlenden
Zeitstempel zu erkennen.
Nach dem Stoppen der Datenerfassung über Funktionen | Stop können die aufgenommenen
Daten im Graphfenster genauer analysiert werden.
Durch Scrollen und Zoomen kann der auszuwertende Zeitabschnitt ausgewählt werden. Durch
das Positionieren des Cursors mit einem Mausklick auf das Graphfenster können genaue Signalwerte ermittelt werden. Die Werte werden im unteren Teilfenster unter "Phys.Wert" ausgegeben.
Die Wirkung der Mausbedienung ist durch verschiedene Modi in der Schalterleiste vorgegeben.
Diese Modi sind:
• Zoom Zeitachse - Die Maus kann benutzt werden, um Zoom-Operationen auf der Zeitachse durchzuführen. Durch Klicken bzw. Klicken und Ziehen, kann der gewünschte Bereich
vergrößert (linke Maustaste) bzw. verkleinert (rechte Maustaste) werden.
• Zoom Wertachse - Die Maus kann benutzt werden, um Zoom-Operationen auf der
Wertachse durchzuführen. Durch Klicken bzw. Klicken und Ziehen, kann der gewünschte
Bereich vergrößert (linke Maustaste) bzw. verkleinert (rechte Maustaste) werden. Diese
Funktion bezieht sich auf die Wertachsen aller Signale eines Tracks.
• Verschieben - Die Maus kann benutzt werden, um den sichtbaren Bereich eines Tracks zu
verschieben. Diese Funktion bezieht sich auf die Wertachsen aller Signale eines Tracks
sowie auf die gemeinsame Zeitachse.
Beim Überfahren der Signal- und Zeitachsen mit der Maus werden Zoom-Leisten eingeblendet,
die eine Veränderung des Zoombereichs erlauben. Damit können auch die Offsets und ZoomFaktoren der Signal-Wertachsen unabhängig voneinander verändert werden.
Hinweis: Die Datenaufnahme kann über Funktionen | Start fortgesetzt werden. Alle Ereignisse
zwischen Stoppen und erneutem Starten werden ignoriert.
Hinweis: Der grafische Werteverlauf eines im unteren Teilfenster markierten Signals wird fett
dargestellt.
3.6.8
Signalauswahlbaum
In der Baumstruktur der Datenbasisanzeige werden alle dem Virtuellen Bus zugeordneten Channels und Datenbasen sowie die interne Statistikdatenbasis dargestellt (Abb. 3.42).
Die Bedienung erfolgt entweder über die Tastatur oder mit der Maus.
canAnalyser
57
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.42: Signalauswahlbaum im Signalmodul
Der Signalauswahlbaum dient dazu, die anzuzeigenden Signale für jede der vier Ansichten
(Scroll, Overwrite, Logging, Graph) unabhängig voneinander auszuwählen. Gewählte, also anzuzeigende Signale sind fett dargestellt. Beim Umschalten der aktiven Ansicht paßt sich der
Signalauswahlbaum entsprechend an.
Organisiert ist der Signalauswahlbaum in drei hierarchischen Ebenen:
. Der Knoten
• Channel Oberste Ebene des Signalauswahlbaums, symbolisiert durch
repräsentiert einen im Datenbankauswahldialog des ControlPanels selektierten Datenbasischannel und zeigt seinen Namen, und den der Datenbasis in Klammern an. Darunter
sind die ECUs angeordnet.
. Jeder Knoten reprä• ECU Zweite Ebene des Signalauswahlbaums, symbolisiert durch
sentiert ein sogenanntes ECU (elektronisches Steuergerät) vom übergeordneten Channel,
und zeigt seinen Namen an. Darunter sind die von diesem Steuergerät übertragenen Signale angeordnet. Um alle Signale des ECUs für die jeweilige Signalansicht auszuwählen,
klicken Sie Ihn entweder doppelt, oder drücken die "Einfg"-Taste, oder rufen den Kontextmenübefehl Ausgewähltes Element im View anzeigen auf. Entsprechendes gilt für den
umgekehrten Fall, zum Abwählen aller ECU-Signale. Klicken Sie entweder doppelt, oder
drücken die "Entf"-Taste, oder rufen den Kontextmenübefehl Ausgewähltes Element vom
View entfernen auf. Im Tooltip des Knotens werden zur schnelleren Übersicht die von Ihm
bereitgestellten Signalnamen aufgelistet.
. Dieser Knoten
• Signal Unterste Ebene des Signalauswahlbaums, symbolisiert durch
repräsentiert ein einzelnes Signal. Um es für die jeweilige Signalansicht auszuwählen, klicken Sie den Knoten entweder doppelt, oder drücken die "Einfg"-Taste, oder rufen den
Kontextmenübefehl Ausgewähltes Element im View anzeigen auf. Entsprechendes gilt
für den umgekehrten Fall, zum Abwählen des Signals. Klicken Sie entweder doppelt, oder
drücken die "Entf"-Taste, oder rufen den Kontextmenübefehl Ausgewähltes Element vom
View entfernen auf. Bei aktiver Graphansicht werden die Signalfarbe und das Koordinatensystem mittels zusätzlicher Icons visualisiert. Über die verschachtelten Kontextmenübefehle Signalfarbe und Koordinatensystem lassen sich diese Attribute ändern.
canAnalyser
58
Copyright IXXAT Automation GmbH
3.6. Signal-Modul
Abbildung 3.43: Kontextmenü des Signalauswahlbaums
3.6.9
Kontextmenü des Signalauswahlbaums
Das Kontextmenü (Abb. 3.43) enthält folgende Elemente:
Element
Bedeutung
Ausgewähltes Element im View anzeigen
Fügt das Signal oder alle Signale eines ECUs
der jeweils aktiven Anzeige hinzu.
Zuweisung, mit welcher Farbe ein Signal in der
Graphanzeige dargestellt wird. Die momentane
Farbe ist unterlegt. Durch Auswählen des entsprechenden Menüeintrags wird die Farbe geändert.
Zuweisung, in welchem der vier möglichen Koordinatensysteme ein Signal in der Graphanzeige
dargestellt wird. Das momentane Koordinatensystem ist unterlegt. Durch Auswählen des entsprechenden Menüeintrags wird das Signal auf
ein anderes Koordinatensystem verschoben.
Entfernt das Signal oder alle Signale eines
ECUs von der jeweils aktiven Anzeige.
Klappt den Signalauswahlbaum so ein, daß nur
noch die Channelebene sichtbar ist.
Klappt die Knoten des Signalauswahlbaum so
ein oder aus, daß nur noch die ECU-Knoten
sichtbar sind.
Klappt den Signalauswahlbaum voll aus, so daß
alle Signale sichtbar sind.
Signalfarbe
Koordinatensystem
Ausgewähltes Element vom View entfernen
Channels anzeigen
ECUs anzeigen
Signale anzeigen
3.6.10
Tastaturkürzel des Signalauswahlbaums
Einfg
Entf
Strg+T, n
canAnalyser
Fügt das Signal oder alle Signale eines ECUs der jeweils aktiven Anzeige hinzu.
Entfernt das Signal oder alle Signale eines ECUs von der jeweils aktiven Anzeige.
Verschiebt das Signal auf das Koordinatensystem 1 bis 4. Drücken Sie Strg+T,
lassen Sie wieder los, und dann innerhalb von 600ms eine der Zifferntasten 1 bis
4.
59
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
3.6.11
Menüreferenz
Datei-Menü
Menüpunkt
Funktion
Einstellungen importieren...
Moduleinstellungen aus einer Datei importieren (siehe Kapitel 1.4)
Moduleinstellungen in eine Datei exportieren (siehe Kapitel 1.4)
Speichert den Inhalt der aktiven Anzeige im CSV-Format in eine
Datei
Speichert die momentane Graphanzeige als Bild in eine Datei.
Dies umfaßt alle Koordinatensysteme, die Signalbeschriftungen
und den sichtbaren Signalverlauf.
Beendet das Signal-Modul
Einstellungen exportieren...
Anzeigedaten exportieren...
Signalkurven exportieren...
Beenden
Bearbeiten-Menü
Menüpunkt
Funktion
Kopieren als CSV
Markierte Zeilen im CSV-Format in die Zwischenablage kopieren
Anlegen oder Entfernen eines Lesezeichens für die
markierte Nachricht
Zum vorigen Lesezeichen springen
Zum folgenden Lesezeichen springen
Nullzeitpunkt auf markierte Nachricht legen / Zuvor
festgelegten Nullzeitpunkt freigeben
Zum zuvor festgelegten Nullzeitpunkt springen
Textsuchdialog zur Suche nach einem Signalnamen
im Signalauswahlbaum öffnen
Lesezeichen umschalten *
Voriges Lesezeichen *
Folgendes Lesezeichen *
Nullzeitpunkt festlegen/freigeben *
Zum Nullzeitpunkt gehen *
Signal suchen im Signalauswahlbaum...
* Steht in der Overwrite-Ansicht nicht zur Verfügung
Ansicht-Menü
Menüpunkt
Funktion
Zeit relativ
Anzeige des Zeitstempels absolut oder relativ zum zuvor angezeigten Signal
Es werden im Scroll-Mode immer die aktuellsten Telegramme
angezeigt
Aktiviert die Scrollanzeige und bringt sie in den Vordergrund
Aktiviert die Overwriteansicht und bringt sie in den Vordergrund
Aktiviert die Graphansicht und bringt sie in den Vordergrund
Aktiviert die Loggingansicht und bringt sie in den Vordergrund
Schaltet die Schalterleiste sichtbar/unsichtbar
Schaltet die Statusleiste sichtbar/unsichtbar
Letzte Nachrichten anzeigen
Scroll-Ansicht
Overwrite-Ansicht
Graphansicht
Logging-Ansicht
Symbolleiste
Statusleiste
canAnalyser
60
Copyright IXXAT Automation GmbH
3.6. Signal-Modul
Funktionen-Menü
Menüpunkt
Funktion
Start
Stop
Datenänderungsanzeige rücksetzen Alle
Startet die Interpretation von Nachrichten
Stoppt die Interpretation von Nachrichten
Setzt die Wertanderungsanzeige für alle Signale zurück
Setzt die untere Grenzwertüberwachung für
alle Signale zurück
Setzt die obere Grenzwertüberwachung für
alle Signale zurück
Setzt die Zykluszeitüberwachung für alle Signale zurück
Einzelwerte in Graphansicht mittels Kästchen markieren
Löscht den Inhalt aller Anzeigefensters
Ideale Spaltenbreiten einstellen
Untere Grenzwertüberwachung rücksetzen Alle
Obere Grenzwertüberwachung rücksetzen Alle
Zykluszeitüberwachung rücksetzen Alle
Signalempfang markieren
Alles löschen
Automatische Spaltenbreite
Optionen-Menü
Menüpunkt
Funktion
Datenänderungsanzeige
Schaltet die Datenänderungsanzeige ein oder aus
Schaltet die Überwachung des Wertebereichs ein oder aus
Schaltet die Zykluszeitüberwachung
ein oder aus
Öffnet einen Dialog zur Auswahl der
Farbe, mit der geänderten Daten
hervorgehoben werden
Öffnet einen Dialog zur Auswahl der
Textfarbe, mit der Werte außerhalb
des gültigen Bereichs hervorgehoben werden
Über ein Untermenü kann die Breite des sichtbaren Ausschnitts als
Zeitspanne fest eingestellt werden.
Neue Signalwerte werden permanent rechts angefügt, und der sichtbare Ausschnitt wandert nach links
hinaus, wie bei einem technischen
Schreiber mit fest installierten Nadeln. Mögliche einstellbare Zeitspannen sind 1, 5, 10 oder 30 Sekunden, und 1 oder 5 Minuten.
Blendet die Y-Achsenbeschriftungen
ein oder aus
Öffnet einen Dialog zu Auswahl der
Schriftart und Textfarbe, in der die
Signale in allen Ansichten angezeigt
werden
Wertebereichsüberwachung
Zykluszeitüberwachung
Farbe der Datenänderungsanzeige...
Textfarbe bei Wertebereichsüberschreitung...
Signalschreiber Ansicht Sichtbarer Ausschnitt
Signalschreiber Ansicht Achsenbeschriftungen sichtbar
Schriftart...
canAnalyser
61
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Hilfe-Menü
Menüpunkt
Funktion
Hilfethemen
Info...
Öffnet die Online-Hilfe
Öffnet die Anzeige der Versionsinformationen
3.6.12
Schalterleiste
Die wichtigsten Funktionen des Signal-Moduls sind auch über die Schalterleiste (Abb. 3.44)
aufrufbar.
3.6.13
Statusleiste
In der Statusleiste des Signal-Moduls befindet sich ein LED-Symbol, das den Status des Control
Panels bzw. des Signal-Moduls anzeigt:
LED-Farbe
Bedeutung
Grün
Rot blinkend
Rot
Control Panel und Signal-Modul sind gestartet
Control Panel ist gestoppt
Signal-Modul ist gestoppt.
3.6.14
Tastaturkürzel
TAB
Strg+TAB
F1
F2
Umschalten+F2
Strg+F2
F5
Umschalten+F5
F8
F11
Strg+C
Strg+E
Strg+F
Strg+M
Strg+O
Strg+S
Strg+1
Strg+2
BildNachOben
BildNachUnten
Strg+BildNachOben
Strg+BildNachUnten
Strg+0
Strg+1..9
canAnalyser
Wechsel zwischen Signalauswahlbaum und Signalansichten
Umschalten zwischen den verschiedenen Ansichten
Öffnet die Online-Hilfe
Zum folgenden Lesezeichen springen
Zum vorigen Lesezeichen springen
Lesezeichen umschalten
Startet den Datenempfang
Stoppt den Datenempfang
Anzeige löschen
Ein- und Ausblenden des Signalauswahlbaums
Kopiert die markierten Zeilen in die Zwischenablage
Exportiert empfangene Nachrichten in eine Datei
Suche nach einem Signalnamen im Signalauswahlbaum
Einzelwerte in Graphansicht mittels Kästchen markieren
Moduleinstellungen aus Datei laden
Moduleinstellungen in Datei speichern
Messbalken 1 beim Mauszeiger in der Graphanzeige platzieren
Messbalken 2 beim Mauszeiger in der Graphanzeige platzieren
Eine Seite zurück scrollen
Eine Seite voraus scrollen
1000 Nachrichten zurück scrollen
1000 Nachrichten voraus scrollen
Zum Nullzeitpunkt springen
Zu 10%..90% des vorgehaltenen Anzeigebereichs springen
62
Copyright IXXAT Automation GmbH
3.6. Signal-Modul
Abbildung 3.44: Schalterleiste des Signal-Moduls
canAnalyser
63
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.45: Signal-Transmit-Modul
3.7
3.7.1
Signal-Transmit-Modul
Übersicht
Das Signal-Transmit-Modul stellt Funktionen zum Ändern von Signalen und dem Versenden der
betroffenen Nachrichten bereit. Es stützt sich dabei auf Signaldatenbanken die zuvor im Control
Panel dem virtuellen Bus zugewiesen wurden.
3.7.2
Programmfenster
Im Signal-Transmit-Modul (Abb. 3.45) werden die verfügbaren Signale in den Listen im unteren
Bereichs angezeigt. Die Signalauswahl steht in Form eines hierarchischen Baums und einer
Suchliste zur Verfügung. Signale die ausgewählt wurden, erscheinen im oberen Bereich des
Modulfensters.
3.7.3
Auswählen von Signalen
Signalbaum
Die Auswahl der Signale erfolgt über Listen im unteren Bereich des Moduls. Auf dem Reiter Signale sind die Signale als Baum dargestellt. Jede Ebene des Baums kann selektiert werden. Per
Drag & Drop oder über das Tastenkürzel Strg+I kann der selektierte Knoten in die Sendetabelle
eingefügt werden. Alternativ kann auch der Eintrag Signal hinzufügen aus dem Kontextmenü
verwendet werden. Dabei werden alle Signale eingefügt die Kindknoten des aktuell ausgewählten Knotens darstellen.
Im Kontextmenü können alle Knoten über den Eintrag Alle öffnen expandiert werden. Ebenso
können alle Knoten über Alle schließen wieder eingeklappt werden. Über den Eintrag Signaleigenschaften wird ein Dialog geöffnet in dem weitere Eigenschaften des gewählten Signals
angezeigt werden. Diese Option steht nur zur Verfügung wenn ein Signalknoten gewählt wurde.
canAnalyser
64
Copyright IXXAT Automation GmbH
3.7. Signal-Transmit-Modul
Signalsuche
Die weite Auswahlmöglichkeit stellt die Suchliste auf dem Reiter Suchen dar. Diese Liste zeigt
im Grundzustand alle Signale zusammen mit ihrem virtuellen Pfad an. Dieser Pfad entspricht
dem Baum auf dem Reiter Signale. Über der Liste befindet sich das Suchfeld. Hier können
Suchanfragen eingegeben werden.
Die Suchliste muss beim Hinzufügen einer neuen Datenbank zuerst einen Suchindex erstellen.
Daher kann es bei größeren Datenbanken vorkommen dass die Liste nicht sofort verfügbar ist.
Der Indizierungvorgang wir durch das rotierende Symbol
am rechten Rand des Suchfelds
angezeigt. Sobald der Vorgang abgeschlossen ist kann die Suche verwendet werden.
Durch Eingabe eines Begriffs kann nach Signalnamen gesucht werden. Die Suchmaschine unterschiedet nicht zwischen Groß- und Kleinschreibung. Es werden auch Teilstrings an beliebiger
Position im Namen gefunden. Enthält der Suchbegriff ein Leerzeichen sollte die Anfrage in einfache oder doppelte Anführungszeichen eingeschlossen werden. Ist ein Anführungszeichen oder
Doppelpunkt Teil des Suchbegriff müssen diese mit einem Backslash maskiert werden. Sonst
meldet das Suchfeld einen Syntaxfehler. Fehler werden durch die rote Einfärbung des Suchfelds angezeigt. Durch Überfahren des Suchfelds mit der Maus wird der Fehlertext im Tooltip
angezeigt.
oder der Enter-Taste gestartet. DauDie eigentliche Suche wird durch drücken des Symbols
ert die Suche länger erscheint das Symbol
am rechten Rand des Suchfelds. In diesem Fall
kann die Suche durch drücken des Symbols oder der Esc-Taste abgebrochen werden. Die Liste
zeigt dann nur die bisher gefunden Signale an.
am rechten
Ist eine Suche abgeschlossen oder wurde abgebrochen erscheint das Symbol
Rand des Suchfelds. Durch Drücken des Symbols oder der Esc-Taste wird das Ergebnis gelöscht. Die Suchliste zeigt dann wieder alle verfügbaren Signale an. Wird die Esc-Taste ein
weiteres Mal gedrückt wird zusätzlich die Suchanfrage gelöscht.
Außer der Suche nach dem Signalnamen wird auch die Suche nach weiteren Eigenschaften des
Signals unterstützt. Dafür stehen spezielle Schlagwörter zur Verfügung. Für ein Schlagwort gilt
die Syntax [Schlagwort]:[Suchbegriff]. Schlagwörter können kombiniert werden. Die mehrfache
Verwendung desselben Schlagworts wird nicht unterstützt. Die Groß- und Kleinschreibung wird,
wie bei den Suchbegriffen, nicht berücksichtigt.
Schlagwort
Suchanfrage
channel
Findet alle Signale die sich in einem Kanal befinden der den Suchbegriff in der
ElementID trägt
Findet alle Signale die sich in einem Frame befinden der den Suchbegriff in der
ElementID trägt
Findet alle Signale die sich in einem PDU befinden der den Suchbegriff in der
ElementID trägt
Findet alle Signale die sich in einer ECU befinden der den Suchbegriff in der ElementID trägt. Mir dem Suchbegriff "(none)" können alle Signale gesucht werden
denen keiner ECU zugeordnet wurde
frame
pdu
ecu
Um ein Signal der Sendeliste hinzuzufügen muss es erst selektiert werden. Die Auswahl kann
über die Maus oder Tastatur erfolgen. Dabei steht die Mehrfachselektion mit der Strg- und ShiftTaste zur Verfügung. Durch Drag & Drop oder drücken der Tastenkombination Strg+I werden die
selektierten Signale in die Sendetabelle kopiert.
canAnalyser
65
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
3.7.4
Senden von Signalen
In der Sendeliste werden die Signale angezeigt die zuvor über die Auswahllisten hinzugefügt
wurden. Die Sendeliste hat die folgenden Spalten:
Spalte
Bedeutung
Wert
Der Wert der für das Signal übertragen werden soll. Diese Zellen färben
sich rot wenn der Wert außerhalb der Signalgrenzen liegt und die Wertebereichsprüfung aktiv ist.
Eine Liste von Umrechnungsvorschriften die von der Datenbank definiert
werden. Diese Vorschriften geben an wie der eingegebenen Wert in den
Sendewert umgerechnet wird.
Gibt an ob der Wertebereich des Signals beachtet werden soll. Wenn dieses Flag gesetzt ist kann das Signal nur versendet werden wenn sich der
eingegeben Wert im gültigen Bereich befindet.
Legt fest auf welche Ebene der Versand des Signal simuliert wird. Bei der
Ebene Frame Triggering wird nur das eine Frame versandt über welches
das Signal hinzugefügt wurde. Bei der Ebene ECU werden ggf. noch weiter Frames verschickt falls das Signal in mehreren Frames enthalten ist.
Der Name des Signals welches von der Zeile repräsentiert wird.
Gibt an ob das Signal zyklisch oder azyklisch versandt wird. Es ist zu
beachten dass ein zyklisches Signal auf einem weiteren Frame auch azyklisch übertragen werden kann.
Der Standardwert des Signals laut Datenbank
Die untere Grenze für den Wertebereich des Signals. Der Wert ändert sich
je nach gewählter Umrechnungsvorschrift.
Die obere Grenze für den Wertebereich des Signals. Der Wert ändert sich
je nach gewählter Umrechnungsvorschrift.
Die Maßeinheit des Signals
Der Pfad des Signal wie er in den Suchlisten definiert ist.
Umrechnung
Bereichsprüfung
Simulationsebene
Signal
Typ
Standardwert
Min Wert
Max Wert
Einheit
Pfad
Durch anklicken der Spaltenköpfe ist eine Sortierung der Signale möglich. Bei gedrückter ShiftTaste ist auch eine Sortierung nach mehreren Spalten möglich.
Um ein Signal zu senden muss zuerst ein neuer Wert in die Spalte Wert eingegeben werden. Ist
der Wert gültig färbt sich die gesamte Spalte gelb. Damit wird angedeutet, dass der Wert zwar
verändert, aber noch nicht verschickt wurde. Dieses Verhalten ermöglicht es mehrere Signale
zu verändern und dann gleichzeitig zu versenden. Die geänderten Signale werden über das
in der Werkzeugleiste oder den Eintrag Signal versenden im Kontextmenü versandt.
Symbol
Daraufhin entfärben sich die Signale wieder um anzuzeigen dass der dargestellte Wert aktuelle
verwendet wird.
Das Senden eines Signalwerts führt intern zu einer Aktualisierung von PDUs bzw. Nachrichten,
die das geänderte Signal enthalten. Die endgültig verschickten Nachrichten hängen aber von
den Informationen in der Datenbasis ab, die sowohl zyklische (cyclic triggered) als auch einmalig
abhängige (event triggered) Vorgänge beschreiben können.
Signale können über das Symbol
in der Werkzeugleiste aus der Sendeliste entfernt. Alternativ
enthält das Kontextmenü den Befehl Signal entfernen. Als dritter Weg steht noch die Entf-Taste
zur Verfügung.
Beim Laden von Projekt-Dateien im ControlPanel kann es vorkommen dass die verwendeten
Datenbanken temporär oder dauerhaft nicht verfügbar sind. In diesem Fall kann das SignalTransmit-Modul die gespeicherte Signalliste nicht mehr vollständig wiederherstellen. Signale bei
denen dieses Problem auftritt werden grau markiert. Solche Signale können nicht versandt werden. Es werden auch nicht alle Daten angezeigt. Sie können aber aus der Signalliste entfernt
canAnalyser
66
Copyright IXXAT Automation GmbH
3.8. Sequencer-Modul
werden. Dies ist aber nicht zwingen notwendig. Ist die Datenbank beim nächsten Laden des
Projekts wieder verfügbar werden die Signal wieder normal dargestellt.
Sowohl in den Suchlisten als auch in der Sendeliste bietet das Kontextmenü den Punkt Signaleigenschaften an. Er öffnet einen Dialog in dem erweiterte Eigenschaften des gewählten Signals
angezeigt werden.
3.7.5
Menüreferenz
Hilfe-Menü
Menüpunkt
Funktion
Hilfethemen
Info...
Öffnet die Online-Hilfe des Signal-Transmit-Moduls
Öffnet die Anzeige der Versionsinformationen des Signal-Transmit-Moduls
3.7.6
Werkzeugleiste
Symbol
Funktion
Versendet alle Signale
Löscht das ausgewählte Signal von der Sendeliste
Öffnet die Hilfedatei
3.7.7
Statusleiste
In der Statusleiste des Signal-Transmit-Moduls befindet sich ein LED-Symbol, das den Status
des Control Panels anzeigt:
LED-Farbe
Bedeutung
Grün
Rot blinkend
Control Panel ist gestartet
Control Panel ist gestoppt.
3.7.8
Tastaturkürzel
Entf
F1
Strg+I
3.8
3.8.1
Ausgewählte Signale löschen
Öffnet die Online-Hilfe
Ausgewählten Knoten zur Sendeliste hinzufügen
Sequencer-Modul
Übersicht
Das Sequencer-Modul (Abb. 3.46) ermöglicht die Abarbeitung kommandogesteuerter
Nachrichten-Sequenzen und kann somit benutzt werden, um Knoten bzw. Protokollabläufe zu
simulieren oder eine bestimmte Buslast zu generieren. Es verfügt über Befehle zum:
• Senden von Daten- und Remote-Nachrichten
• Warten auf Daten- oder Remote-Nachrichten
• Einfügen von Wartezeiten
canAnalyser
67
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.46: Sequencer-Modul
• Warten auf Benutzereingabe
• Wiederholen von Befehlsblöcken
Nach jedem Befehl ist es möglich, eine Wartezeit einzufügen.
Die Benutzeroberfläche des Sequencer-Moduls besteht aus einer Menüleiste, einer Schalterleiste, einer Statusleiste sowie dem Editorfenster. Beim Abarbeiten einer Sequenz wird die aktuell
gesendete Nachricht der Sequenz über einen Laufbalken visualisiert.
3.8.2
Befehlssyntax
Bei der Syntax der Befehle ist folgendes zu beachten:
• Die Groß-/Kleinschreibung der Befehle ist nicht relevant.
• Die Parameter der Befehle müssen mit mindestens einem Leer- oder Tab-Zeichen getrennt
werden.
• Ein Befehl darf sich nur über eine Zeile erstrecken.
• Die Parameter können dezimal, hexadezimal oder oktal angegeben werden. Die Unterscheidung wird anhand des Präfixes getroffen.
Präfixe für Parameter:
Präfix
Bedeutung
Beispiel
0x oder 0X
0
hexadezimale Angabe
oktale Angabe
dezimale Angabe
0xF8
080
100
canAnalyser
68
Copyright IXXAT Automation GmbH
3.8. Sequencer-Modul
Kommentare
Kommentare können am Ende einer Befehlszeile durch ";" oder "//" getrennt angegeben werden.
Zeilen, die keine gültigen Befehle enthalten, werden automatisch als Kommentare gewertet.
Beispiel:
td
20
2
100
0x01 0x02 0x03
; Kommentar am Ende
; einer Befehlszeile
// Kommentarzeile
Auch dies ist eine Kommentarzeile
3.8.3
Befehlsübersicht
Das Sequencer-Modul unterstützt die folgenden Befehle:
Befehl
Bedeutung
Aktion
td
tds
tde
tr
trs
transmit data
transmit data (std)
transmit data (ext)
transmit remote
transmit remote (std)
tre
transmit remote (ext)
wd
wr
wait for data
wait for remote
delay
pause
repeat
endrep
delay
pause
repeat
end repeat
Senden einer Nachricht
Senden einer Nachricht (std)
Senden einer Nachricht (ext)
Senden einer Nachrichten-Anforderung
Senden einer Nachrichten-Anforderung
(std)
Senden einer Nachrichten-Anforderung
(ext)
Warten auf eine Nachricht
Warten
auf
eine
NachrichtenAnforderung
Einfügen einer Wartezeit in ms
Warten auf Benutzereingabe
Wiederholung eines Blocks
Ende eines Blocks
Wichtig: Der Parameter <Verzögerungszeit> gibt an, wie lange der Sequencer-Betrieb nach
einem Befehl verzögert wird. Diese Zeitspanne kann, bedingt durch das Betriebsystem und die
Auslastung des Prozessors, größer sein als der angegebene Wert.
Senden einer Nachricht:
td[s|e] <Anzahl_der_Wiederholungen> <Verzögerungszeit>
<Nachrichten-ID> <Datenfeld>
Eine Nachricht mit dem Identifier <Nachrichten-ID> und dem Datenfeld <Datenfeld> wird gesendet. Nach dem Senden eines Objekts wird <Verzögerungszeit> ms gewartet. Dieser Vorgang wird <Anzahl_der_Wiederholungen> mal wiederholt. Das td/tds-Kommando versendet
Standard-Nachrichten (11 Bit Identifier), das tde-Kommando Extended-Nachrichten (29-Bit Identifier).
Bei einem Transmit-Befehl (td, tr) wird ein Telegramm in die Sendequeue gestellt. Es wird nicht
gewartet, bis das CAN-Telegramm auf dem Bus gesendet wurde. Bei niedrigen Baudraten kann
es daher vorkommen, dass die Telegramme nicht schnell genug transportiert werden können,
und die Sende-Queue volläuft. In diesem Fall stimmen auch die Verzögerungszeiten zwischen
den Telegrammen nicht mehr. Andererseits ist es dadurch möglich, hohe Buslasten zu erzeugen.
Beispiel:
canAnalyser
69
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
// Senden von 20 Nachrichten mit
// Datenfeld = 11 22 33 44 55 66
// zwischen den Nachrichten wird
//
td 20 100 0x10A 11 22 33 44 55 66
ID = 0x10A,
77 88
jeweils 100 ms gewartet
77 88
Senden einer Nachrichten-Anforderung:
tr[s|e] <Anzahl_der_Wiederholungen> <Verzögerungszeit>
<Nachrichten-ID> <Länge_des_Datenfeldes>
Eine Remote-Nachricht mit dem Identifier <Nachrichten-ID> und <Länge_des_Datenfeldes> Datenbytes wird mit einer Verzögerungszeit <Verzögerungszeit>, <Anzahl der Wiederholungen>
hintereinander gesendet. Das tr/trs-Kommando versendet Standard-Nachrichten (11 Bit Identifier), das tre-Kommando Extended-Nachrichten (29-Bit Identifier).
Beispiel:
// Senden von 10 Remote-Nachrichten mit ID = 33 mit
// Data Length Code = 4
// zwischen den Nachrichten wird jeweils 200 ms gewartet
//
tr 10 200 33 4
Warten auf eine Nachricht:
wd <Verzögerungszeit> <Nachrichten-ID>
Der Sequenzbetrieb wird solange angehalten, bis eine Nachricht mit Identifier <Nachrichten-ID>
eingetroffen ist. Im Anschluss wird noch <Verzögerungszeit> ms gewartet, bevor der nächste
Befehl bearbeitet wird.
Beispiel:
// Warten auf eine Nachricht mit ID = 0x54
// anschließend 500 ms verzögern
//
wd 500 0x54
Warten auf eine Nachrichten-Anforderung:
wr <Verzögerungszeit> <Nachrichten-ID>
Der Betrieb wird solange angehalten, bis eine Remote-Nachricht mit Identifier <Nachrichten-ID>
eingetroffen ist. Im Anschluss wird noch <Verzögerungszeit> ms gewartet, bevor der nächste
Befehl bearbeitet wird.
Beispiel:
// Warten auf eine Remote-Nachricht mit ID = 0x54
// anschließend 500 ms warten
//
wr 500 0x54
canAnalyser
70
Copyright IXXAT Automation GmbH
3.8. Sequencer-Modul
Einfügen einer Wartezeit:
delay <Verzögerungszeit>
Wartet <Verzögerungszeit< ms, bevor der nächste Befehl bearbeitet wird.
Beispiel:
// warte eine Sekunde lang
//
delay 1000
Wiederholung eines Blocks:
repeat <Anzahl der Wiederholungen>
<Weitere Befehle>
endrep
Der Befehl repeat gibt die Anzahl der Wiederholungen an, mit der ein nachfolgender Block
wiederholt wird.
Ein Block wird mit dem Befehl endrep abgeschlossen.
Beispiel:
// Ein Satz von vier Nachrichten soll 5 mal
// gesendet werden.
// Nach Absenden der Nachrichten soll auf eine Nachricht mit
// Identifier 60 gewartet werden.
// Danach wird die Sequenz 10 mal wiederholt.
// Die Einrückungen sind nicht notwendig,
// verdeutlichen aber die Struktur der Sequenz.
//
repeat 10
repeat 5
;
Count Delay ID
Data
td 1
1
41
12 13 14 15
td 1
1
0x3f 33 44 55
td 1
10
0x0a 22 33
td 1
100
32
76 65 43 26
endrep
wd 1 60
endrep
Warten auf Benutzereingabe:
pause
<Ausgabetext>
Es wird ein Dialog geöffnet und der Text <Ausgabetext< angezeigt. Danach wird die Sequenz solange angehalten bis der OK-Schalter im Dialogfenster betätigt wird, über den Abbruch-Schalter
besteht die Möglichkeit die Bearbeitung zu beenden.
Beispiel:
// Warten auf Benutzereingabe
//
pause Drücken Sie OK, um die Sequenz fortzusetzen !
canAnalyser
71
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
3.8.4
Menüreferenz
Datei-Menü
Menüpunkt
Funktion
Neu
Öffnet ein neues Editorfenster. Gegebenenfalls besteht
Gelegenheit, Änderungen in einem zuvor geöffneten Editorfenster zu speichern
Öffnen einer zuvor gespeicherten Sequencer-Datei
Speichert eine Sequencer-Datei
Speichert einer Sequencer-Datei unter einem neuen Dateinamen
Importiert eine vorhandene canAnalyser Trace-Datei (Endung: .tr0, .tr1, ...) in das Sequencer-Modul. Die einzelnen
CAN-Telegramme in der Trace-Datei werden aufbereitet
und als td-Befehle an der aktuellen Cursor-Position in den
Editor eingefügt. Der Delay-Parameter wird aus den Timestamps der CAN-Telegramme berechnet und auf 1 ms
gerundet. Wichtig: Die Anzahl der importierten Telegramme ist beschränkt. Es werden maximal die ersten 50000
Telegramme einer Trace-Datei importiert.
Druckt die aktuelle Sequencer-Datei aus
Zeigt eine Vorschau des Ausdrucks
Öffnet ein Fenster zur Auswahl der Seitenränder für den
Ausdruck
Öffnet den Windows-Druckerdialog
Beendet das Sequencer-Modul
Öffnen...
Speichern
Speichern unter...
Trace-Aufzeichnung importieren...
Drucken
Druckvorschau
Seite einrichten...
Druckeinrichtung...
Beenden
Bearbeiten-Menü
Menüpunkt
Funktion
Rückgängig
Wiederherstellen
Ausschneiden
Macht die letzte Änderung rückgängig
Stellt die rückgängig gemachte Änderung wieder her
Entfernt den markierten Bereich des Editorenfensters und kopiert
ihn in die Windows-Zwischenablage
Kopiert den markierten Bereich des Editorenfensters in die
Windows-Zwischenablage
Fügt den Inhalt der Windows-Zwischenablage an der Cursorposition ein
Löscht den markierten Bereich des Editorenfensters
Markiert den gesamten Inhalt des Editorenfensters
Öffnet einen Dialog zur Eingabe einer zu suchenden Zeichenkette
Sucht das nächste Vorkommen der eingegebenen zu suchenden
Zeichenkette
Sucht das letzte Vorkommen der eingegebenen zu suchenden Zeichenkette
Ersetzt eine zu suchende Zeichenkette durch eine einzugebende
andere Zeichenkette
Kopieren
Einfügen
Löschen
Alles markieren
Suchen...
Weitersuchen
Nach oben weitersuchen
Ersetzen...
canAnalyser
72
Copyright IXXAT Automation GmbH
3.8. Sequencer-Modul
Ansicht-Menü
Menüpunkt
Funktion
Symbolleiste
Statusleiste
Schaltet die Schalterleiste sichtbar/unsichtbar
Schaltet die Statusleiste sichtbar/unsichtbar
Nachrichtensequenz-Menü
Menüpunkt
Funktion
Start
Stop
Einzelschritt
Startet das Senden der aktuell geladenen Nachrichten-Sequenz
Stoppt den Sequenz-Betrieb
Nächsten einzelnen Programmschritt ausführen
Optionen-Menü
Menüpunkt
Funktion
Tabulator...
Öffnet einen Dialog zur Bestimmung der Tabulatorenweite des Editorfensters
Öffnet einen Dialog zur Bestimmung der Schriftart des Editorfensters
Öffnet einen Dialog zur Auswahl der Schriftart für den Ausdruck
Führt nicht die gesamte Nachrichten-Sequenz, sondern nur den jeweils nächsten Programmschritt aus
Verschiebt immer den sichtbaren Bildausschnitt zum gerade aktiven
Programmschritt
Schriftart...
Schriftart für Ausdruck...
Einzelschritt-Modus
Automatischer Bildlauf
Hilfe-Menü
Menüpunkt
Funktion
Hilfethemen
Info...
Öffnet die Online-Hilfe des Sequencer-Moduls
Öffnet die Anzeige der Versionsinformationen des Sequencer-Moduls
3.8.5
Schalterleiste
Die wichtigsten Funktionen des Sequencer-Moduls sind auch über die Schalterleiste (Abb. 3.47)
aufrufbar.
3.8.6
Statusleiste
In der Statusleiste befindet sich ein LED-Symbol, das den Status des Control Panels bzw. des
Sequencer-Modul anzeigt:
LED-Farbe
Bedeutung
Grün
Rot blinkend
Control Panel und Sequencer-Modul sind gestartet
Control Panel ist gestoppt.
canAnalyser
73
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.47: Schalterleiste des Sequencer-Moduls
3.8.7
Tastaturkürzel
Strg+N
Strg+O
Strg+S
Strg+P
Strg+Z
Strg+Y
Strg+X
Strg+C
Strg+V
Entf
Strg+A
Strg+F
F3
Umschalten+F3
Strg+H
F5
Umschalten+F5
F7
F9
F1
3.9
Neue Sequencer-Datei erstellen
Sequencer-Datei öffnen
Sequecer-Datei speichern
Sequencer-Datei drucken
Änderungen rückgängig machen
Änderungen wiederherstellen
Text ausschneiden
Text kopieren
Text einfügen
Text löschen
Alles markieren
Text suchen
Weitersuchen
Nach oben weitersuchen
Text ersetzen
Nachrichtensequenz starten
Nachrichtensequenz anhalten
Einzelschritt-Modus ein-/ausschalten
Einzelschritt durchführen
Öffnet die Online-Hilfe
Handhabung von Filtern
Mit Hilfe von Filtern werden bestimmte Nachrichten für ein Analysemodul sichtbar oder unsichtbar. Nachrichtenfilterdefinitionen haben im canAnalyser applikationsweite Gültigkeit. Die Filterkonfiguration erfolgt an zentraler Stelle, wodurch die Filter in den einzelnen Analysemodulen
durch simples Auswählen aktiviert werden können.
canAnalyser
74
Copyright IXXAT Automation GmbH
3.9. Handhabung von Filtern
Abbildung 3.48: Dialog zum Anlegen und Konfigurieren von Filtern
3.9.1
Filterkonfiguration
Das Anlegen und die Konfiguration von Filtern erfolgt im Dialog Verfügbare Filter (Abb. 3.48)
welcher aus dem Control Panel, dem Receive-Modul, oder dem Trace-Modul heraus über das
Symbol
oder den Menüeintrag Verfügbare Filter... geöffnet werden kann.
Neuen Filter anlegen
Um einen neuen Filter anzulegen muss für diesen ein Name definiert und eine Filterkategorie ausgewählt werden. Das anschließende betätigen des Schalters Hinzufügen erzeugt den
eingestellten Filter und öffnet automatisch dessen Konfigurationsdialog. Sobald dieser mit OK
geschlossen wurde ist der Filter in den Analysemodulen verfügbar.
Filterkonfiguration ändern
Um die Konfiguration eines existierenden Filters zu ändern öffnen Sie dessen Konfigurationsdialog über die Leertaste oder den Schalter Bearbeiten. Die neue Filterkonfiguration wird von den
Analysemodulen, die diesen gerade verwenden, automatisch übernommen.
Filter umbenennen
Ein existierender Filter kann über die Taste F2 oder über den Schalter Umbenennen umbenannt
werden. Der neue Name wird von den Analysemodulen automatisch übernommen.
Filter entfernen
Einzelne Filter werden über die Taste Entf oder den Schalter Entfernen aus der Liste der verfügbaren Filter entfernt. Der Schalter Alle entfernen entfernt alle Filter, wobei hier zuvor eine
Sicherheitsabfrage erfolgt.
canAnalyser
75
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.49: ID Range Filter Konfiguration
Analysemodule die den entfernten Filter in Verwendung haben reagieren hierauf indem der
Nachrichtenstrom nicht mehr gefiltert wird, d.h. es werden alle eintreffenden Nachrichten akzeptiert und die Filterauswahl wird auf <Kein Filter> umgeschaltet.
Filter kopieren
Um mehrere Filter anzulegen, welche sich aber nur geringfügig unterscheiden, kann über den
Schalter Kopieren eine vorhandene Filterkonfiguration dupliziert und anschließend Name und
Einstellungen des Duplikats angepasst werden.
Filter in andere Analysekonfiguration übernehmen
Um die erstellten Filter in eine zweite Analysekonfiguration zu übernehmen, müssen diese über
den Schalter Exportieren in eine separate Datei exportiert werden. Von dort aus können die Filter über den Schalter Importieren in weitere Analysekonfigurationen eingelesen werden (siehe
auch Kapitel 1.4).
3.9.2
ID Range Filter
Mit Hilfe des ID Range Filters können einzelne Nachrichten für den Empfang zugelassen oder
gesperrt werden (Abb. 3.49). Die Auswahl erfolgt über den Identifier.
Der Filterdialog enthält folgende Elemente:
canAnalyser
76
Copyright IXXAT Automation GmbH
3.9. Handhabung von Filtern
Element
Bedeutung
Gesperrte IDs
Liste der Identifier, deren zugeordnete Nachrichten den Filter nicht
passieren
Liste der Identifier, die den Filter passieren
Zuweisung der in der Liste Gesperrte IDs selektierten Identifier
Gruppe in die Liste Aktzeptierte IDs
Löschen des in der Liste Aktzeptierte IDs selektierten Eintrags
Bei Betätigen dieses Schalters werden alle Nachrichten empfangen (alle Identifier werden in die Liste Aktzeptierte IDs eingetragen)
Bei Betätigen dieses Schalters werden alle Nachrichten gesperrt
(alle Identifier werden aus der Liste Aktzeptierte IDs gelöscht und
in die Liste Gesperrte IDs eingetragen)
Über diese Kommandozeile kann eine Filterfunktion alphanumerisch eingegeben werden. Dies ermöglicht die schnelle Auswahl
von Identifiern. Es können einzelne Identifier oder ganze IdentifierBereiche gesperrt/freigegeben werden. Die Trennung von einzelnen Filterbefehlen erfolgt mittels eines Leerzeichens. Durch die
Kommandozeile wird die Auswahl von Identifiern erleichtert.
Durch diese Checkbox wird ausgewählt, ob in diesem Dialogfenster die Identifier in hexadezimaler oder dezimaler Darstellung angezeigt werden.
Akzeptierte IDs
>>
<<
Alle akzeptieren
Alle sperren
ID (Auswahl durch Befehl)
DEZ/HEX
Syntax der Kommandozeile:
Befehl
Bedeutung
-ID
-ID1,ID2
+ID
+ID1,ID2
z.B.: -3,8
Identifier ID in die Liste gesperrter IDs verschieben
Identifierbereich ID1 bis ID2 in die Liste gesperrter IDs verschieben
Identifier ID in die Liste aktzeptierter IDs verschieben
Identifierbereich ID1 bis ID2 in die Liste aktzeptierter IDs verschieben
Verschiebt die Identifier 3 bis 8 in die Liste gesperrter IDs, d.h. die Identifier 3 bis 8
werden ausgefiltert
3.9.3
ID/Data Mask Filter
Mit dem ID/Data Mask Filter (Abb. 3.50) kann auf bestimmte Identifier und/oder Datenbytes
gefiltert werden. Die Filterbedingung wird über Bitmasken definiert, die später mit den Feldern
jeder Empfangsnachricht verglichen werden. Nur Nachrichten, die diese Filterbedingung erfüllen
passieren den Filter. Die Filterbedingung der einzelnen Bits kann über einen Klick mit der linken
Maustaste verändert werden.
Die Bitmasken der Filterbedingungen können auch manuell über die Eingabefelder Maske und
Wert verändert werden. In Maske werden die Bits mit Wert 1 für die Filterbedingung als relevant
markiert. In Wert erhalten diese relevanten Bits ihren Sollwert (0 oder 1). Die Eingabe/Anzeige
der Eingabefelder kann entsprechend den Einstellungen in der Box DEZ/HEX in dezimaler oder
hexadezimaler Form erfolgen.
Bit
Bedeutung
0
1
x
Mit 0 beschriftete Bits müssen den Wert 0 haben damit die Filterbedingung erfüllt ist
Mit 1 beschriftete Bits müssen den Wert 1 haben damit die Filterbedingung erfüllt ist
Mit x beschriftete Bits sind für die Filterbedingung nicht relvant und werden nicht geprüft
canAnalyser
77
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.50: ID/Data Mask Filter Konfiguration
Die Schalter Byte und Word legen die Granularität des Datenfelds fest. Ist Word-Granularität
ausgewählt, kann für die Bytereihenfolge Intel- (little endian) oder Motorola- (big endian) Format
eingestellt werden.
Die Filterbedingung ist erfüllt, wenn alle als relevant markierten Bits den für sie definierten Sollwert besitzen. D.h. aber auch, daß eine Filterbedingung, in der alle Bits als nicht relevant markiert
sind, für jedes Telegramm erfüllt ist und somit alle Nachrichten den Filter passieren.
3.10
Integration von eigenen Analysemodulen
Durch die offene .NET Programmierschnittstelle hat der Anwender die Möglichkeit den canAnalyser um eigene Module oder Benutzerschnittstellen zu erweitern. Mit gängigen Windows Entwicklungssystemen (z. B. Visual Studio .NET, Delphi) können neue, eigenständige, auf dem
.NET Framework basierende Module entwickelt und dem canAnalyser hinzugefügt werden. So
können z. B. Bedienoberflächen für eigene Systeme bzw. für bestimmte Geräte oder Werkzeuge
mit systemspezifischen Analysefunktionen erstellt werden.
Eine Anleitung zur Entwicklung eigener Analysemodule und eine detaillierte Beschreibung der
API finden Sie in der mitinstallierten Onlinehile IXXAT.MbsAnalyser.chm. Zur Vereinfachung der
ersten Schritte werden Programmierbeispiele mitinstalliert, die auch als Grundlage für benutzerspezifische Module herangezogen werden können.
Abhängig vom Umfang und Verwendungszweck des Analysemoduls und dessen Benutzer kann
es von Vorteil sein das Analysemodul als fertig übersetztes Assembly in den canAnalyser zu
integrieren:
• Das Analysemodul wird bereitgestellt, dessen Sourcecode soll aber nicht weitergegeben
oder verändert werden können.
• Das Analysemodul ist umfangreich und muss in mehrere Quelldateien gegliedert werden.
canAnalyser
78
Copyright IXXAT Automation GmbH
3.10. Integration von eigenen Analysemodulen
Abbildung 3.51: Control Panel mit "C# CAN Tx" Beispiel-Analysemodul
Benutzerdefinierte Analysemodule werden über ein Plug-in-Konzept ins Control Panel des canAnalysers integriert. Hierzu müssen die Assemblies der benutzerdefinierten Analysemodule inklusiv deren referenzierten Assemblies sich in einem der folgenden Verzeichnisse befinden:
• Installationsverzeichnis
• Öffentliche Dokumente\IXXAT\canAnalyser\3.0\UDModules
• Eigene Dokumente\IXXAT\canAnalyser\3.0\UDModules
Die beim Startup der canAnalyser Applikation automatisch erkannten benutzerspezifischen Module werden zusammen mit den Standardmodulen in der Modulübersicht des Control Panels zur
Verfügung gestellt (Abb. 3.51) und können so mittels Drag-and-Drop gestartet werden.
Änderungen am Quellcode eines Analysemoduls werden somit erst nach dessen Übersetzung
in ein Assembly und Neustart des canAnalysers wirksam.
Während der Installation können Beispielprojekte für Analysemodule in C# und VB.NET
im Verzeichnis "Öffentliche Dokumente\IXXAT\canAnalyser\3.0\Api\Examples" installiert werden. Vorkompilierte Assemblies werden wenn gewünscht im Verzeichnis "Öffentliche
Dokumente\IXXAT\canAnalyser\3.0\UDModules" installiert. Der Ausgabepfad der Beispielprojekte zeigt ebenfalls auf diesen Pfad, deshalb überschreibt ein Neukompilieren der Beispielprojekte die vorkompilierten Assemblies.
canAnalyser
79
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
3.11
Scripting-Host
3.11.1
Übersicht
Skripte erleichterten sowohl die Arbeit des Entwicklers während der Testphase als auch dem
Servicetechniker die Fehlersuche vor Ort, da die Erstellung und Änderung von Skripten sehr
flexibel durchgeführt werden kann. Hierbei ist nicht zwingend eine Entwicklungsumgebung erforderlich.
Für die Konfiguration und Ausführung von Skripten stellt das Control Panel in der Modulübersicht
einen Scripting-Host als Analysemodul bereit (Abb. 3.52). Hierin ausführbare Skripte basieren
auf derselben offenen .NET Programmierschnittelle, die für die Integration von eigenen Analysemodulen verwendet wird (Abb. 3.53). Jedoch unterstützt der Scripting-Host nicht nur Skripte mit
grafischer Benutzerschnittstelle, sondern auch Console basierte Skripte. Skripte mit grafischer
Benutzerschnittstelle besitzen immer ein eigenes Fenster. Console basierte Skripte haben ein
optionales, textorientiertes Ein-/Ausgabefenster, welches direkt im Scripting-Host Fenster integriert ist und können alternativ unsichtbar ausgeführt werden.
Gegenüber der Integration eines Analysemoduls über dessen Assembly birgt der Scripting-Host
den Vorteil, nach Änderungen am Quellcode den canAnalyser nicht neu starten zu müssen. Der
Anwender startet innerhalb des Scripting-Hosts direkt die Quellcode-Datei des Skripts.
Es sind bei Verwendung des Scripting-Hosts folgende Einschränkungen zu beachten:
• Das Skript muss aus einer einzigen Quellcode-Datei bestehen.
• Es muss in C# oder VisualBasic.NET kodiert sein.
• Außer den Formularresourcen (entsprechende .resx- oder resources-Datei) werden keine
weiteren eingebetteten Resourcen unterstützt.
• Der Scripting-Host bietet keine integrierte Debugging-Möglichkeit.
Solange bei der Kodierung diese Einschränkungen beachtet werden kann der identische Quellcode sowohl als Skript ausgeführt, als auch in ein Assembly übersetzt und als vollwertiges Analysemodul ins Control Panel integriert werden (Abb. 3.53). Über diesen Weg ist dann wieder
integriertes Debugging möglich. Console-Skripte können nicht als Analysemodul integriert werden. Somit besteht für diese wirklich keine Möglichkeit für integriertes Debugging.
3.11.2
Der Scripting-Host in der Analyse-Konfiguration
Das Control Panel stellt den Scripting-Host als Analysemodul in der Control Panel Modulübersicht bereit. Dieser kann per Drag-and-Drop auf den Rootknoten der Analyse-Konfiguration oder
auf einen einzelnen Bus gezogen werden (Abb. 3.54), was abhängig vom einzelnen Anwendungsfall ist:
• Für ein Gateway-Skript wird der Scripting-Host an den Rootknoten der AnalyseKonfiguration gehängt, da ein solches Skript Zugriff auf mehrere Busse gleichzeitig benötigt.
• Ein Skript zur Gerätesimulation wird in der Regel in einem Scripting-Host ausgeführt, der
an einem einzelnen Bus hängt. Mit Hilfe von mehreren Instanzen des Scripting-Host ist es
somit auch möglich, mehrere Geräte vom selben Typ im System zu simulieren.
canAnalyser
80
Copyright IXXAT Automation GmbH
3.11. Scripting-Host
Abbildung 3.52: Als Skript ausgeführtes GUI- und Console Programmierbeispiel
Abbildung 3.53: Integration "C# CAN Tx"-Beispiel über Assembly-DLL und Scripting-Host.
canAnalyser
81
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
Abbildung 3.54: Scripting-Host kann an einem einzigen oder an allen Bussen hängen
Abbildung 3.55: Scripting-Host Kontextmenü
3.11.3
Das Scripting-Host Fenster
Das Scripting-Host Fenster zeigt im oberen Bereich zwei Registerkarten:
• Skripte: In dieser Registerkarte wird der Scripting-Host bedient. Es können Skripte geladen, entladen, konfiguriert, gestartet und angehalten werden.
• Übersetzungsfehler: Diese Registerkarte dient zur Ausgabe von Fehlern beim Übersetzen oder Starten eines Skripts.
canAnalyser
82
Copyright IXXAT Automation GmbH
3.11. Scripting-Host
Das untere Teilfenster zeigt Registerkarten mit Ein-/Ausgabe-Fenster für Console-Skripte. Die
Console eines Skripts wird erst dargestellt, wenn das Skript explizit eine Console anfordert. Dies
ermöglicht das Ausführen von unsichtbaren Skripten.
Um ein Skript ausführen zu können muss vorab dessen Quellcode-Datei geladen werden. Dies
kann entweder über den Schalter , über das Kontextmenü (Abb. 3.55) oder per Drag-and-Drop
erfolgen.
Da jedes Analysemodul Klassen und Interfaces der canAnalyser-API benutzt und mindestens
ein Formular enthält (bei GUI-Skripten), werden automatisch vier Standardreferenzen vorkonfiguriert:
• IXXAT.MbsAnalyser.dll
• System.dll
• System.Drawing.dll
• System.Windows.Forms.dll
Falls das geladene Skript weitere Assemblies verwendet, müssen diese über den Befehl Referenz hinzufügen im Kontextmenü referenziert werden. Auch das Hinzufügen von Referenzassemblies mittels Drag-and-Drop wird unterstützt. Diese Assemblies lassen sich in folgenden
Verzeichnissen direkt durch deren Dateinamen lokalisieren:
• Installationsverzeichnis
• C:\Users\Public\Documents\IXXAT\canAnalyser\3.0\UDModules
• Verzeichnis des Skripts
• .NET Framework
Andernfalls müssen die Referenzen mittels absolutem Pfad angegeben werden. Es genügt nicht,
wenn eine zu referenzierende Assembly nur im GAC (Global Assembly Cache) liegt! Notfalls
muss eine Kopie dieser Assembly in ein herkömmliches Verzeichnis abgelegt werden. Generell
gilt aber, dass ein zu referenzierendes Assembly entweder im .NET Framework oder innerhalb
des canAnalyser Programmverzeichnisses, bzw. eines direkten oder indirekten Unterverzeichnis
dessen liegen muss.
3.11.4
Skript bearbeiten
oder den entsprechenden Kontextmenüeintrag kann die Quellcode-Datei
Über den Schalter
eines Skripts bearbeitet werden. Hierzu öffnet der Scripting-Host den für den jeweiligen Dateitypen beim Betriebssystem registrierten Editor. Die Verknüpfung mit dem Editor lässt sich im
Windows-Explorer in den Eigenschaften der Quellcode-Datei definieren. Ist kein spezieller Editor
registriert, so wird das Skript im Windows-Standardeditor Notepad geöffnet.
Wesentlich komfortabler gestaltet sich das Bearbeiten von Quellcode aber mit spezialisierten
Editoren. Als Alternative zum kommerziellen Microsoft Visual Studio .NET bieten sich vor allem frei verfügbare Werkeuge, wie #Develop (www.sharpdevelop.net) an. Insbesondere für die
Bearbeitung von graphischen Benutzeroberflächen ist eine solche Umgebung fast unverzichtbar.
canAnalyser
83
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
3.11.5
Skript ausführen
Ein geladenes und konfiguriertes Skript wird über den Schalter
oder den entsprechenden
Kontextmenüeintrag gestartet. Hierzu muss der Benutzer zuvor das auszuführende Skript markiert haben. Wenn der Quellcode Fehler enthält oder das Skript nicht gestartet werden kann wird
dies mit Fehlermeldungen in der Registerkarte Übersetzungsfehler quittiert. Ist dagegen alles
fehlerfrei so wird das Hauptfenster des Skripts dargestellt und das Skript im Scripting-Host mit
als ausgeführt angezeigt.
Skripte, deren Option Automatisch ausführen im Kontextmenü eingeschaltet ist, werden beim
nächsten Laden der abgespeicherten Analyse-Konfiguration automatisch ausgeführt.
3.11.6
Skript anhalten
, den entsprechenden KontextmenüeinDie Ausführung eines Skripts kann über den Schalter
trag, oder durch manuelles Schließens des Skriptfensters angehalten werden. Dies wird von
Scripting-Host in der Darstellung des Skripts mit
wiedergegeben. Auch das Entladen des
, bzw. den entsprechenden Kontextmenüeintrag oder das SchlieSkripts über den Schalter
ßen des Scripting-Hosts bewirkt das Anhalten von ausgeführten Skripts.
3.11.7
Skript debuggen
Bei Problemen zur Laufzeit kann das Debuggen eines Skripts erforderlich sein. Der ScriptingHosts bietet hierfür die Möglichkeit ein Skript mit Debuginformationen auszuführen. Benutzen Sie
hierzu den Menüeintrag Skript | Debuggen oder den entsprechenden Befehl im Kontextmenü.
Der Skripting-Host zeigt daraufhin den Dialog aus Abb. 3.56, der das eigentliche Ausführen des
Skripts solange verzögert, bis Sie Ihre Debugumgebung gestartet und mit dem canAnalyserProzess verbunden haben.
Die folgenden Schritte veranschaulichen das Debuggen eines Skripts mit Microsoft Visual Studio
2008:
• Sobald der Script Host den in Abb. 3.56 abgebildeten Dialog anzeigt starten Sie Visual
Studio 2008 und führen den Menüeintrag Tools | Attach to Process... aus.
• Im daraufhin angezeigten Visual Studio-Dialog Attach to Process (Abb. 3.57) markieren Sie den canAnalyser-Prozess (MbsCPan.exe) und drücken einfach die Schaltfläche
Attach.
• Laden Sie die Skript-Datei in Visual Studio und setzen Sie die Haltepunkte.
• Setzen Sie die Ausführung des Skripts fort, indem Sie den OK-Schalter im Scripting-Host
Dialog betätigen (Abb. 3.56).
Das Skript wird nun bis zum Haltepunkt ausgeführt. Von hieraus können Sie den Skriptcode
nun debuggen. Änderungen am Skript werden erst nach Neustart des Skripts im Skripting-Host
wirksam.
canAnalyser
84
Copyright IXXAT Automation GmbH
3.11. Scripting-Host
Abbildung 3.56: Scripting-Host wartet, bis Debugger gestartet ist
Abbildung 3.57: Verbinden des Debuggers mit dem canAnalyser
canAnalyser
85
Copyright IXXAT Automation GmbH
Kapitel 3. Die Module des canAnalysers
3.11.8
Menüreferenz
Datei-Menü
Menüpunkt
Funktion
Laden
Entladen
Beenden
Laden eines Skripts
Entladen des markierten Skripts
Beendet Skripting-Host
Skript-Menü
Menüpunkt
Funktion
Ausführen
Debuggen
Markiertes Skript ausführen
Ausführen des markierten Skripts mit Debuginformation (Kapitel 3.11.7)
Ausführung von markiertem Skript beenden
Markiertes Skript bei nächstem Laden der Analysekonfiguration automatisch ausführen
Bearbeiten des markierten Skripts. Hierzu wird der beim System hierfür registrierte Editor geöffnet.
Anhalten
Automatisch ausführen
Bearbeiten
Referenz-Menü
Menüpunkt
Funktion
Neu
Entfernen
Bearbeiten
Markiertem Skript neue Referenz hinzufügen
Markierte Referenz entfernen
Markierte Referenz bearbeiten.
Hilfe-Menü
Menüpunkt
Funktion
Hilfethemen
Info...
Öffnet die Online-Hilfe
Öffnet die Anzeige der Versionsinformationen
3.11.9
Schalterleiste
Die wichtigsten Funktionen des Scripting-Hosts sind auch über die Schalterleiste (Abb. 3.58)
aufrufbar.
3.11.10
Tastaturkürzel
F5
Strg+F5
Umschalten+F5
Entf
F2
F1
canAnalyser
Skript ausführen
Skript debuggen
Skript anhalten
Referenz entfernen
Referenz bearbeiten
Öffnet die Online-Hilfe
86
Copyright IXXAT Automation GmbH
3.11. Scripting-Host
Abbildung 3.58: Schalterleiste des Scripting-Host-Moduls
canAnalyser
87
Copyright IXXAT Automation GmbH
Anhang A
Export
A.1
Export von CSV-Dateien
Viele Exportmöglichkeiten im canAnalyser erzeugen CSV-Dateien (comma separated value).
Dieses Text-Format ist für Daten in Tabellenform vorgesehen, und kann von den meisten Tabellenkalkulationen importiert werden. Trotzdem gibt es Unterschiede beim Import auf die in diesem
Anhang eingegangen werden sollen.
A.1.1
Verwendetes CSV-Format
Als Trennzeichen zwischen den einzelnen Zellen wird beim CSV-Export das sprachabhängige
Listentrennzeichen, das in der Windows-Systemsteuerung bei den Spracheinstellungen eingetragen ist, verwendet. Zeilen werden mit dem Zeilenendezeichen abgeschlossen. Zelleninhalte
werden in Anführungszeichen eingeschlossen ("). Anführungszeichen in Zelleninhalten werden
durch eine Escape-Sequenz ("") ersetzt.
A.1.2
Import in Microsoft ® Excel
CSV-Dateien können in Excel importiert werden, indem man beim Öffnen den Dateityp
"Textdateien" auswählt. Abhängig von der Dateiendung (.csv bzw. .txt) der ausgewählten Datei, werden unter Excel verschiedene Import-Filter benutzt.
Dateien mit der Endung ".csv" werden von Excel ohne weitere Interaktion mit dem Anwender
importiert. Da Excel dabei versucht, das Datenformat der Zellen automatisch zu bestimmen,
kann es dabei auch zu Fehlern kommen. Ein einfaches Beispiel hierzu: In eine Excel-Tabelle
wird die Zeichenkette "3e0" eingetragen und anschließend in eine CSV-Datei exportiert. Nach
einem Import dieser Datei steht in der Zelle der Wert "3,00E+00", da der Wert als FließkommaZahl interpretiert worden ist. Als Trennzeichen zwischen den einzelnen Zellen wird beim Excel
CSV-Import das sprachabhängige Listentrennzeichen, das in der Windows-Systemsteuerung
bei den Spracheinstellungen eingetragen ist, verwendet.
Beim Importieren von Dateien mit der Endung ".txt" öffnet Excel den Textkonvertierungsassistenten mit dem der Anwender den Import-Vorgang parametrieren kann. So kann ein anderes
Listentrennzeichen bzw. Texterkennungszeichen verwendet werden und der Datentyp einzelner
Spalten kann festgelegt werden. Folgende Parameter können zum Import von Dateien verwendet werden, die vom canAnalyser erzeugt wurden:
• Getrennt - Zeichen trennen Felder
canAnalyser
89
Copyright IXXAT Automation GmbH
Anhang A. Export
• Trennzeichen - Semikolon (;), Komma (,) oder andere, je nach Spracheinstellung zum
Zeitpunkt des Exports
• Falls Spalten mit Hexadzimalzahlen enthalten sind, sollte der Datentyp dieser Spalten auf "Text" gesetzt werden. Andernfalls werden bestimmte Hexadezimalzahlen als
Fließkomma-Zahlen interpretiert.
Es gibt noch eine weitere Besonderheit im Zusammenhang mit Excel: Das Ziehen einer CSVDatei auf eine offene Excel-Instanz (Drag&Drop) ist nicht immer gleichzusetzen mit dem Öffnen der Datei über den Menüpunkt "Datei|Öffnen". Dateien mit der Endung .csv werden bei
Drag&Drop bzw. Öffnen gleich behandelt. Hat die Datei aber die Endung .txt wird der Inhalt der
Datei zeilenweise in die erste Spalte der Tabelle kopiert.
A.1.3
Import in OpenOffice/LibreOffice
OpenOffice zeigt beim Import von Dateien mit der Endung ".csv" automatisch den TextimportAssistenten an, mit dem der Import parametriert werden kann. Die folgenden Parameter können
beim Import verwendet werden:
• Getrennt - Zeichen trennen Felder
• Trennzeichen - Semikolon (;), Komma (,) oder andere, je nach Spracheinstellung zum
Zeitpunkt des Exports
• Falls Spalten mit Hexadzimalzahlen enthalten sind, sollte der Datentyp dieser Spalten auf "Text" gesetzt werden. Andernfalls werden bestimmte Hexadezimalzahlen als
Fließkomma-Zahlen interpretiert.
Sofern beim Import nicht explizit der CSV-Importfilter gewählt wurde, werden Dateien mit der Endung ".txt" von OpenOffice als Textdateien behandelt, und als solche mit OpenOffice.org Writer
geöffnet. Aus diesem Grund funktioniert Drag&Drop nur für Dateien mit der Endung ".csv".
canAnalyser
90
Copyright IXXAT Automation GmbH
Anhang B
Definitionen
B.1
Definitionen, Akronyme, Abkürzungen
Bitrate
Übertragungsrate in Bit/s mit der ein Bus betrieben wird.
CAN
Controller Area Network
CAN-Status
Um ein CAN-Netz nicht durch einen defekten Teilnehmer zu blockieren,
verfügen CAN-Controller über interne Fehlerzähler. Überschreiten diese Fehlerzähler eine bestimmte Grenze, wechselt der Status des CANControllers in den Warning Level. Beim Überschreiten einer weiteren
Grenze wird der Knoten vom Bus abgeschaltet (Bus off).
Data Frame
Standard Datentelegramm des CAN-Bus. Ein Data Frame besteht aus
einem 11 oder 29 Bit breiten Identifier (COBID), einem zwischen 0 und 8
Byte großen Datenfeld sowie Protokollinformationen wie RTR-Flag und
DLC (data length code).
Datenbasis Editor
Applikation zum Erstellen und Ändern von Datenbasen auf denen die
Interpretation von Schicht-2-Nachrichten aufbaut.
Error Frame
spezielles Telegramm zur Fehlersignalisierung auf dem CAN-Bus
FIBEX
Field Bus Exchange Format - Fibex ist ein XML basiertes Austauschformat, daß für den Austausch von Daten über nachrichtenorientierte
Kommunikationssysteme vorgesehen ist. Die Spezifikation des FIBEX
Formats ist auf der Homepage der ASAM e.V. (Association for Standardisation of Automation- and Measuring Systems) auf http://www.
asam.net verfügbar.
Filter
Modul, um Nachrichten nach bestimmten Kriterien für die Anzeige bzw.
den Trace auszuwählen bzw. auszuschließen.
FlexRay
FlexRay ist ein schnelles, deterministisches und fehlertolerantes Bussystem für den Einsatz im Automobil.
FlexRay CCM
IXXAT PC-Interface für FlexRay und CAN
Online-Modus
Aufzeichnung oder Anzeige von Nachrichten unmittelbar nach dem
Empfang ohne weitere Bearbeitung.
canAnalyser
91
Copyright IXXAT Automation GmbH
Anhang B. Definitionen
Remote Frame
CAN-Anforderungstelegramm. Spezielles Telegrammformat ohne Datenfeld zum Anfordern eines Datentelegramms
RTR
RemoteTransmitRequest: Das RTR-Bit innerhalb einer CAN-Nachricht
unterscheidet Daten-Telegramme und Datenanforderungs-Telegramme
Standard/Extended
Der CAN-Bus unterstützt zwei Nachrichtenformate, die sich durch die
Länge des Identifiers unterscheiden. Standard mit 11Bit Identifier und
Extended mit 29Bit Identifier.
Trace
Aufzeichnung von Nachrichten in eine Datei
Tracefile
eine durchgeführte Aufzeichnung von Schicht-2-Nachrichten, welche als
Binär- oder Textdatei abgespeichert werden, und die anschließend ausgewertet werden können
Trigger
Ereignis, das zum Starten/Stoppen einer Aufzeichnung (Trace) verwendet wird.
TX-echo
Modus, in dem der canAnalyser auch Nachrichten empfängt, die er
selbst gesendet hat.
TX-passiv
Modus, in dem über Hardware der aktive Zugriff auf den Bus verhindert
wird. Weder Acknowledge noch Fehler können aufgeschaltet werden.
Der canAnalyser ist ausschließlich Zuhörer.
VCI
universeller CAN-Treiber für alle PC/CAN-Karten von IXXAT
canAnalyser
92
Copyright IXXAT Automation GmbH
Anhang C
Urheberrechte
C.1
C.1.1
Urheberrechte
Urheberrecht
© 2004-2014 IXXAT Automation GmbH, all rights reserved
C.1.2
Zusätzliche Urheberrechte
Dundas software
This software contains material that is © 1994-2000 DUNDAS SOFTWARE LTD., all rights reserved.
Microsoft
This software installs or updates Microsoft OS components (MSXML3 SP5) which are copyrighted by © Microsoft Corp.
Apache Software Foundation
This product includes software developed by The Apache Software Foundation (http://www.
apache.org/). Portions of this software was originally based on the following:
• software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
Castle windsor
Apache License, Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
• "License" shall mean the terms and conditions for use, reproduction, and distribution as
defined by Sections 1 through 9 of this document.
canAnalyser
93
Copyright IXXAT Automation GmbH
Anhang C. Urheberrechte
• "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that
is granting the License.
• "Legal Entity" shall mean the union of the acting entity and all other entities that control,
are controlled by, or are under common control with that entity. For the purposes of this
definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent
(50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
• "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted
by this License.
• "Source" form shall mean the preferred form for making modifications, including but not
limited to software source code, documentation source, and configuration files.
• "Object" form shall mean any form resulting from mechanical transformation or translation
of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
• "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to
the work (an example is provided in the Appendix below).
• "Derivative Works" shall mean any work, whether in Source or Object form, that is based
on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the
purposes of this License, Derivative Works shall not include works that remain separable
from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works
thereof.
• "Contribution" shall mean any work of authorship, including the original version of the Work
and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an
individual or Legal Entity authorized to submit on behalf of the copyright owner. For the
purposes of this definition, "submitted" means any form of electronic, verbal, or written
communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking
systems that are managed by, or on behalf of, the Licensor for the purpose of discussing
and improving the Work, but excluding communication that is conspicuously marked or
otherwise designated in writing by the copyright owner as "Not a Contribution."
• "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom
a Contribution has been received by Licensor and subsequently incorporated within the
Work.
2. Grant of Copyright License.
Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute
the Work and such Derivative Works in Source or Object form.
canAnalyser
94
Copyright IXXAT Automation GmbH
C.1. Urheberrechte
3. Grant of Patent License.
Subject to the terms and conditions of this License, each Contributor hereby grants to You a
perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this
section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer
the Work, where such license applies only to those patent claims licensable by such Contributor
that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation
against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution.
You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium,
with or without modifications, and in Source or Object form, provided that You meet the following
conditions:
1. You must give any other recipients of the Work or Derivative Works a copy of this License;
and
2. You must cause any modified files to carry prominent notices stating that You changed the
files; and
3. You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
4. If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative
Works that You distribute must include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not pertain to any partof the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as
part of the Derivative Works; within the Source form or documentation, if provided along
with the Derivative Works; or, within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents of the NOTICE file are
for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum
to the NOTICE text from the Work, provided that such additional attribution notices cannot
be construed as modifying the License.
You may add Your own copyright statement to Your modifications and may provide additional or
different license terms and conditions for use, reproduction, or distribution of Your modifications,
or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of
the Work otherwise complies with the conditions stated in this License.
5. Submission of Contributions.
Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the
Work by You to the Licensor shall be under the terms and conditions of this License, without
any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede
or modify the terms of any separate license agreement you may have executed with Licensor
regarding such Contributions.
canAnalyser
95
Copyright IXXAT Automation GmbH
Anhang C. Urheberrechte
6. Trademarks.
This License does not grant permission to use the trade names, trademarks, service marks, or
product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty.
Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR
A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of
using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
8. Limitation of Liability.
In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to
in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or
out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages
or losses), even if such Contributor has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability.
While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge
a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights
consistent with this License. However, in accepting such obligations, You may act only on Your
own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if
You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by,
or claims asserted against, such Contributor by reason of your accepting any such warranty or
additional liability.
END OF TERMS AND CONDITIONS
Lua.org, PUC-Rio
License for Lua 5.0 and later versions
Copyright © 1994-2010 Lua.org, PUC-Rio.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the Software is furnished to
do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
canAnalyser
96
Copyright IXXAT Automation GmbH
C.1. Urheberrechte
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
OxyPlot
The MIT License (MIT)
Copyright (c) 2012 Oystein Bjorke
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the Software is furnished to
do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
OpenTK
The Open Toolkit library license
Copyright (c) 2006 - 2013 Stefanos Apostolopoulos ([email protected]) for the Open Toolkit
library.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the Software is furnished to
do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
canAnalyser
97
Copyright IXXAT Automation GmbH
Anhang C. Urheberrechte
Third parties
OpenTK.Platform.Windows and OpenTK.Platform.X11 include portions of the Mono class library.
These portions are covered by the following license:
Copyright (c) 2004 Novell, Inc. Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights to use, copy, modify,
merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons
to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
Copyright
(c)
2003-2007
Tao
Framework
Team OpenTK.Compatibility
includes portions of the Tao Framework library (Tao.OpenGl, Tao.OpenAl and
Tao.Platform.Windows.SimpleOpenGlControl). These portions are covered by the following license:
Copyright (c) 2003-2007 Tao Framework Team
http://www.taoframework.com
All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
and associated documentation files (the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the Software is furnished to
do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT
SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
OpenTK.Half offers Half-to-Single and Single-to-Half conversions based on OpenEXR source
code, which is covered by the following license:
Copyright (c) 2002, Industrial Light & Magic, a division of Lucas Digital Ltd. LLC. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted
provided that the following conditions are met:
• Redistributions of source code must retain the above copyright notice, this list of conditions
and the following disclaimer.
canAnalyser
98
Copyright IXXAT Automation GmbH
C.1. Urheberrechte
• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided
with the distribution.
• Neither the name of Industrial Light & Magic nor the names of its contributors may be used
to endorse or promote products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.
canAnalyser
99
Copyright IXXAT Automation GmbH