CANopen

ALLGEMEINE ANGABEN: EINFÜHRUNG

Der AC 58 ist ein absoluter Drehgeber (Encoder, Winkelcodierer), der in der hier beschriebenen Version über das Übertragungsmedium ,CAN-Bus‘ (physikalisch: verdrillte und abgeschirmte 2-Draht-Leitung) seine aktuelle Position an einen anderen Busteilnehmer sendet.

Das ursprünglich von Bosch/Intel für Anwendungen im Automobil entwickelte serielle Bussystem CAN (Controller Area Network) setzt sich auch in der industriellen Automatisierungstechnik immer mehr durch. Es ist multimasterfähig, d. h. mehrere CAN-Teilnehmer können gleichzeitig den Bus anfordern. Dabei setzt sich die Nachricht mit der höheren Priorität (festgelegt durch den Identifier) ohne Zeitverlust durch.

Der Datentransfer wird durch die Priorität der Nachricht geregelt. Es gibt bei CAN keine Teilnehmeradressen sondern Nachrichten-Identifier. Die Nachricht, die gesendet wird, kann von allen Teilnehmern gleichzeitig empfangen werden (Broadcast).

Durch eine Akzeptanzfilterung übernimmt der Teilnehmer nur die für ihn bestimmten Nachrichten. Kriterium für diese Entscheidung ist der Identifier, der mit jeder Nachricht übertragen wird.

Die Busankopplung ist international genormt nach ISQ-DIS 11898 (CAN High Speed) und erlaubt Datenübertragungsraten bis zu 1 Mbit/s. Das herausragendste Merkmal des CAN-Protokolls ist dessen hohe Übertragungssicherheit (Hamming Distanz = 6).

Der verwendete CAN-Contoller Intel 82527 ist sowohl Basic- als auch Full-CAN tauglich und unterstützt die CAN-Spezifikation 2.0 Part B (Standard-Protokoll mit 11-Bit- Identifier sowie Extended-Protokoll mit 29-Bit-Identifier).

Bisher werden bei CANopen jedoch immer nur 11-Bit-Identifier verwendet.

ANWENDUNGSBEREICH

In Systemen, in denen die Position eines Antriebes bzw. eines anderen Maschinenteiles erfasst und an eine Steuerung gemeldet werden muss, kann diese Aufgabe von einem AC 58 übernommen werden. Es lassen sich damit z.B Positionieraufgaben lösen, in der die Rückmeldung über die aktuelle Antriebsposition von einem AC58 über den CAN-Bus an die Positionier-einheit gemeldet wird.

CANOPEN-KOMMUNIKATIONSMODELL UND PROFILE

Schicht 1 (Physical Layer): ISO-DIS 11898 (CAN High Speed)
Schicht 2 (Data Link Layer): ISO-DIS 11898 (CAN High Speed)
Schicht 7 (Application Layer): CIA DS 301 (CANopen CAL-based Communication Profile) + Gerateprofile CiA DS 4xx (CANopen Device Profile for xx)

Für folgende Geräte existieren bereits Profile:

  • CiA Draft Standard Proposal 401 for Input/Output Modules
  • CiA Draft Standard Proposal 402 for Drives and Motion Control
  • CiA Work Item 403 for Human Machine Interfaces
  • CiA Work Draft 404 for Closed-Loop Controllers and Transformers
  • CiA Work Item 405 for IEC-1 131 lnterfaces
  • CIA Draft Standard Proposal 406 for Encoders
  • CiA Work Item 407 for Public Transport
  • CiA Work Item 408 for Fork-Lifts

DAS CANOPEN-PROFIL

Etwa 2 ½ Jahre nach Verabschiedung des CAN-Application Layer (CAL) durch CiA, die Vereinigung der Anwender und Hersteller von CAN-Produkten, wurde mit CANopen und den zugehörigen Geräteprofilen der Weg zum Aufbau offener Systeme geebnet. CANopen wurde unter technischer Leitung des Steinbeis Transferzentrums für Automatisierung (STA Reutlingen) auf der Basis der Schicht 7 Spezifikation CAL entwickelt. Im Vergleich zu CAL sind in CANopen nur die für diesen Einsatz geeigneten Funktionen enthalten. CANopen stellt somit eine für die Anwendung optimierte Teilmenge von CAL dar und ermöglicht dadurch vereinfachten Systemaufbau und vereinfachte Geräte. CANopen ist optimiert für den schnellen Datenaustaustausch in Echtzeitsystemen und über verschiedene Geräteprofile standardisiert.

