Unabhängig von den Sensoren macht mir am meisten Sorgen wie ich die zurückgelegte Strecke (Richtung, Distanz etc.) anhand der Zeit und der Geschwindigkeit bestimmen kann?
Wie bekomme ich die Geschwindigkeit raus?
Hi Leute,
ich stecke gerade in der Mitte der Planung für mein Roboterprojekt.
Der Roboter soll in 2 Phasen entwickelt werden und über 2 Hauptmodi verfügen.
Phase 1:
Der Roboter soll sich Remote (von einem PC oder Smartphone) steuern lassen, dh auf Kommandos wie VOR, ZURÜCK, RECHTS, LINKS und Geschwindigkeitsanpassungen etc. reagieren.
Die Kommunikation (Empfang der Kommandos) soll dabei über eine WiFi Verbindung (alternativ später vllt irgendwann mal 3G) erfolgen.
Normalerweise würde ich hier auf etwas wie HTTP basierte Kommunikation zurückgreifen, bin mir aber noch unsicher welche Optionen es gibt.
Während der Roboter gesteuert wird soll er fahrbare Wege "lernen" (auf einer virtuellen Karte "speichern") und Hindernisse erkennen (und ebenfalls "abspeichern").
Kernfrage ist ob diese Karte auf dem Roboter hinterlegt wird oder auch auf dem Rechner/Smartphone welches steuert. Tendenz ist dies auch auf dem Roboter zu hinterlegen.
Eine Idee wäre daher auf dem Roboter einen kleinen Webserver, evtl. mit PHP laufen zu lassen so dass die Kommandos zB via REST gesendet werden können und die Karte via REST abgefragt oder HTML visualisiert werden kann; Frage ist nat. ob hierzu die Rechenpower ausreicht.
Während der Fahrt kann eine Kamera und ein Mikrofon zugeschaltet werden um die Fahrt live zu verfolgen.
Dies also erstmal die Grundidee.
Phase 2:
Der Roboter der nun virtuelle Karten gelernt hat soll nun von einem beliebigen Punkt A nach B geschickt werden können und den Weg ohne aktive Steuerung selbst zurücklegen.
So, dies also er Plan.
Vorweg: Informatiker, etwas Elektronik/Digitaltechnikkenntnisse, aber noch nicht viel mit Robotik und/oder Arduino gemacht.
Aber ich habe Zeit und bin experimentierfreudig smiley
Nun, zum Equipment:
1) Chassis/Fahrzeug
Ich benötige ein Chassis und denke dabei an ein geräumiges Fahrzeug in/auf dem ich problemlos mein Equipment unterbekomme; evtl. falls die Rechenleistung nicht reicht auch ein zweites Board etc.
Das Chassis sollte schon mit ansteuerbaren Antrieb (optimal auch Geschwindigkeitsregelbar) ausgestatt sein.
Es gibt dafür ja fertige Kits; manche nehmen aber wohl auch Kinderspielzeug und bauen es um.
Empfehlungen?
VIelleicht sowas?: http://www.amazon.de/Amewi-22053-Mon.../dp/B002AR0LUU
2) Board
Für Phase 1 würde ich als Board erstmal das Mega ins Visier nehmen.
Im Auge habe ich: http://www.watterott.com/de/Arduino-Mega-2560 oder http://www.watterott.com/de/Arduino-Mega-ADK (siehe unten)
3) Shields
a) WiFi - doch welches und warum?
WiFi sollte sich eine IP über DHCP holen können; Verschlüsselung wie WEP und WPA1/2 wäre toll.
Im Auge habe ich: http://www.watterott.com/de/Arduino-RedFly-Shield oder http://www.watterott.com/de/SparkFun-WiFly-Shield
b) Entfernungs/Hindernisssensor?
IR/Ultrasonic? Was ist besser?
Ich bräuchte ja vermutlich min. 4 (für jede Seite einen)
Empfehlungen?
Im Auge habe ich: http://www.watterott.com/de/Ultrasch...fernungsmesser
c) "Webserver"?
Empfehlungen?
d) Speicher für die Karte?
Evtl. für Speicherung auf SD Karte?
Empfehlungen?
Im Auge habe ich: http://www.watterott.com/de/MicroSD-...akout-board-v1
Macht das Sinn: http://www.watterott.com/de/Adafruit...Logging-Shield
e) Video/Audio?
Empfehlungen?
Audio: http://www.watterott.com/de/Breakout...-MEMS-Mikrofon oder http://www.watterott.com/de/Breakout...nsatormikrofon
Was ist ein Breakoutboard? smiley
Video: http://www.watterott.com/de/LinkSpri...-TTL-Interface
Für Phase 2 bräuchte ich dann wohl noch mehr Sensoren, insb. Geschwindigkeitssensoren, Hindernisssensoren, etc.
Was denkt Ihr würde man da normalerweise brauchen?
Sicher mal irgendwas um die Richtung festzustellen: http://www.watterott.com/de/MicroMag...n-Magnetometer
Und die Geschwindigkeit: Mit was misst man die?
Oder eben GPS, aber ds geht ja dann in der Wohnung nicht.
Reicht die Power eines Mega für das Projekt aus bzw. welche Alternativen (2 Boards etc.) gibt es?
Eine Idee wäre es sonst mein Android Smartphone für den Empfang der Kommandos, Abspeicherung der virtuellen Karte und Anzapfung von Video/Audio irgendwie mit dem Board zu verbinden.
Um am Anfang etwas mit dem Arduino warm zu werden, gibt es da gute "Lernkits" mit dem notwendigen Anfangsequipment wie "Steckplatinen", "Gekabel", paar LEDs und Widerstände etc.?
Und noch eine ganz dumme Frage hinterher? Wie verbinde ich die Shields am besten mit dem Board?
Danke!
Geändert von AnNaRF (04.08.2012 um 01:30 Uhr)
Unabhängig von den Sensoren macht mir am meisten Sorgen wie ich die zurückgelegte Strecke (Richtung, Distanz etc.) anhand der Zeit und der Geschwindigkeit bestimmen kann?
Wie bekomme ich die Geschwindigkeit raus?
Um die Geschwindigkeit herauszufinden musst du wissen wie schnell sich deine Räder drehen und welchen Umfang sie haben. Die Umdrehungen kannst du ganz leicht per Lichtschranke messen. Geschwindigkeit ist dann Drehzahl der Räder mal Umfang : V = D*U
Gruß toter_fisch
Ah... wie beim Fahrradcomputer - darauf bin ich noch garnicht gekommen.
Welche Lichtschranken gibt es denn da so um das realisiert zu bekommen wenn ich zB das oben von mir gewählte Kinderspielzeug (RC Auto) als Basis nehme?
MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!
Der Roboter kann unterschiedlich schnell fahren und je nach Steigung/Neigung und Untergrund würde auch ein ansonsten nahezu gleichschnell fahrender Roboter unterschiedlich schnell fahren.
Zudem dürfte bei dem o.g. Projekt klar sein dass es schwierig wird bekannte Strecken abzustecken; das funktioniert also mit einfach v = s/t sicher nicht
Die Umdrehungen der Räder zu messen klingt sinnvoll; alternative wäre das aus Beschleunigungen herauszurechnen, aber das dürfte sehr fehleranfällig werden.
Bis auf welche Lichtschranken man hierfür verbauen könnte (insb. in Anbetracht des Chassis).
Und genau diesbezügl. bräuchte ich mal einen Tipp.
Hallo AnNaRF
willkommen im Forum.
Ziemlich ähnlich dem Tacho/Kilometerzähler beim Fahrrad"computer". Das Stichwort dazu heißt Odometrie (griechische Wortstämme: métron => messen und hodós => Weg).
Eine Möglichkeit ist, das Signal direkt an der Motorwelle zu messen, so mache ich es (klick). Ist relativ genau - aber da steckt dann natürlich das Getriebespiel mit drin. Macht nix, die Odometrie auf diese Weise ist sowieso nicht sehr genau, weil Du den Schlupf der Räder nie genau einplanen kannst (Ausnahme: ein unbelastetes Rad hinterherziehen - machen die Autoentwickler manchmal bei Testfahrten). Meine Lichtschranke ist der Größe meiner Motoren angepasst - es gibt natürlich auch Dinge, die nicht so fisselig klein sind. In meinem WALL R - ein 1:20-RC-Car den ich umgebaut habe auf NUR-Controller-gesteuert - messe ich direkt am Rad. Da kommt es mir auf die Genauigkeit nicht so sehr an. Klick hier für Thread/Video.
So - nun wäre das nur die Hardware zur Geschwindigkeitsmessung. Ich habe die Lichtschranken an einem interruptfähigen Controllereingang und detektiere auf eine Flanke. Die zugehörige ISR liest dann nen Timer aus (bei mir ist das die interne Borduhr) - daraus rechne ich die Geschwindigkeit und regle meinen Motor exakt auf die Vorgabe (nicht beim WALL R - wie geschrieben). Es gibt da unterschiedliche Ansätze.
Hindernissensoren nehme ich relativ einfache, selbst "gezimmert" - auf IR-Basis (klick wieder). Vorteil : die sind mit besser als 1 kHz deutlich schneller als das üblicherweise Käufliche. Nachteil: es ist keine Messung sondern nur ne Schätzung, aber mein WALL R fährt damit an die 1,5 m/s - und donnert nur sehr selten wo an.
Viel Erfolg.
Ciao sagt der JoeamBerg
Ich vermute, das du die v ständig messen willst, dann hat es der toter_fisch schon gut erklärt. Anstatt einer Lichtschranke könntest du zum Drehzahlmessung eines Rades auch z.B. ein kleines Magnet am Rad und Reedkontakt bzw. Hallsensor probieren.
MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!
Lesezeichen