<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=CANopen</id>
	<title>CANopen - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=CANopen"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=CANopen&amp;action=history"/>
	<updated>2026-05-25T12:17:32Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=CANopen&amp;diff=41304&amp;oldid=prev</id>
		<title>imported&gt;Winkekatze: Doppelte Verlinkung entfernt</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=CANopen&amp;diff=41304&amp;oldid=prev"/>
		<updated>2026-01-07T08:40:44Z</updated>

		<summary type="html">&lt;p&gt;Doppelte Verlinkung entfernt&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Datei:Canopen logo.svg|mini|Logo von CANopen]]&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;CANopen&amp;#039;&amp;#039;&amp;#039; ist ein auf [[Controller Area Network|CAN]] basierendes Kommunikationsprotokoll, welches hauptsächlich in der [[Automatisierungstechnik]] und zur Vernetzung innerhalb komplexer Geräte verwendet wird.&lt;br /&gt;
&lt;br /&gt;
Das Hauptverbreitungsgebiet von CANopen ist Europa. Jedoch steigen sowohl in Nordamerika als auch in Asien die Nutzerzahlen. Es wurde vorwiegend von deutschen mittelständischen Unternehmen initiiert und im Rahmen des [[ESPRIT (Forschung)|ESPRIT]]-Projekts ASPIC unter Leitung von [[Robert Bosch GmbH|Bosch]] als Prototyp von 1993 bis 1995 erarbeitet.&amp;lt;ref&amp;gt;{{Internetquelle |url=https://www.can-cia.org/can-knowledge/canopen/canopen/ |titel=CANopen – The standardized embedded network |hrsg=CAN in Automation |sprache=en |abruf=2023-11-09}}&amp;lt;/ref&amp;gt; Seit 1995 wird es von der Organisation [[CAN in Automation]] &amp;#039;&amp;#039;&amp;#039;(CiA)&amp;#039;&amp;#039;&amp;#039; gepflegt und ist als Europäische Norm EN 50325-4 standardisiert.&lt;br /&gt;
&lt;br /&gt;
== Grunddienste von CANopen ==&lt;br /&gt;
In CANopen sind mehrere Grunddienste (Dienstprimitive) definiert.&lt;br /&gt;
Diese Grunddienste sind:&lt;br /&gt;
&lt;br /&gt;
; Request&lt;br /&gt;
: Anforderung eines CANopen-Dienstes durch die Anwendung&lt;br /&gt;
; Indication&lt;br /&gt;
: Meldung an die Anwendung, dass ein Ergebnis oder eine bestimmte Nachricht vorliegt&lt;br /&gt;
; Response&lt;br /&gt;
: Antwort der Anwendung auf eine Indication&lt;br /&gt;
; Confirmation&lt;br /&gt;
: Bestätigung an die Anwendung, dass ein CANopen-Dienst ausgeführt wurde&lt;br /&gt;
&lt;br /&gt;
In CANopen werden neben diesen Client-Server-Diensten auch weitere Kommunikationskonzepte wie das [[Erzeuger-Verbraucher-Problem|Producer-Consumer-Konzept]] genutzt. Darin zeigt sich, dass CANopen kein klassisches Master-Slave-System ist.&lt;br /&gt;
Ursprünglich deckt CANopen im [[OSI-Modell]] die Anwendungsschicht (Schicht 7) ab und nutzt CAN als Schicht-2-Transportmedium. Seit 2006 sind jedoch auch vermaschte Netzwerke mit [[Routing]]-Möglichkeiten standardisiert.&lt;br /&gt;
&lt;br /&gt;
== Kommunikationsobjekte ==&lt;br /&gt;
Kommunikationsobjekte können folgendermaßen gegliedert werden in&lt;br /&gt;
* &amp;#039;&amp;#039;Servicedatenobjekte&amp;#039;&amp;#039; (SDO) zur Parametrierung von Objektverzeichniseinträgen,&lt;br /&gt;
* &amp;#039;&amp;#039;[[Prozessdaten]]objekte&amp;#039;&amp;#039; (PDO) zum Transport von Echtzeitdaten,&lt;br /&gt;
* &amp;#039;&amp;#039;Netzwerkmanagement-Objekte&amp;#039;&amp;#039; (NMT) zur Steuerung des [[Automat (Informatik)|Zustandsautomaten]] des CANopen-Geräts und zur Überwachung der Knoten,&lt;br /&gt;
* weitere Objekte wie Synchronisationsobjekt (SYNC), Zeitstempel und Fehler-Nachrichten (EMCY).&lt;br /&gt;
&lt;br /&gt;
== Objektverzeichnis ==&lt;br /&gt;
Alle Kommunikationsobjekte und alle Anwenderobjekte werden im Objektverzeichnis (OV) (engl. Object Dictionary (OD)) zusammengefasst.&lt;br /&gt;
Das OV ist im CANopen-Gerätemodell das Bindeglied zwischen der Anwendung und der CANopen-Kommunikationseinheit.&lt;br /&gt;
Jeder Eintrag im Objektverzeichnis steht für ein Objekt und wird durch einen 16-Bit-Index gekennzeichnet. Ein Index kann wiederum bis zu 255 Subindizes enthalten.&lt;br /&gt;
Dadurch können unabhängig von den „11-Bit-Identifiern“ bis zu 65536 × 254 Elemente unterschieden werden. (Die Subindizes 0 und 255 können nicht frei verwendet werden.)&lt;br /&gt;
In Profilen ist die Zuordnung von Kommunikations- und Geräteprofilobjekten zu einem jeweiligen Index genau definiert; somit wird mit dem Objektverzeichnis eine eindeutige Schnittstelle zwischen der Anwendung und der Kommunikation nach außen definiert.&lt;br /&gt;
So ist beispielsweise jedem CANopen-Knoten im Netz bekannt, dass auf Index 1017h das Heartbeat-Intervall zu finden ist, und jeder Knoten oder jedes Konfigurationsprogramm kann lesend oder schreibend darauf zugreifen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Indexbereich&lt;br /&gt;
! Verwendung&lt;br /&gt;
|-&lt;br /&gt;
! 0000{{0|–0000}}&lt;br /&gt;
| nicht genutzt&lt;br /&gt;
|-&lt;br /&gt;
! 0001–009F&lt;br /&gt;
| Datentypen (Sonderfall)&lt;br /&gt;
|-&lt;br /&gt;
! 00A0–0FFF&lt;br /&gt;
| reserviert&lt;br /&gt;
|-&lt;br /&gt;
! 1000–1FFF&lt;br /&gt;
| Kommunikationsprofil&lt;br /&gt;
|-&lt;br /&gt;
! 2000–5FFF&lt;br /&gt;
| herstellerspezifischer Bereich&lt;br /&gt;
|-&lt;br /&gt;
! 6000–9FFF&lt;br /&gt;
| bis zu 8 standardisierte Geräteprofile&lt;br /&gt;
|-&lt;br /&gt;
! A000–AFFF&lt;br /&gt;
| Prozessabbilder von IEC61131-Geräten&lt;br /&gt;
|-&lt;br /&gt;
! B000–BFFF&lt;br /&gt;
| Prozessabbilder von CANopen-Gateways nach CiA 302-7&lt;br /&gt;
|-&lt;br /&gt;
! C000–FFFF&lt;br /&gt;
| reserviert&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Für jedes Kommunikationsobjekt existiert ein eindeutiger COB-ID (Communication Object Identifier) im Netzwerk. Der COB-ID besteht aus 32-Bit-Werten, wobei die ersten beiden Bits jeweils eine objektspezifische Bedeutung haben. In einem 11-Bit-CAN-Netz haben die folgenden 19 Bits (29 bis 11) den Wert 0 und die letzten Bits (10 bis 0) entsprechen dem CAN-Identifier.&lt;br /&gt;
&lt;br /&gt;
Servicedatenobjekte stellen einen Dienst zum Zugriff auf das Objektverzeichnis bereit.&lt;br /&gt;
Jedes CANopen-Gerät benötigt mindestens einen SDO-Server, welcher SDO-Anforderungen von anderen Geräten entgegennimmt und bearbeitet.&lt;br /&gt;
Per Default-Einstellung nutzen Nachrichten zum SDO-Server eines Geräts die Knotennummer des Empfängers + 1536 (0x600) als COB-ID bzw. als „Identifier“ für die CAN-Nachricht.&lt;br /&gt;
Für die Antwort des SDO-Servers wird als „Identifier“ die Knotennummer des Senders + 1408 (0x580) verwendet.&lt;br /&gt;
Mit diesen relativ hohen und somit niederpriorisierten IDs werden Einträge im OV übertragen.&lt;br /&gt;
Für diesen SDO-Transfer existiert ein Protokoll, welches 4 Byte benötigt, um die Senderichtung, den Index und den Subindex zu kodieren.&lt;br /&gt;
Somit bleiben nur noch 4 Byte von den 8 Byte eines CAN-Datenfeldes für den Dateninhalt übrig.&lt;br /&gt;
Für Objekte, deren Dateninhalt größer als 4 Byte ist, gibt es noch zwei weitere Protokolle zum fragmentierten SDO-Transfer.&lt;br /&gt;
&lt;br /&gt;
Im Gegensatz zu dem niederpriorisierten und mit Protokolldaten überladenen SDO-Transfer stellen die Prozessdatenobjekte eine schnellere Möglichkeit zum Transport von Prozessdaten zur Verfügung.&lt;br /&gt;
Die zum PDO-Transfer genutzten „Identifier“ liegen bei Defaulteinstellungen im COB-ID-Bereich von 385 (0x181) bis 1407 (0x57F) und sind somit höherpriorisiert als die SDO-Nachrichten. Weiterhin enthalten sie nur [[Nutzdaten]], und somit stehen 8 Byte zur Verfügung.&lt;br /&gt;
Der Inhalt der Nutzdaten wird über PDO-Mapping-Einträge bestimmt.&lt;br /&gt;
Dies sind Objekte im OV, die wie eine Zuordnungstabelle festlegen, welche Daten über ein PDO übertragen werden.&lt;br /&gt;
Diese Daten sind wiederum Inhalte anderer Objekte des OV.&lt;br /&gt;
In einem PDO können auch die Werte mehrerer Objekte übertragen werden, und die Empfänger des PDOs können entsprechend ihrer PDO-Mapping-Einträge nur Teile der Daten nutzen.&lt;br /&gt;
Beim Empfang eines PDOs werden wiederum die Daten entsprechend den Mapping-Einträgen in jeweils andere Objekte des OV, z. B. in ein digitales Ausgangsobjekt, geschrieben.&lt;br /&gt;
Die Übertragung von PDOs kann zyklisch, ereignisorientiert, abgefragt oder synchronisiert geschehen.&lt;br /&gt;
&lt;br /&gt;
Netzwerkverwaltungsobjekte dienen der Verwaltung des Netzes. So gibt es u.&amp;amp;nbsp;a. Nachrichten, welche eine Zustandsänderung in einem Gerät veranlassen oder globale Fehlermeldungen verbreiten.&lt;br /&gt;
&lt;br /&gt;
Das Sync-Objekt sendet oder empfängt beispielsweise die hochpriorisierte SYNC-Nachricht, welche der Synchronisation der Knoten im Netz dient und mit dem Zeitstempel-Objekt eine einheitliche Zeit im Netz sicherstellt.&lt;br /&gt;
Daneben gibt es im Kommunikationsprofil und insbesondere in den Geräte-Profilen noch eine Vielzahl anderer Objekte.&lt;br /&gt;
&lt;br /&gt;
== Geräteprofile ==&lt;br /&gt;
Für eine Reihe von Geräteklassen wurden CANopen-Geräteprofile definiert.&lt;br /&gt;
Diese Geräteprofile definieren die Funktionalität und den Aufbau des Objektverzeichnisses für die jeweiligen Geräte.&lt;br /&gt;
Durch die Nutzung von CANopen-Geräten, welche einem bestimmten Profil entsprechen, wird eine höhere Unabhängigkeit von den Geräteherstellern erreicht.&lt;br /&gt;
&lt;br /&gt;
Einige der Geräteprofile sind:&amp;lt;ref&amp;gt;{{Internetquelle |url=https://www.can-cia.org/index.php?id=specifications&amp;amp;no_cache=1 |titel=Technical documents |hrsg=CAN in Automation |sprache=en |abruf=2023-11-09}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Standard&lt;br /&gt;
! Geräteklasse&lt;br /&gt;
|-&lt;br /&gt;
! CiA 401&lt;br /&gt;
| Ein-/Ausgabe-Module&lt;br /&gt;
|-&lt;br /&gt;
! CiA 402&lt;br /&gt;
| elektrische Antriebe&lt;br /&gt;
|-&lt;br /&gt;
! CiA 404&lt;br /&gt;
| Sensoren und Regler&lt;br /&gt;
|-&lt;br /&gt;
! CiA 406&lt;br /&gt;
| Lineare und rotierende Geber (Encoder)&lt;br /&gt;
|-&lt;br /&gt;
! CiA 408&lt;br /&gt;
| hydraulische Ventile und Antriebe&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Anwendungsprofile ==&lt;br /&gt;
[[Datei:Lift logo.svg|mini|100px|Logo der SIG Lift]]Im Gegensatz zu den Geräteprofilen wird bei den Anwendungsprofilen nicht die Funktionalität einer Gruppe von Geräten (Antriebe, Encoder, Ein-/Ausgänge) beschrieben, sondern die Funktionen einer Anwendung. So gibt es z. B. Anwendungsprofile für [[Aufzugsanlage]]n (CiA 417), Schienenfahrzeuge (CiA 421), Müllfahrzeuge (CiA 422) oder Elektroleichtfahrzeuge wie Elektrofahrräder (CiA 454 [[EnergyBus]]).&lt;br /&gt;
&lt;br /&gt;
Die wichtigsten Anwendungsprofile sind:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Standard&lt;br /&gt;
! Anwendung&lt;br /&gt;
|-&lt;br /&gt;
! CiA 410&lt;br /&gt;
| Neigungsmesser&lt;br /&gt;
|-&lt;br /&gt;
! CiA 412&lt;br /&gt;
| Medizinische Geräte&lt;br /&gt;
|-&lt;br /&gt;
! CiA 413&lt;br /&gt;
| Gateways zu LKW-Aufbauten&lt;br /&gt;
|-&lt;br /&gt;
! CiA 415&lt;br /&gt;
| Sensoren für Straßenbaumaschinen&lt;br /&gt;
|-&lt;br /&gt;
! CiA 416&lt;br /&gt;
| Türsteuerungen&lt;br /&gt;
|-&lt;br /&gt;
! CiA 417&lt;br /&gt;
| Aufzugssteuerungen&lt;br /&gt;
|-&lt;br /&gt;
! CiA 418/9&lt;br /&gt;
| Batterien und Ladegeräte&lt;br /&gt;
|-&lt;br /&gt;
! CiA 420&lt;br /&gt;
| Extruder-Nachfolgegeräte&lt;br /&gt;
|-&lt;br /&gt;
! CiA 421&lt;br /&gt;
| Schienenfahrzeuge&lt;br /&gt;
|-&lt;br /&gt;
! CiA 422&lt;br /&gt;
| Müllfahrzeuge&lt;br /&gt;
|-&lt;br /&gt;
! CiA 444&lt;br /&gt;
| Krane/Spreader&lt;br /&gt;
|-&lt;br /&gt;
! CiA 454&lt;br /&gt;
| Elektroleichtfahrzeuge&amp;lt;ref&amp;gt;{{Internetquelle |url=http://www.embedded-communication.com/canopen/energybus-the-canopen-based-communication-standard-for-levs-and-e-bikes/ |titel=EnergyBus - CANopen für Elektrofahrräder |werk=embedded communication |datum=2014-11-15 |sprache=de-DE |abruf=2023-11-09}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Electronic Datasheets ==&lt;br /&gt;
Für die Nutzung von CANopen-Geräten sind weiterhin elektronische Datenblätter, sogenannte EDS-Dateien, nötig.&lt;br /&gt;
Diese Dateien in einem standardisierten Textformat beschreiben sowohl die wichtigsten Parameter der Objekte der Objektverzeichnisse eines Gerätes als auch physikalische Parameter, wie z. B. die unterstützten Baudraten.&lt;br /&gt;
Konfigurationstools können EDS-Dateien einlesen und mit ihrer Hilfe mit dem jeweiligen Gerät kommunizieren und es ggf. parametrisieren. Zur Prüfung der syntaktischen Korrektheit eines EDS gibt es das freie Tool CANchkEDS.&amp;lt;ref&amp;gt;{{Internetquelle |url=https://www.vector.com/int/en/know-how/protocols/canopen/ |titel=CANopen - Higher-Layer CAN Protocol |werk= |hrsg=Vector |sprache=en |offline= |archiv-url= |archiv-datum= |archiv-bot= |abruf=2023-11-09}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Beispiel: Auszug aus einer EDS-Datei&lt;br /&gt;
&lt;br /&gt;
 [FileInfo]&lt;br /&gt;
 FileName=newProject_line0.eds&lt;br /&gt;
 FileVersion=1&lt;br /&gt;
 FileRevision=0&lt;br /&gt;
 EDSVersion=4.0&lt;br /&gt;
 Description=xxx&lt;br /&gt;
 CreationTime=10:15AM&lt;br /&gt;
 CreationDate=03-06-2005&lt;br /&gt;
 CreatedBy=me&lt;br /&gt;
 ModificationTime=10:15AM&lt;br /&gt;
 ModificationDate=03-06-2005&lt;br /&gt;
 ModifiedBy=me&lt;br /&gt;
&lt;br /&gt;
 [DeviceInfo]&lt;br /&gt;
 VendorName=xxx&lt;br /&gt;
 VendorNumber=0x0&lt;br /&gt;
 ProductName=test&lt;br /&gt;
 ProductNumber=0x0&lt;br /&gt;
 RevisionNumber=0x0&lt;br /&gt;
 OrderCode=&lt;br /&gt;
 BaudRate_10=0&lt;br /&gt;
 BaudRate_20=0&lt;br /&gt;
 BaudRate_50=1&lt;br /&gt;
 BaudRate_125=1&lt;br /&gt;
 BaudRate_250=1&lt;br /&gt;
 BaudRate_500=0&lt;br /&gt;
 BaudRate_800=0&lt;br /&gt;
 BaudRate_1000=0&lt;br /&gt;
 DynamicChannelsSupported=0&lt;br /&gt;
 GroupMessaging=0&lt;br /&gt;
 LSS_Supported=0&lt;br /&gt;
 Granularity=0&lt;br /&gt;
 SimpleBootUpSlave=1&lt;br /&gt;
 SimpleBootUpMaster=0&lt;br /&gt;
 NrOfRXPDO=0&lt;br /&gt;
 NrOfTXPDO=0&lt;br /&gt;
&lt;br /&gt;
 [MandatoryObjects]&lt;br /&gt;
 SupportedObjects=3&lt;br /&gt;
 1=0x1000&lt;br /&gt;
 2=0x1001&lt;br /&gt;
 3=0x1018&lt;br /&gt;
&lt;br /&gt;
 [1000]&lt;br /&gt;
 ParameterName=Device Type&lt;br /&gt;
 ObjectType=0x07&lt;br /&gt;
 DataType=0x0007&lt;br /&gt;
 AccessType=const&lt;br /&gt;
 DefaultValue=0x00000000&lt;br /&gt;
 PDOMapping=0&lt;br /&gt;
&lt;br /&gt;
 [1001]&lt;br /&gt;
 ParameterName=Error Register&lt;br /&gt;
 ObjectType=0x07&lt;br /&gt;
 DataType=0x0005&lt;br /&gt;
 AccessType=ro&lt;br /&gt;
 DefaultValue=0x00&lt;br /&gt;
 PDOMapping=0&lt;br /&gt;
&lt;br /&gt;
Seit Anfang 2007 ist ein auf [[XML]]-basierendes Beschreibungsformat XDD standardisiert. Dieses Format basiert auf dem [[International Organization for Standardization|ISO]]-Standard 15745 und erlaubt eine detaillierte Beschreibung der Gerätefunktionalität. Dabei wird die Applikation unabhängig von CANopen beschrieben und die Parameter der Applikation werden den CANopen-Objekten zugeordnet.&lt;br /&gt;
&lt;br /&gt;
Für dieses neue, XML-basierte Format als auch für das davor gültige EDS-Format gibt es den Editor CANeds, der als [[Freeware]] verfügbar ist.&amp;lt;ref&amp;gt;{{Internetquelle |url=https://www.vector.com/int/en/support-downloads/downloads/add-ons-and-freeware/caneds/ |titel=Beschreibung und Download von Vector CANeds |hrsg=Vector Informatik GmbH |sprache=en |abruf=2025-12-17}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.can-cia.org Website der CiA]&lt;br /&gt;
* [http://www.can-cia.org/can-knowledge/canopen/canopen-history/ Geschichte der Entwicklung von CANopen]&lt;br /&gt;
* [http://www.CANopen-Lift.org Wiki der CANopen-Lift Community]&lt;br /&gt;
* [https://www.microcontrol.net/service/grundlagen/canopen/ Einführung CANopen] mit Application Notes der MicroControl GmbH &amp;amp; Co. KG&lt;br /&gt;
* [http://cordis.europa.eu/search/index.cfm?fuseaction=proj.document&amp;amp;PJ_LANG=EN&amp;amp;PJ_RCN=297118&amp;amp;pid=3&amp;amp;q=55A19F7E7057939926C634386F12508E&amp;amp;type=sim Suchergebnis zu dem ESPRIT Project ASPIC]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:Canopen}}&lt;br /&gt;
[[Kategorie:Netzwerkprotokoll]]&lt;br /&gt;
[[Kategorie:Feldbus]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Winkekatze</name></author>
	</entry>
</feed>