Inhaltsverzeichnis
RP6v2 Orientierung: Hardware
In diesem Projekt soll eine "Exp" (RP6#Experimentierplatine, CONRAD 191537) für den RP6v2 (natürlich auch für den RP6) "gebaut" werden, mit der sich der RP6v2 besser im Raum orientieren kann.
Die Sensoren des RP6v2 (Odometrie, ACS, Helligkeitssensoren, Bumper) helfen ihm zwar schon dabei, sich im Raum zu orientieren, aber das geht noch besser:
- Wenn er einen Kompass bekommen würde, könnte er eine bestimmte Richtung einhalten oder genauere Kurven fahren. Ein einfach zu verwendendes Kompassmodul auf Basis des MMC2120MG von MEMSIC ist das HDMM01 (Pollin Best.-Nr. 810164). Es kann über den I2C-Bus ausgelesen und an 5V betrieben werden. Zudem ist es recht preisgünstig.
- Wenn er auch noch einen Beschleunigungssensor bekommen würde, könnte er Bewegungen und Beschleunigungen messen. ELV bietet ein 3-Achsen-Beschleunigungssensor-Modul (ELV Best.-Nr. 91521) auf Basis des BMA020 von Bosch Sensortec an. Auch dieses Modul kann an 5V betrieben werden und verfügt über I2C-Pegelwandler, um es an einen I2C-Bus mit 5V-Pegeln anschliessen zu können.
- Wenn er sogar noch ein GPS-Modul bekäme, könnte er seine eigene Position bestimmen. Geeignet für unsere Zwecke ist das GPS-Modul NL-552ETTL von Navilock auf Basis des u-blox5 GPS-Chipsets UBX-G5000-BT (auch z.B. bei ELV erhältlich: Artikel-Nr. 68-094241. Bitte unbedingt auch das Anschlusskabel: Artikel-Nr. 68-081846 mit bestellen!). Das Modul kann ebenfalls mit 5V betrieben werden,- leider arbeitet seine serielle Schnittstelle mit 3,3V-Pegeln. Dies ist aber kein wesentliches Problem, weil nur TX des Moduls mit einem UART-Eingangspin (RX) des Microcontrollers (µC) verbunden werden muss, und der versteht die 3,3V-TTL-Logik in der Regel ohne Probleme. Ob ein GPS-Modul für einen Roboter, der eigentlich nur in Innenräumen fahren kann, sinnvoll ist, muss jeder selbst eintscheiden. Das verwendete GPS-Modul soll allerdings mit seiner sog. SuperSense Technik auch in schwierigen Empfangssituationen noch Ergebnisse bringen.
- Da wir schon dabei sind, können wir auch noch eine 3,3V-Pegel-Anpassung des I2C-Busses des RP6v2 auf der Exp vorsehen: Man kann dann auch I2C-Slave-Bausteine, die nur an einem 3,3V-I2C-Bus arbeiten, an den RP6v2 anschließen.
Was braucht man allgemein für den Aufbau einer Schaltung auf der Exp:
- Seitenschneider, Schere, Zange
- Lötkolben 25..30 Watt, Lötzinn
- Plastik 70 Schutzlack (CONRAD 813621)
- Isolierter Schaltdraht YV 0,20 mm² (CONRAD 606065)
- Versilberter CU-Draht 0,6 mm (CONRAD 605581)
Mit dem versilberten CU-Draht stellt man auf der Unterseite (= Lötseite) der Exp Verbindungen zwischen den Bauteilen her; mit dem isolierten Schaltdraht werden Drahtbrücken auf der Oberseite (= Bestückungsseite) der Exp eingesetzt.
Aufbau
Hier der Schaltplan:
Teileliste: C1 Elko 10µF, 16V C2 Keram. Kondensator 0,1µF C3 Keram. Kondensator 0,1µF C4 Keram. Kondensator 0,1µF R1 Kohleschicht-Widerstand 4,7 kOhm, 1/4 Watt R2 Kohleschicht-Widerstand 10 kOhm, 1/4 Watt R3 Kohleschicht-Widerstand 4,7 kOhm, 1/4 Watt R4 Kohleschicht-Widerstand 10 kOhm, 1/4 Watt R5 Kohleschicht-Widerstand 4,7 kOhm, 1/4 Watt R6 Kohleschicht-Widerstand 4,7 kOhm, 1/4 Watt R7 Kohleschicht-Widerstand 2,2 kOhm, 1/4 Watt Q1 MOSFET BSN10A Q2 MOSFET BSN10A 3,3V Spannungsregler ST L78L33A
Viel Erfolg beim Aufbau!
Natürlich muss man nicht alle drei Sensoren aufbauen! Man kann einfach den/die Sensor/en weglassen, die man nicht nutzen will!
Schaltungsbeschreibung
... IN ARBEIT ...
Allgemeine Daten und Tabellen
Stecker
Stecker | Pins | Bedeutung |
ST1 | 5 | Anschluß GPS-Modul |
ST2 | 3 | µC-Anschluß für GPS-Modul |
ST3 | 7 | 3,3V-I2C-Bus Anschluß |
ST1
Pin | Funktion | E/A | Bedeutung |
1 | VCC | NL-552ETTL +5V * | |
2 | GND | NL-552ETTL GND | |
3 | Abschirmung | NL-552ETTL Abschirmung | |
4 | TX | A | NL-552ETTL TX (3,3V) |
5 | RX | E | NL-552ETTL RX (3,3V) |
Zu *) Falls JP8 = ON!
An diesen Stecker ST1 wird das GPS-Modul NL-552ETTL mit seinem 5-poligen Verbindungskabel angeschlossen. Die schwarze Ader des Kabels gehört an Pin 1 von ST1! Soll das GPS-Modul nicht benutzt werden, sollte das Modul nicht mit ST1 verbunden sein (Steckverbindung!).
ST2
Pin | Funktion | E/A | Bedeutung |
1 | GND | NL-552ETTL GND | |
2 | TX | A | NL-552ETTL TX (3,3V) |
3 | RX | E | NL-552ETTL RX (5V) |
Ein µC kann auf zwei Arten Daten vom GPS-Modul empfangen:
- 1. Über diesen Stecker ST2: In der Regel braucht man nur eine 2-adrige Verbindung von Pins 1 und 2 zum µC. Dabei wird Pin 2 mit dem UART-Eingang RX des µCs verbunden. Den 3,3V-TTL-Ausgangspegel des GPS-Moduls sollte eigentlich jeder AVR-µC verstehen, auch wenn er mit 5V betrieben wird. VORSICHT: Diesen Pin 2 nie mit einem AUSGANG eines µCs verbinden!
- 2. Über den USRBUS: Der Ausgang TX des GPS-Moduls ist mit Pin Y6 (µC RX) des USRBUS verbunden. Auf der auswertenden Platine (Base, M32, M128, M256 WiFi) muss dann Y6 des USRBUS mit UART-Eingang RX des µCs verbunden werden.
Soll ein µC auch Daten zum GPS-Modul senden (nur nötig zur Konfiguration des Moduls!), gelingt das auch auf zwei Arten:
- 1. Über diesen Stecker ST2: Der UART-Ausgang TX eines µCs wird mit Pin 3 dieses Steckers verbunden.
- 2. Über den USRBUS: Der Eingang RX des GPS-Moduls ist über einen Spannungsteiler R1/R2 mit Pin Y8 (µC TX) des USRBUS verbunden, wenn JP9 geschlossen (ON) ist. Auf der steuernden Platine (Base, M32, M128, M256 WiFi) muss dann Y8 des USRBUS mit UART-Ausgang TX des µCs verbunden werden.
ST3
Pin | Funktion | E/A | Bedeutung |
1 | VCC | A | VCC 3,3V max. 100mA * |
2 | VCC | A | VCC 3,3V max. 100mA * |
3 | GND | 3,3V-I2C-Bus GND | |
4 | INT | E | 3,3V-I2C-Bus INT Eingang |
5 | GND | 3,3V-I2C-Bus GND | |
6 | SDA | E/A | 3,3V-I2C-Bus SDA |
7 | SCL | A | 3,3V-I2C-Bus SCL Ausgang |
Zu *) Falls JP13 = ON!
An diesen Stecker ST3 können 3,3V-I2C-Slave-Devices angeschlossen werden. Wenn diese über eine eigene 3,3V-Spannungsversorgung verfügen, braucht man zum Anschluß nur die Pins 5..7 von ST3 (GND, SDA, SCL). ST3 kann aber auch externe I2C-Slaves über Pins 1 und 2 mit 3,3V versorgen (JP13 geschlossen!). Bitte beide Pins zusammen mit nicht mehr als 100mA belasten!
An Pin 4 von ST3 befindet sich noch der Eingang INT. Über ihn kann ein Slave mitteilen, dass z.B. Daten bereit liegen.
Jumper
Zeichenerklärung:
- Zweipolige Jumper:
- Stellung ON = Jumper aufgesteckt (Kontakt geschlossen)
- Stellung OFF = Jumper abgezogen (Kontakt offen)
Jumper | Stellung | Bedeutung |
JP1 | OFF | HDMM01 SDA getrennt |
JP1 | ON (S) | HDMM01 SDA verbunden |
JP2 | OFF | HDMM01 SCL getrennt |
JP2 | ON (S) | HDMM01 SCL verbunden |
JP3 | OFF | HDMM01 Power AUS |
JP3 | ON (S) | HDMM01 Power AN |
JP4 | OFF | 3D-BS SDA getrennt |
JP4 | ON (S) | 3D-BS SDA verbunden |
JP5 | OFF | 3D-BS SCL getrennt |
JP5 | ON (S) | 3D-BS SCL verbunden |
JP6 | OFF (S) | 3D-BS INT getrennt |
JP6 | ON | 3D-BS INT verbunden * |
JP7 | OFF | 3D-BS Power AUS |
JP7 | ON (S) | 3D-BS Power AN |
JP8 | OFF | NL-552ETTL Power AUS |
JP8 | ON (S) | NL-552ETTL Power AN |
JP9 | OFF (S) | NL-552ETTL RX getrennt von USRBUS |
JP9 | ON | NL-552ETTL RX verbunden mit USRBUS |
JP10 | OFF | 3,3V-I2C-Bus SDA getrennt |
JP10 | ON (S) | 3,3V-I2C-Bus SDA verbunden |
JP11 | OFF | 3,3V-I2C-Bus SCL getrennt |
JP11 | ON (S) | 3,3V-I2C-Bus SCL verbunden |
JP12 | OFF (S) | 3,3V-I2C-Bus INT getrennt |
JP12 | ON | 3,3V-I2C-Bus INT verbunden * |
JP13 | OFF | 3,3V-I2C-Bus Power AUS |
JP13 | ON (S) | 3,3V-I2C-Bus Power AN |
JP14 | OFF (S) | INT 5V Pullup AUS |
JP14 | ON | INT 5V Pullup AN ** |
JP15 | OFF | SDA 3,3V Pullup AUS |
JP15 | ON (S) | SDA 3,3V Pullup AN *** |
JP16 | OFF | INT 3,3V Pullup AUS |
JP16 | ON (S) | INT 3,3V Pullup AN |
Zu (S) Standard-Stellung der Jumper!
Zu *) Am XBUS steht in dieser Schaltung nur EINE Interrupt-Leitung (INT1) zur Verfügung. Es kann also nur die Interrupt-Auswertung von EINEM Sensor auf dieser Platine erfolgen. JP6 und JP12 sollten also nicht gleichzeitig ON sein!
Zu **) Da INT1 auf der RP6v2 Base mit einem 10kOhm Pulldown-Widerstand (R34) verbunden ist, muss man auf dieser Platine ggf. den Pullup-Widerstand 2,2kOhm (R7) einschalten (JP14 = ON!).
Zu ***) Wenn der an ST3 angeschlossene I2C-Slave keinen Pullup-Widerstand an SDA hat, muss R5 eingeschaltet werden (JP15 = ON!).
RP6v2 Orientierung: Software
... KANN DAUERN ...
Siehe auch
- RP6
- RP6 - Programmierung
- RP6v2
- RP6 Kamera - Mitmach-Projekt
- RP6v2 I2C-Portexpander
- RP6v2 USB-RS232-Adapter
- CCRP5
- Yeti
- Asuro
Quellen
- Kompassmodul HDMM01
- 3-Achsen-Beschleunigungssensor-Modul
- Navilock NL-552ETTL GPS-Modul
- ST L78L33A Datasheet
- BSN10A Datasheet
Autoren
--Dirk 14:39, 1. Okt 2012 (CET)