CANopen Protokollsoftware
Softwarepaket für die Entwicklung von CANopen-Slave- und einfachen CANopen-Master-Geräten Highlights
- Umfangreicher Funktionsumfang basierend auf der CANopen Spezifikation CiA 301
- Unterstützung von Statusanzeigen nach CiA 303-3
- Unterstützung von Layer Setting Services nach CiA 305
- Ermöglicht eine schnelle und einfache Entwicklung von CANopen-Geräten (Slave und Master)
- Modulare Softwarestruktur mit umfangreichen Konfigurations- und Skalierungsmöglichkeiten
- Hohe Leistungsfähigkeit bei minimalem Resourcenbedarf
- Klar gegliederte, einfache Programmierschnittstelle zur Anbindung des Anwendungsprogramms
- Einfache Portierbarkeit auf alternative Mikrocontroller
- Mehrkanalfähige Version verfügbar
Funktionsübersicht Die CANopen Protokollsoftware beinhaltet alle erforderlichen Funktionen, um CANopen Slave oder einfache CANopen Master Geräte entsprechend der CANopen Spezifikation CiA 301 zu realisieren.
- Skalierbarkeit und Hardwarespezifische Anpassung: Um ein hohes Maß an Skalier- und Anpassbarkeit zu gewährleisten, wird das Softwarepaket über zentrale Dateien konfiguriert. Eine Konfigurationsdatei erlaubt es, die durch den Protokollstack zur Verfügung gestellte CANopen Funktionalität in optimaler Weise an die gegebene Applikation anzupassen und damit die vorhandenen Ressourcen effektiv zu nutzten. Dies ermöglicht eine äußerst ressourcenschonende Implementierung. Die Kernfunktionalität der CANopen Software ist unabhängig von der Architektur des jeweiligen CAN Controllers realisiert, der eigentliche CAN Treiber ist vollständig innerhalb eines eigenen Softwaremoduls gekapselt. Die Anpassung an den verwendeten Mikrocontroller beziehungsweise Prozessortyp (z.B. Interrupts, Timer) erfolgt ebenfalls zentral in einer Datei, wobei die durch das Softwarepaket an die Hardware gestellten Anforderungen minimal sind.
- Mehrkanal Unterstützung: Die IXXAT CANopen-Protokollsoftware ist auf Anfrage als Mehrkanalvariante verfügbar. Diese Version erlaubt eine Implementierung mehrerer unabhängiger CANopen-Module innerhalb eines Feldgeräts. Hierbei sind NMT Master- beziehungsweise Slave-Funktionalität auf den einzelnen Kanälen unabhängig konfigurierbar, jeweils mit unabhängigen Objektverzeichnissen. Die Mehrkanal CANopen-Protokollsoftware unterstützt weiterhin den parallelen Betrieb auch unterschiedlicher CAN-Controller auf den einzelnen Kanälen.
- Objektverzeichnis und Programmierschnittstelle: Das Objektverzeichnis ist die Schnittstelle zwischen Anwendung und Kommunikationsschnittstelle. Jedem Objektverzeichniseintrag kann direkt eine Referenz auf eine Variable mit Anwendungsdaten zugeordnet werden. PDOs und SDOs greifen direkt auf diese Anwendungsvariablen zu. Somit sind keine Änderungen in einer bestehenden Anwendung notwendig, um einen CANopen-Protokollstack zu integrieren.
Anwenderspezifische Call-Back Funktionen können mit jedem Applikationsobjekt verbunden werden und ermöglichen eine ereignisgesteuerte Benachrichtigung der Anwendung bei Zugriffen auf diese Objekte. Dieser Mechanismus erlaubt die direkte und anwendungsspezifische Reaktion auf busseitig veranlasste Veränderungen der Anwendungsdaten. Außerdem wird die Möglichkeit der Speicherung und Wiederherstellung konfigurierter Daten unterstützt.
- Prozeß- (PDO) und Service-Daten-Objekte (SDO):
Die CANopen Protokollsoftware unterstützt die PDO Übertragungsarten asynchron (wahlweise mit Ereignistimer), synchron (zyklisch und azyklisch) sowie auf Anforderung (RTR-Only). Das PDO-Mapping kann statisch oder dynamisch ausgeführt werden, je nach geforderter Reaktionsgeschwindigkeit oder vorhandenen Ressourcen. Zusätzlich unterstützt die Protokollsoftware Multiplex-PDOs inklusive Scanner- und Dispatcher-Listen. Dummy Mapping ist ebenso möglich wie variable Inhibitzeiten. Objekte können gleichzeitig in mehrere PDOs eingetragen werden. Bei SDOs werden die Transferarten expedited, non-expedited (segmentiert) sowie Blocktransfer unterstützt. Sowohl bei Lese- als auch bei Schreibzugriffen kann die Bestätigung des SDO-Dienstes durch die Applikation verzögert erfolgen. Die Applikation kann die mittels SDO geschriebenen Daten vor Überschreiben der Zielobjekte auf Konsistenz überprüfen und gegebenenfalls den SDO Transfer abbrechen.
- Netzwerkmanagement: Die CANopen Software unterstützt den in CiA 301 definierten Boot-up mit allen Netzwerkdiensten inklusive Node-Guarding mit oder ohne Life-Guarding (Master-Überwachung) sowie Heartbeat-Mechanismus mit Producer-Überwachung.
- Identifiervergabe: Die Identifiervergabe erfolgt standardmäßig entsprechend dem Predefined I/O Connection Set, kann aber auch durch Änderung der entsprechenden Objektverzeichniseinträge erfolgen.
- Masterfunktionalität: Vorwiegend in kleineren CANopen-Systemen wird oft kein vollständiger CANopen Manager benötigt sondern nur ein einfaches Mastergerät zum Starten des Systems. Daher ermöglicht dieses CANopen Softwarepaket auch die Realisierung eines einfachen CANopen Masters mit eigenem Objektverzeichnis. Ein auf dieser Basis implementiertes CANopen Gerät kann in einem System wahlweise als Slave oder als Master arbeiten und mit Hilfe von Konfigurationswerkzeugen über das Objektverzeichnis konfiguriert werden. Das CANopen Softwarepaket stellt hierfür alle erforderlichen NMT-Basisdienste zur Verfügung, was dem Entwickler die Implementierung einer angepassten und optimierten NMT-Master-funktionalität ermöglicht. Zur Realisierung von vollständigen bzw. komplexeren CANopen Manager Geräten oder auch für die Entwicklung programmierbarer Geräte und Steuerungen (SPS) ist das Softwarepaket "CANopen Manager Software" die geeignete Basis.
- Optional verfügbare Zusatzfunktionen: Ergänzend zum standard Lieferumfang der CANopen Protokollsoftware sind folgende Zusatzfunktionen auf Anfrage verfügbar:
- Flying Master, Startup-Capable Device oder NMT-Master-Capable Device entsprechend CiA 302 - SDO-Manager (SDM), SDO-Requesting-Device (SRD)entsprechend CiA 302
- Implementierungsaufwand: Die CANopen-Protokollsoftware wird als hardwareunabhängiger C-Quellcode ausgeliefert und ist stets mit der aktuellsten CANopen Conformance Test Software des CiA geprüft.
Die mitgelieferte Dokumentation und Beispielprogramme ermöglichen einen schnellen Start mit der Software. Zu den Beispielprogrammen werden Projektdateien geliefert, welche eine direkte Integration in die entsprechenden Entwicklungsumgebungen der Compilerhersteller erlauben. Alle Beispielprogramme sind auf einer Referenzplattform (Evaluierungsboard des CPU-Herstellers bzw. IXXAT-Interfacekarte) direkt lauffähig. Normalerweise kann eine Anpassung an die Zielhardware innerhalb von wenigen Tagen erfolgen. Die Realisierung eigener Anwendungen wird durch Beispielprogramme erleichtert.
Verfügbare Versionen der CANopen Protokoll Software Die CANopen Protokollsoftware ist in zwei verschiedenen Varianten mit unterschiedlichem Funktionsumfang erhältlich: Slave und Master/Slave. Hierbei beinhaltet das Master/Slave-Paket den vollständigen Funktionsumfang und kann zur Entwicklung von reinen Slave-Geräten als auch einfachen Master-Geräten genutzt werden. Der Funktionsumfang des jeweiligen Pakets ist in der folgenden Tabelle beschrieben:
| Funktion |
Slave |
Master/ Slave |
| Max. Anzahl Server-SDOs |
127 |
127 |
| Max. Anzahl Client-SDOs |
- |
127 |
| Max. Anzahl PDOs (Tx/Rx) |
512 |
512 |
| Dynamisches PDO Mapping |
 |
 |
