CAN-Tester für Windows

Inhalt


Zweck des Programms

Der CAN-Tester ist als Testprogramm auf niedriger CAN-Bus-Telegramm-Ebene konzipiert, mit einigen Erweiterungen die für "hausinterne Tests" bei Firma MKT verwendet werden. Möglich sind:

Zurück zum Seitenbeginn


Einschränkungen

Weil die CAN-Hardware unter Windows nicht -wie bei der DOS-Variante- direkt angesprochen werden kann, ist die Performance des "CAN-Testers für Windows" dem ähnlich funktionierenden CAN-TESTER FUER DOS unterlegen, was Geschwindigkeit und die Genauigkeit der Zeitmarken betrifft.

ACHTUNG: MKT ÜBERNIMMT KEINE HAFTUNG FUER SCHÄDEN, DIE DURCH DEN GEBRAUCH DIESER SOFTWARE ENTSTEHEN; WEDER AN SOFT- NOCH AN HARDWARE !

Zurück zum Seitenbeginn


Installation

Installieren Sie zunächst ein CAN-Interface auf Ihrem PC. Dazu können Sie verschiedene Interfaces verschiedener Hersteller verwenden. Eine Übersicht finden Sie in den

Hinweisen zur Installation eines CAN-Interfaces unter Windows.

Beachten Sie: Die CAN-Interfaces und die dazugehörigen Softwaretreiber sind keine Produkte der Firma MKT; sie müssen ggf. extra vom jeweiligen Hersteller bezogen werden !

Hinweise und Tips zur Installation einiger CAN-Interfaces und der dazugehoerigen Softwaretreiber (VxD, SYS, DLL) finden Sie in der Datei can_inst.doc (Word 97-Format).

Zurück zum Seitenbeginn


Konfiguration

Beim ersten Programmstart muss noch das geeignete CAN-Interface ausgewählt werden. Die Konfiguration (CAN-I/O-Adresse, IRQ, Baudrate etc) erfolgt im Menue Settings...CAN Interface Setup. Im daraufhin erscheinenden Dialogfenster können Sie "Ihr" CAN-Interface anwählen und ggf erforderliche Parameter, z.B. I/O-Adressen, Netzwerknamen etc eingeben. Bei Verwendung des PCCAN-Interfaces der Firma ESD muss vorher der NTCAN-Treiber installiert werden.

Erst danach können die Parameter für den CAN-Bus eingestellt werden (Baudrate, etc). Dies erfolgt im Hauptmenü des CAN-Testers unter Settings...CAN settings for user (d.h. CAN-Einstellungen für den Anwender).

Registerkarten im Dialogfenster "CAN-Tester-Einstellungen"

CAN

Wählen Sie hier die CAN-Baudrate. Ferner können hier symbolische Namen für bestimmte CAN-Identifier eingestellt werden (dies war nötig, um bestimmte Logfiles im Vektor-ASCII-Format abzuspielen, in denen statt numerischer CAN-IDs nur symbolische Namen standen).

Anzeige (Frame Display)

Hier steht alles, was -direkt oder indirekt- mit der Anzeige von CAN-Telegrammen ("frames") in den beiden Anzeigefenstern des CAN-Testers zu tun hat:

Logging

Im CAN-Tester ist ein *simpler* CAN-Logger eingebaut, mit dem man Telegramme (u.A. im Vector-ASCII-Format) abspeichern kann. Hat nichts mit MKT's CAN-Logger zu tun ! Log-Dateien im Vektor-ASCII-Format, und im PCAN-Explorer-Format ("Hex Format Files", *.log) können mit dem CAN-Tester auch abgespielt werden (im Menü "Datei").

Optionen

Hier wird "Verschiedenes" eingestellt, wofür auf den anderen Tabs kein Platz mehr war:

SDO

Nur für CANopen ! Auf dieser Registerkarte werden Knotennummern und Timeout-Zeiten für den im CAN-Tester integrierten CANopen-SDO-Client und -Server eingestellt, und -wenn nötig- Client bzw Server ein- und ausgeschaltet (d.h. aktiv/passiv gemacht). Mit den Buttons "Externes OD zeigen" / "Lokales OD zeigen" können die CANopen-Objekt-Verzeichnisse angezeigt bzw (beim "Lokalen OD") sogar editiert werden. Damit kann z.B. ein kompletter CANopen-Knoten simuliert werden.

Verzeichnisse

Hier werden verschiedene Unterverzeichnisse definiert, auf die der CAN-Tester zugreifen kann:

Signale

