(Nur für bestimmte Terminals verfügbar, nicht für UPT515)
Zwischen älteren Terminals mit CANopen "V3" (z.B. UPT515),
und neueren Terminals mit CANopen-Protokoll "V4" bestehen einige Unterschiede
bezüglich Kommunikation und Programmierung. Dieses Dokument zeigt
diese Unterschiede auf, und demonstriert die Nutzung der neuen
Funktionen. Die Feature-Matrix zeigt welche
CANopen-Version in Ihrem Terminal verwendet wird.
Da "CANopen" kein triviales Thema ist, wird für Einsteiger empfohlen,
sich zunächst mit den Grundlagen vertraut zu machen (z.B. bei
CiA = CAN in Automation).
Links zu weiteren Dokumenten für programmierbare Terminals mit CANopen :
Terminals mit CANopen-Protokoll "V4" weichen bezüglich der Kommunikation und der Programmierung etwas von den früher verwendeten Terminals mit "CANopen V3" (z.B. UPT515) ab.
Dies betrifft die folgenden Funktionen und Eigenschaften:
Dies funktioniert auch bei Geräten mit 'CANopen V4' wie früher (bei Geräten mit CANopen V3):
Auf der Registerkarte 'Variablen' wird in der Spalte 'OD-Index' der
gewünschte Objekt-Index und -Subindex eingetragen.
Dabei beachten, daß der CANopen-Datentyp des Objektes 'groß genug'
für den Datentyp der Display-Variablen ist.
Es empfiehlt sich daher, z.B. Variablen mit dem Datentyp 'I32' nur mit dem
Objekt 0x4004, Subindizes 1 bis 10
(bzw. 40) zu verbinden, usw.
Weitere Details zum Verbinden von Display-Variablen mit den Objekten 0x4001 bis 0x4009 im Terminal finden Sie hier .
Siehe auch: CANopen-OD im Terminal; Display-Variablen (im Programmiertool) .
Dies funktioniert auch bei Geräten mit 'CANopen V4' wie früher
(bei Geräten mit CANopen V3).
Details daher nur im 'allgemeinen'
Programmierhandbuch (Kapitel "Variablen an SDO-Kanälen") .
Terminals mit CANopen V4 verfügen über fest im CANopen-OD eingebaute Variablen, auf die per CAN (SDO oder PDO) zugegriffen werden kann. Sie liegen im OD-Index-Bereich 0x4001 bis 0x4009 (Index = 0x4000 + <Datentyp nach CANopen> ). Der Display-Interpreter kann auf diese Objekte mit der Funktion "obd(<index.subindex>)" zugreifen, wie auch auf alle anderen Objekte im "eigenen" (lokalen) CANopen-OD des Terminals. Sie können z.B. die folgende Interpreter-Anweisung ("Formel") in der Spalte "Var/Formel" der Anzeigezeilen-Definitionstabelle eingeben, um die erste 32-Bit-Variable auf dem Display anzuzeigen :
obd(0x4004.01)
Dies funktioniert (fast) wie eine normale Display-Variable, Sie können den Wert auf dem Display sogar editieren (falls das Objekt lese- und schreibbar ist). Andere Geräte im Netzwerk können auf diese Variable per SDO zugreifen (wie auf jedes andere Objekt im OD), oder auch per PDO, weil Objekt 4004(hex) in einen PDO gemappt werden kann (wie die meisten Objekte im Bereich 0x4001 ... 0x4009).
Statt die "obd"-Anweisung selbst einzugeben, können Sie diese auch vom Programmiertool erstellen lassen. Sie können das anzuzeigende Objekt auch aus einer Liste auswählen, was manchmal einfacher ist. Doppelklicken Sie dazu in die Spalte "Var/Formel" (in der Anzeigeseiten-Definitions-Tabelle) , woduch sich das folgende Dialogfenster öffnet:
Wählen Sie das anzuzeigende CANopen-Objekt aus der CANopen-OD-Liste (rechten Seite) aus. Ein einzelner Mausklick in diese Liste kopiert den selektierten Eintrag in die Tabelle mit den Anzeigezeilen-Definitionen (linke Seite), wobei die evtl. schon exisierende Definition überschrieben wird. Weitere Informationen zum Dialogfenster zum Ersetzen von Anzeige-Variablen und -Ausdrücken finden Sie hier .
Terminals mit CANopen V4 verfügen über einige neue Objekte im CANopen-Kommunikationsprofile (nach CiA DS301, Objekt-Indizes im Bereich 0x1000 0x1BFF). Diese Objekte dienen z.T. dazu, ein "UPT" im CANopen-Netzwerk zu erkennen. Einstellungen des Terminals werden von den folgenden Objekten zur "Identifikation" des Terminals nicht beeinflusst :
CANopen-Index | Contents |
0x1000 | Device Type (not applicable, only DS301 at the moment) |
0x1018 | Identity Object |
0x1018.1 | MKTs vendor ID (0x004D4B54) |
0x1018.2 | Product Code (70055=UPT515, etc) |
0x1018.3 | Revision Number (ex: 0x00010002 = V01.02) |
0x1018.4 | Serial Number (expect this to be ZERO) |
<ToDo>
<ToDo>
Siehe auch: Dialogfenster zum PDO-Mapping
Ein EDS-File benötigen Sie z.B., wenn Sie die die
Kommunikationsparameter des Terminals per CANopen-Kommunikationstool
einstellen wollen. Die folgenden Dateien wurden bei der Installation des
Programmiertools bereits im Unterverzeichnis 'eds' entpackt :
Hinweis: Je nach Hardware-Ausstattung können einige Objekte keine Funktion haben, sie sind aber trotzdem im OD vorhanden ! Falls Sie z.B. im OD ein Objekt namens "Front Panel Lamp" finden, Ihr Terminal aber keine Lampen (LEDs) auf dem Frontpanel hat, können Sie dieses Objekt getrost ignorieren...