Aus RN-Wissen.de
Version vom 17. November 2005, 13:38 Uhr von Frank (Diskussion | Beiträge) (Boards die diesen Standard nutzen)

Wechseln zu: Navigation, Suche
Rasenmaehroboter fuer schwierige und grosse Gaerten im Test

Steckerbelegungen für den Bereich Robotik- und Mikrocontroller

Empfohlen und erarbeitet im RoboterNetz.de um Schaltungen kompatibler zueinander zu gestalten. Alle Boards mit dem Kürzel RN-... halten sich an die hier festgelegten Definitionen. Es wird empfohlen sich bei der Entwicklung eigener Schaltungen möglichst an diese Vereinbarung zu halten. Dadurch ist sichergestellt das auch andere Komponenten anderer Mitglieder oder Firmen in Eurer Projekt integriert werden können. Und umgekehrt habt ihr dann auch die Möglichkeit eigene Platinen-Entwürfe steckerkompatibel im RoboterNetz oder an anderer Stelle zu veröffentlichen.

Einheitliche Stecker vereinfachen einfach das Handling!

Die Steckerdefinitionen können auch als PDF geladen werden: http://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=81

Die verschiedenen Steckerarten

RN-Busstecker

I2C-Bus Stecker

Ein universeller serieller Bus mit dem sich sehr einfach verschiedene Boards ansteuern lassen. Der Bus hat den Vorteil das zwei Leitungen ausreichen und keine festen Taktraten und Zyklen beachtet werden müssen. Zahlreichen integrierten Schaltkreise (wie Porterweiterungen, LCD-Treiber, usw.) sowie fast alle RN-Boards nutzen diesen Bus. Am I2C-Bus können mehrere Boards/Bausteine angeschlossen werden, da jeder Baustein seine Slave Adresse besitzt.

Dieser Bus (Stecker) sollte auf jedem Controllerboard vorhanden sein, dadurch sind den Erweiterungen kaum Grenzen gesetzt.

Der hier definierte Standard ist nicht nur zu allen RN-Boards kompatibel, sondern auch zu vielen Schaltungen diverser Hersteller. Auch die Zeitschrift Elektor hat diesen Bus bereits genutzt (Elektor nutzt nur den Pin 10 nicht).

http://www.roboternetz.de/wiki/uploads/Main/stecker_10pol.gif http://www.roboternetz.de/wiki/uploads/Main/stecker_10pol_i2c.gif

Pin 1        SCL (Taktleitung)
Pin 3        SDA (Datenleitung)
Pin 5        +5V
Pin 7        +5V
Pin 9        Batteriespannung max. +12V
Pin 2,4,6,8  GND
Pin 10  INT  Diese Leitung kann von allen I2C-Bus Erweiterungen genutzt
             werden um den Hauptcontroller darüber zu informieren das 
             sich Daten (z.B. von Sensoren) verändert haben. In diesem Fall
             wird die Leitung solange auf Masse gelegt bis der entsprechende 
             I2C-Baustein ausgelesen wird.
             Die Controller muß also immer alle I2C-Bausteine auslesen 
             solange diese Leitung auf Masse liegt. Bei einem Hauptboard
             (wie z.B. RN-Control oder RNBFRA) kann diese Leitung auf einen
             interruptfähigen Port geleitet werden. 
             Beim Elektor-Standard gibt es diese Leitung nicht, hier liegt 
             dieses Signal immer auf Masse! 

Empfehlenswert ist es, das die Spannungen an Pin 5,7 und 9 über Jumper auf einem Board deaktivierbar sind. Dadurch lassen sich identische Boards mit eigenen Stromversorgungen verbinden ebenfalls über I2C verbinden, denn nur ein Board darf diese Spannungen bereitstellen. Bei RN-Control ist dies bereits ab Version 1,4 über Jumper wählbar.

Bezugsmöglichkeit für passende Wannenbuchse:
z.B. Reichelt (Best.Nr. WSL10G)
Conrad-Elektronik (Best.Nr. 742512-12)
Robotikhardware.de Kabelset

RS232 Stecker

Die serielle Schnittstelle (RS232) kann wahlweise als 9 poliger SUB-D Stecker (PC üblich) oder als 3 polige Stiftleiste herausgeführt werden. Die 3 polige Stiftleiste bietet sich immer dann an, wenn nur wenig Platz auf dem Board vorhanden ist. Da die 3 polige Stiftleiste auch auf fast allen RN-Boards vorhanden ist, sollte man diese dem 9 poligen SUB-D Stecker vorziehen. Ein weiterer Vorteil dieser Stiftleiste ist die einfache Umpolung von RX/TX durch umdrehen des Steckers.

