Object-Dictionary-Scanner im CAN-Tester für Windows

Inhalt

Siehe auch (externe Referenzen):


Grundlagen zum Object-Dictionary-Scanner

Der OD-Scanner wurde im August 2006 implementiert, um das komplette CANopen-Object-Dictionary auszulesen - und zwar OHNE EDS-DATEI ! Diese Funktion eignet sich auch bei der Fehlersuche in CANopen-Netzwerken. Funktionsprinzip:

Bei theoretisch möglichen 65536 Objekten im CANopen-Objektverzeichnis mit jeweils bis zu 256 Subindizes würde ein kompletter Scan extrem lange dauern. Der OD-Scanner testet daher zunächst nur Subindex 0 jedes Objektes. Wenn der CANopen-Slave auf eine Leseanfrage für Subindex 0 bereits mit "Objekt existiert nicht", überspringt der Scanner auch Subindizes 1 bis 255 (und macht stattdessem mit dem nächsten Objekt-INDEX weiter). Dadurch könnten dem Scanner theoretisch einige Objekte "durch die Lappen" gehen. Dass von einem Objekt aber z.B. nur Subindex 123, aber nicht Subindex 0 existiert, ist sehr selten (im "manufacturer specific profile" könnte dies aber vorkommen).

Um den Suchbereich einzugrenzen, wird zunächst der Indexbereich definiert. Per Default durchsucht der OD-Scanner nur die Objekte 0x1000 bis 0x6FFF (siehe Eingabefelder "Scan from index" .. "to index").

Zusätzlich können bei der Suche noch einzelne Objekte, oder ganze Objekt-Index-Bereiche übersprungen werden. Dazu dient das Feld "Exclude ranges". Mehrere Einträge werden per Komma getrennt. Bereiche werden im Format "von-bis" eingegeben (das Minuszeichen bedeutet hier also nicht "Subtraktion", sondern "bis"). Beispiel:

Exclude ranges: 0x1019-0x11FF, 0x1C00-0x1FFF, 0x2000-0x4FFF, 0x5FFF

Bedeutung: Überspringe die Objekte mit den Indizes 0x1019 bis 0x11FF (0x bedeutet übrigends "hexadezimal"), etc, und das einzelne Objekt 0x5FFE .

Die Bedeutung der Objekt-Indizes ist dem entsprechenden CANopen-Profil zu entnehmen (z.B. DS301, DS401, usw). Generell gilt (nach DS301) :

0x0001-0x001F Static Data Types (kann meistens übersprungen werden)

0x0020-0x003F Complex Data Types (dient meistens nur als "dummy", also uninteressant)

0x0040-0x005F Manufacturer Specific Complex Data Types

0x0060-0x007F Device Profile Specific Static Data Types

0x0080-0x009F Device Profile Specific Complex Data Types

0x00A0-0x0FF Reserved for further use (kann eigentlich IMMER übersprungen werden)

0x1000-0x1FFF Communication Profile Area (sehr wichtig, siehe DS301)

0x2000-0x5FFF Manufacturer Specific Profile Area

0x6000-0x9FFF Standardized Device Profile Area (auch sehr wichtig, z.B. DS401)

0xA000-0xFFFF Reserved for further use

Die beim Scannen gefundenen Objekte werden in den CANopen-OD-Browser übernommen, in dem sie dann genauer untersucht werden können (z.B. modifiziert, zurückgeschrieben, und wieder ausgelesen). Das Ergebnis kann aus dem OD-Browser ggf auch als Datei (z.B. als EDS-File) abgespeichert werden. Dies kann allerdings kein Ersatz für das vom Hersteller des CANopen-Gerätes bereitzustellende EDS-File sein !

Zurück zum Seitenbeginn


Letzte Änderungen am CANopen-OD-Scanner

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

2006-08-24, V1.00:
Implementierung des hier beschriebenen CANopen-OD-Scanners in W.B.'s "CAN-Tester für Windows".
Erster Einsatz: Fehlersuche im neuen E/A-Modul "Mono16" .
2010-03-08, V1.01:
CANopen-OD-Scanner und CANopen-OD-Browser erweitert, da mittlerweile Geräte mit einem 'sehr großen' OD existieren (z.B. CANopen-Anzeige-Terminals von MKT Systemtechnik mit fast 600 Einträgen im OD).

Zurück zum Seitenbeginn


Zuletzt bearbeitet: 2010-03-08 (YYYY-MM-DD), Wolfgang Büscher (DL4YHF) .