| SYNC Objekt |
C |
P/C |
| EMERGENCY Objekt |
P |
P/C |
| TIME STAMP Objekt |
C |
P/C |
| NMT-Funktionen |
S |
M/S |
| Node Guarding, Heartbeat |
 |
 |
CAN-ID-Konfiguration entsprechend Predefined Connection Set |
 |
 |
| CAN-ID-Konfiguration über SDOs |
 |
 |
| NMT Start-up-Object (1F80h) |
 |
 |
| Slave Assignment Liste (1F81h) |
- |
 |
| Statusanzeigen entsprechend CiA 303-3 |
 |
 |
| Flying Master entsprechend CiA 302 |
S (optional) |
M/S (optional) |
| LSS Dienste entsprechend CiA 305 |
S |
M/S |
C=Consumer (Empfänger); P=Producer (Sender); S=Slave; M=Master
Unterstützte Prozessoren, CAN-Controller und Compiler Die CANopen Protokoll Software ist hardwareunabhängig und somit auf einer Vielzahl von Micro- und CAN Controllern einsetzbar. Für Prozessoren der folgenden Hersteller (aktueller Stand zum Zeitpunkt der Drucklegung dieses Kataloges) liefert IXXAT Referenzimplementierungen inklusive Projektdateien für die eingesetzten Entwicklungsumgebungen, die auf den entsprechenden Entwicklungsplattformen direkt lauffähig sind:
- Atmel
- Freescale
- Fujitsu
- Infineon
- Microchip
- NXP
- NEC
- Renesas
- STMicroelectronics
- Texas Instruments
- x86 Architektur
Eine vollständige Übersicht aller unterstützten CPUs finden Sie auf der IXXAT Webseite unter [ www.ixxat.de/canopen_stack_available_versions_de.html ]
Eine Anpassung der CANopen Software auf nicht direkt unterstützte Prozessoren kann auf der Basis einer universellen ANSI C Variante innerhalb weniger Tage durchgeführt werden (vorausgesetzt ein Treiber für den verwendeten CAN-Controller ist verfügbar). IXXAT führt gerne die entsprechenden Anpassungen der CANopen Software für Sie durch.
Lieferumfang - Quellcode - Firmenlizenz (begrenzt auf Firmenstandort und Geschäftsbereich) - Ausführliches Handbuch und Beispielprogramme - Technischer Support
Ergänzende Leistungen (nicht im Lieferumfang enthalten)
Bestellnummern
Einkanal-Version
| 1.02.0122.TTDDC |
CANopen Slave Protokollsoftware (Varianten auf Anfrage) |
| 1.02.0124.TTDDC |
CANopen Master/Slave Protokollsoftware (Varianten auf Anfrage) | |
Mehrkanal-Version
| 1.02.0222.TTDDC |
CANopen Slave Protokollsoftware (Varianten auf Anfrage) |
| 1.02.0224.TTDDC |
CANopen Master/Slave Protokollsoftware (Varianten auf Anfrage) | |
|