Hallo,

ich baue gerade an einem größeren Projekt rum und ich möchte vor allem den CAN-Bus für die interne echtzeitfähige Kommunikation zwischen den einzelnen Komponentenn nutzen. Da für diesen Bus noch keine Steckerbelegung existiert, möchte ich hier, bevor ich das Layout mache, eine Steckerbelegung vorschlagen und die Vor- und Nachteile Diskutieren.

Geplant hatte ich den 10-Poligen Pfostensteckverbinder, welcher auch für die anderen RN-Standards zum tragen kommmt, zu nutzen. Dies hat den Vorteil, das dieser in den meisten Bastelwerkstätten, die sich mit Robotik befassen schon Vorhanden ist. Des weiteren passt auch die Impedanz relativ gut (empfohlen für CAN sind meines Wisssens nach 108...132 Ohm), so das keine sehr großen Impedanzsprünge zustande kommen. Für kurze strecken habe ich schon einmal mit einem Einfachen Flachbandkabel experimentiert und immerhin bei 1 Mbit eine Strecke von 5m überbrückt. Bei 6m jedoch gab es Probleme. Mit einem paarweise verdrillten Kabel wie z.B. dem hier gab es bis zu einer Länge von 8,5m keine Probleme. (Längeres Kabel hatte ich nicht). Das sollte meiner Meinung nach aber für die meisten Anwendungen in der Hobby-Robotik ausreichend sein.


Ich habe voresrt einmal die Pinbelegung wie folgt geplant:

Bild hier  


Nutzen möchte ich den CAN-Bus z.B. für die Vernetzung von Sensoren und Aktuatoren, wobei ich auf eine einfache Verkabelung achten möchte. Die einzelnen Module sollen soweit möglich ausschließlich eine Anbindung über diesen Stecker bekommen. Daher ist es nötig neben den Leitungen CAN-L sowie CAN-H die Versorgungsspannung mitzuführen (bei mir 51,8V Nominal [14*3,7V]). Wobei ich auch schon daran gedacht habe, die Versorgungsspannung auf 12V zu reduzieren, da bei anderen Nutzern wohl eher nur ca. 12V zum einsatz kommen. Das würde halt speziell für mein Projekt bedeuten, das ich die 51,8V seperat an die größeren Verbraucher bringen muss. Dies würde ich aber gerne zugunsten einer sinnvollen Steckerbelegung sowie einer besseren akzeptanz der Pinbelegung bei anderen Usern eingehen. Die Leitungen CAN-L sowie CAN-H wurden so am Stecker belegt, das bei Nutzung des Paarweise verdrillten Kabels diese miteinander verdrillt werden. Rechts sowie links neben diesen Leitungen habe ich jeweils eine Masse eingeplant, was vorsorglich geschah, um Probleme durch eine Kapazitive Einkopplung durch Nachbarsignale zu unterbinden. Pin Nummer 10 habe ich bei meinem Prohjekt mit einer !STANDBY Leitung belegt, wobei ich mir auch eine Verwendung als GPIO vorstellen kann. Die Nutzung als Standby-Signal kam aus der Erfahrung heraus, das die MCUs meist bei jeder Nachricht auf dem Bus kurz in den aktiven Modus wechseln um zu Prüfen, ob diese Nachriccht für sie bestimmt sei. Hierdurch werden häufig lange Standbyzeiten bei Akkubetriebenen Systemen unmöglich. Über dieses Signal könnte sichergestellt werden, das die Komponenten erst bei Signalisierung wider aus dem Standby erwachen.

Ich hoffe zunächst einmal auf eine gute Diskussion und evtl. Vorschläge, wenn jemand eine bessere Idee hat.

Gruß, Volker

P.S. Das hatte ich noch vergessen:

In der Industrie ist sehr häufig der 9Polige SUB-D-Stecker anzutreffen, welcher nach CiA-DS102-1 Standard belegt ist. Diese Belegung sieht wie folgt aus:

1 -
2 CAN-L
3 CAN-GND
4 -
5 CAN-SHIELD
6 GND
7 CAN-H
8 -
9 CAN-V+ (üblicher weise 12V)