Die Belegung ist identisch mit der des CCRP5 (Conrad Roboter). Paßende PC-Adapterkabel sind leicht anzufertigen und gibt es auch Fertig im Fachhandel (z.B. http://robotikhardware.de).

Empfohlene Steckverbindung auf der Platine:	
Stiftleiste 3 polig  Raster 2,54mm 
Pin 1   RX
Pin 2   GND
Pin 3   TX

Wie Abbildung 1 x 3 Kontakte

http://www.roboternetz.de/wiki/uploads/Main/stift3.gif http://www.roboternetz.de/wiki/uploads/Main/rn232adapter.jpg

Bezugsquellen:
z.B. Reichelt (Best.Nr. LU2,5MS3)

RS232 TTL Stecker

Die serielle Schnittstelle (RS232) im 5V TTL-Pegel. Diese Schnittstelle ist vor allem dann interessant, wenn mehrere Controller miteinander verbunden werden. Die Stiftleiste ist 4 polig ausgelegt um Verwechslungen mit der RS232 und dem PC-Pegel (+/-12V) zu vermeiden. Zudem läßt sich so ein Pegelwandler-Schaltkreis (z.B. Max232) anschließen und mit Spannung versorgen).

%center%http://www.roboternetz.de/wiki/uploads/Main/stift4.gif

 Empfohlene Steckverbindung auf der Platine:
 Stiftleiste 4 polig  Raster 2,54mm 
 Pin 1   RX
 Pin 2   TX
 Pin 3   GND
 Pin 4   5V

Bezugsquellen:

z.B. Reichelt (Best.Nr. LU2,5MS4)

RS485 Stecker

Ein weiterer wichtiger Bus ist neben I2C, RS232 der RS485 Bus. Dieser hat einige Vorteile. So können beispielsweise mehere Slaves an einen Master angeschlossen werden. Die Übertragung kann wahlweise abwechselnd in eine oder in beide Richtungen gleichzeitig erfolgen. Es sind sehr hohe Übertragungsraten bis in den Mbit Bereich über größere Entfernungen möglich.

http://www.roboternetz.de/wiki/uploads/Main/stecker_10pol.gif http://www.roboternetz.de/wiki/uploads/Main/stift2x5.gif http://www.roboternetz.de/wiki/uploads/Main/stecker_10poleagle.gif

 Empfohlene Steckverbindung auf der Platine:	
 Wannenstecker Rastermaß 2,54mm 10 polig
 Pin 1   Volle Batteriespannung
 Pin 3   GND
 Pin 5   5V
 Pin 7   RS485 A   (kein TTL Pegel)
 Pin 9   RS 485 B  (kein TTL Pegel)
 Pin 2   Volle Batteriespannung
 Pin 4   GND
 Pin 6   5V
 Pin 8   RS 485 C  (kein TTL Pegel)
 Pin 10  RS 485 D  (kein TTL Pegel)

Diese Steckerbelegung hat einige Vorteile. Man kann auch nur einen Stecker mit 5 Polen aufstecken wenn man nur einen Half-Duplex Bus benötigt. Man hat dann in diesen 5 polen alles drin.und die Belegung entspricht sogar noch den bisherigen Normierungen von uns (+12 / GND / +5 / Port / Port). Möchte man Vollduplex nutzen dann müsste man den vollen Stecker benutzen - man hat also die Wahl!

Pinbelegung der 5 poligen Alternative:

 Pin 1   Volle Batteriespannung
 Pin 2   GND
 Pin 3   5V
 Pin 4   RS 485 C  (kein TTL Pegel)
 Pin 5   RS 485 D  (kein TTL Pegel)

http://www.roboternetz.de/wiki/uploads/Main/stift5.gif

Alternativ zum Wannenstecker können auch Stiftleisten mit gleicher Belegung eingesetzt werden!


 Bezugsquellen für Stecker:
 z.B. Reichelt (Best.Nr. WSL10G)
 Conrad-Elektronik (Best.Nr. 742512-12)
 robotikhardware.de Kabelset

Universelle Anschlüsse für Sensoren und Aktoren

Servo Stecker (sowie Sensoren/Aktoren die einen Port benötigen)

