Herunterladen Inhalt Inhalt Diese Seite drucken
Inhaltsverzeichnis

Werbung

Licence by DLR
ASURO
ROBOTERBAUSATZ
BAU- UND BEDIENUNGSANLEITUNG
Modell ARX-03
Hersteller
AREXX, Zwolle - NIEDERLANDE
JAMA, Taichung - TAIWAN
www.arexx.com

Werbung

Inhaltsverzeichnis
loading

Inhaltszusammenfassung für Arexx ARX-03

  • Seite 1 Licence by DLR ASURO ROBOTERBAUSATZ BAU- UND BEDIENUNGSANLEITUNG Modell ARX-03 Hersteller AREXX, Zwolle - NIEDERLANDE JAMA, Taichung - TAIWAN www.arexx.com...
  • Seite 2: Einleitung

    Jetzt nur noch Batterien oder Akkus bereitlegen und los geht’s! Ach ja, ASURO steht übrigens für “Another Small and Unique Robot from Oberpfaffenhofen”! Abb.0.1 Blockschaldbild Abb.0.1 Blockschaldbild © DLR & AREXX Sehe auch Anhang E Sehe auch Anhang E Oberpfaffenhofen 2004...
  • Seite 3: Inhaltsverzeichnis

    Inhaltsverzeichnis I. Mechanik 1. Erforderliches Werkzeug 2. Mechanische Vorarbeiten 2.1. Motorritzel 2.2. Tischtennisball 2.3. Radsensoren II. Elektronik 3. Kleine Lötfi bel 3.1. Spitze, Zinn und Temperatur 3.2. Vorbereiten der Bauteile 3.3. Einlöten der Bauteile 3.4. Auslöten falsch eingebauter Teile 4. Bestückung 4.1.
  • Seite 4 6. Fehlersuche 6.1. RS232-IR-Transceiver geht nicht ! 6.1.1. Tastendruck und Zeichenausgabe stimmen nicht überein 6.1.2. Das Terminal-Programm gibt keine Zeichen aus 6.1.3. Es geht immer noch nicht 6.2. USB-Infrarot-Tranceiver funktioniert nicht 6.3. Back-LEDs (D15,D16) glimmen nach dem Einschalten nicht! 6.3.1. Keine der beiden Back-LEDs glimmt auf 6.3.2.
  • Seite 5 III. Informatik 8. Installation der Software und erste Schritte 8.1. Windows 8.1.1. Flash-Tool 8.1.2. Installation des programmeditors und des compilers 8.1.3. Beispielprogramme 8.2. Linux 8.2.1. Flash-Tool 8.2.2. Compiler 8.3. Flash - das ASURO-Programmier-Tool 8.3.1. Wie funktioniert das Flashen? 8.4. Flash Fehler 8.5.
  • Seite 6: Mechanik

    Teil I. Mechanik 1. Erforderliches Werkzeug Um ASURO vernünftig zusammenbauen zu können, wird - außer den Bausatzteilen - folgendes Werkzeug und Verbrauchsmaterial benötigt: kleiner Schraubstock oder Dritte Hand: nicht immer sind zwei Hände ausreichend Teppichmesser oder Säge feine Zange Seitenschneider: ein kleiner für Elektronik evtl.
  • Seite 7: Mechanische Vorarbeiten

    Mechanik 2. Mechanische Vorarbeiten Bevor die ersten Basteleien beginnen können, sollte unbedingt überprüft werden, ob alle erforderlichen Teile vorhanden sind. Das kann am einfachsten anhand der Stückliste in Anhang A geschehen. Bevor es an die Elektronik gehen kann, müssen noch ein paar mechanische Tätigkeiten durchgeführt werden.
  • Seite 8: Radsensoren

    Mechanik 2.3. Radsensoren Die Leuchtdiode und der Fototransistor (Refl exlichtschranke für die Odometrie), welche sich so vertrauensvoll Richtung erstem Getriebezahnrad wenden werden, wollen später nicht enttäuscht werden. Daher bringt man auf das jeweils erste Getriebezahnrad (das mit mit den 50 und 10 Zähnen) auf der Seite ohne Abtriebsritzel noch die selbstklebenden Musterscheiben an (siehe Abb.2.3.).
  • Seite 9: Elektronik

    Teil II. Elektronik 3. Kleine Lötfi bel Obwohl ASURO vollständig mit bedrahteten Bauteilen aufgebaut ist und damit - im Gegensatz zu oberfl ächenmontierten SMD-Bauteilen (Abb. zeigt den Vergleich zwischen dem kleinsten und unserem Gehäuse, in dem ASUROs Prozessor erhältlich ist. Der eigentliche Siliziumchip ist in beiden Gehäusen der gleiche!) - geradezu hervorragen von Hand zu bestücken ist, sollten vor allem vom untrainierten Löter einige Hinweise beachtet werden.
  • Seite 10: Vorbereiten Der Bauteile

    Elektronik Abbildung 3.2.: Grundlage des Lötens Dämpfe, welche während des Lötprozesses entstehen sind langfristig eher ungesund und sollten nach Möglichkeit nicht eingeatmet, besser noch abgesaugt werden! Anderes Lötzinn als Elektroniklot oder säurehaltiges Flussmittel können die Schaltung zerstören! 3.2. Vorbereiten der Bauteile Jeder, der schon mal Elektronik gelötet hat, kennt das Problem: man hat eigentlich immer eine Hand zuwenig.
  • Seite 11: Einlöten Der Bauteile

    Elektronik Abbildung 3.3.: Bauteile mit passend gebogenen Beinchen Abbildung 3.4.: Herstellen einer sauberen Lötstelle 3.3. Einlöten der Bauteile Sind die Bauteile vorbereitet, werden sie durch die durchkontaktierten Bohrungen in der Leiterplatte gesteckt und - bei Teilen mit nur zwei oder drei Beinchen - diese auf der Unterseite der Platine direkt an der Bohrung etwas auseinandergebogen (ca.
  • Seite 12: Auslöten Falsch Eingebauter Teile

    Elektronik Sitzt das Bauteil fest, so erhitzt man mit der Lötkolbenspitze das Beinchen und das Lötauge gleichzeitig und gibt an diese Stelle etwas Lötzinn zu. Dieses schmilzt nun und läuft in die Bohrung. Es wird solange Zinn zugegeben, bis die Bohrung vollständig ausgefüllt ist (siehe Abb.3.4).
  • Seite 13: Bestückung

    Elektronik 4. Bestückung Lötfi bel gelesen? Wirklich? Na gut, los geht’s! 4.1. Bestückung des RS232-Infrarot-Transceivers • IC1: Hier wird zunächst nur der 8-polige Sockel eingelötet. Dieser besitzt eine Richtungsmarkierung, welche mit der Markierung auf der Platine übereinstimmen muss. • D1, D2, D3: 1N4148, auf richtige Polung achten! Nicht verwechseln mit ZPD5.1 oder BZX55-C5V1 (Aufdruck)! •D4: ZPD5.1 oder BZX55-C5V1, auf richtige Polung achten! Nicht verwechseln mit 1N4148 (Aufdruck)!
  • Seite 14 Elektronik Abbildung 4.1.: Bestückung des RS232- Infrarot-Transceivers Nun nochmal mit kritischem Blick die Lötstellen auf gute Verbindung oder Kurzschlüsse überprüfen und ggf. nachbessern. Fertig!
  • Seite 15: Info Usb-Infrarot-Transceivers

    Elektronik 4.2. Fertiggerät USB-Infrarot-Transceiver Optional ist ein USB-IR-Transceiver als Fertiggerät lieferbar. Abbildung 4.2.: USB Infrarot-Transceivers Abbildung 4.3.: Oberseite des USB Infrarot-Transceivers Abbildung 4.4.: Unterseite des USB Infrarot-Transceivers...
  • Seite 16: Bestückung Der Asuro-Platine

    Elektronik 4.3. Bestückung der ASURO-Platine Die zwei längeren Achsen, die für die zweite Getriebestufe erforderlich sind, werden auf der Unterseite angelötet oder geklebt. Löten ist praktischer, denn Korrekturen sind einfacher möglich und abkühlen lassen geht schneller als warten, bis der Kleber fest ist. Die beiden kürzeren liegen auf der Oberseite und weiter Richtung Platinenmitte.
  • Seite 17: In Folgender Reihenfolge Wird Bestückt

    Elektronik Abbildung 4.6.: Bestückung ASURO Hauptplatine auf der Oberseite In folgender Reihenfolge wird bestückt: • IC1: erstmal nur der Sockel, hier werden entweder ein 28poliger (wenn vorhanden) oder zwei 14polige hintereinander eingebaut; auf richtige Polung achten (Kerbe zeigt in Richtung der Kerbe vom Bestückungsdruck auf der Platine)! •...
  • Seite 18 Elektronik • T1, T3, T5, T7: BC327-40 oder BC328-40 • T2, T4, T6, T8: BC337-40 oder BC338-40 • R1, R2, R3, R4, R5, R6, R7, R8, R19, R21, R24: 1k Ohm, 5% (braun, schwarz, rot, gold) • R9, R16: 220 Ohm, 5% (rot, rot, braun, gold) •...
  • Seite 19 Elektronik Drei weitere Bauteile werden noch benötigt (sie ermöglichen das Folgen einer Linie), allerdings werden sie auf der Unterseite der Platine angebracht und von oben her eingelötet (siehe Abb.4.7.): • T9, T10: SFH300, Fototransistor 5mm, auf richtige Polung achten! Diese stehen leicht von der Platine ab. •...
  • Seite 20: Motormontage

    Elektronik 4.4. Motormontage Wenn die Bestückung der ASURO-Platine abgeschlossen ist, müssen nur noch die Motoren mit Kabeln versehen und provisorisch befestigt werden. Zum Anschluss der Motoren wird je ein schwarzes und rotes ca. 70mm langes Kabel mit abisolierten und verzinnten Enden benötigt. Sind die beiliegenden Kabel noch nicht passend vorbereitet, so isoliert man die Enden ca.
  • Seite 21: Inbetriebnahme Und Test

    Elektronik 5. Inbetriebnahme und Test Endlich ist alles zusammengebaut und der Fahrspaß kann beginnen. Zunächst müssen aber noch die zuvor eingebauten Fehler gesucht, gefunden und beseitigt werden, ohne dabei allzu großen Schaden anzurichten. 5.1. RS232-Infrarot-Transceiver Diese Inbetriebnahme gilt nur für den RS232-IR-Transceiver. Als erstes sollte der RS232-IR-Transceiver auf seine volle Funktionsfähigkeit überprüft werden, da dieser später für den Selbsttest des Fahrzeugs benötigt wird.
  • Seite 22: Usb-Infrarot-Tranceiver

    Der USB-Transceiver wird mit dem USB-Kabel an einer freien USB-Buchse angeschlossen. Es erscheint die Meldung: “Neue Hardware gefunden: AREXX ASURO USB-IR-Transceiver” Danach den USB-Treiber von der ASURO-CD installieren. Sollte der Treiber nicht automatisch gefunden werden, das Verzeichnis (D: steht hier für das CD-ROM-Laufwerk) D:\Windows\USB_ Driver”...
  • Seite 23: Linux

    Elektronik 5.2.2 Linux Der USB-Transceiver wird mit dem USB-Kabel an einer freien USB-Buchse angeschlossen. Ein kurzes “Piep” ertönt, wenn Linux den Transceiver erkannt hat. Um zu überprüfen, ob das Gerät korrekt erkannt wurde, kann man sich den entsprechenden Eintrag im proc-Verzeichnis anschauen: foo@bar:/>cat /proc/tty/driver/usb-serial Was eine Ausgabe produzieren muss, die mindestens folgende Einträge aufweist (statt der “0:”...
  • Seite 24: Asuro

    Elektronik 5.3. Inbetriebnahme der ASURO-Platine Der Prozessor (IC1) ist zu diesem Zeitpunkt noch nicht eingebaut! Jetzt die Nackenhaare sträuben, und den Schalter auf ON stellen. Die beiden Back-LEDs (D15, D16) sollten nun beide leicht glimmen. Ist dies nicht der Fall den Hauptschalter sofort auf OFF stellen und in Abschnitt weiterlesen.
  • Seite 25: Anzeigenelemente

    Elektronik Nur bei Akku-Betrieb Jumper (J1) stecken. Die Kerben der ICs müssen mit der Kerbe der hoffentlich richtig eingesetzten Sockel übereinstimmen. Der Prozessor ist bereits werksseitig mit einem Selbsttest vorprogrammiert und wird nach dem Einschalten alle Komponenten überprüfen. Damit es hierbei gleich keine Schwierigkeiten gibt, sollte man den folgenden Abschnitt einmal komplett lesen bevor man einschaltet und anschließend wieder hierher zurückkehren.
  • Seite 26: Schalter

    Elektronik Schalter ASURO steht still, alle Anzeigenelemente sind aus. Ein gutes Zeichen! Die Schalter werden nun überprüft (ca 15sec). Einfach mal ein bisschen rumdrücken, irgendetwas wird hoffentlich passieren. Die Zuordnung sollte wie folgt aussehen : K1 --> Status-LED (D12) leuchtet grün K2 -->...
  • Seite 27: Alle Anzeigenelementen Auf Einmal

    Elektronik Besteht zwischen ASURO und dem Infrarot-Transceiver Sichtkontakt (ca. 50cm Abstand) sollte im Terminal-Programm regelmäßig ein ’T’ erscheinen bzw. die am PC gedrückte Taste erscheint einmal (vom Transceiver gesendetes und refl ektiertes Signal) gefolgt von dem im Alfabet folgenden (von ASURO gesendeten) Zeichen. z.B.: Taste “e”...
  • Seite 28: Fehlersuche

    6. Fehlersuche 6.1. RS232-IR-Transceiver geht nicht ! 6.1.1. Tastendruck und Zeichenausgabe stimmen nicht überein Solange am Trimmer TR1 drehen bis Tastendruck und Zeichenausgabe übereinstimmen. 6.1.2. Das Terminal-Programm gibt keine Zeichen aus Ist das Timer-IC (IC1) montiert bzw. richtig herum (Kerbe zeigt in Richtung der drei Dioden) eingesteckt? Eine Infrarot-Fernbedienung eines beliebigen Gerätes (Videorecorder, Fernseher, Tuner, ...) nehmen, diese in Richtung des IR-Transceivers halten und einige Tasten drücken.
  • Seite 29: Nur Eine Der Beiden Led's Glimmt Auf

    6. Fehlersuche 6.3.2. Nur eine der beiden LED’s glimmt auf Sind die Dioden (rosafarbenes Gehäuse) D13 (links) ,D14 (rechts), sowie die Fototransistoren (klares Gehäuse) T11 (links), T12 (rechts) an der richtigen Stelle (siehe Abb.4.3) und Polungsrichtig eingebaut? Haben folgende Widerstände den richtigen Wert R18, R19 (links) und R20, R21 (rechts)? 4,7KΩ...
  • Seite 30: Linke Back-Led D15 Geht Nicht

    6. Fehlersuche 6.4.3. Linke Back-LED D15 geht nicht Polung D15 prüfen. Widerstände R19, R18 überprüfen. 1KΩ (br,sw,or,gld) 4,7KΩ ( ge,vio,ro,gld) Ein einfacher Test besteht darin, den Prozessor (IC1) zu entfernen und eine Verbindung zwischen Pin7 (VCC) und Pin24 herzustellen, die linke Back-LED leuchtet rot. Ist dieser Test erfolgreich, liegt ein Defekt im Prozessor oder Schwinger vor, bzw.
  • Seite 31: Die Anzeige Verhält Sich So, Als Seien Schalter Vertauscht Worden

    6. Fehlersuche 6.6.2. Die Anzeige verhält sich so, als seien Schalter vertauscht worden Die Widerstände der jeweiligen Schalter sind vertauscht. Zu kontrollieren sind 1KΩ ( br,sw,sw,br,br) 2KΩ ( ro,sw,sw,br,br) 2KΩ ( ro,sw,sw,br,br) 8,2KΩ ( gra, ro,sw,br,br) 16KΩ ( br,bl,sw,ro,br) 33KΩ ( or,or,sw,ro,br) 68KΩ...
  • Seite 32: Ein Antrieb Geht Nicht

    6. Fehlersuche 6.8. Ein Antrieb geht nicht 6.8.1. Kein Antrieb bewegt sich Polung und Einbaulage IC3 überprüfen. 6.8.2. Der linke Motor bewegt sich nicht bzw. nur in eine Richtung Hier ist die komplette Motorbrücke, bestehend aus Transistoren T1, T2, T3, T4 (sind die richtigen Transistoren an der richtigen Stelle eingebaut), den Dioden D1, D2, D3, D4 (Polung !) und den Widerständen R1, R2, R3, R4 zu kontrollieren.
  • Seite 33: Es Geht Immer Noch Nicht So Richtig

    6. Fehlersuche 6.9.3. Es geht immer noch nicht so richtig C8 polungsrichtig eingebaut ? 220 F/ mindestens 10V Kommt es bei der Übertragung von Daten vom PC zu ASURO immer wieder zu Schwierigkeiten, so muss ein wenig am Trimmer TR1 des Transceivers gedreht werden. Zweikomponentenkleber steht im Verdacht sensibilisierend zu wirken, was soviel heißt wie: man wird gegen immer mehr Zeug allergisch, er darf also keinesfalls mit der Haut in Berührung kommen.
  • Seite 34: Letzte Einstellarbeiten

    7. Letzte Einstellarbeiten 7. Letzte Einstellarbeiten Die Achsen werden leicht eingefettet, das Getriebezahnrad mit dem schönen Schwarz-Weiß-Muster wird auf die kurze Achse gesteckt. Der Reifen wird auf das Getrieberad mit den 50 und 12 Zähnen gesteckt, dann zusammen auf die hintere Achse gesteckt und mit einem Stellring fi xiert, sodass es sich noch leicht drehen kann.
  • Seite 35: Informatik

    Teil III. Informatik 8. Installation der Software und erste Schritte Die ASURO-CD ins CDROM-Laufwerk einlegen, sie ist autostartfähig. Falls Autostart deaktiviert ist, kann man die CD auch mit dem Windows-Explorer öffnen. Nach der Auswahl der Sprache fi ndet sich im Abschnitt “Software”...
  • Seite 36 8. Informatik Folgendes Fenster erscheint: Klick auf [I Agree] Folgendes Fenster erscheint: Klick auf [Next] ASURO - 36 -...
  • Seite 37 8. Informatik Folgendes Fenster erscheint: Klick auf [Install] Folgendes Fenster erscheint: Warten… ASURO - 37 -...
  • Seite 38 8. Informatik …bis der Programmers Notepad 2 (PN2) Editor mit der Datei README.txt erscheint. Nun das Fenster ‘Programmers Notepad 2’ schließen. Auf dem Desktop erscheint das ‘Programmers Notepad 2’ Symbol: Der Programmeditor und der Compiler sind jetzt installiert. ASURO - 38 -...
  • Seite 39: Beispielprogramme

    8. Informatik 8.1.3. Beispielprogramme von CDROM auf die Festplatte kopieren. Von der CD den Ordner ‘ASURO_src’ in einen beliebigen Ordner (Z.B. ‘C:\ASURO_src’) auf der Festplatte kopieren. Durch Markieren der kopierten Dateien im Zielverzeichnis, Klicken mit der rechten Maustaste und Auswahl von Eigenschaften sicherstellen, dass der Schreibschutz deaktiviert ist. Im Programmeditor einen Menüeintrag zum Compilieren einrichten ‘Programmers Notepad 2’...
  • Seite 40 8. Informatik Auf der rechten Seite ‘C/C++’-Scheme auswählen. ‘C/C++’-Scheme ist ausgewählt. Auf [Add] klicken (…um ein neues Tool hinzuzufügen) ASURO - 40 -...
  • Seite 41 8. Informatik Das Fenster ‘New Tool’ erscheint. Folgende Einstellungen eintippen oder mit der Browse-Taste auswählen: Name: make Command: C:\ASURO_src\FirstTry\Test-all.bat Folder: C:\ASURO_src\FirstTry Klick auf [OK] Ein neues PN-Tool mit Namen make ist ab sofort im Tools-Hauptmenü verfügbar. (Wird das Tool aktiviert, so wird eine Batch-Datei mit Namen Test-clean.bat ausgeführt, welche das Programm test.c - zusammen mit asuro.c - compiliert und eine datei text.hex erzeugt) ASURO - 41 -...
  • Seite 42 8. Informatik Im Programmeditor einen Menüeintrag zum Aufräumen einrichten. Im Hauptmenü “Tools” wieder “Options” und dort wieder “C/C++-Scheme” auswählen: Auf [Add] klicken um ein weiteres Tool hinzuzufügen: ASURO - 42 -...
  • Seite 43 8. Informatik Das Fenster ‘New Tool’ erscheint. Folgende Einstellungen eintippen oder mit der Browse-Taste auswählen: Name: clean Command: C:\ASURO_src\FirstTry\Test-clean.bat Folder: C:\ASURO_src\FirstTry Auf [OK] klicken Ein neues PN-Tool mit Namen clean ist ab sofort im Tools-Hauptmenü verfügbar. (Wird das tool aktiviert, so wird eine Batch-Datei mit Namen Test-clean.bat ausgefuhrt, welche temporäre Dateien im Ordner C:\ASURO_src\FirstTry löscht.
  • Seite 44 8. Informatik Im Options-Fenster müssen jetzt die beiden Einträge für die Tools ‘make’ und ‘clean’ sichtbar sein. Wieder auf [OK] klicken. ASURO - 44 -...
  • Seite 45 8. Informatik Auf [Open] klicken. Nun zum Ausprobieren die Datei Datei ’C:\ASURO_src\FirstTry\test.c’ öffnen: ASURO - 45 -...
  • Seite 46 8. Informatik Datei test.c wird geöffnet. Wenn man Tools auswählt… …sieht man die neuen Tools make und clean als Menüeintrag. Nun make anklicken. ASURO - 46 -...
  • Seite 47 8. Informatik Die Dateien test.c (zusammen mit asuro.c) wird nun compiliert… …und wenn das Programm keine Fehler enthält (was zu erwaren ist, da gerade das Beispielprogramm geladen ist), erscheint unten die Meldung: Errors: none. Was ist passiert? Aus der Datei test.c (und asuro.c) ist eine Datei test.hex generiert worden. Diese Datei stellt das in Maschinencode übersetzte Programm dar, welches nun in ASUROs Speicher geladen (gefl asht) werden kann.
  • Seite 48 8. Informatik Das zu unserem Beispielprogramm gehörige makefi le ist so geschrieben, dass es eine Datei mit Namen test.c zusammen mit asuro.c (das einige vordefi nierte Funktionen enthält) compiliert und eine .hex-Datei erzeugt, die so auf ASURO geladen werden kann. Achtung! Das heißt auch, dass –...
  • Seite 49 8. Informatik Beim Öffnen… …kann man jetzt die generierten Dateien sehen… (Klick auf [Cancel]) …und nach dem Ausführen von ‘clean’… ASURO - 49 -...
  • Seite 50 8. Informatik …kann man sehen… …dass die generierten Dateien wieder gelöscht worden sind sind Wie hat’s funktioniert? Der Menüeintrag ‘clean’ hat die Batch-Datei Test-clean.bat aufgerufen, welche make mit dem Parameter ‘clean’ gestartet hat. Dadurch wird der Eintrag im makefi le namens clean ausgeführt und die ganzen inzwischen überfl üssigen Dateien wieder gelöscht.
  • Seite 51: Linux

    8. Informatik 8.2. LINUX Für die Installation der Software sind root-Rechte erforderlich. Entweder ausloggen und als root einloggen oder eine shell öffnen und mit “su” root-Rechte erlangen. 8.2.1 Flash-Tool Die ASURO-CDROM einlegen, ggf. mounten und die beiden Flash-Tools “asurofl ash” und “asurocon”...
  • Seite 52: Compiler

    8. Informatik 8.2.2 Compiler Zur Installation des Gnu-Compilers für AVR-Prozessoren die ASURO-CDROM einlegen und aus dem Verzeichnis “/Linux/Compiler/” mindestens die folgenden Pakete in der angegebenen Reihenfolge installieren: 1. avr-binutils-..rpm 2. avr-gcc-..rpm 3. avr-libc-..rpm Die Installation ist denkbar einfach! Einfach in der Konsole mit root-Rechten den Befehl : rpm -i <paket>.rpm eingeben.
  • Seite 53: Flash - Das Asuro-Programmier-Tool

    8. Informatik 8.3. Flash - das ASURO-Programmier-Tool Hierzu wird das Programm Flash (siehe Abb. 8.3) benötigt. Abbildung 8.3.: Flash-Tools für Windows und LINUX Damit das Flashen auch richtig gut klappt, muss natürlich der RS232- oder USB-IR-Transceiver angeschlossen werden. Danach das Programm starten und die Schnittstelle auswählen, welche auch bei der Inbetriebnahme funktioniert hat.
  • Seite 54: Flash Fehler

    8. Informatik 8.4. Flash Fehler Folgende Fehler können während des Flashens auftreten: • • “c” Checksum Error. Es sind andere als die vom PC geschickten Daten bei ASURO angekommen. Das kann durch Störlicht (wie Leuchtstoffl ampen) kurze Unterbrechungen in der Sichtverbindung oder ähnliches passieren.
  • Seite 55 8. Informatik Das geladene Programm wird wie folgt abgeändert (Achtung, auf exakte Schreibweise auch Groß-/Kleinschreibung achten): #include “asuro.h” int main(void) { Init(); StatusLED(RED); while(1); return 0; Danach wieder im Menü Tools -> make auswählen (unter Linux: in einer Shell im Verzeichnis “~/ASURO/”...
  • Seite 56: C Für Asuro

    9. C für ASURO Dieser Abschnitt beschäftigt sich mit der Programmiersprache C. Der Leser wird hierbei nur die für die Programmierung von ASURO notwendigen Bestandteile von C erklärt bekommen. Dies stellt also keinesfalls eine komplette Einführung in C dar. Hierfür gibt es bessere Bücher C wurde als Sprache gewählt, da dieser Standard weit verbreitet ist und für fast jeden Prozessor, zumindest ein C-Compiler existiert.
  • Seite 57: Variablen Und Datentypen

    9. C für ASURO Will man einige Zeilen aus seinem Code auskommentieren so beginnt der Kommentarblock mit “/*” und endet mit “*/ ”. Um nur eine Zeile auzukommentieren genügt ein “//“ vor der betreffenden Zeile . Das Auskommentieren dient dazu, dass Textstücke vom Compiler nicht beachtet werden. Damit kann man Kommentare in das Programm einfügen, ohne dass beim Übersetzten des Programms dadurch Probleme entstehen.
  • Seite 58 9. C für ASURO Die Deklaration erfolgt entweder “außerhalb” der main()-Funktion als globale Variable, (das heißt, die Variable ist für das gesamte Programm verfügbar), innerhalb der main()-Funktion, (dann gilt sie nur für Programmcode, der in der main()-Funktion steht) oder innerhalb einer eigenen Funktion (dann ist sie nur hier gültig).
  • Seite 59: Compilerdirektiven

    9. C für ASURO 9.1.3. Compilerdirektiven Sicher hat das #include “asuro.h” schon für Verwirrung gesorgt. Die #include-Direktive heißt nichts anderes, als dass Text, welcher in der angegebenen Datei steht in das Programm eingebunden und beim Compilieren mitübersetzt wird. Im vorliegenden Fall werden einige Routinen, welche für den Betrieb des Roboters erforderlich sind, verfügbar gemacht.
  • Seite 60 9. C für ASURO Will man eine Entscheidung unter mehreren Alternativen treffen, so kann man mehrere “else if”- Anweisungen verwenden. if (Bedingung 1) Anweisungsblock 1 else if (Bedingung 2) Anweisungsblock 2 else if (Bedingung 3) Anweisungsblock 3 else if (Bedingung 4) Anweisungsblock 4 else Anweisungsblock 5...
  • Seite 61: Schleifen

    9. C für ASURO 9.1.5. Schleifen Schleifen dienen dazu, Anweisungen mehrmals auszuführen. In der “while”-Schleife wird eine Bedingung ausgewertet. Ist die Bedingung wahr, so wird der Anweisungsblock ausgeführt und die Bedingung erneut geprüft, bis diese falsch wird. Dannach wird das Programm hinter dem Anweisungsblock fortgesetzt. while( Bedingung) Anweisungsblock Beispiel:...
  • Seite 62: Funktionen

    9. C für ASURO “while(1)” äquivalent zu “for(;;)” ist eine Endlosschleife, die niemals verlassen wird, da die Bedingung für den Abbruch niemals falsch (also 0) wird. Als weiteres Schleifekonstrukt gibt es die “do”-Schleife Anweisungsblock while( Bedingung); Im Gegensatz zur “while”-Schleife wird hier die Bedingung am Ende des Anweisungsblockes auf Ihren Wahrheitgehalt hin untersucht.
  • Seite 63 9. C für ASURO Nachdem die Datentypen bekannt sind und ein klein wenig über Funktionen geredet wurde, versuchen wir uns an einer kleinen Beispielfunktion, welche zwei 8-Bit-Zahlen multiplizieren und das Ergebnis zurückgeben soll. int Mult(char a, char b) /* Funktion liefert einen int-Wert zurück, hat den Namen Mult, und bekommt zwei char als Parameter übergeben */ // Beginn der Funktion int c;...
  • Seite 64: Zeiger Und Vektoren

    9. C für ASURO 9.1.7. Zeiger und Vektoren Zeiger und Vektoren werden hier nur soweit behandelt, wie diese zum Betreiben von ASURO notwendig sind. Werden die Linienfolgesensoren, bzw. die Sensoren der Odometrie ausgelesen, benötigt man Vektoren. Deren Deklaration ist denkbar einfach: int lData[2];...
  • Seite 65: Beschreibung Der Asuro-Funktionen

    9. C für ASURO Will man Zeichen empfangen, ist für ASURO die Funktion SerRead () defi niert. Der erste Parameter enthält die Zeichenkettenvariable, in welcher empfangen Zeichen abgespeichert werden, der zweite Parameter gibt an, wieviele Zeichen empfangen werden sollen, der dritte stellt ein Timeout dar.
  • Seite 66: Void Init(Void)

    9. C für ASURO 9.2.1. void Init(void) Der Mikrocontroller wird in seinen Grundzustand gebracht. Diese Funktion muss immer am Anfang eines Programms aufgerufen werden. Ohne den Aufruf dieser Funktion am Anfang weiß der Prozessor nicht mal, was er mit seinen Beinchen machen soll. Ein Programm für ASURO muss mindestens so ausschauen: #include “asuro.h”...
  • Seite 67: Void Frontled(Unsigned Char Status)

    9. C für ASURO 9.2.3. void FrontLED(unsigned char status) Die Front-LED (D11) kann ein- bzw. ausgeschaltet werden. Mögliche Übergabeparameter sind ON bzw. OFF. Beispiel: Die Front-LED soll leuchten: FrontLED(ON); 9.2.4. void BackLED(unsigned char left, unsigned char right) Die Back-LEDs (D15 und D16) können ein- bzw. ausgeschaltet werden. Der erste Parameter beschreibt den Zustand der linken Back-LED (D15), der zweite Parameter den der rechten Back- LED (D16).
  • Seite 68: Void Motorspeed(Unsigned Char Left_Speed, Unsigned Char Right_Speed)

    9. C für ASURO 9.2.7. void MotorSpeed(unsigned char left_speed, unsigned char right_speed) Hier wird die Geschwindigkeit der Antriebsmotoren vorgegeben. Der maximal mögliche Geschwindigkeitswert ist 255 (unsigned char). Der Motor fängt sich erst ab einem Wert von ca. 60 zu drehen an. (Hängt stark vom mechanischen Zusammenbau ab.) Der eingestellte Wert gibt eigentlich nur an, welche elektrische Leistung die Motoren erhalten sollen.
  • Seite 69: Void Linedata(Unsigned Int *Data)

    9. C für ASURO Beispiel: Die Zeichenkette „Fahr los“ soll empfangen werden. Dabei soll sichergestellt sein, dass alle Zeichen bei ASURO eingetroffen sind, bevor weitergemacht werden kann. Anmerkung: Es werden nur acht Zeichen empfangen. Eine Überprüfung ob auch wirklich ‘Fahr los’ angekommen ist, fi ndet nicht statt.
  • Seite 70: Void Odometriedata(Unsigned Int *Data)

    9. C für ASURO Jaja, diesmal wieder im ganzen Programm: #include “asuro.h” // Linienverfolgung auf die einfachste Art int main(void) { unsigned int data[2]; //Speicher bereitstellen Init(); FrontLED(ON); // Linienbeleuchtung einschalten MotorDir(FWD,FWD); // Beide Motoren auf vorwärts while(1){ // Endlosschleife, ASURO soll beliebig // lang einer Linie nachfahren LineData(data);...
  • Seite 71: Unsigned Char Pollswitch(Void)

    9. C für ASURO 9.2.12. unsigned char PollSwitch(void) Die Taster (K1-K6) werden ausgewertet. Diese Funktion liefert ein Byte. In diesem Byte ist die Information enthalten, welche Taster gedrückt wurden. Dabei setzt Taster 1 das 5. Bit, Taster 6 das 0. Bit.
  • Seite 72: Anhänge

    Teil IV. Anhänge A. Stückliste Zusätzlich zu einem Tischtennisball werden zum Aufbau eines ASUROs noch folgende Teile benötigt: 1x Platine ASURO 2x Motoren Typ Igarashi 2025-02 1x Diode 1N4001 8x Dioden 1N4148 4x Transistoren BC 327/40 oder BC 328/40 4x Transistoren BC 337/40 oder BC 338/40 1x Integrierter Schaltkreis CD 4081BE 1x Prozessor ATmega 8L-8PC (vorprogrammiert) 1x IR-Empfänger SFH 5110-36...
  • Seite 73: Für Den Zugehörigen Rs-232-Ir-Transceiver Braucht Man Folgende Bauteile

    IV. Anhänge A. Stückliste 4x Kabelbinder 1x Kabelbinder lösbar 2x Gummireifen 38mm 2x Messingstab 42mm lang, 3mm Durchmesser 2x Messingstab 24,5mm lang, 3mm Durchmesser ca. 15cm Schaltlitze rot 0,14mm ca. 15cm Schaltlitze schwarz 0,14mm 2x Encoderscheiben (siehe 2.4) Für den zugehörigen RS-232-IR-Transceiver braucht man folgende Bauteile: 1x Platine IR-RS232-Transceiver 3x Dioden 1N4148 1x Zenerdiode ZPD5.1...
  • Seite 74: Schaltpläne Asuro

    IV. Anhänge B. Schaltpläne ASURO ASURO - 74 -...
  • Seite 75: Rs232-Ir-Transceiver

    IV. Anhänge C. RS232-IR-TRANSCEIVER C. RS232-IR-TRANSCEIVER ASURO - 75 - ASURO - 75...
  • Seite 76: Usb Ir-Transceiver

    D. USB-IR-TRANSCEIVER ASURO - 76 -...
  • Seite 77: Blockschaldbild Asuro

    IV. Anhänge E. BLOCKSCHALTBILD ASURO F. BLOCKSCHALTBILD AVR PROCESSOR ASURO - 77 -...
  • Seite 78: Lieferumfang Asuro

    IV. Anhänge G. LIEFERUMFANG ASURO ASURO - 78 -...

Diese Anleitung auch für:

Asuro

Inhaltsverzeichnis