Dieser Adapter dient der Programmierung des ASURO über ein ISP-Programmiergerät;
zusätzlich befindet sich auf dem Adapter eine Infrarot-Sendediode und ein Infrarot-Empfänger,
welche anstatt der auf dem Standard-ASURO befindlichen Bauteile benutzt werden können.
Durch die Ausrichtung nach vorne kann eine Hinderniserkennung durch die Reflektion des
Infrarotlichtes an einem Gegenstand realisiert werden.
Ideal für einen Sumo-Roboter!
Der Adapter kann bei e-robotix.de bestellt werden.
Vorteile des Adapters:
Hinderniserkennung
ISP-Programmierung
Programmübertragung sehr schnell
Keine Übertragungsfehler
Mehr Programmspeicher möglich, da kein Bootloader nötig
Die Möglichkeiten der IR-Hinderniserkennung zeigt dieser kurze Film:
Der Erste, der meinem Wissen nach dieses Prinzip auf dem ASURO verwendet hat,
war der Roboternetz-Nutzer mit dem Nicknamen „waste“.
Bestückungsplan:
Folgende Graphik zeigt die Empfindlichkeit des Abstandssensors für das Detektieren von Joghurtbechern:
Download:
Ein HEX-File um den IR-Adapter zu testen befindet sich hier.
Der Source-Code dazu befindet sich hier (Zip-Datei).
Der Source-Code für den Sumo-Asuro findet sich hier (Zip-Datei).
Der Sensor kann mit folgendem Programm abgefragt werden:
Das Programmieren des ASURO über die ISP-Schnittstelle hat mehrere Vorteile gegenüber der Programmierung mit
dem IR-Adapter: Die Datenübertragung ist wesentlich schneller und vor allen Dingen gibt es
keine Übertragungsfehler, wie sie mit dem standardmäßig mitgelieferten IR-Transmitter üblich sind
und den Spaß am Umgang mit dem ASURO schnell verderben können.
Es ist allerdings zu beachten, dass für die Programmierung über die ISP-Schnittstelle ein
Programmiergerät gebraucht wird.
Dieses Programmiergerät kann man sehr einfach selbst bauen
(siehe einfache ISP-Programmiergeräte),
oder aus einer Vielzahl angebotener Programmiergeräte
im Internet auswählen.
Verwendet man einen AVR-Dragon, der etwas teurer als die normalen Programmiergeräte ist,
kann man das Programm mit AVR-Studio im ASURO debuggen, wenn man z.B. einen ATmega88 statt des
ATmega8 einsetzt (vergl. Mikrocontrollersonderheft 2 von Elektor).
Es ist zu beachten, dass der standardmäßig mit dem ASURO mitgelieferte ATmega8-Prozessor
nicht über die ISP-Schnittstelle programmiert werden kann,
da der Hersteller des ASURO hier die Schutzsicherungen gesetzt hat,
die ein Umprogrammieren des Prozessors verhindern.
Bei vielen Elektronikversendern gibt es allerdings neue Prozessoren für unter 5€.
Wenn man die ISP-Programmierung verwendet, kann man auch einen ATmega168 Prozessor einsetzen.
Damit erhält man gegenüber dem ATmega8 eine Verdoppelung des Programmspeichers von 8KByte auf 16Kbyte Flash.
Dies ist vor allen Dingen nützlich, wenn man in den Programmen Fließkommazahlen verwenden will,
da diese Routinen sehr viel Platz benötigen. In der beim ASURO mitgelieferten ASURO-Bibliothek
müssen dazu lediglich ein paar Registernamen angepasst werden,
die sich beim ATmega168 gegenüber dem ATmega8 unterscheiden.
Achtung Mac-User:
Für die meisten USB-ISP-Programmiergeräte scheint es für Apple-Rechner keine Treiber zu geben.
Eine Ausnahme scheint hier MySmartUSB von MyAVR zu bilden.