Arexx RP6 V2 Build your own robot kit RP6 V2 Manual Do Utilizador

Códigos do produto
RP6 V2
Página de 141
RP6 ROBOT SYSTEM -  2. Der RP6 im Detail
Man kann den RP6 grob in 5 Funktionsgruppen unterteilen: 
Steuerungssystem (Control System)
Stromversorgung (Power Supply)
Sensorik, IR Kommunikation und Anzeigen (Sensors) – alles was mit der Aussenwelt 
kommunizieren kann bzw. bestimmte Werte misst.
Antriebssystem (Drive System)
Erweiterungssystem (Expansion System) 
2.1. Steuerungssystem
Wie man auf dem Blockdiagramm leicht erkennen kann, ist das 
zentrale Element des Roboters der ATMEGA32 8-Bit Mikrocon-
troller von ATMEL (s. Abb.). 
Ein   Mikrocontroller   ist   ein   vollständiger   kleiner   Computer,   der 
auf einem einzigen Chip integriert ist. Der Unterschied zu dem 
großen Computer vor dem Sie vermutlich gerade sitzen ist, dass 
er von allem sehr viel weniger hat bzw. einige Dinge gleich weg-
gelassen wurden. Er verfügt natürlich über  keine  riesige Fest-
platte, oder mehrere Gigabyte RAM! Ein Mikrocontroller kommt auch mit weit weit we-
niger aus. Der MEGA32 hat z.B. "nur" 32KB (32768 Bytes) Flash ROM - das ist quasi 
seine "Festplatte". Darin werden alle Programmdaten gespeichert. Sein Arbeitsspei-
cher ist 2KB (2048 Bytes) groß und damit für unsere Zwecke mehr als ausreichend. 
(Zum Vergleich: Der Controller auf dem alten RP5 hatte gerade mal 240 Bytes RAM 
wovon fast alles vom Basic Interpreter verwendet wurde) 
Und wie kann der Mikrocontroller mit so wenig Speicher auskommen? Ganz einfach: 
Er verarbeitet keine großen Datenmengen und braucht weder ein Betriebssystem wie 
Linux oder gar Windows, noch eine graphische Oberfläche oder sonstiges in der Art. 
Es läuft nur ein einziges Programm auf dem Controller, nämlich unser eigenes!
Das ist keineswegs ein Nachteil, sondern einer der größten Vorteile eines Mikrocon-
trollers gegenüber einem großen Computer (neben Energieverbrauch, Platzbedarf und 
Kosten)! Er kann sehr zeitkritische Dinge erledigen, die auf die Mikrosekunde genau 
ausgeführt werden müssen. Man kann meist genau ermitteln, wie lange er zur Ausfüh-
rung eines bestimmten Programmteils braucht, denn man teilt sich die verfügbare Re-
chenleistung nicht mit vielen anderen Programmen wie auf einem normalen PC.
Der Controller auf dem RP6 wird mit 8MHz getaktet und führt so 8 Millionen Instruk-
tionen pro Sekunde aus. Es wären zwar bis zu 16MHz möglich, darauf wird jedoch aus 
Stromspargründen verzichtet - er ist auch so schnell genug für die Aufgaben die er für 
gewöhnlich übernimmt! (Wieder der Vergleich mit dem alten RP5: Dieser hat bei 4MHz 
Takt nur ca. 1000 Basic Befehle pro Sekunde ausgeführt. Daher musste u.a. die ACS 
Steuerung   von   einem  weiteren   kleinen   Controller  übernommen   werden   –  was   nun 
nicht mehr notwendig ist!) Wer noch mehr Rechenleistung benötigt, kann einen oder 
mehrere zusätzliche Controller auf Erweiterungsmodulen anschließen. Das separat er-
hältliche RP6Control bietet u.a. einen zweiten MEGA32 der mit den maximal möglichen 
16MHz getaktet wird. 
Mit der Aussenwelt kommuniziert der Controller über seine 32  I/O Pins ("Input/Out-
put Pins" also Ein- und Ausgangs Pins). Die I/O Pins sind in sog. "Ports" zu jeweils 8 
I/O Pins organisiert. Davon hat der MEGA32 also 4 Stück: PORTA bis PORTD. 
- 17 -