Für den Anschluß von Servos gibt es bereits verschiedene Standard-Stecker der Modellbauhersteller. Für die Roboternetz-Definition haben wir uns einen der weit verbreitesten herausgesucht und übernommen. Boards die den Anschluss von Servos oder auch Modellbau-Empfängern erlauben, sollten diese 3 polige Stiftleiste vorsehen. Handelsübliche Servos können direkt angesteckt werden.

Diese dreipolige Anschluss eignet sich jedoch auch um Sensoren oder Aktoren, welche mit einem Datenport auskommen, anzuschließen.

Empfohlene Steckverbindung auf der Platine:	
Stiftleiste 3 polig  Raster 2,54mm 

Pin 1  GND
Pin 2  +5 V
Pin 3  Datenport (PWM-Signal) 

Wie Abbildung 1 x 3 Kontakte

http://www.roboternetz.de/wiki/uploads/Main/stift3.gif

Wobei sich die Steckerbelegung von Hersteller zu Hersteller unterscheiden.

http://www.roboternetz.de/wiki/uploads/Main/servosteckerbelegung.gif

http://www.roboternetz.de/wiki/uploads/Main/servo.jpg

Bezugsquellen:
z.B. Reichelt (Best.Nr. LU2,5MS3)

Universalanschluss 5 polig (2 Ports + Spannungen)

Für den Anschluss von Aktoren (Relais, LED´usw.) als auch Sensoren wurde ein 5 polige Stiftleiste festgelegt. Da viele Aktoren mehrere Ports benötigen werden immer 2 Portleitungen zusammen mit den Spannungen auf jede Stiftleiste gelegt.

Empfohlene Steckverbindung auf der Platine:	
Stiftleiste 5 polig  Raster 2,54mm 

Pin 1 Batteriespannung (max. 12 V)
Pin 2 GND
Pin 3 +5V
Pin 4 Port 1 
Pin 5 Port 2 


http://www.roboternetz.de/wiki/uploads/Main/stift5.gif

Bezugsquellen:
z.B. Reichelt (Best.Nr. LU2,5MS5)

Datenportstecker 10polig (8 Ports)

Zum experimentieren benötigt man oft mehrere Ports. Auch gibt es Aktoren/Sensoren oder sonstige Erweiterungen die viele Ports benötigen. Für all diese Zwecke empfehlen wir den universellen Datenport Stecker. Er verwendet die gleiche Belegung wie auch die Atmel Entwicklungsboards (z.B. STK500) und wird z.B. auch mehrfach auf dem Board RN-Control bereitgestellt.

Seit August 2005 kann ein Datenportstecker auch als Endstufenstecker genutzt werden.


Empfohlene Steckverbindung auf der Platine:
Pin 1   Port 0
Pin 2   Port 1
Pin 3   Port 2
Pin 4   Port 3
Pin 5   Port 4
Pin 6   Port 5
Pin 7   Port 6
Pin 8   Port 7
Pin 9   GND
Pin 10  Logikspannung 5V

http://www.roboternetz.de/wiki/uploads/Main/stecker_10poleagle.gif

http://www.roboternetz.de/wiki/uploads/Main/stecker_10pol.gif http://www.roboternetz.de/wiki/uploads/Main/stift2x5.gif

Bezugsmöglichkeit für passende Wannenbuchse:
z.B. Reichelt (Best.Nr. WSL10G)
Conrad-Elektronik (Best.Nr. 742512-12)
http://www.Robotikhardware.de Kabelset

Weitere Stecker

ISP - Programmierstecker

Über diesen Anschluß kann ein RN-Controllerboard sowie fast alle anderen auf dem Markt befindlichen AVR-Boards mit einem Standard ISP-Kabel direkt an einen Parallelport des PC´s angeschlossen und programmiert werden. Die Belegung des ISP-Anschlusses ist zu dem weit verbreitetet STK200 Programmier Dongle kompatibel. Ein entsprechender Dongle ist für ca. 13-15 Euro über zahlreiche Händler lieferbar.

Empfohlene Steckverbindung auf der Platine:

Pin 1  MOSI
Pin 2  VCC
Pin 3  Nicht belegt
Pin 4  GND
Pin 5  RESET
Pin 6  GND
Pin 7  SCK
Pin 8  GND
Pin 9  MISO
Pin 10 GND 


%center%http://www.roboternetz.de/wiki/uploads/Main/stecker_10pol_isp.gif http://www.roboternetz.de/wiki/uploads/Main/stecker_10pol.gif

%center%http://www.roboternetz.de/wiki/uploads/Main/stift2x5.gif

