Der FKG-Roboter

FORPHYS-Mess-Interfaces

Forschendes Lernen im Physik-UR

Quantenphysik für die Schule

Grundfakten der Quantenphysik

Materialien Physik-UR

Impressum

Kommentare und Wünsche

© H. Hübel Würzburg 2005

Beschreibung der Prozessor-Platine

1. Das Netzteil

Links sieht man die Anschlusspads für die Printbuchse . Vom (normalerweise) positiven Pol über eine Diode 1N4006 (oder ähnliche) führt die rot gezeichnete Leiterbahn zum Spannungsregler (...7805), aber auch zu zwei Lötstiften, von denen man die Eingangsspannung (als 9V gekennzeichnet) abnehmen kann. Dieser Anschluss ist gedacht für Motoren, die mit höherer Spannung betrieben werden können. In einem solchen Fall wird man die Logik des Treiberbausteins (z.B. ULN2803 bei einem Schrittmotor) mit den 5V-Signalen des Prozessors steuern, damit aber von 9V abgeleitete Ströme schalten. Entsprechendes gilt für Getriebemotoren, die mit dem Treiberbaustein L293D betrieben werden. Auf der Leiterbahn 3, später 2, liegt Masse-Potenzial (blau), auf Leiterbahn 3 (rot) liegt die Ausgangsspannung des Spannungsreglers ..7805, die die Betriebsspannung für die Prozessor-Platine ist. Die Eingangsspannung und die Ausgangsspannung werden durch Kondensatoren ( 47µF und 100 nF bzw. 47 µF) geglättet. Unter der Diode sieht man einen Block von 10 Steckern, von denen die Spannung für Sensoren und Servomotoren, aber auch das pulsweitenmodulierte Signal (gelb) für Servomotoren abgegriffen werden kann. Die Steckeranordnung der Dreierkombination (blau-rot-gelb) passt zu der PIN-Folge üblicher Servomotoren.

Ein Spannungsregler, wie unser ...7805, hat die Aufgabe, aus einer evtl. schwankenden oder pulsierenden Gleichspannung eine exakt konstante Gleichspannung  mit einem bestimmten Spannungswert (hier 5 V) zu machen, auch unabhängig davon, wieviel "Strom gezogen wird" . Seine Eingangsspannung muss dann ca. 1,2 V größer sein als die gewünschte Ausgangsspannung des speziellen Typs (7805: 05 V Wert der geregelten Spannung).

Steckernetzteile erzeugen meistens eine pulsierende Gleichspannung, die für elektronische Schaltungen ungeeignet ist. Erst der Spannungsregler macht eine  echt konstante Gleichspannung daraus.

Weil unser Netzteil eine Diode enthält, könnte auch ein Netzteil verwendet werden, das Wechselspannung liefert.

Für den fahrenden Roboter verwenden wir einen Batteriesatz von 6 x 1,5 V ( = 9V) Monozellen. Hier liegt schon perfekte Gleichspannung vor, aber vom falschen Spannungswert für den Prozessor. Auch in diesem Fall benötigen wir den Spannungsregler, der die Betriebsspannung von 9V auf 5V herabsetzt.

2. Das serielle Interface

                            . Hier handelt es sich um eine Luxus-Ausführung. Herr Schemmert schlägt für sein AVISE-Projekt eine einfachere Variante vor. Bei unserer Schaltung erkennt man den Baustein MAX232. Dieser dient als Pegelumsetzer, d.h. aus den Signalen + 5V bzw. 0V vom seriellen Ausgang des Prozessors macht er +12 V bzw. - 12V-Signale (meist jeweils nur ca. 9V), die von der seriellen Schnittstelle des PC gelesen werden können. Dazu haben die 4 Stück 1µF-Kondensatoren eine wesentliche Rolle. Sie sind Teil von Ladungspumpen, mit deren Hilfe der Baustein die +/- 12V-Spannungen macht, die dann durch eine Logik je nach Eingangspegel (an den PINS 11 und 12) an die Ausgangspins 13,14 gelegt werden. 13 und 14 werden mit den Pins 2 und 3 der SUB D 9 -Buchse verbunden, an denen ein 1:1-Kabel oder aber, bei vertauschten Pins, ein Nullmodem-Kabel angeschlossen wird. Man achte auf die richtige Polung der 1µF-Elektrolyt-Kondensatoren, die bei verkehrter Polung beschädigt werden.

Zuordnung Max232 -> SUB-D-9:

