LERNROBOTER Wild Thumper Kontroller Aufbauanleitung: Modell WTR-CK1 © AREXX - Die Niederland V0610 -1-
Inhaltsverzeichnis 1. Produkt beschreibung WT Kontroller 3 1.2. Specificationen 2 1.3. Was kann die Wild Thumper 3 2. Nötwendige Werkzeuge 5 3. Teilliste 6 4. ASEMBLIERUNG von WT 8 5. Erste Praxis Test 22 6. Software installation 23 7. Programmer and Loader 36 7.1 Robot loader 37 7.2 Connection of USB interface Windows 38 7.3 Connection of USB interface LINUX 41 7.4 Testing the USB interface 42 7.5 Opening a port Linux 43 7.6 Selftest 44 7.
1. PRODUKTBESCHREIBUNG WTR-CK1 Das Wild Thumper Ansteuerungsmodul bildet die komplette Ansteuerungselektronik für den Wild Thumper “ALLRAD GELÄNDE CHASSIS JSR-6WD”. D Die Steuerungsplatine basiert auf zwei ATMEL Mikroprozessoren, die miteinander kommunizieren. Einer dieser Prozessoren kümmert sich um die Kommunikation und das Ablesen der Sensoren. Der zweite Prozessor ist zuständig für die Ansteuerung der sechs Motoren mittels hocheffizienten H-Brücken.
1.2. Spezifikationen: Stromversorgung: 7,2 Volt sub C Batterie Pakete (nicht im Lieferumfang enthalten) 2 St. ATMEGA 644 Prozessoren 6 St. Magnet-Drehzahlgeber für Odometrie 6 St.
1.3. WILD THUMPER - Selbst Programmieren in C mit WINAVR Beispiel- und Neuprogramme in den Wild Thumper übertragen. Den Wild Thumper mit einem PC und WTC Software drahtlos kontrolieren Ihre eigene drahtlose Kamerabilder in WTC PC Software einfügen Den Wild Thumper mit Erweiterungsmodulen ausbauen, so dass er hören, fühlen und sehen kann und somit auf seine Umgebung reagiert Mittels I2C Schnittstelle kann der Wild Thumper mit seinem Umfeld und vielen anderen Geräten kommunizieren.
2. Benötigte Werkzeuge Spitzzange Seitenschneider Schraubenziehersatz Inbusschlüssel Selbstschneidende Schrauben Kontermutter Selbstschneidende Schrauben verhalten sich wie Holzschrauben, d.h. sie schneiden ein spiralförmiges Gewinde ins Material, das sich wie eine Mutter verhält. Zum Ende weist dieser Schraubentyp ein größeres Gewinde und eine schärferen Spitze auf als eine normale Schraube.
3.
RundkopfSchraube M3x6 O 24x Inbus schraube Mutter M3 O 6x O 4x Abstandshalter M3 O 12x Vorbereitung des Chassis für den Wild Thumper: Folgende Teile werden benötigt Entferne die Abdeckung des WT Chassis. Befestige die 6 Motorstecker an die Motorkabel. Die ROTE Ader wird immer zur Frontseite des Steckers gepolt.
4.
fenprofile in dieselbe Richtung lation des roues, veillez à ce que s profils des pneus pointent dans la Montage der WT-CK1 n. Leiterplatte: n installeert zorg er dan voor dat de Ehe Siekant die op Montage wielen dezelfde wijzen.der Leiterplatte des Wild Thumpers starten sollten Sie das Chassis des Wild Thumpers teilweise entfernen um einen guten Zugang zu den Motoren zu bewerkstelligen.
Die Montage der Encoder: Folgende Teile werden benötigt: 6x Encoder-Platine 6x Abstandshalterscheibe 6x Encoderkabel 12x Schraube M2x10 Vor der Befestigung der Räder müssen wir die Encoder einbauen. Die Steckerstifte stecken am Encoder ein wenig heraus und müssen zuerst maßgerecht gestutzt werden. Schneiden Sie mit einem Seitenschneider die Konnektorstifte so kurz wie möglich ab. Die Stifte können nie ganz bis zur Leiterplatte abgeschnitten werden. Deshalb benötigen wir einen Abstandshalter.
Befestigung des Encoders: Folgende Teile werden benötigt: 1x WT Chassis 6x Encoderplatine 6x Abstandshalter 6x Schraube M3x12 6x Encoder Kabelsatz Befestigen Sie die Encoder zu den Motoren wie auf dem Foto angegeben. Schließen Sie auch die Encoderkabel an.
Befestigung der Abstandshalter für die Hauptplatine: Folgende Teile werden benötigt: 1x WT Chassis 1x Obere Leiterplatte 8x Abstandshalter Platzieren Sie die obere Leiterplatte auf dem WT Chassis und befestigen Sie dieses Teil mit den 8 Abstandshaltern, Endmontage: Folgende Teile werden benötigt: 1x WT Chassis 1x Leiterplatte 1x APC-220 1x Flachbandkabel (für die Frontplatine) Befestigen Sie die Leiterplatte auf der oberen Platte.
Wild Thumper Platine Front Platine Haupt Platine - 14 -
5. WILD THUMPER ELECTRONIK BESCHREIBUNG: 5.1. Stromversorgung Der Wild Thumper soll drahtlos gelenkt werden und deshalb müssen wir das System mit Akkus speisen. Die Batterien liefern eine 7,2 Volt Spannung. Da die Elektronik nur maximal 5 Volt verträgt müssen wir die Spannung mit einem Spannungsregler auf einen geringeren Wert herabsetzen. Um den geringen Spannungsbereich optimal zu regeln verwenden wir einen Regler L4940V5 von STMicroelectronics mit einem Spannungsabfall von nur 0,5 Volt.
5.4. Motorstrommessung Jedes Modul zur Motorstrommessung enthält einen Leistungswiderstand. Das Ohmsche Gesetz besagt dass der Strom durch den Leistungswiderstand sich proportional zum Spannungsabfall verhalten wird. Zur Begrenzung des Spannungsabfalls wählen wir einen geringen Widerstandswert, der in unserem Entwurf 0,1 Ohm beträgt. Bei diesem Wert ist der Spannungsabfall gering (d.h. 0,1V bei einer Stromstärke von 1A) und dieser muss daher angehoben werden.
5.5. Encoder Zur Geschwindigkeitsmessung jedes Einzelrades erhält Rad einen eigenen Encoder. Dieser Encoder besteht aus einem Magnetring mit einem HallSensor. Der Magnetring enthält 6 Magnetpolpaare. Ein drehender Magnetring erzeugt ein magnetisches Wechselfeld. Sobald der angewandte Hall-Sensor einen Südpol detektiert wechselt der Ausgang zu 5V und bei einem Nordpol zu 0V. Eine Pulsbreitenmessung der eingehenden Impulsen liefert die Geschwindigkeit jedes Einzelrades. 5.6.
5.7.1. Hauptkontroller Der Hauptkontroller verwaltet alle Aufgaben im Bereich des Wild Thumpers und trifft alle Entscheidungen, die anschließend gegebenenfalls zu Aktionen führen. Zu den Aufgaben des Hauptkontrollers gehören: • • • • • • Verarbeitung der eingehenden PC-Daten Zusammensetzung der Berichten, die an den PC versandt werden, wenn der Auftrag dazu vorliegt. Kommandos an die Motorkontroller zur Ansteuerung der Motoren. Der Betrieb der I²C Schnittstelle.
5.7.3. Kommunikation zwischen Haupt- und Motorkontroller (I2C) Die Kommunikation zwischen beiden Mikrokontroller verwendet das serielle I2C-Bussystem. Es handelt sich dabei um einem Zweidraht-Systembus, der einen Draht (SDA) für Daten und einen anderen Draht (SCL) für das Systemtaktsignal verwendet. Beide Datenleitungen sind mit einem Pullup-Widerstand auf der Stromversorgungsspannung angeschlossen. Im passiven Zustand ist der Signalpegel deshalb hoch.
In diesem Projekt verwenden wir Schieberegister in der Form des ICs HEF4094, das eine seriellen Schnittstelle mit drei Signalen bereitstellt: • • • Daten Taktsignal Latch Das zusätzliche „Latch“-Signal wird benutzt um Daten in die Ausgangsregister zu übertragen. Solange dieses Signal 0V ist werden Daten intern gespeichert aber noch nicht auf den Ausgang übernommen. Im folgenden Bild wird angedeutet wie die Daten übernommen werden, wobei Ausgang sechs aktiviert wird.
5.9. Das RF-Modul (d.h. das Radio Frequenz Modul) Das RF-Modul wird mit Hilfe einer seriellen Schnittstelle (UART) mit dem Hauptkontroller verbunden. Zur Anpassung der Onboard-Einstellungen wurde die SET-Signalleitung des Transceivers auch zum Mikrokontroller geleitet. 5.10. Sensoren Die Sensoren wurden auf zwei Leiterplatten aufgeteilt und zwar auf der vorderen Stoßstange des Wild Thumpers und auf der Leiterplatte mit dem Rest der Elektronikbaugruppen. Der Wild Thumper verfügt über nachfolgenden Sensoren.
6. DER ERSTE WT-PRAXIS TEST 1. 2. 3. Bauen Sie zuerst die Mechanik- und Elektronikmodule des Wild Thumpers mit Hilfe der Bauanleitung zusammen. Schließen Sie ggf. das 7.2 Volt Akkupack (oder ein Netzteil) an. Schalten Sie bitte das System mit dem Hauptschalter ein. Spannung anschließen Netzgerät Es gibt 2 Möglichkeiten zur Stromversorgung. Die einfachste Lösung ist der Anschluss eines Netzgeräts mit einer Spannung von 8 bis 12 Volt / 2 Ampere am DC Stecker.
7. Software Installation Als nächstes kommen wir zur Installation der Software. Die korrekt installierte Software wird für alle nachfolgenden Kapitel unbedingt benötigt. Es sind Administrator-Rechte erforderlich, also melden Sie sich ggf.
Wenn Ihr Browser dies aufgrund der Sicherheitseinstellungen nicht erlaubt, müssen Sie die Dateien zunächst in ein Verzeichnis auf Ihrer Festplatte speichern und dann von dort starten. Genaueres dazu steht auf der Software Seite des CD Menüs. Alternativ können Sie natürlich auch direkt in einem Dateimanager auf das CD-Laufwerk wechseln und die Software von dort installieren.
Wenn Sie Windows Vista oder Windows 7 benutzen, müssen Sie auf jeden Fall die neueste Version von WinAVR verwenden! Auch mit Windows 2000 und XP sollte es problemlos klappen. Falls nicht, können Sie eine der beiden älteren Versionen ausprobieren, die ebenfalls auf der CD zu finden sind (vor Neuinstallation immer bereits installierte WinAVR Versionen wieder deinstallieren!).
Sollte hier ein Pfad angezeigt werden, ist schon eine Version installiert. Geben Sie in diesem Fall einfach mal: > avr-gcc --version ein und schauen Sie sich die Ausgabe an. Sollte eine Versionsnummer kleiner als 3.4.6 angezeigt werden, müssen Sie diese alte Version auf jeden Fall deinstallieren. Wenn die Versionsnummer zwischen 3.4.6 und 4.1.0 liegt, können Sie erstmal versuchen ob Sie Programme kompilieren können (s. nachfolgende Kapitel) und erst wenn das fehlschlägt,die neuen Tools installieren.
Achtung: Sie sollten für die Installation noch genug freien Speicherplatz auf der Festplatte zur Verfügung haben! Temporär werden mehr als 400MB benötigt. Über 300MB davon können nach der Installation wieder gelöscht werden, aber während der Übersetzung braucht man den Platz. Viele der nachfolgenden Installationsschritte erfordern ROOT RECHTE, also loggen Sie sich ggf. mit „su“ als root ein oder führen Sie die kritischen Befehle mit „sudo“ o.ä. aus, wie man es z.B.
Automatisches Installationsskript Wenn man das Skript mit chmod ausführbar gemacht hat, kann es sofort losgehen: > cd ~/Wild Thumper > chmod -x avrgcc_build_and_install.sh > ./avrgcc_build_and_install.sh Die Nachfrage, ob man mit dieser Konfiguration installieren möchte oder nicht, können Sie mit „y“ beantworten. ACHTUNG: Das Übersetzen und Installieren wird dann je nach Rechenleistung Ihres Systems einige Zeit in Anspruch nehmen. (z.B.
Wenn Sie nicht wissen, was da genau falsch gelaufen ist, bitte alle Kommando-zeilenausgaben in einer Datei speichern und damit an den Support wenden. Bitte immer so viele Informationen wie möglich mitsenden! Dann wird es einfacher, Ihnen zu helfen. GCC für den AVR Der GCC wird ähnlich wie die Binutils gepatcht, übersetzt und installiert: > cd ~/Wild Thumper> bunzip2 -c gcc-4.1.1.tar.bz2 | tar xf > cd gcc-4.1.1 > patch -p0 < ../gcc-patch-0b-constants.diff > patch -p0 < ../gcc-patch-attribute_alias.
Achtung: bei –build=`./config.guess` darauf achten auch den Gravis, auch „accent grave“ genannt (à <-- den Strich da auf dem a! Neben der Backspace Taste – rechts oben auf der Tastatur, einmal mit Shift diese Taste drücken und danach die Leertaste) und kein normales Hochkomma oder Anführungszeichen zu benutzen, sonst klappt es nicht.
Manuelle Installation Wenn Sie den Compiler lieber von Hand einrichten wollen oder die Installation mit dem Skript nicht klappt, können Sie nach den Anweisungen im folgenden Abschnitt vorgehen. Die Beschreibung hier orientiert sich an diesem Artikel: http://www.nongnu.org/avr-libc/user-manual/install_tools.html der auch in der AVR Libc Dokumentation im PDF Format auf der CD zu finden ist: :\Software\Documentation\avr-libc-user-manual-1.4.5.
Binutils für AVR Nun müssen Sie den Quellcode der Binutils entpacken und ein paar Patches einspielen. Wir nehmen hier an, dass Sie alles ins Home Verzeichnis ~/Wild Thumper kopiert haben: > cd ~/Wild Thumper > bunzip2 -c binutils-2.17.tar.bz2 | tar xf > cd binutils-2.17 > patch -p0 < ../binutils-patch-aa.diff > patch -p0 < ../binutils-patch-atmega256x.diff > patch -p0 < ../binutils-patch-coff-avr.diff > patch -p0 < ../binutils-patch-newdevices.diff > patch -p0 < ../binutils-patch-avr-size.
Windows Das JRE 1.6 befindet sich für Windows in folgendem Ordner: :\Software\Java\JRE6\Windows\ Unter Windows ist die Installation von Java sehr einfach - Sie müssen nur den Setup starten und den Anweisungen auf dem Bildschirm folgen - fertig. Den nächsten Abschnitt können Sie überspringen. Linux Unter Linux ist die Installation meistens auch relativ problemlos möglich, bei einigen Distributionen kann es aber ein wenig Handarbeit erfordern.
Ob Java korrekt installiert wurde, können Sie in einer Konsole überprüfen, indem Sie den Befehl „java -version“ ausführen. Es sollte in etwa folgende Ausgabe erscheinen: java version “1.6.0” Java(TM) SE Runtime Environment (build 1.6.0-b105) Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing) Steht dort etwas ganz anderes, haben Sie entweder die falsche Version installiert, oder auf Ihrem System ist noch eine andere Java VM installiert.
Diese lange -D Option ist notwendig, damit die JVM auch alle verwendeten Bibliotheken finden kann. Unter Windows braucht man das aber nicht und kann einfach die .exe Datei zum Starten verwenden und für Linux gibt es ein Shell Skript „RobotLoader. sh“. Das Skript muss evtl. zunächst noch ausführbar gemacht werden (chmod -x ./RobotLoader.sh). Danach kann man es in einer Konsole mit „./RobotLoader.sh“ starten.
8. Programmer und Loader Zum Laden eines beliebigen HEX Wild Thumper-Programms vom PC in den Wild Thumper verwenden wir den USB Programmier adapter und unsere RobotLoader Software. Der im Lieferumfang enthaltene lose USB-Port-Adapter Sender/Empfänger (Transceiver) wird einerseits an einem USB-Port des Computers angeschlossen und andererseits an den Prog/UART- Port der Wild ThumperPlatine. Der Ladevorgang eines Programms in den Wild Thumper überschreibt automatisch das bereits zuvor vorhandene Programm.
8.1. Der RobotLoader Wie bereits gesagt wurde der RobotLoader entwickelt um komfortabel neue Programme in den Wild Thumper und alle unsere Roboter übertragen (sofern diese über einen Mikrocontroller mit kompatiblem Bootloader verfügen). RobotLoader Mit dem neuen Programmieradapter kan den Wild Thumper drahtlos verbinden. Weiterhin sind ein paar nützliche Zusatzfunktionen integriert, wie z.B. ein einfaches Terminalprogramm.
8.2. Anschluss des USB Interfaces – Windows Linux Anwender können beim nächsten Abschnitt weiterlesen! Zur Installation des USB Interfaces gibt es mehrere Möglichkeiten. Die einfachste Möglichkeit ist es, den Treiber VOR dem ersten Anschließen des Geräts zu installieren. Auf der CD befindet sich ein Installationsprogramm für den Treiber. Für 32 und 64 Bit Windows 7, XP, Vista, Server 2003 und 2000 Systeme: :\Software\USB_DRIVER\Win2k_XP\CDM_Setup.
Wenn dies bei Ihnen der Fall ist, erscheint (unter Windows) für gewöhnlich ein Dialog zum Installieren eines neuen Gerätetreibers. Sie müssen dem System dann den Pfad angeben, unter dem es den Treiber finden kann. Bei Windows 2k/XP muss man erst auswählen, den Treiber manuell zu installieren und natürlich keinen Webdienst o.ä. zu suchen. Der Treiber befindet sich in unserem Fall auf der CD in den oben genannten Verzeichnissen. Also einfach das jeweilige Verzeichnis für Ihre Windows Version angeben und evtl.
ODER alternativ: Start --> Einstellungen --> Systemsteuerung --> Leistung und Wartung --> System --> Hardware --> Gerätemanager und dort in der Baumansicht unter “Anschlüsse (COM und LPT)” nachsehen ob ein “USBSerial Port (COMX)” zu sehen ist - wobei das X für die Portnummer steht oder unter „USB-Controller“ nach einem „USB Serial Converter“ suchen! Treiber später wieder Deinstallieren Sollten Sie den Treiber jemals wieder deinstallieren wollen (Nein, das tun Sie jetzt bitte nicht - ist nur ein Hinweis fall
8.3. Anschluss des USB Interfaces – Linux Windows Anwender können diesen Abschnitt überspringen! Bei Linux mit Kernel 2.4.20 oder höher ist der benötigte Treiber schon vorhanden (zumindest für das kompatible Vorgängermodell FT232BM des Chips auf unserem USB Interface, dem FT232R), das Gerät wird automatisch erkannt und Sie brauchen nichts weiter zu tun. Falls es doch mal Probleme gibt, erhalten Sie Linux Treiber (und Support und auch evtl. neuere Treiber) direkt von FTDI: http://www.ftdichip.
8.4. USB Interface Testen und RobotLoader starten Als nächstes testen wir den Programmupload über das USB Interface. Verbinden Sie bitte das USB Interface mit dem PC (Immer zuerst mit dem PC verbinden!) und danach über das 10-pol. Flachbandkabel mit dem “PROG/ UART” Anschluss des Wild Thumpers! (Der Wild Thumper MUSS ABGESCHALTET SEIN!).
8.5. Port öffnen – Linux Unter Linux wird der USB-Seriell Adapter wie ein normaler Comport behandelt. Die D2XX Treiberinstallation von FTDI unter Linux wäre nicht ganz so einfach und die normalen Virtual Comport (VCP) Treiber sind in aktuellen Linux Kerneln sowieso schon enthalten.
8.6. SELBSTTEST Sobald der Wild Thumper eingeschaltet wird leuchtet die Spannung-LED (1) Grün. HDR 3 JP3 Wann kein program geladen ist blinkt LED 13. Mit ein program geladen leuchtet LED 13. HDR 14 JP4 Main Prozessor programieren mit UART HDR 14 und Jumper JP4 eingesteckt Motor Prozessor programieren mit UART HDR 3 und Jumper JP3 eingesteckt Die Status-LED 8, 9 und 10 blinkt beim Upload einer HEX Datei in Main Prozessor. Die Status-LED 6 und 7 blinkt beim Upload einer HEX Datei in Motor Prozessor.
In dieser Datei befindet sich auch das Selbsttestprogramm im hexadezimalen Format – daher werden solche Programmdateien auch „Hexdateien“ genannt. Die eben ausgewählte Datei taucht anschließend in der Liste auf. So können Sie später auch noch andere Hexdateien von Ihren eigenen Programmen und den Beispielprogrammen hinzufügen Der Robot Loader kann auch verschiedene Kategorien von Hexdateien verwalten. Damit lassen sich die Dateien übersichtlicher sortieren.
9.0. Programmierung des WT Nun kommen wir so langsam zur Programmierung des Roboters. Einrichten des Quelltexteditors Erstmal müssen wir uns eine kleine Entwicklungsumgebung einrichten. Der sog. „Quelltext“ (auch Quellcode oder engl. Sourcecode genannt) für unsere C Programme muss ja irgendwie in den Computer eingegeben werden! Dazu werden wir natürlich auf gar keinen Fall Programme wie OpenOffice oder Word verwenden! Vielleicht ist das nicht für jeden offensichtlich, deshalb wird es hier explizit betont.
Siehe Seite xx „Beispielprojekt öffnen und kompilieren“ wie Sie ein Beispiel Programm öffnen können! Wenn Sie ein Beispielprojekt geöffnet haben, sollte es im PN2 Schirm etwa so aussehen: Datei „Wild Thumper Examples.ppg“. Das ist eine Projektgruppe für PN2, die alle Beispielprogramme sowie die WT Library in die Projektliste („Projects“) lädt.
Beispielprojekt öffnen und kompilieren Jetzt probieren wir gleich mal aus, ob auch alles richtig funktioniert und öffnen die Beispielprojekte: Im Menü „File“ den Menüpunkt „Open Project(s)“ wählen. Es erscheint ein normaler Dateiauswahl Dialog. Hier suchen Sie bitte den Ordner „WTExamples\“ im Ordner in dem Sie die Beispielprogramme gespeichert haben. Öffnen Sie nun bitte die Datei „WTExamples .ppg“.
Darauf gehen wird später noch genauer ein (es gibt auch eine Version dieses Programms OHNE Kommentare – damit man mal sieht, wie kurz das Programm eigentlich ist. Die Kommentare blähen das schon ziemlich auf, sind aber zur Erklärung notwendig. Die unkommentierte Version ist auch praktisch, um den Code in eigene Programme zu kopieren!). Zunächst wollen wir nur ausprobieren, ob das Übersetzen von Programmen korrekt funktioniert. Es sollten oben im Tools Menü die beiden eben angelegten Menüeinträge (s. Abb.
Es sollte nach dem Aufruf des MAKE ALL Menüpunktes folgende Ausgabe erscheinen (hier jedoch stark gekürzt! Einiges kann natürlich etwas anders aussehen): > „make.exe“ all avr-gcc -mmcu=atmega644pa -Wall -gdwarf-2 -Os -std=gnu99 -funsignedchar -funsigned-bitfields -fpack-struct -fshort-enums -MD -MP -MT WildThumperLib_Main.o -MF dep/WildThumperLib_Main.o.d -c ../WildThumperLib_Main.
Wichtig ist ganz unten das „Process Exit Code: 0“. Das bedeutet, dass es beim Übersetzen keinen Fehler gegeben hat. Steht dort ein anderer Code, gibt es einen Fehler im Quellcode, den man korrigieren muss, bevor es klappt. Der Compiler gibt in diesem Fall weiter oben diverse Fehlermeldungen aus, in denen man mehr Infos dazu findet.
Bei dem Beispielprogramm oben sind also noch 58998 Bytes frei. Das eigentlich recht kurze Beispielprogramm WTExample_LED.c ist übrigens nur deshalb schon so groß, weil die WildThumperBaseLibrary mit eingebunden wird! Also keine Sorge, es ist genug Platz für Ihre Programme vorhanden und so kleine Programme brauchen normalerweise nicht so viel Speicher.
9.1. Aktivieren der drahtlosen Steuerung in WT Es gibt auch bereits vorab kompilierte Programme (HEX Files) auf der CD. Diese Hex-Dateien kann man mit dem RobotLoader direkt in den WT- Prozessor laden. ACHTUNG ! DER WILD THUMPER HAT ZWEI PROZESSOREN ! Vergessen Sie Programjumpers JP3 und JP4 nicht die sind Absolut notwendig bei Programmieren! Als Beispiel laden Sie die HEX-Datei für die Selbst Test in den Hauptprozessor (Wild_Thumper_Main.HEX) undMotorprozessor (Wild_Thumper_Motor.
9.1. Installation der drahtlosen Steuerung In Kapitel 10 wird die komplette Beschreibung der drahtlosen Steuerungsoftware dokumentiert. Vor der Anwendung müssen Sie diese Software auf Ihrem PC installieren. Kopieren Sie die WT-Anwendung auf Ihre Festplatte oder installieren Sie die Software direkt von der CD. Start der Anwendung Falls Sie mit einer drahtlosen Kamera arbeiten wollen (Diese muss bereits Installiert sein auf Ihre PC!) sollten Sie diesen der Anwendung hinzufügen.
10. WT DRAHTLOSE STEUERUNG 10.1. Übersicht der drahtlosen Steuerung Die Anwendung verfügt über zwei Verbindungen zur Außenwelt und zwar die serielle USB-Verbindung mit dem APC-220 Transceiver und die Verbindung zum Kamera-Modul. Die Anwendung selbst besteht aus verschiedenen Funktionen und eine Benutzerschnittstelle, die im nachfolgendem Blockschaltbild erläutert wird.
Nachfolgende Reiter wurden vorbereitet: Der Reiter Main: Der Reiter ‘main’ umfasst folgende Funktionen: • Die Kommunikationsverbindung mit dem APC Dongle (USB) • Die Ansteuerung des Wild Thumpers • Die Darstellung der Messdaten (Stromstärke, Geschwindigkeit, usw..) Der Reiter Test: Dieser Reiter wurde zum testen aller Funktionen des Wild Thumpers. Folgende Tests wurden implementiert: • Jeder Motor kann einzeln angesteuert werden, wobei die Stromstärke und die Geschwindigkeit des Motors dargestellt werden.
10.2. USB in Visual Basic Die APC220 kann erst mit der Anwendung kommunizieren nachdem eine Verbindung aufgebaut worden ist. Dazu verwandeln wir die serielle UART-Verbindung des APC220 mit einem FTDI-Chip in eine USB-Verbindung. Der Vorteil dieses Chips liegt nun darin dass dieses neu kreierte „USB-Gerät“ als Gerät behandelt wird, das auf einem virtuellen COM-Port angeschlossen ist. Nach der Inbetriebnahme dieses seriellen Ports können wir die Port-Parameter auf einfachster Weise festlegen. 10.3.
10.5. Testfunktionen Zum Testen des Wild Thumpers haben wir unter dem Reiter „Test“ ein Testpult entworfen, das Tests für alle Funktionen und Teile des Roboters vorsieht. Nachfolgende Teile des Wild Thumpers können nun getestet werden. Motortest: Jeder Motor kann einzeln getestet werden, wobei das Testergebnis die Stromstärke und Geschwindigkeit dieses Motors anzeigt. Sie können den Motor im Vorwärts oder Rückwärtsgang schalten und die Geschwindigkeit regeln. LED-Test: Alle LEDs können überprüft werden.
Sensortest: Der Status mehrerer Sensoren wird im Reiterbereich „Test“ dargestellt, so dass Sie als Benutzer den Betrieb aller Sensoren leicht überprüfen können. Kommunikationstest: Es stehen zwei Kommunikationstests zur Verfügung: ein RF-Test und ein I²C- Test. Der RF-test testet die drahtlose Verbindung, wobei zunächst ein DatenPaket zur Generierung eines RF-Tests an den Wild Thumper abgesandt wird.
10.6. Einstellungen für APPCON APC220 Aus der Anwendung heraus kann man die Einstellungen für das APC220Modul anpassen beziehungsweise lesen.
Zum Abschluss Wir hoffen, dass unsere Roboter Ihnen auf den Weg in die Roboterwelt geholfen haben! Wie unsere japanischen Freunde glauben auch wir, dass Roboter nach den Computern und Mobiltelefonen die nächste technologische Revolution bilden werden. Diese Revolution wird auch neue wirtschaftliche Impulse auslösen. Leider haben Japan, andere asiatische Länder und auch die USA, Europa dabei längst überholt.
APPENDIX - 62 -
- 63 GND-DC 2 Watt resistors 4 GND JK2EDGRC-508-4 JK2EDGRC-508-4 J3 J2 3 1 Batteries S1 5 100n C5 Vbat D2 1N1004 TP1 6 C6 LED2 RED-ERROR+/47u/16v R2 3k3 GNDGND GND 1000u/16v C4 100n C7 9-6-2011 14:42:15 f=0.72 O:\Techniek\Hein\Wild Thumper Final\PCBDesign\WT-Controlboard V1.1\Wild Thumper.
C69 100n C14 100n C70 R9 GND GND 28 29 27 4 5 17 38 1 +5V R26 0R (PCINT7/ADC7)PA7 (PCINT6/ADC6)PA6 (PCINT5/ADC5)PA5 (PCINT4/ADC4)PA4 (PCINT3/ADC3)PA3 (PCINT2/ADC2)PA2 (PCINT1/ADC1)PA1 (PCINT0/ADC0)PA0 1 2 3 15 1 2 3 15 4094D STR D CLK OE IC12 4094D STR D CLK OE IC10 QS QS* Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 QS QS* Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 (PCINT31/OC2A)PD7 (PCINT30/OC2B/ICP)PD6 (PCINT29/OC1A)PD5 (PCINT28/XCK1/OC1B)PD4 (PCINT27/TXD1/INT1)PD3 (PCINT26/RXD1/INT0)PD2 (PCINT25/TXD0)PD1 (PCINT24/
1 100n 3 VOUT 1u C53 2 GND 100n C71 10u/16v C73 GND GND 7 6 18 39 C57 12p Q2 16Mhz GND 28 29 27 4 C56 12p 8 47k R42 5 17 38 +5V 1 3 5 4 9 2 7 6 8 10 +5V 2 JTAG-2X5HDR GND TCK GND TDO VCC TMS RESET VCC TDI GND HDR13 LED8 LED9 LED10 LED11 LED12 LED13 GRN GRN ORG ORG RED RED GND GND MCP1541 VSS VIN U10 C72 100n 100n R47 R48 R49 R51 R52 R55 1 3 5 3 ISP-2X3HDR MISO VCC SCK MOSI RESET GND HDR11 +5V GND 2 4 6 R57 4k7 9 10 4 5 6 7 14 13 12 11 (PCINT31/OC2A)PD7
3 4 5 platine) D.
X1 USB 1 2 3 4 DC-JACK 10n C1 + GND + VIN VOUT VCC GND 22uF C4 GND 2 +3V3 100n C6 100n C2 ferrite bead 600 ohm 100Mhz L1 100n 22uF 3 C5 C9 1 3 2 1 GND IC2 REG1117 C3 - 67 100n J1 25 15 16 17 27 28 19 20 4 C8 FT232RL GND USBDP USBDM 3V3OUT OSCI OSCO RESET VCC VCCIO IC1 470R R2 470R R1 100n + VCC GND GND GND TEST CBUS0 CBUS1 CBUS2 CBUS3 CBUS4 TXD RXD RTS CTS DTR DSR DCD RI Blue LED_TX Blue LED_RX C10 22uF 7 18 21 26 23 22 13 14 12 1 5 3 11 2 9
- 68 -
- 69 -