Der CAN in Automation (CiA) Herstellerund Anwenderverein ist zuständig für die Erstellung und Normung der entsprechenden Profile.

Der AC 58 mit CANopen erfüllt die im Kommunikationsprofil (CiA DS 301) und im Geräteprofil für Geber (CIA DSP 406) festgelegten Forderungen.

CANopen ermöglicht

  • Auto-Konfiguration des Netzwerkes,
  • komfortablen Zugriff auf alle Geräteparameter.
  • Gerätesynchronisation,
  • zyklischen und ereignisgesteuerten Prozessdatenverkehr,
  • gleichzeitiges Einlesen oder Ausgeben von Daten.

CANopen nutzt vier Kommunikationsobjekte
(COB) mit unterschiedlichen Eigenschaften:

  • Prozess-Daten-Objekte (PDO) für Echtzeit-daten,
  • Service-Daten-Objekte (SDO) für Parameter- und Programmübertragung,
  • Netzwerk Management (NMT, Life- Guarding)
  • Vordefinierte Objekte (für Synchronisation, Zeitstempel, Notfallnachricht)

Alle Geräteparameter sind in einem Objektverzeichnis abgelegt. Dieses Objektverzeichnis enthält die Beschreibung, Datentyp und Struktur der Parameter sowie die Adresse (Index). Das Verzeichnis ist gegliedert in einen kommunikations- und einen Geräteprofil bezogenen Teil sowie einen herstellerspezifischen Teil.

DAS GEBER GERÄTEPROFIL (CIADSP406)

Dieses Profil beschreibt eine herstellerunabhängige und verbindliche Festlegung der Schnittstelle für Drehgeber. Im Profil ist definiert welche CANopen-Funktionen verwendet werden und ebenso wie sie zu verwenden sind. Dieser Standard ermöglicht ein offenes und herstellerunabhängiges Bussystem.

Das Geräteprofil ist gegliedert in zwei Objekt-Klassen:

  • die Standard-Klasse C1 beschreibt alle Grundfunktionen, die der Geber enthalten muss
  • die erweiterte Klasse C2 enthält eine Vielzahl von weiteren Funktionen, die von Gebern dieser Klasse entweder unterstützt werden müssen (mandatory) oder optional sind.

Geräte der Klasse C2 enthalten somit alle C1- und C2-mandatory-Funktionen, sowie herstellerabhängig weitere optionale Funktionen. Im Profil ist außerdem ein Adressbereich definiert, der mit herstellereigenen Sonderfunktionen belegt werden kann.

DATENÜBERTRAGUNG

Daten werden bei CANopen über zwei verschiedene Kommunikationsarten (COB = Communication Object) mit unterschiedlichen Eigenschaften übertragen:

  • Prozess-Daten-Objekte (PDO)
  • Service-Daten-Objekte (SDO)

Die Priorität der Nachrichten-Objekte wird über den COB-ldentifier festgelegt!

Die Prozess-Daten-Objekte (PDO) dienen dem hochdynamischen Austausch von Echt-zeitdaten (z.B. Geberposition) mit maximal 8 Byte Länge. Diese Daten werden mit hoher Priorität (niedriger COB-ldentifier) übertragen. PDO‘s sind Broadcast-Nachrichten und stellen ihre Echtzeitdaten allen gewünschten Empfängern gleichzeitig zur Verfügung. Die Service-Daten-Objekte (SDO) bilden den Kommunikationskanal für die Übertragung von Geräteparametern (z. B. Programmierung der Geberauflösung). Da diese Parameter azyklisch (z.B. nur einmal beim Hochfahren des Netzes) übertragen werden, haben die SDO-Objekte eine niedrige Priorität (hoher COB-ldentifier).

COB-IDENTIFIER

Zur einfacheren Verwaltung der Identifier verwendet CANopen das ,,Predefined Master/ Slave Connection Set“. Dabei sind alle Identifier mit Standard-Werten im Objektverzeichnis definiert. Diese Identifier können jedoch über SDO-Zugriff kundenspezifisch geändert werden!

Der 11 Bit Identifier setzt sich aus einem 4 Bit Funktionscode und einer 7 Bit Knotennummer zusammen.

1 x = binärer Wert frei wählbar (0 oder 1); 0 = Wert 0 festgelegt

Je höher der Wert des COB-Identifiers ist, umso niedriger ist dessen Priorität!

KNOTENNUMMER

Die 7 Bit Knotennummer wird hardwaremäßig über 5 DIP-Schalter auf der Geberrückseite eingestellt.