ANSI-C CANopen Library

Produktfinder »
ANSI-C CANopen Library

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

 

Ähnliche Produkte

ANSI-C CANopen Library
ANSI-C CANopen Library
ANSI-C CANopen Treiberpakete
ANSI-C CANopen Trei...
CANopen Modules and Profiles
CANopen Modules and...
CANopen Bootloader
CANopen Bootloader
m4d – CANopen Gateway Server CiA 309-3
m4d – CANopen Gat...
CANopen Starter Kit
CANopen Starter Kit
youCAN
youCAN
Linux CAN can4linux / CANopen Driver
Linux CAN can4linux...
USB/CAN-Interface CPC-USB
USB/CAN-Interface C...
CPC-PCI/PCIe CAN Interface
CPC-PCI/PCIe CAN In...
PCI Intellican CAN Interface
PCI Intellican CAN...
Janz CAN-PCI Interface
Janz CAN-PCI Interface
IGW/900 - ist im Abkündigungsprozess
IGW/900 - ist im Ab...
EtherCAN
EtherCAN
CAN Analyzer CANREport
CAN Analyzer CANREport
CANobserver
CANobserver
CANwatch
CANwatch
Industrial Communication Creator - ICC (CANopen Design Tool)
Industrial Communic...
CANopen Device Monitor
CANopen Device Monitor
CANopen Configuration Manager
CANopen Configurati...
USB/CAN-Interface BASIC+ XS
USB/CAN-Interface B...
CANopen Master / Slave DLL
CANopen Master / Sl...
CANopen Evaluation Software
CANopen Evaluation...
Device Driver für VxWorks
Device Driver für...
Janz CAN-USB Interface
Janz CAN-USB Interface
Janz PC-Card Interface
Janz PC-Card Interface
Janz CAN-PC104 Interface
Janz CAN-PC104 Inte...
J1939 Protocol Stack
J1939 Protocol Stack
NetGen für SAE J1939
NetGen für SAE J1939
CANopen Mini Bootloader PAULUS
CANopen Mini Bootlo...
Treiber für Renesas RL Familie
Treiber für Renesa...
Gateway EtherCAN / EtherCANopen CI-ARM9
Gateway EtherCAN /...
USB/CAN Interface CPCUSB/embedded
USB/CAN Interface C...
CAN LWL Transceiver CTrans OL
CAN LWL Transceiver...
Janz CAN-USB Interface
Janz CAN-USB Interface
USB/CAN-Interface BASIC+ XS
USB/CAN-Interface B...
USB/CAN-Interface CPC-USB
USB/CAN-Interface C...
USB/CAN Interface CPCUSB/embedded
USB/CAN Interface C...