Damit sind AKUSTISCHE Signale gemeint, keine CAN-Signale. Mit den Optionen auf dieser Registerkarte können alle aktustischen Signale (die meistens vom Kommandoprogramm erzeugt werden) auf einen Schlag ausgeschaltet werden, damit schlagartig "Ruhe im Schiff" herrscht.

Beim CAN-Tester für Windows können aktustische Signale entweder mit dem PC-Speaker oder mit dem MIDI-Synthesizer(*) erzeugt werden.
Zur Erzeugung von Tönen mit dem internen PC-Lautsprecher (ohne die Soundkarte) muss das Programm leider direkt auf die I/O-Ports im PC zugreifen, was -speziell unter Windows XP und Vista- Probleme bereiten kann. Aus dem Grund ist under Windows XP (etc) davon abzuraten, die Option "internal PC-Speaker" zu verwenden. Verwenden Sie stattdessem lieber die Soundkarte (mit integriertem, per MIDI steuerbaren Synthesizer). Damit Sie die Töne vom Synthesizer hören können, benötigen Sie natürlich einen externen Lautsprecher. Ferner muss in der Lautstärke-Einstellung (in der Windows-Taskleiste) der Regler für den "SW-Synthesizer" (o.ä.) aufgedreht sein, und die Option "Ton AUS" (die bei den meisten Soundkarten existiert) darf für den Synthesizer *nicht* gesetzt sein.

(*) Dieser, per MIDI-Schnittstelle steuerbare Synthesizer ist in den gängigen Soundkarten eingebaut. Einen "echten", per MIDI-Schnittstelle steuerbaren Synthesizer werden Sie in Ihrem PC wahrscheinlich nicht finden.

Akustische Signale eignen sich gut zum schnellen Testen von CAN-E/A-Modulen. Z.B. könnte das Test-Script jedesmal einen Ton mit einer bestimmten Frequenz ausgeben, wenn sich der Zustand der digitalen Eingänge des Moduls ändert. Verwenden Sie dazu das Interpreterkommando "sound".

Zurück zum Seitenbeginn


Komponenten des Hauptfensters

Hauptmenü


Statuszeilen

