Zugriffsverfahren
5.3 PDO-Message
Mit Process-Data-Objekten (PDOs) können Daten ereignisgesteuert übertragen werden. Das
PDO überträgt dabei einen oder mehrere vorher festgelegte Parameter. Anders als bei einem
SDO erfolgt bei der Übertragung eines PDOs keine Quittierung. Nach der PDO-Aktivierung
müssen daher alle Empfänger jederzeit eventuell ankommende PDOs verarbeiten können.
Dies bedeutet meistens einen erheblichen Softwareaufwand im Host-Rechner. Diesem
Nachteil steht der Vorteil gegenüber, dass der Host-Rechner die durch ein PDO übertragenen
Parameter nicht zyklisch abzufragen braucht, was zu einer starken Verminderung der CAN-
Busauslastung führt.
Der Host-Rechner möchte wissen, wann der Regler eine Positionierung von
A nach B abgeschlossen hat.
Bei der Verwendung von SDOs muss er hierzu ständig, beispielsweise jede
Millisekunde, das Objekt statusword
stark auslastet.
Bei der Verwendung eines PDOs wird der Regler schon beim Start der
Applikation so parametriert, dass er bei jeder Veränderung des Objektes
statusword ein PDO absetzt, in dem das Objekt statusword enthalten ist.
Statt ständig nachzufragen, wird dem Host-Rechner somit automatisch eine
entsprechende Meldung zugestellt, sobald das Ereignis eingetreten ist.
Folgende Typen von PDOs werden unterschieden:
Transmit-PDO (T-PDO)
Receive-PDO
(R-PDO)
Der Regler verfügt über vier Transmit- und vier Receive-PDOs.
In die PDOs können nahezu alle Objekte des Objektverzeichnisses eingetragen (gemappt)
werden, d.h. das PDO enthält als Daten z.B. den Drehzahl-Istwert, den Positions-Istwert o.ä.
Welche Daten übertragen werden, muss dem Regler vorher mitgeteilt werden, da das PDO
lediglich Nutzdaten und keine Information über die Art des Parameters enthält. In der unteren
Beispiel würde in den Datenbytes 0...3 des PDOs der Positions-Istwert und in den Bytes 4...7
der Drehzahl-Istwert übertragen.
181
Auf diese Art können nahezu beliebige Datentelegramme definiert werden. Die folgenden
Kapitel beschreiben die dazu nötigen Einstellungen.
CANopen-Handbuch "Servopositionierregler ARS 2000"
BEISPIEL
Regler
Host
Host
Regler
Anzahl Datenbytes (hier 8)
Len
D0 D1 D2 D3 D4 D5 D6 D7
h
Identifier
Beginn Positions-Istwert (D0...D3)
abfragen, womit er die Buskapazität
Regler sendet PDO bei Auftreten eines
bestimmten Ereignisses
Regler wertet PDO bei Auftreten eines
bestimmen Ereignisses aus
Beginn Drehzahl-Istwert (D4...D7)
Seite 33
Version 1.6