Mikrocontroller

Mobiler Eigenbauroboter mit Arduino - Aufbau und Programmierung

Die im Buch beschriebene Roboter­platt­form ent­stand im Zusammen­hang mit der Schüler­projekt­woche des Martin-Andersen-Nexö-Gymnasiums (MANOS) in Dresden. Im Rahmen dieser Projekt­woche werden seit 2010 am Institut für Regelungs- und Steuerungs­theorie der Technischen Universität Dresden Schüler­praktika zur Linien-Folge-Regelung eines mobilen Roboters durch­geführt.

Einsatz eines mobilen Roboters beim Schülerpraktikum

Das Institut für Regelungs- und Steuerungstheorie der TU Dresden führt seit 2010 in Kooperation mit dem Martin-Andersen-Nexö Gymnasium Dresden (Gymnasium mit vertieftem mathematisch-naturwissenschaftlichem Profil) Schülerpraktika durch, um Schüler an das methodische Arbeiten an einer Universität heranzuführen und so für ein etwaiges Studium an der TU Dresden zu motivieren.

ISP-Programmieradapter für parallele Schnittstelle

Für die konkrete Realisierung einer ISP-Schnittstelle über die parallele PC-Schnittstelle (Druckeranschluss) haben sich zahlreiche verschiedene Möglichkeiten etabliert. Eine Variante stellt das DAPA-Interface (Direct AVR Parallel Access) dar. Pin 1 und 2 der Druckerschnittstelle sind Ausgänge, die über jeweils einen 1kΩ-Widerstand zum Programmieradapter geführt sind (SCK und MOSI).

14-Bit-Pseudo-Rausch-Binäre-Signal mit Arduino-Board

Die normalen Arduino-Boards verfügen über 14 digitale Ein- bzw. Ausgänge. Auf Basis eines solchen Mikrocontrollerboards wurde ein Pseudo-Rausch-Binär-Signal (PRBS) durch linear rückgekoppelte Schieberegister erzeugt. Für eine maximale Periodendauer N=214-1=16383 wurden die Bits 14, 13, 12 und 2 mit der XOR-Funktion verknüpft und rückgeführt.

Polycomputer 880

Der Polycomputer 880 war für Lehrzwecke eingesetzer Computer auf Basis des 8-Bit-Prozessors U880. Die Eingabe erfolgte über eine Hexadezimal-Tastatur, die Ausgabe über acht 7-Segmentanzeigen. Zusätzlich wurde die Signalbelegungen für den Adress-, Daten- und Steuerbus mit einzelnen LEDs ausgegeben.

ISP-Programmieradapter für serielle Schnittstelle

Die Programmierung von Controllerboards erfolgt in der Regel über die ISP-Schnittstelle, die über einen passenden Adapter mit dem PC kommuniziert. Bei älteren PCs, die keinen USB-Anschluss besitzen, ist die Kommunikation über die serielle RS232-Schnittstelle möglich.

EPROM-Programmiergerät

Als studentische Hilfskraft am Institut für Automatisierungstechnik der Technischen Universität Dresden entwickelte ich ein EPROM-Programmiergerät für die Typen 2716 to 27512. Das Programmiergerät wird von einem Einchipmikrorechner IC U8820D gesteuert. Dieser Mikrorechner gehörte zur U88x-Reihe, die dem internationalen Vergleichstyp Zilog Z8 entsprach. Die Programmierspannung kann per D/A-Umsetzer AD560 bis 26V vorgegeben werden. Vom PC aus lässt sich der EPROMMer über ein DOS-Programm steuern. Die Verbindung wird eine RS232-Schnittstelle aufgebaut. Zur Spannungsstabilisation kamen die ICs B3170 und ein IC B3370 zum Einsatz.

Pseudo-Rausch-Binär-Signal-Generator

Pseudo-Rausch-Binär-Signale (PRBS) sind deterministische Signale, die zwei mögliche Werte annehmen (binäres Signal) und ähnliche Eigenschaften wie zufällige Signale aufweisen. PRBS lassen sich sehr leicht durch linear rückgekoppelte Schieberegister erzeugen. Bei der Rückkopplung kommt dabei die XOR-Funktion zum Einsatz.

Reaktionstester

Kern des Reaktionstester ist der Einchipmikrorechner (Mikrocontroller) U883D, der mit 8MHz getaktet wird. Das Programm ist in einem 2KByte EPROM 2716 abgelegt. Die Datenleitungen des EPROMs sind direkt mit Port 1 des Mikrocontrollers verbunden, die unteren 8-Bit der Adressleitungen gehen über den Treiberschaltkreis 74LS374. Für die oberen 3 Adressleitungen des EPROMs sind mit Port 0 verbunden. Die Reaktionszeit wird auf einem 3 1/2-stelligen LCD-Display (z.B. SE6902) angezeigt. Die Ansteuerung der LCD-Anzeige übernimmt ein UP7211D, der über mit dem Mikrocontroller über Port 2 kommuniziert. Die Bedienung des Reaktionstesters erfolgt über 4 Tasten: Start, Reaktion, Ton ein, Ton aus. Die Abfrage dieser Tasten erfolgt über Port 3, welches außerdem für die LED-Ausgabe und die Erzeugung eines akustischen Signals genutzt wird.

Inbetriebnahme eines Arduino-Boards (Duemilanove) unter 64-Bit-Linux Fedora 11 (Architektur x86_64)

Arduino ist eine Entwicklungsplattform für Microcontroller, die aus quelloffener Hardware und Software besteht. Für diese Plattform existiert eine Vielzahl verschiedener Microcontroller-Boards. Das aktuelle Standardboard heißt Duemilanove (2009):

Inhalt abgleichen