Aus RN-Wissen.de
Wechseln zu: Navigation, Suche
LiFePO4 Speicher Test

Der RP6v2

Was bisher geschah:

Mon, 27. Feb 2012 - Ankündigung des RP6v2
Don, 08. Mär 2012 - Auslieferungsbeginn des RP6v2
Sam, 17. Mär 2012 - Ankündigung der RP6v2 M256 WiFi
Mon, 11. Jun 2012 - Beginn der "Testaktion: Kostenlose RP6v2-M256-WIFI Module!"
Die, 10. Jul 2012 - Ende der "Testaktion: Kostenlose RP6v2-M256-WIFI Module!" nach Abstimmung
Mit, 11. Jul 2012 - Veröffentlichung der RP6v2 M256 WiFi Bedienungsanleitung
Die, 17. Jul 2012 - Eintreffen der kostenlosen RP6v2 M256 WiFi bei den Testern
Don, 13. Sep 2012 - Auslieferungsbeginn der RP6v2 M256 WiFi


Allgemein

Der RP6v2 (191584) wurde am 27.02.2012 von SlyD angekündigt (siehe Weblinks!). Er ist eine leicht verbesserte Version des RP6. Der RP6v2 ist softwarekompatibel zum RP6. Alle Erweiterungs-Module können auch mit dem RP6v2 eingesetzt werden.

Dieser Artikel beschreibt die Grundlagen zum RP6v2, sofern sie vom RP6 abweichen, und die Grundlagen und Programmierung seiner zukünftigen Erweiterungs-Module.


Eigenschaften

Laut Ankündigung haben sich beim RP6v2 folgende Details gegenüber dem RP6 geändert:

  • Neue Drehgeber
    • Justierung dank neuer Sensortechnik üblicherweise nicht mehr erforderlich
    • leicht zugängliches und deutlich größeres Potentiometer
    • Potis nur noch zur Feinjustierung erforderlich
  • Zusätzliche Steckverbinder (im RP6 schon seit 2010 verbaut)
    • vom Mainboard zu den Drehgebern
    • vom Mainboard zu den Motoren
  • Neue Anschlüsse (Steckverbinder / Stiftleisten)
    • 2 3-polige ADC Anschlüsse mit VDD/GND inkl. zusätzlichem Stützkondensator
    • 2 4-polige VDD Anschlüsse (je 2x +5V und 2x GND)
    • 1 3-poliger +UB Anschluß (1x +UB, 2x GND)
    • 1 5-polige Stiftleiste für den I2C Bus und VDD/GND
    • 1 8-poliger EXT Steckverbinder (JST-Wannenstecker)
    • 2 4-polige Steckverbinder (LIO1/LIO2) für die I/O-Pins von 4 LEDs und VDD/GND
  • Hauptsicherung
    • von 2,5A auf 3,15A erhöht
  • Motortreiber
    • leistungsfähigere und robustere MOSFETs
  • Experimentierplatine
    • gehört nicht mehr zum Lieferumfang


Technische Änderungen

Der RP6v2 weist einige Detail-Änderungen gegenüber der Vorversion auf. Diese Änderungen sind für die Nutzung und Programmierung des RP6v2 weitgehend irrelevant.

Fast alle passiven SMD-Bauteile sind jetzt in Bauform 0603 bestückt (Ausnahmen: R6 (SP2 C2: R6), Induktivitäten und größere Kondensatoren). Im Text gibt es Verweise auf den Schaltplan des RP6v2 (RP6v2_MAINBOARD.pdf) in der Form: (SP2 B1: Bauteil). Dies bedeutet, dass man das Bauteil auf Blatt 2 des RP6v2-Schaltplans im Feld B1 finden kann.

