Open Device

From CANopen-Lift
Revision as of 14:02, 11 January 2007 by WikiSysop (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
----=== Translation is in progress! ===----

Um zukünftigen Entwicklern von CANopen-Produkten den Start zu vereinfachen, wollen wir hier die Hard- und Software für eine einfache CANopen-Baugruppe zur Verfügung stellen. In Gesprächen mit vielen Interessenten kamen wir oft zu dem Ergebnis, dass die völlige Neuentwicklung einer Baugruppe die dazu notwendige Einarbeitung in CANopen zu aufwendig ist. Besser ist es, die vorhandenen Baugruppen erst einmal über einen Adapter an den CAN-Bus anzuschließen und so die ersten Erfahrungen mit dem Bus zu sammeln. Die vielen Informationen, die die Baugruppen vom Bus konsumieren und produzieren wollen, lassen sich am besten über eine Schnittstelle anbinden. Jeder Entwickler hat schon einmal eine UART verwendet, um Daten ein- oder auszugeben.

Daher haben wir uns entschieden, hier eine Planine zu beschreiben, die Signale vom CAN-Bus auf eine serielle Schnittstelle überträgt, also sozusagen ein kleines "Gateway". Als Hardware für dieses Projekt bietet sich ein Entwciklungsboard der Firma Glyn an. Es sind die CAN-Schnittstelle und eine RS232-Schnittstelle vorhanden und es kann sofort mit der Entwicklung begonnen werden.

Open Hardware

Entwicklungsboard für das CANopen-Projekt

Das Open-Device-Projekt wird aus den oben beschriebenen Gründen mit einer kleinen Platine begonnen, die eine CAN-Schnittstelle auf eine RS232 umsetzen kann. Als ideale Plattform bietet sich dafür das Entwicklungsboard EVBMB90F897 der Firma Glyn an.

Wir wollen die Schaltpläne, Bestückungsliste und das Layout dieser Baugruppe hier veröffentlichen.

Als Prozessor kommt der MB90F897PMT der Firma Fujitsu zum Einsatz. Dabei handelt es sich um einen modernen 16Bit-Prozessor im LQFP48-Gehäuse mit einer CAN-2.0-Schnittstelle und zwei UARTs. Eine ausführliche Beschreibung der Features des Prozessors finden Sie im Handbuch des Entwicklungsboards und natürlich in der Bauteilbeschreibung des Hersellers.

Entwicklungswerkzeuge für diesen Prozessor werden kostenlos von Fujitsu bereit gestellt und können zum Beispiel über die Firma Glyn bezogen werden. Dazu gehören neben einer modernen IDE auch ein C-Compiler und ein C++-Compiler, die mit vollem Funktionsumfang nach einer Registrierung genutzt werden können.

Open Software

Die Software für eine erste Beispielanwendung soll hier ebenfalls zur Verfügung gestellt werden. Es handelt sich dabei um einen einfachen CANopen-Stack mit einer Beispielapplikation zum virtuellen Gerät Door Unit.

Als Grundlage für den hier zur Verfügung gestellten Code dient der MicroCANopen-Stack der von der Firma ESAcademy für dieses Projekt bereitgestellt wurde und der aktuell für das Entwicklungsboard EVBMF90F387 angepasst bereitsteht.

  Für den MicroCANopen-Stack gelten besondere Lizenzbedingungen. 
  Die Firma ESAcademy hat den Code unter der Lizenz cc 2.5 by-nc-sa zur Verfügung gestellt. 

Current State of the Software

  • angepasst an die Hardwarebasis EVBMF90F387
  • benutzt nur die CAN- und die SCI-Schnittstelle
  • für virtuelles Gerät Door Unit
  • keine EDS-Datei vorhanden
  • minimalstes Objekt-Verzeichnis (z. B. keine gerätespezifischen Objekte)
  • Führt Resets aus, wenn kein anderer CAN-Knoten am Bus vorhanden ist

Download

Wir stellen Ihnen das Projekt als Zip-Datei zur Verfügung. Bitte lesen Sie die Hinweise in der Datei readme.txt.

Download door417_v_1_0.zip

Developer Environment

Die Software steht aktuell für das Entwicklungsboard EVBMF90F387 zur Verfügung, da den Entwicklern bisher kein aktuelles Board zur Verfügung stand. Sobald dies verfügbar ist, wird der Stack auf das oben beschrieben Entwicklungsboard angepasst.

Für die Entwicklung steht eine komplette IDE mit aktuellen C- und C++-Compiler von der Firma Fujitsu zur Verfügung. Diese kann wie auch das Entwicklungsboard über die Firma Glyn bezogen werden. Nach einer Registrierung der Entwicklungssoftware steht den ersten Tests nichts mehr im Wege.


Der hier zur Verfügung gestellte Code reicht noch nicht für den produktiven Einsatz sondern dient lediglich als Anregung, um mehr daraus zu machen. Mal sehen, wie sich das Projekt entwickelt. Bei Interesse oder Vorschlägen wenden Sie sich bitte an Jörg Hellmich.