1:1-Kabel:  13 -> 2  /    14 -> 3   / Masse -> 5

( Nullmodem-Kabel:     13 -> 3  /  14 -> 2  / Masse -> 5 )

Das serielle Interface ist fest auf folgende Daten einzustellen:

COM1/2     19.2 kBaud      8bit        keine Parität   1 Stoppbit  

Unterhalb des ..MAX232 erkennt man den Reset-Taster, mit dem der Prozessor nach einer Störung neu gestartet werden kann.

3. Die Programmiersschnittstelle

         . Man erkennt den 10-poligen Stecker mit den Spannungszuführungen an den PINS 1 ( 0V) und 5 (+5V). Hier wird das Programmiergerät angeschlossen (mit dessen Steckernase nach rechts), wenn FORTH geladen wird. Die wichtigen PINs haben die Bedeutung:

6 MOSI, 10 MISO, 8 Reset, 9 SCK

4. Der externe Speicher

                               . Beide Typen (Conrad: 24C65 / Reichelt: ST25C64 - mit Avise 2.48 und 25C256 - mit Avise 2.4f) sind verwendbar. Die links auf null gelegten Anschlüsse dienen der Adressierung. Außer der Betriebsspannung sind nur noch zwei Anschlüsse zum Senden  und Empfangen von Daten des Prozessors (5 = SDA -> PB1) bzw. für das Taktsignal (6 = SCL -> PB0) vorgesehen. Es handelt sich um einen seriellen Speicherbaustein, der mittels eines I2C-Busses angesteuert wird. Der 4,7 kOhm-Widerstand dient als Pullup-Widerstand und zieht PIN 5 (SDA) normalerweise auf H-Potenzial, wenn SDA nicht vom Prozessor gesteuert wird.

Der neuere Prozessor ATMEGA32 mit AVISE4.3 hat genügend Programmspeicherplatz im Flash-Speicher. Ein externes serielles EEPROM wie hier beschrieben könnte lediglich einen Nutzen als Datenspeicher für einen Datenlogger haben.

5. Der Prozessor

                               . Zwischen den PINs 13, 12, 11 (Masse) ist ein 8 MHz-Resonator angebracht, der für den genauen Systemtakt sorgt.

Zwischen + 5V und PB5 liegt die Reihenschaltung eines 1 kOhm-Widerstands und einer LED. Beim Start oder nach Reset testet FORTH, ob PB5 durch diese Reihenschaltung auf H-Potenzial gezogen ist. Wenn ja, weiß FORTH, dass das serielle Interface über MAX232 genutzt werden soll (und nicht etwa ein ebenfalls mögliches MIDI-Interface) mit der fest eingestellten BAUD-Rate von 19,2 kHz.

PIN 9 des Prozessors ist der Reset-Eingang. Normalerweise ist er durch den 22 kOhm-Pullup-Widerstand auf H-Potenzial gezogen. Verbindet man - was wegen des großen Wertes von 22 kOhm gefahrlos ist - den Reset-Eingang mit Masse, so wird ein RESET ausgelöst.

6. Anschlüsse

nach 8535.gif

Besonders wird auf die PINS PD4 und PD5 hingewiesen, die als Pulsweitenmodulator-Ausgänge (OC1A und OC1B, verwendet TIMER1) benutzt werden können, um 2 Servos anzusteuern. Sie werden unter dem Prozessor mit 2 Leitungen mit den gelben Pins des 10-er Steckerblocks verbunden.

PD7 stellt einen weiteren PWM zur Verfügung (OC2 mit TIMER2 seit AVISE2.2), mit dem z.B. das 36 kHz-Signal für einen IR-Abstandssensor,  das 40 kHz-Signal für einen Ultraschall-Entfernungsmesser oder  ein 1 kHz-Signal für einen Piezowandler (Lautsprecher) abgegeben werden kann.

7. Sonstiges

Alle 100 nF-Kondensatoren dienen zur Unterdrückung hochfrequenter Schwingungen (vor allem der 8MHz-Schwingung). Sie sind deshalb typisch zwischen +5 V der IC's und Masse angeordnet, immer in unmittelbarer Nähe des jeweiligen Bauteils. Zum Teil  sollen sie die Störung der Umgebung (z.B. Radioempfang) verhindern (Verbesserung der "elektromagnetische Verträglichkeit", EMV). Der 100 Ohm-Widerstand zwischen  stabilisiert die Messwerte der AD-Wandler.