Mainboard

  • C14 (SP2 A3: C14) -> Liegt jetzt an VDD (parallel u.a. zu C6..C10)
  • C26 (SP2 A1: C26) -> Jetzt bestückt mit Elko 220uF/16V (laut SP: 470uF/16V!)
  • C29 (SP2 E1: C29) -> Jetzt bestückt mit SMD Kondensator 10uF
  • IO3/IO4 Bestückungsaufdruck geändert in IO4/IO5 (Stecker LIO2)
  • UBAT Bestückungsaufdruck geändert in UBAT_SENSE
  • F2.5A Bestückungsaufdruck geändert in F3.0A (Feinsicherung flink 3,0A)
  • Trennstelle +UB Sensor (siehe Abschnitt 6.4.6 RP6#.2BUB_Sensor des RP6-Artikels!) existiert beim RP6v2 nicht mehr
  • Als Motortreiber (SP3 BCD23: Q1..Q4) werden anstelle von IRF7309 (ID 3,0A; PD 1,4W) die leistungsfähigeren und ESD-geschützten Typen SP8M3 (ID 4,5A; PD 2W; Schutzdiode) verwendet

Encoderplatine

Schaltung siehe Datei RP6v2_ENCODERS.pdf!

  • Jetzt mit Operationsverstärker IC2 (MCP6001U) anstelle eines Transistors
  • Größeres Potentiometer R2 (200kOhm)

Die Encoder sind mittlerweile auch einzeln unter der Conrad-Bestellnummer 191625-62 verfügbar.

USB-Interface

Schaltung siehe Datei RP6v2_USB_INTERFACE.pdf!

  • C2 -> Jetzt bestückt mit SMD Kondensator 10uF
  • C5 -> Neuer Blockkondensator 100nF an VCCIO von IC1

Steckverbindungen und Stiftleisten

Motoren

RP6v2 Motorstecker.JPG

Beim RP6v2 sind die beiden Motorkabel mit 2-poligen Winkelsteckern RM 7,5mm an das Mainboard angeschlossen.











Encoder

RP6v2 Encoderstecker.JPG

Beim RP6v2 sind die Encoder mit einem 6-poligen Winkelstecker RM 2,54mm an das Mainboard angeschlossen.

Auch die 3-polige Verbindung zu den beiden Encoder-Platinen ist steckbar.
















LIO1/LIO2

RP6v2 LIO12.JPG

Beim RP6 waren die Anschlüsse der Status-LEDs SL1,2 und SL4,5 (RP6#IO1..IO4) einzeln auf dem Mainboard zu kontaktieren.

Beim RP6v2 gibt es zwei 4-polige Stiftleisten (LIO1, LIO2). Sie führen an den Pins 1 und 2 +5V und GND.

An den Pins 3 und 4 finden sich die Anschlüsse von IO2, IO1 (LIO1) bzw. IO4, IO5 (LIO2).

Bitte beachten: Der Bestückungsaufdruck IO4, IO5 des RP6v2 bezeichnet die selben Anschlüsse, wie beim RP6 IO3, IO4!

Es handelt sich in beiden Fällen um die Anschlüsse der Status-LEDs SL4 (PB7) und SL5 (PB1).


ADC0/ADC1

RP6v2 ADC01.JPG

Beim RP6 waren die 3-poligen Anschlüsse von ADC0 und ADC1 (RP6#Analoge_Sensoren_an_ADC0.2F1) nicht mit Stiftleisten bestückt.

Dies ist jetzt beim RP6v2 der Fall,- zusätzlich ist auch C26 (SP2 A1: C26) bestückt.

Damit können analoge Sensoren direkt angeschlossen werden.










I2C/+UB/+5V

RP6v2 I2CUB5V.JPG

Die beim RP6 vorhandene 5-polige I2C-Schnittstelle (RP6#I2C-Schnittstelle) findet sich (jetzt mit Stiftleiste bestückt) genau so auch beim RP6v2.

Bitte beachten: Die Anordnung der Pins auf dem Mainboard ist beim RP6v2 umgekehrt wie beim RP6!


Beim RP6 gab es (nicht mit Stiftleisten bestückte) Anschlüsse für VDD und +UB (RP6#VDD.2FGND.2F.2BUB_Anschlu.C3.9F).

Beim RP6v2 gibt es jetzt drei Stiftleisten für +UB, +5V (VDD) und GND:

  • Eine 3-polige Stiftleiste mit GND, +UB, GND
  • Zwei 4-polige Stiftleisten jeweils mit GND, +5V, +5V, GND






EXT

RP6v2 EXT.JPG

Beim RP6 war keine Stiftleiste für den 8-poligen EXT Anschluß bestückt.

Beim RP6v2 ist jetzt an dieser Stelle ein Wannenstecker vorhanden, in den auch Steckbuchsen (RM 2,54) gesteckt werden können.



Beschreibung des EXT Anschlusses: RP6#EXT_Anschlu.C3.9F


Erweiterungs-Module

RP6v2 M256 WiFi Platine

Die RP6v2 M256 WiFi

Die RP6v2 M256 WiFi Zusatzplatine wurde am 17.03.2012 von SlyD angekündigt (siehe Weblink!).

Beschreibung

Laut Ankündigung bietet die RP6v2 M256 WiFi:

  • Atmel ATmega2560 Mikrocontroller
    • 256kB Flash ROM
    • 8kB SRAM
    • 4kB EEPROM
    • 16MHz Taktfrequenz
    • 6 Hardware Timer und 86 I/O Ports
    • Bis zu 16 A/D Wandler Kanäle (10 Bit Auflösung)
    • 12 16 Bit Hardware PWMs
    • 2 USART/SPI Ports
  • Energieeffizientes 802.11g WLAN Modul
    • Typ: Roving Networks RN-171
    • Telemetriedaten übertragen
    • Roboter vom PC aus fernsteuern
    • Neue Programme drahtlos per WLAN in den Mikrocontroller laden
    • Bootloader nachträglich erweitern
    • Einstellung des WLAN Moduls über das RP6 USB Interface mit dem RobotLoader 2.x
    • Änderung der Einstellungen über eine Netzwerkverbindung oder mit dem eigenen Mikrocontrollerprogramm
    • Eigener Prozessor (entlastet den ATmega)
    • Funktioniert mit jedem Standard WLAN Accesspoint/Router
    • Kann als transparente serielle Schnittstelle arbeiten
    • Kann vom PC aus per TCP/IP angesprochen werden
    • 10cm 2.4GHz Antenne mit RP-SMA Anschluß
  • Sonstige Ausstattung
    • 8 Bit Display Port
    • I2C Bus
    • microSD Kartenslot
    • 7 Status LEDs
    • 2 Eingabetaster
    • ISP Anschluß
    • 4 WLAN ADC Kanäle
    • AREF 3,3 und 5V

Technische Daten

Mikrocontroller: AVR ATmega2560
Speicher: 256 kB Flash-Speicher

8 kB SRAM
4 kB EEPROM
? GB microSD Speicherkarte

Programmierung: Über Bootloader, belegt ca. 8 kB des Flash-Speichers

Drahtlos über WLAN

Vorhandene Sensoren: 2 Eingabetaster

4 WLAN ADC Kanäle
60 GP I/O Ports, davon bis 16 AD-Wandler (10-bit)

Vorhandene Aktoren: 7 Status LEDs

1 LC-Display-Port
802.11g WLAN Modul

Abmessungen: (L × B × H) 112 × 90 × 42 mm (ohne Antenne)
Ausführung: Fertig aufgebautes Erweiterungsmodul
Stromversorgung: 6 AA NiMH Akkus (über die RP6v2 Base)
Hersteller: Arexx Niederlande

Umbau-Optionen

Zubehör und Ersatzteile

Über die Zubehör- und Ersatzteile informiert der Artikel RP6#Zubehör und Ersatzteile.

Darüber hinaus sind bei CONRAD für den RP6v2 erhältlich:

  • Arexx RP6v2 Drehgeber-Satz RP6-ENCv2 191625
  • Arexx RP6 USB-Interface RP6V2-TRANS 191638

RP6v2 Drehgeber-Satz RP6-ENCv2

RP6 USB-Interface RP6V2-TRANS

Programmierung

RobotLoader

Loader Versionen

Hier eine Tabelle der (mir) bekannten RobotLoader Versionen für die RP6v2 Base, CONTROL M32 und ab Version 2.0 auch für die M256 WiFi:

ZIP-Datum Version Bemerkungen Examples
12.07.2010 1.5h Auch für die RP6 Base, für Roboterarme und Caterpillar ab 16.10.2007
23.02.2012 2.0 BETA Testversion! Ab v2.0 auch für die RP6v2 M256 WiFi Platine
05.06.2012 2.3a Testversion! Siehe auch hier!
18.06.2012 2.3b Testversion! Siehe auch hier!
17.07.2012 2.3c Über Kommandozeile nutzbar, siehe auch hier! ab 16.07.2012

Projekte

RP6v2

Der RP6v2 (191584) ist softwarekompatibel zum RP6.

Zur Programmierung des RP6 und des RP6v2 gibt es einen eigenen Artikel: RP6 - Programmierung

RP6v2 M256 WiFi Platine

Demo-Programmme

Die aktuellen RP6v2 M256 WiFi Demo Programme vom 16.07.2012 sind hier zu finden.

Library

Die Library für die RP6v2 M256 WiFi besteht aus folgenden Dateien:

Library Datei Funktion
RP6M256 RP6M256.h RP6M256 Hardware-Konfiguration
RP6M256 RP6M256Lib.h RP6M256 Library Header
RP6M256 RP6M256Lib.c RP6M256 Library
RP6M256uart RP6M256uart.h RS232 Funktionen Header
RP6M256uart RP6M256uart.c RS232 Funktionen
RP6M256_I2CMaster RP6M256_I2CMasterLib.h I2C Master Library Header
RP6M256_I2CMaster RP6M256_I2CMasterLib.c I2C Master Library
RP6M256_WIFI RP6M256_WIFIlib.h WIFI Library Header
RP6M256_WIFI RP6M256_WIFIlib.c WIFI Library
SDC mehrere SD-Karten Zugriff
Versionen

Hier eine Tabelle der (mir) bekannten Library Versionen der RP6v2 M256 WiFi:

ZIP-Datum VERSION_ RP6M256Library RP6LIB_VERSION RP6M256.h RP6M256Lib WifiLib UartLib I2CMasterLib SDCLib
24.02.2012 1.7 1.0_24.02.12 16 1.0_24.02.12 1.0_24.02.12 1.0_24.02.12 1.0_24.02.12 (1.0_24.02.12) ?
16.07.2012 1.7 * 1.1_16.07.12 16 1.1_16.07.12 1.1_16.07.12 1.1_16.07.12 1.1_16.07.12 (1.0_24.02.12) (2006-2011)

Zu *: Ab der Version 1.7 sind auch die Libraries und Examples der RP6v2 Base und CONTROL M32 enthalten!

In der 1. Spalte findet ihr das Datum der RP6Examples.zip Datei, in der die Library enthalten ist. Die 2. Spalte nennt die Version, die im Dateinamen der VERSION_x.x.txt Datei als x.x vorkommt. In der 3. Spalte steht die Versionsangabe der RP6M256Library laut Angabe in der VERSION_x.x.txt Datei.

In der 4. Spalte gebe ich den Wert der Konstante RP6LIB_VERSION an. Es gibt sie ab den Examples vom 16.10.2007. In den Spalten 5 bis 10 führe ich nacheinander die Versionsnummern und ggf. das in der Datei genannte Datum der Header-Datei/Library an: RP6M256.h, RP6M256Lib, WifiLib, UartLib, I2CMasterLib, SDCLib.

Bug-Report
Konfiguration
Port-Verwendung

Die Verwendung der Ports des RP6v2 M256 WiFi Microcontrollers wird festgelegt in der Header-Datei "RP6M256.h". In dieser Datei wird auch noch Folgendes aufgeführt:

  • Quarzfrequenz (F_CPU)
  • True/false Definition
  • Verschiedene Macros
  • Baudrate der seriellen Schnittstelle

Hier eine Tabelle mit den Port-Definitionen für die RP6v2 M256 WiFi:

Erklärung der Spalten:
Port        -> Atmel Portpin Bezeichnung
Name        -> Atmel Funktionsbezeichnung
In/Out      -> Eingang (In) oder Ausgang (Out)
Pullup      -> Falls Eingang: Pullup ein- (1) oder ausgeschaltet (0)
Wert        -> Falls Ausgang: Logikpegel high (1) oder low (0)
Funktion    -> Schnittstellenfunktion
Bezeichnung -> Portpin Bezeichnung der Library
Stecker     -> Portpin verfügbar an STECKER: Pin
Anmerkungen -> Kommentare (ADC_xxxxx: ADC-Kanal Bezeichnung)
Port Name In/Out Pullup Wert Funktion Bezeichnung Stecker Anmerkungen
PA0 AD0 Out 0 DISP_D0 DISPIO: 7
PA1 AD1 Out 0 DISP_D1 DISPIO: 8
PA2 AD2 Out 0 DISP_D2 DISPIO: 9
PA3 AD3 Out 0 DISP_D3 DISPIO: 10
PA4 AD4 Out 0 DISP_D4 DISPIO: 11
PA5 AD5 Out 0 DISP_D5 DISPIO: 12
PA6 AD6 Out 0 DISP_D6 DISPIO: 13
PA7 AD7 Out 0 DISP_D7 DISPIO: 14
PB0 SS/PCI0 In 1 SPI_SS OUT SDCARD / ISP
PB1 SCK/PCI1 In 1 ISP SPI_SCK OUT SDCARD / ISP
PB2 MOSI/PCI2 In 1 ISP SPI_MOSI OUT SDCARD / ISP
PB3 MISO/PCI3 In 0 ISP SPI_MISO IN SDCARD / ISP
OC2A/PCI4 |In |1 | | |OC2A_P14 |PWM23: 5 | |- OC1A/PCI5 |In |1 | | |OC1A_P15 |PWM01: 7 | |- OC1B/PCI6 |In |1 | | |OC1B_P16 |PWM01: 9 | |- OC0A/OC1C/PCI7 |In |1 | | |OC0A_OCM_P17 |PWM01: 4 | |- A8 |In |1 | | |IO_PC0 |PC01: 2 |I2C |- A9 |In |1 | | |IO_PC1 |PC01: 1 |I2C |- A10 |Out | |0 | |SLED1 | | |- A11 |Out | |0 | |SLED2 | | |- A12 |Out | |0 | |SLED3 | | |- A13 |Out | |0 | |SLED4 | | |- A14 |Out | |0 | |WLAN_GPIO14_OUT | | |- A15 |In |1 | | |WLAN_GPIO8_IN | | |- SCL/INT0 |In |1 | |I2C-Bus |SCL | | |- SDA/INT1 |In |1 | |I2C-Bus |SDA | | |- RXD1/INT2 |In |1 | |RS232 |RXD1 |USPI15: 8 | |- TXD1/INT3 |In |1 | |RS232 |TXD1 |USPI15: 6 | |- ICP1 |In |1 | | |IO_PD4_ICP1 |PWM01: 1 | |- XCK1 |In |1 | | |IO_PD5_XCK1 |USPI15: 4 | |- T1 |In |1 | | |IO_PD6_T1 |PWM01: 3 | |- T0 |In |1 | | |IO_PD7_T2 |PWM01: 6 | |- RXD0/PCI8 |In |1 | |RS232 |RXD0 | |USART RX |- TXD0 |Out | |0 |RS232 |TXD0 | |USART TX |- XCK0/AIN0 |In |1 | | |IO_PE2_XCK0_AIN0 |ADCIO2: 8 | |- OC3A/AIN1 |In |1 | | |IO_PE3_OC3A_AIN1 |ADCIO2: 4 | |- OC3B/INT4 |In |1 | | |IO_PE4_OC3B_I4 |PWM23: 9 | |- OC3C/INT5 |In |1 | | |IO_PE5_OC3C_I5 |PWM23: 4 | |- T3/INT6 |In |1 | | |IO_PE6_T3_I6 |PWM23: 3 | |- CLKO/ICP3/INT7 |In |1 | | |IO_PE7_ICP3_I7 |PWM23: 1 | |- ADC0 |In |1 | | |IO_ADC0 |ADCIO1: 3 |ADC_0 |- ADC1 |In |1 | | |IO_ADC1 |ADCIO1: 1 |ADC_1 |- ADC2 |In |1 | | |IO_ADC2 |ADCIO1: 5 |ADC_2 |- ADC3 |In |1 | | |IO_ADC3 |ADCIO1: 7 |ADC_3 |- ADC4/TCK |In |1 | |JTAG |IO_ADC4 |ADCIO1: 9 |ADC_4 |- ADC5/TMS |In |1 | |JTAG |IO_ADC5 |ADCIO1: 11 |ADC_5 |- ADC6/TDO |In |1 | |JTAG |IO_ADC6 |ADCIO1: 12 |ADC_6 |- PF7 In |1 | |JTAG |IO_ADC7 |ADCIO1: 13 |ADC_7 |-


PG0 Out | |0 | |DISP_WR |DISPIO: 5 | |- PG1 Out | |0 | |DISP_EN_RD |DISPIO: 6 | |- PG2 Out | |0 | |DISP_RS_ALE |DISPIO: 4 | |- PG3 In |1 | | |BUTTON_SW2 | | |- PG4 In |1 | | |BUTTON_SW1 | | |- PG5 In |1 | | |IO_OC0B |PWM01: 5 | |-


PH0 In |1 | |RS232 |RXD2 |USPI24: 8 | |- PH1 In |1 | |RS232 |TXD2 |USPI24: 6 | |- PH2 In |1 | | |IO_PH2_XCK2 |USPI24: 4 | |- PH3 In |1 | | |IO_PH3_OC4A |USPI24: 9 | |- PH4 In |1 | | |IO_PH4_OC4B |USPI24: 7 | |- PH5 In |1 | | |IO_PH5_OC4C |USPI24: 5 | |- PH6 In |1 | | |IO_PH6_OC2B |PWM23: 7 | |- PH7 In |1 | | |IO_PH7_T4 |USPI24: 3 | |-


PJ0 In |1 | |RS232 |WLAN_RXD3 | |WLAN USART RX |- PJ1 Out | |0 |RS232 |WLAN_TXD3 | |WLAN USART TX |- PJ2 Out | |1 | |WLAN_RTS | |Output RTS |- PJ3 In |1 | | |INT1_PI12 | | |- PJ4 In |1 | | |INTU_PI13 | | |- PJ5 In |1 | | |INT3_PI14 | | |- PJ6 In |1 | | |INT2_PI15 | | |- PJ7 In |1 | | |WLAN_CTS | |INPUT CTS |-


PK0 In |1 | | |IO_ADC8_PI16 |ADCIO2: 1 |ADC_8 |- PK1 In |1 | | |IO_ADC9_PI17 |ADCIO2: 3 |ADC_9 |- PK2 In |1 | | |IO_ADC10_PI18 |ADCIO2: 5 |ADC_10 |- PK3 In |1 | | |IO_ADC11_PI19 |ADCIO2: 7 |ADC_11 |- PK4 In |1 | | |IO_ADC12_PI20 |ADCIO2: 9 |ADC_12 |- PK5 In |1 | | |IO_ADC13_PI21 |PWM01: 8 |ADC_13 |- PK6 In |1 | | |IO_ADC14_PI22 |PWM23: 8 |ADC_14 |- PK7 In |1 | | |IO_ADC15_PI23 |PWM23: 6 |ADC_15 |-


PL0 In |1 | | |IO_PL0_ICP4 |USPI24: 1 | |- PL1 In |1 | | |IO_PL1_ICP5 |USPI15: 1 | |- PL2 In |1 | | |IO_PL2_T5 |USPI15: 3 | |- PL3 In |1 | | |IO_PL3_OC5A |USPI15: 5 | |- PL4 In |1 | | |IO_PL4_OC5B |USPI15: 9 | |- PL5 In |1 | | |IO_PL5_OC5C |USPI15: 7 | |- PL6 Out | |0 | |WLAN_WAKE | |Output |- PL7 Out | |0 | |WLAN_RESET | |Output |-
Zeichen:
*   Standard-Belegung! Über Jumper/Lötbrücke änderbar.
**  Power On für Radencoder, IR-Empfänger *, Stromsensoren *, PWRON-LED *
*** Zusätzlicher Anschluß von Bumpern oder Tastern möglich!
²   I2C-Master: Out, Slave: In
Timer-Nutzung

Projekte

Erfahrungsberichte

...in Arbeit...(kann aber gerne ergänzt werden)


Siehe auch


Weblinks


Autoren

--Dirk 20:20, 17. Jul 2012 (CET)


LiFePO4 Speicher Test