Bezugsmöglichkeit für passende Wannenbuchse:
z.B. Reichelt (Best.Nr. WSL10G)
Conrad-Elektronik (Best.Nr. 742512-12)
Robotikhardware.de Kabelset

Endstufenstecker 10polig (für Motoransteuerungen)

Wenn ein Motorboard nicht über I2C/ RS232 oder anderen Bus angesteuert wird, so wird folgender Wannenstecker als Anschluß empfohlen. Die Belegung ist angelehnt an die beliebten Motortreiberschaltkreise L293D , L298.und ähnliche H-Brücken.

Der Stecker eignet sich somit zum ansteuern von einem oder zwei DC-Motoren (z.B. Getriebemotoren) oder einem Schrittmotor. Auch Endstufen die nur einen Motor ansteuern können, sollten diesen Stecker verwenden. Empfehlenswert sind dann Jumper um zwischen Motor1 und Motor2 zu wählen. Auf diese Weise können einfach zwei Endstufen durchgeschleift werden (zwei gleiche Stecker am Kabel).

Die mir NC (Not Connected ) gekennzeichneten PIN´s sind absichtlich nicht normiert um diese im Einzelfall auch individuell für Sonderfunktionen nutzen zu können. Allerdings darf hier nur ein Pegel zwischen 0 und 5V angelegt werden, kein höherer Pegel ! Die NC-Pin´s müssen nicht genutzt werden, können also unbelegt bleiben. Wer jedoch für alle Fälle gerüstet sein möchte, sollte die NC-Pins per Jumper auf einen AD-Port legen können. Es ist damit zu rechnen das einige Boards die NC-Ports für ein Strommessignal (0 bis 2,5V) nutzen.

Der Motorendstufenstecker ist seit dem August 2005 kompatibel zu dem definierten universellen Datenportstecker. Datenportstecker sind mehrfach auf Standard-Boards wie RN-Control, Atmel STK500 und anderen Board´s die im Roboternetz vorgestellt wurden vorhanden. Somit lassen sich Datenportstecker sehr schnell als Endstufenstecker nutzen und umgekehrt. Beim Entwickeln neuer Board´s kann dies noch verbessert werden indem man die PWM-Ports entsprechend dem Endstufenstecker auch auf den Datenportstecker legt.

Empfohlene Steckverbindung auf der Platine:
Pin 1 Motor 1 IN 1 
Pin 2 Motor 1 IN 2 
Pin 3 Motor 2 IN 1 
Pin 4 Motor 2 IN 2 
Pin 5 NC (siehe Anmerkung)
Pin 6 Enable Motor1 ein (eventuell PWM) 
Pin 7 NC  (siehe Anmerkung)
Pin 8 Enable Motor2 ein (eventuell PWM) 
Pin 9 GND 
Pin 10 Logikspannung 5V 

http://www.roboternetz.de/wiki/uploads/Main/stecker_10poleagle.gif

%center%http://www.roboternetz.de/wiki/uploads/Main/stecker_10pol.gif http://www.roboternetz.de/wiki/uploads/Main/stift2x5.gif

Bezugsmöglichkeit für passende Wannenbuchse:
z.B. Reichelt (Best.Nr. WSL10G)
Conrad-Elektronik (Best.Nr. 742512-12)
Robotikhardware.de Kabelset

LCD Stecker

Für Board´s mit wenig Platz oder freien Ports, wurde ein sehr kompakter Stecker mit nur 10 Leitungen definiert. Es sind jedoch alle Leitungen vorhanden um fast alle LCD´s im sogenannten 4 Bit PIN-Mode zu betreiben. Bei Verwendung dieses Steckers muß jedoch die Kontrastspannung am LCD festgelegt werden (ein 10k Poti reicht). LCD´s mit Beleuchtung können die Versorgungsspannung mit einem Vorwiderstand auch zur Versorgung der Beleuchtung nutzen. Auf diese Weise reicht ein 10 poligen Kabel aus.

Dieser LCD Stecker ist seit dem August 2005 kompatibel zu dem definierten universellen Datenportstecker. Datenportstecker sind mehrfach auf Standard-Boards wie RN-Control, Atmel STK500 und anderen Board´s die im Roboternetz vorgestellt wurden vorhanden. Somit lassen sich Datenportstecker sehr schnell als LCD-Stecker oder Endstufenstecker nutzen und umgekehrt.


