Universelle und hardware- sowie betriebssystemunabhängige Bibliothek in ANSI-C für das CANopen Protokoll nach CiA-301(V4.2)/CiA-302.
Übersicht
Die CANopen Library stellt alle für eine CANopen konforme Kommunikation notwendigen Dienste entsprechend dem Kommunikationsprofil CiA 301 V 4.2 bereit. Sie erlaubt eine einfache und schnelle Entwicklung von Master und Slave Geräten und kann ein oder mehrere CAN-Linien in einem Gerät bedienen.
Die CANopen Library ist in den Ausbaustufen
- Slave
- Master/Slave
verfügbar. Der Funktionsumfang kann durch zusätzliche Module (LSS, Redundancy, Flying Master, CANopen Safety, ...) erweitert werden (siehe CANopen-Library Erweiterungsmodule).
Der Zugriff auf die Hardware erfolgt über ein definiertes Treiberinterface, das für eine Vielzahl von CPU- und CAN-Kontroller Typen mit und ohne Betriebssystem verfügbar ist (siehe CANopen Driver Package).
Anwendung
Die CANopen Library basiert auf der Grundlage des Kommunikationsprofils CiA-301 V4.2 des CiA e.V. "CANopen Application Layer and Communication Profile" bzw. EN50325-4 und stellt alle dort beschriebenen Dienste bereit. Sie wurde vollständig in ANSI−C erstellt und kann somit problemlos mit allen ANSI−C kompatiblen Kompilern übersetzt werden.
Je nach gefordertem Leistungsumfang steht die CANopen Library in verschiedenen Ausbaustufen zur Verfügung. Zum Aufbau von kleinen Sensoren und Aktoren mit eingeschränktem CANopen Dienstumfang steht die preiswerte Slave Small-Version zur Verfügung, die neben der Beschränkung der nutzbaren Dienstanzahl nur einige Dienste wie SYNC oder TIME nicht unterstützt. Mit der Slave-Version der CANopen Library stehen umfangreiche Dienste für den Aufbau von Slave-Geräten zur Verfügung.
Netzwerkmanagement Master Funktionen aber auch komfortable Knotenüberwachungsfunktionen bietet die Master/Slave-Version, die natürlich auch die Dienste der Slave-Version beinhaltet. Zusätzliche Dienste aus anderen Kommunikationsprofilen (CiA 3xx) stehen in Erweiterungsmodulen zur Verfügung. Alle Versionen der CANopen Library sind miteinander kompatibel und werden ständig mit dem aktuellen CANopen Conformance Test auf Standard Kompatibilität überprüft.
Slave | Master/Slave | Extra Package | |
SDO Server | 128 | 128 | |
SDO Client | 128 | 128 | |
SDO Segmented Transfer | √ | √ | |
SOD Block Transfer | √ | ||
Dyn. SDO Slave | √ | ||
SDO Manager | √ | ||
Program Download | √ | √ | |
PDO Consumer | 512 | 512 | |
PDO Producer | 512 | 512 | |
Dynamic Mapping | √ | √ | |
Bitwise Mapping | √ | √ | |
MPDO Source Mode | √ | ||
MPDO Dest. Mode | √ | ||
Nodeguarding Master | √ | √ | |
Nodeguarding Slave | √ | √ | |
Lifeguarding | √ | √ | |
Heartbeat Consumer | 128 | 128 | |
Heartbeat Producer | √ | √ | |
EMCY Consumer | 128 | 128 | |
EMCY Producer | √ | √ | |
Time Consumer | √ | √ | |
Time Producer | √ | ||
SYNC Consumer | √ | √ | |
SYNC Producer | √ | ||
NMT Slave | √ | √ | |
NMT Master | √ | ||
NMT Flying Master | √ | ||
Bootup Procedure | √ | ||
Configuration Manager | √ | ||
LED Indicator | √ | √ | |
Safety Communication | √ | ||
Redundancy Support | √ | ||
LSS Services | √ | √ | |
CiA 401 Framework | √ | ||
Nonvolatile Storage | √ | √ |
Alle hardwarespezifischen Teile sind über eine definierte Treiberschnittstelle von der CANopen Library entkoppelt, so dass eine Portierung auf andere Hardwareplattformen problemlos möglich ist.
Die Anwenderapplikation kommuniziert mit der CANopen Library über Funktionsaufrufe und Callback-Funktionen.
Die Konfiguration und Skalierung der CANopen Library erfolgt über das CANopen Design Tool, welches als CANopen Design Tool Light-Version im Lieferumfang enthalten ist. Damit kann die CANopen Library optimal dem Ressourcenbedarf der Applikation angepasst werden. Neben der Erstellung des Objektverzeichnisses können auch die Einstellungen für die Hardware vorgenommen und verwaltet werden.
Beschreibung
Die CANopen Library besteht aus einem hardwareabhängigen und einem hardwareunabhängigen Teil, die über Messagequeues miteinander kommunizieren. Zum hardwareabhängigen Teil gehören die CAN-Kontroller Ansteuerung und die Zeitgeberfunktionen. Eine ausführliche Beschreibung finden Sie unter CANopen Driver Package.
Die Applikation kommuniziert nur mit dem hardwareunabhängigen Teil der CANopen Library, so dass der Austausch eines Treibers keinen Einfluss auf die Funktionalität der Applikation bewirkt. Der Start von CANopen Diensten erfolgt über Funktionsaufrufe in der Applikation. Die CANopen Library führt anschließend alle notwendigen Kommunikationsschritte selbständig aus und informiert die Applikation nach dem Abschluss der Übertragung mit Hilfe von Callback-Funktionen über das Ergebnis.
Kommunikationsanfragen von anderen Geräten sowie notwendige zeitzyklische Prozesse und Time-Out Überwachungen werden von der CANopen Library selbständig realisiert. Dabei wird immer die Korrektheit der Anfragen geprüft (Zugriffrechte, Datentypen etc.). Nach dem Abschluß der Kommunikation bzw. bei Fehlerzuständen wird die Applikation über dienstbezogene Callback-Funktionen informiert. In diesen Callback-Funktionen können entsprechende Reaktionen von der Applikation ausgeführt werden.
Das Objektverzeichnis (OV) ist so ausgelegt, dass es Referenzen auf die Variablen der Anwenderapplikation enthält. Somit können Variablen in bereits existierender Software ohne Veränderung des Applikationskodes in das Objektverzeichnis aufgenommen werden.
Vor allem für Geräte mit begrenzten Ressourcen ist die hohe Skalierbarkeit der CANopen Library entscheidend. Auf der einen Seite wird dies durch die Modularisierung in einzelne Dienstgruppen, z.B. sdo.c, pdo.c, ...sync.c, erreicht und zum anderen durch die Nutzung von Kompilerdirektiven in den jeweiligen Modulen. Die Codegröße ist damit proportional zu den genutzten CANopen Diensten.
Die CANopen Library ist auch als Multi-Line Version verfügbar. Damit wird es möglich, auf Geräten ohne Betriebssystem mit unzureichenden Ressourcenschutzmechanismen bis zu 255 voneinander unabhängige CAN-Netzwerke mit jeweils eigenem Objektverzeichnis und wählbarer Master- oder Slave-Eigenschaft zu bedienen. Durch die Trennung des Protokollstacks und der Hardwaretreiber können die einzelnen Linien auch mit unterschiedlichen CAN-Kontrollern betrieben werden.
Zum Lieferumfang der CANopen Library gehören verschiedene Beispielprogramme, die den Einsatz der unterschiedlichen Dienste erläutern. Alle Beispiele enthalten eine vollständige Implementierung eines CANopen Gerätes einschließlich des Objektverzeichnisses sowie des Applikationskodes und können sofort kompiliert werden.
Neben dem ausführlich dokumentierten Quellkode stehen das Referenzhandbuch und ein ca. 200 Seiten umfassendes User-Manual (auch in Papierform) als Dokumentation der CANopen Library zur Verfügung. Die CANopen Library wird ständig weiter entwickelt und an Kundenwünsche angepasst. Dafür stellen wir unseren Kunden einen Update Service bereit.
Zur Entwicklung, zum Test und zur Inbetriebnahme von CANopen Geräten steht eine umfangreiche Toolkette bereit. Zur Erstellung des Objektverzeichnisses aber auch zur Konfiguration der CANopen Dienste und der Hardwareeinstellungen steht das CANopen Design Tool zur Verfügung, welches als CANopen Design Tool Light-Version mit leicht eingeschränktem Funktionsumfang bereits im Lieferumfang enthalten ist.
Das Tool erzeugt neben dem Objektverzeichnis, auch das Electronic Data Sheet (EDS-Datei) und eine Dokumentation des Gerätes in HTML und Textform.
Für die Inbetriebnahme aber auch für die Implementierungs- und Testphase kann der CANopen Device Monitor genutzt werden. Als vollständig implementierter CANopen Master mit grafischer Oberfläche gewährleistet er Zugriff auf alle Dienste im Netzwerk und gestattet außerdem eine einfache Anzeige des Busverkehrs.
Unentbehrlich für die Entwicklung von CAN Applikationen ist die Beobachtung und Analyse des Bus-Verkehrs. Die dienstbezogene Darstellung des CAN-REport ermöglicht dabei eine einfache und schnelle Interpretation der Daten von CANopen Geräten.
Neben den Kommunikationsobjekten des CiA 301 sind in CANopen auch verschiedene Applikationsobjekte in verschiedenen Geräteprofilen spezifiziert, um ein definiertes Verhalten der jeweiligen Geräteklasse und die Austauschbarkeit von CANopen Geräten zu ermöglichen. Für den Einsatz dieser Geräteprofile stehen Erweiterungsmodule zur Verfügung, die eine einfache Nutzung dieser Profile ermöglichen.
Alle Module stehen im ANSI-C Sourcecode zur Verfügung und können mit allen Versionen der CANopen Library eingesetzt werden. Detaillierte Informationen sind im Datenblatt CANopen Library Erweiterungsmodule enthalten.
Systemumgebung
Die CANopen Library ist lauffähig auf Plattformen mit und ohne Betriebssystem. Es werden alle gängigen CAN-Kontroller und viele Mikrokontroller/-prozessoren unterstützt. Für detaillierte Informationen siehe Datenblatt CANopen Driver Package.
Für Windows™-basierte Systeme steht die CANopen Library auch als Dynamic Link Library (DLL) zur Verfügung. Die DLL ist für verschiedene Hardwarebaugruppen verfügbar und enthält den vollen Leistungsumfang der Master/Slave-Version. Damit erlaubt sie den Einsatz sowohl in Master- als auch in reinen Slave Anwendungen.
Weiterhin ist ein CANopen-Starter Kit verfügbar und auf Anfrage ist auch eine Evaluierung der Software möglich.
Lieferumfang CANopen Library
- CANopen Library mit getrenntem Treiberinterface
- CPU/CAN Treiber
- zahlreiche sofort übersetzbare Beispiele
- CANopen Design Tool Light
- ausführliches Anwenderhandbuch
- Referenzhandbuch mit Beschreibung aller Funktionen einschließlich Übergabeparameter und Return-Werten
Support (bis zu 30 Tagen nach Kauf)
- kostenfreier telefonischer Support
- kostenfreier Support per E-Mail
- kostenfreier Update Service
Mit einem Wartungsvertrag sichern Sie sich auch weiterhin oben genannten Support. Die aktuellen Konditionen erfragen Sie bitte in unseren Service-Bereich (service@port.de).
CANopen Design Tool Light
- erzeugt das Objektverzeichnis, die Konfigurationsdateien für die CANopen Library (C-Kode), die EDS-Datei und die Dokumentation
Lizenzbedingungen (Auszug)
Für die CANopen Library werden einmalige Lizenzgebühren in Form einer Produkt- / Projekt- oder Site-Lizenz erhoben. Weitere Lizenzgebühren beim Einsatz der Software innerhalb der Firma des Lizenznehmers entstehen nicht (keine Runtime-Lizenzen). Die Weitergabe der Software an Dritte bzw. die Implementierung durch den Lizenznehmer in Produkte Dritter ist ausgeschlossen.
Mehr Informationen über das Lizenzmodel erfahren Sie über service@port.de.
Weitere Dienstleistungen
Wartungsvertrag
Alle Änderungen an den aktuellen Standards aber auch Erweiterungen durch neue Standards werden ständig in die CANopen Library eingearbeitet. Damit alle Kunden auch nach dem Ablauf des kostenlosen Update-Zeitraums von diesen Änderungen profitieren können, bieten wir einen Wartungsvertrag mit folgenden Leistungen an:
- kostenlose Updates für den abgeschlossenen Zeitraum
- kostenloser Support zur CANopen Library und zu CANopen
Inbetriebnahmeunterstützung
Um einen möglichst schnellen und effektiven Einstieg in die CANopen Geräte Implementierung zu finden, empfehlen wir eine gemeinsame Inbetriebnahme eines CANopen Gerätes auf der Kundenhardware. Die Kenntnisse des Kunden über seine Hardware und den eingesetzen Kompiler und die Erfahrungen unserer Mitarbeiter mit CANopen und der CANopen Library können sich so optimal ergänzen und führen in kürzester Zeit zu einem lauffähigen CANopen konformen Gerät.
Conformance Test
Zur Vorbereitung des kostenpflichtigen Conformance Tests beim CiA stehen wir Ihnen mit unserem Wissen und dem vorhandenen Equipment gern zur Verfügung. Mit der Vorbereitung und Durchführung eines Vorab-Tests können eventuelle Probleme schnell erkannt und beseitigt werden.
Systemanalyse, Beratung und Unterstützung
Profitieren sie von unserem Know-How bei der Planung und Entwicklung ihrer CANopen Geräte und Netzwerke. Eine optimales Design erfordert gute Kenntnisse über die eingesetzten Protokolle und die Systemumgebung. Unsere kompetenten Mitarbeiter erstellen mit Ihnen zusammen eine kostengünstige und auf ihr Problem zugeschnittene optimale Lösung.
Software Entwicklungsleistungen für CAN, CANopen und DeviceNet
Schulung
Um den Einstieg in CANopen zu vereinfachen bieten wir ein- und mehrtägige Schulungen zu CANopen und seinen Diensten sowie zur CANopen Library und unseren Tools an. Diese Schulungen können wahlweise in Ihrem oder unserem Hause stattfinden und werden nur mit Mitarbeitern ihrer Firma durchgeführt.
CANopen User Manual
Sie wollen die Vorzüge unserer CANopen Library kennen lernen? Dann ist das User-Manual die richtige Lektüre, um sich einen Überblick über den Funktionsumfang und die Einsatzmöglichkeiten der CANopen Library zu verschaffen.
Starter Kit
Für einen schnellen und unkomplizierten Start mit CANopen bietet sich das CANopen Starter Kit an, das mit kompletter Hardware, vorkompilierter CANopen Library, einfachen Beispielen und Inbetriebnahme-Tools den Einstieg in CANopen erleichtert. Als Hardwarebaugruppen stehen PC-Einsteckkarten, Parallelport-Dongles, PCMCIA-Karten oder USB-Interfaces zur Verfügung, mit denen der Aufbau eines CAN-Netzwerkes zum Kinderspiel wird.
Weitere Informationen finden Sie unter CANopen LINUX™ Starter Kit.
Bestellinformation
- 0564/12 CANopen-SRCLIB Slave
Single Line - 0564/10 CANopen-SRCLIB Master/Slave
Single Line - 0564/15 CANopen-SRCLIB Slave
Multi Line - 0564/13 CANopen-SRCLIB Master/Slave
Multi Line - 0910/xx CANopen-DLL Master/Slave
- 0564/90 CANopen-SRCLIB User Manual
(Paperback) - 0571/10 CANopen-SRCLIB Wartungsvertrag
Software Maintenance Agreement - 0564/39 CANopen Evaluation-Software
- 0569/10 CANopen Schulung
- 0570/10 CANopen Inbetriebnahmeunterstützung
- 0572/01 CANopen Starter Kit für LINUX
Datenblatt
Laden Sie sich das Datenblatt als PDF herunter.
Knowledge Base
Sie benötigen mehr Informationen und Dokumentation - dann schauen Sie bitte hier:
https://portgmbh.atlassian.net/wiki/spaces/CAL/overview