In der Kopfzeilen von Sende- und Empfangsfenster werden Zähler für empfangene und gesendete Telegramme angezeigt, ferner diverse Statusinformationen (u.A. ob die Anzeigen aktiv sind, ob die Listen "historisch" oder "sortiert nach CAN-Identifier" arbeiten etc.

Empfangsfenster

Im Empfangsfenster werden normalerweise alle empfangenen CAN-Telegramme aufgelistet. Dabei sind verschiedene Anzeigeoptionen möglich, die im Menü "Settings" eingestellt werden können:

Sendefenster

Im Sendefenster werden normalerweise alle vom Programm gesendeten CAN-Telegramme angezeigt. Dazu gehören auch die vom eingebauten SDO-Server und -Client gesendeten Telegramme !

Zum Senden "eigener" Telegramme durch den User dient das Kommandofenster, in dem CAN-Telegramme als Textzeilen eingegeben werden können.

Im einfachsten Fall wird ein CAN-Telegramm folgendermaßen notiert:

#<Identifier> <Byte0> <Byte1> .. <Byte7>.

Weitere mögliche Notationen für CAN-Telegramme finden Sie in der Beschreibung des eingebauten Kommando-Interpreters (in Vorbereitung).

Kommandofenster

Das Kommandofenster dient zur Eingabe von Befehlen an den CAN-Tester, die von einem speziellen Interpreter abgearbeitet werden können. Dazu gehören unter anderem:

Um ein einzelnes Kommando aufzuführen (z.B. CAN-Telegramm senden), drücken Sie F2 während der blinkende Cursor in der Zeile des auszuführenden Kommandos steht.
Weitere Shortcuts (Tastaturkürzel) zum Starten, Stoppen, und Debuggen des Scripts (im Kommandofenster des CAN-Testers) finden Sie im Hauptmenü unter 'Run'.
Am linken Rand des Editorfensters (in der 'Sidebar') werden Zeilennummern und spezielle Symbole für die Programmentwicklung und Fehlersuche angezeigt. Hier einige der in der Sidebar verwendeten Symbole:


Beim Bewegen des Mauspfeils über den Text im Kommandofenster (das 'Test-Script') wird abhängig davon folgendes angezeigt:

Meldungsfenster

Im Meldungsfenster werden u.A. Fehler wie "CAN-Bus-Off" angezeigt, aber auch Meldungen aus dem interpretiertem Kommandoprogramm.

Zurück zum Seitenbeginn


Das Plot-Fenster

dient zur Darstellung des zeitlichen Verlaufs einzelner Signale oder Variablen. Zum Öffnen dieses Fensters dient die Funktion "View ... Plot Window" im Hauptmenü des CAN-Testers.

screenshot plot-window with some graphs

Die vertikalen Striche sind Zeitmarken, die i.A. den Beginn einer Sekunde markieren, bei langsamen Abtastintervallen alle 15 oder 60 Sekunden. Eine Beschriftung ist nicht vorgesehen.

Zur Definition, was im Plot-Fenster dargestellt wird, dient die Registerkarte "Watch Expressions" im selben Fenster:

screenshot watch window with some examples

In dieser Tabelle wird neben der Definition des darzustellenden Wertes (als Interpreter-Ausdruck, engl. expression) auch der Skalenbereich für das Plot-Fenster (Scale min und Scale max) sowie der aktuelle Wert in numerischer Form (current value) dargestellt.

Der Kanalname wird eventuell in einer zukünftigen Version eine größere Rolle spielen, wenn das Plotfenster durch eine Legende ergänzt wird (in der dann der Kanalname in der Farbe des dazugehörigen Graphen angezeigt wird).

Unterhalb der Definitionstabelle können die wichtigsten Anzeigeparameter eingestellt werden:

Hinweis: Nach der Eingabe neuer Definitionen in der Tabelle "Watch Expressions" muss der Button "Apply" (="Übernehmen") angeklickt werden. Sobald in der Tabelle editiert wird, stoppt die periodische Aktualisierung der numerischen Anzeige (current values).

Spektrumanalysator (im "Watch-Fenster")

Seit 2006 kann auf der Registerkarte "Spectrum Analyzer" das Spektrum eines der 15 Eingangskanäle des Watch-Fensters dargestellt werden. Diese Funktion eignet sich z.B. zur Analyse von Störungen von analogen Eingangsmodulen (z.B "E/A-Modul mit DMS-Eingang"). Die maximal darstellbare Frequenz ist (frei nach Shannon) die halbe Abtastrate. Bei einem "Update Interval" (s.O.) von 10 Millisekunden sind dies z.B. 0.5 / 10ms = 50 Hz .

Die Amplituden werden auf einer logarithmischen Skala angezeigt, wobei "0 dB" dem Maximum des aktiven Kanals entspricht, welches auf der Registerkarte "Watch Expressions" in der Spalte "Scale Max" definiert wurde. Die im Spektrumanalysator dargestellten Dezibel-Werte sind daher normalerweise negativ, solange das Signal unterhalb des Skalenendbereiches bleibt. Für Signale, die von einem 16-Bit A/D-Wandler stammen, reicht ein Amplitudenbereich von -100 bis 0 dB .

Hinweis: Der Spektrumanalysator basiert auf einer privaten Entwicklung von W.B., sie darf von MKT bis auf Widerruf nur für nicht-kommerziellen Einsatz verwendet werden. In zukünftigen Versionen des CAN-Testers könnte dieser Analysator demnach wieder "verschwunden" sein !

Siehe auch:

Zurück zur Übersicht


Verwendung des Hilfesystems

Um das Hilfesystem aus dem Programm zu starten, gibt es folgende Möglichkeiten:

Zurück zur Übersicht


Fehler- und Statusmeldungen

Die Statusflags des CAN-Treibers werden intern als 16-Bit-Parameter verwaltet.

Wenn sich der Zustand dieses Parameters aendert, wird dies automatisch im Meldungsfenster als Hex-Zahl angezeigt. Diese Hex-Zahl kann eine Kombination der folgenden Bitmasken sein:

$0001 : CAN-Hardware-Fehler oder "anderer Fehler"
$0002 : Ueberlauf des CAN-Empfangspuffers
$0004 : Ueberlauf des CAN-Sendepuffers
$0008 : Problem mit dem CAN-Interrupt (IRQ-Nummer falsch ?)
$0040 : CAN-Bus-Warnung, mindestens ein Fehlerzaehler zu hoch
$0080 : CAN-Bus-OFF, Grund z.B. falsche Baudrate

Siehe auch:  CANopen-SDO-Fehlercodes

Zurück zum Seitenbeginn


Links

Dateien:

alte Anleitungen für DOS-CAN-Tester


Internet:

Inhalt der 'MKT-CD' (mittlerweile online verfügbar; enthält u.A. den Installer für MKT's CAN-Tester)

Homepage von MKT Systemtechnik
Hard- und Softwareprodukte von MKT, mit Download-Bereich (in dem der CAN-Tester anno 2010 allerdings nicht zu finden war)

CAN in Automation (CiA)
Hier gibt's alle Informationen zum Thema CANopen..

Zurück zum Seitenbeginn


Letzte Änderungen

Neueste Änderung zuerst ! Datum im ISO 8601-Format : YYYY-MM-DD .

2017-09-25, V1.66:
Inspektion von Variablenwerten durch 'Überfahren' mit der Maus,
Start des Test-Scripts auch per 'Run from Label' / 'Ab LABEL-Position fortsetzen',
Firmware-Update per CANopen (SDO)

2014-02-05, V1.56:
Diverse Änderungen beim Aufzeichnen von CAN-Messages als Vector-ASCII-Logfile.
Da aus nicht nachvollziehbaren Gründen die Zeitmarken (in CANape) nicht korrekt wiedergegeben wurden, wird nun zusätzlich zum Datum im Datei-Header ein (und eigentlich unnötiger) 'Begin Triggerblock' / 'End Triggerblock' in der .asc-Datei geschrieben.

2013-06-14, V1.53:
Das Firmware-Update-Utility vergleicht nun die Software-Artikel-Nummer des Bootloaders im zu programmierenden Gerät mit dem von der zu ladenden Firmware erwarteten Wert. Stimmt die SW-Artikel-Nummer des Bootloaders nicht überein, wird (i.A.) der Firmware-Update verweigert.
Dadurch soll sichergestellt werden, dass der Anwender nicht eine 'falsche' Firmware in das momentan angeschlossene Gerät lädt. Bei Geräten mit LPC1788 hat dies nämlich den unangenehmen Effekt, dass das Gerät danach zur Reparatur (Flashen per FlashMagic) an den Hersteller eingeschickt werden muss.

2007-04-12, V1.34:
Firmware-Update-Utility für ARM7 (NXP LPC2xxx) aufgebohrt, u.A. auch die Korrektur der Prüfsumme in der ARM7-Vektor-Tabelle, denn sonst startet der IAP-Bootloader die Applikation nicht ! Details hier .

2006-11-14, V1.33:
Dokumentation angepasst. Zahlreiche neue Funktionen im CAN-Tester, z.B. CAN-Text-Terminal zum Debuggen, Kommentierung von CANopen-Telegrammen, OD-Scanner, etc.

2005-04-07, V1.20:
Tool zum "Firmware-Update via CAN" eingebaut.

2004-09-09, V1.12:
Anzahl der im Tester eingebauten SDO-SERVER(!) auf 8 erhöht, um "mehr CANopen-Slaves" zu simulieren.


2003-07-30, V1.07:
Baudrate 666.666 kBit/sec für PCAN-API2 implementiert. Wird in Auswahllisten als "667 kBit/sec" angezeigt.

Zurück zum Seitenbeginn


Troubleshooting


Problem:
PCAN-USB-Treiber wurde zwar installiert, MKT's CAN-Tester funktioniert aber nicht damit.
Ursache:
Bei der Installation des Peak-Treibers fehlt (meistens) die Interface-DLL, z.B. PCAN_USB.DLL für die Kommunikation mit dem PCAN-USB-Dongle.
In dem Fall erhalten Sie vom CAN-Tester im Meldungsfenster z.B. die folgende Anzeige:
UCAN_Init: PCAN-Dongle LIGHT driver (PCAN_USB.DLL) not loaded !
Abhilfe:
Die für Ihre CAN-Hardware, und für Ihr Betriebssystem passende Interface-DLL finden Sie hoffentlich auf der Peak-Webseite.
Kopieren Sie diese (abhängig von der Windows-Version) in das Windows-System-Verzeichnis, oder (wesentlich einfacher) in das Unterverzeichnis, in dem der CAN-Tester installiert wurde.
Siehe auch: Hinweise zur Installation eines CAN-Interfaces unter Windows !


Problem:
Peak-CAN-Dongle (am Parallelport, UR-ALT) kann zwar senden, aber nicht empfangen
Ursache:
Treiber der Firma PEAK blockiert den direkten Zugriff auf die parallele Schnittstelle. Die passierte bei MKT bei der Installation von Lenze's "Global Drive Control". Trotz De-Installation blieb der Peak-CAN-Treiber übrig !
Abhilfe:
Schauen Sie in die Datei WINDOZE\SYSTEM.INI ! Entfernen Sie den Peak-Treiber, wenn Sie ihn nicht fuer andere Programme brauchen, und installieren Sie den aktuellen "PCAN Driver V2.0" von Peak (und CANAPI2.DLL).
Siehe auch: Hinweise zur Installation eines CAN-Interfaces unter Windows !

Zurück zum Seitenbeginn


Zuletzt bearbeitet: 2017-09-25 (YYYY-MM-DD), W.B.