Empfohlene Steckverbindung auf der Platine:
Pin 1 DB7 
Pin 2 DB6 
Pin 3 DB5 
Pin 4 DB4 
Pin 5 EN2 (wird nur bei manchen LCD´s benötigt)
Pin 6 EN 
Pin 7 R/W 
Pin 8 RS 
Pin 9 GND 
Pin 10 +5V 

%center%http://www.roboternetz.de/wiki/uploads/Main/stecker_10poleagle.gif

%center%http://www.roboternetz.de/wiki/uploads/Main/stecker_10pol.gif http://www.roboternetz.de/wiki/uploads/Main/stift2x5.gif


Da auch fast alle LCD´s den gleichen 16 polige Anschluss besitzen, kann alternativ auch eine 16 polige Wannenbuchse vorgesehen werden:

Pin 1    GND
Pin 2    5V
Pin 3    Vee Kontrastspannung (0-4V)
Pin 4    RS (CS)
Pin 5    R/W  (SID)
Pin 6    Enable (1)  (SCLK)
Pin 7    DB0 (SOD)
Pin 8    DB1
Pin 9    DB2
Pin 10   DB3
Pin 11   DB4
Pin 12   DB5
Pin 13   DB6
Pin 14   DB7,MSB
Pin 15   LED – Beleuchtung +
Pin 16   LED – Beleuchtung -


Bezugsmöglichkeit für passende Wannenbuchse:
z.B. Reichelt (Best.Nr. WSL10G)
Conrad-Elektronik (Best.Nr. 742512-12)
Robotikhardware.de Kabelset

Encoder Stecker für 2 externe QuadraturEncoder (Drehzahlmessung)

Diese Schnittstelle dient zum Anschluß von 2 Quadratur- Encodern mit zusätzlichem Null-Positions-Eingang (SYNC) . Encoder dienen vornehmlich als Wegstreckenzähler oder zur Regelung von Drehzahlen.

Dieser Stecker ist auch kompatibel zu dem definierten universellen Datenportstecker. Datenportstecker sind mehrfach auf Standard-Boards wie RN-Control, Atmel STK500 und anderen Board´s die im Roboternetz vorgestellt wurden vorhanden. Somit lassen sich Datenportstecker sehr schnell als Encodern-Stecker nutzen und umgekehrt.


Empfohlene Steckverbindung auf der Platine:
Pin 1 ENC 1 A (sollte ein Timer Eingang, z.B. Timer0 sein) 
Pin 2 ENC 1 B
Pin 3 ENC 2 A (sollte ein Timer Eingang, z.B. Timer1 sein) 
Pin 4 ENC 2 B  
Pin 5 NC 
Pin 6 ENC 1 Sync (sollte Interrupt Eingang sein) 
Pin 7 NC 
Pin 8 ENC 2 Sync (sollte Interrupt Eingang sein) 
Pin 9 GND 
Pin 10 +5V 

%center%http://www.roboternetz.de/wiki/uploads/Main/stecker_10poleagle.gif

%center%http://www.roboternetz.de/wiki/uploads/Main/stecker_10pol.gif http://www.roboternetz.de/wiki/uploads/Main/stift2x5.gif


Bezugsmöglichkeit für passende Wannenbuchse:
z.B. Reichelt (Best.Nr. WSL10G)
Conrad-Elektronik (Best.Nr. 742512-12)
Robotikhardware.de Kabelset

Platinenmaße / Bohrlöcher

RN-Boards haben einheitliche Platinengrößen mit definierten Bohrlöchern. Dies gestattet die platzsparende "Huckepack" Montage.

RN-Boards haben einheitliche Platinengrößen mit definierten Bohrlöchern. Dies gestattet die platzsparende "Huckepack" Montage.

%center%http://www.roboternetz.de/wiki/uploads/Main/platine_halbeuro.gif

Passendes Eagle Script hier http://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=127

http://www.roboternetz.de/wiki/uploads/Main/platine_euro.gif

http://www.roboternetz.de/wiki/uploads/Main/platine_vierteleuro.gif

Passendes Eagle Script hier http://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=181



I2C - Slave ID Adressenbelegung (definierte Vergabe von I2C-Adressen)


Weitere Definitionen werden in Kürze vom oben genannten PDF ins WIKI übernommen


Boards die den Standard nutzen kann man auch an folgendem Logo erkennen:

http://www.roboternetz.de/wiki/uploads/Main/roboternetzstandard.gif

Boards die diesen Standard nutzen


LiFePO4 Speicher Test