Entwicklung: RoPi - Autonomer Roboter mit RaspberryPI

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Vorab:
    Da ich bisher nur den Plan entwickle und durchdenke, hab ich diesen Thread im Offtopic Bereich erstellt, da es noch kein richtiges Projekt ist.

    Ich muss gestehen das ich etwas verwirrt bin, hier gibt es zwar schon etliche Roboter Projekte aber so wirklich steig ich da nicht durch, was man benötigt und wie das mit der Software aussieht etc.


    Da ich zZt etwas Langeweile hab und auch etwas Abstand vom TinyTX Projekt brauche, hab ich mir halt überlegt was ich alternativ mal basteln könnte.

    Dazu hät ich gern Eure Meinung sowie Verbesserungsvorschläge gehört :danke_ATDE:


    Technischer Ablauf:

    Auf der Roboter Plattform sind ein bis zwei Arduino's verbaut die das ansteuern der Sensoren und Motoren übernehmen, und an den RaspberryPI angeschlossen sind.
    Die Arduino's schicken ihre Daten, was sie machen oder von den Sensoren an den RaspberryPI, aber entscheiden selber nichts sondern nur der PI.
    Der RaspberryPI entscheidet dann zum Beispiel, dass das Objekt (eine Wand oder ein anderes Hindernis) zu nah ist und übermittelt an den jeweiligen Arduino mit der Motorsteuerung entsprechende Befehle das Objekt zu umfahren.

    Zur Orientierung bedarf es mindestens einen Ultraschall Sensor um Hindernisse zu erkennen, bei nur einem Ultraschall Sensor auch einen Pan/Tilt.
    Desweiteren benötigt man einen Kompass um die Himmelsrichtung, in die der Roboter guckt, bestimmen zu können und entsprechend zu wissen wo genau sich ein Hindernis befindet usw.
    Man sollte sich aber auch auf mehrere Sensoren stützen, da nur eines nie perfekt präzise ist. Zusätzlich kämen also auch noch Odometriedaten in Frage und damit diese möglichst genau sind sollte die Roboter Plattform Reifen statt Ketten haben, denn Ketten haben einen gewissen Schlupf und rutschen...

    Das schwierigste ist die Software auf dem PI.
    Die Arduino's brauchen nur die Sensoren und Motoren ansprechen, die Daten über zB Serial verschicken und auch auf Befehle reagieren.
    Der RaspberryPI muss diese Daten möglichst schnell und permanent empfangen (quasi in Echtzeit), aber muss gleichzeitig auch in der Lage sein etwas zurück zu schicken also Befehle für die Arduino's.
    Desweiteren möchte man den Roboter ja auch mal selber steuern bzw dem PI Befehle geben die er dann umsetzt.. Dafür benötigt man bei der PI-->Arduino Kommunikation also auch noch eine Schnittstelle um über WLAN Befehle umzusetzen. Dabei erscheint mir der Weg über einen Socket-Server am einfachsten.


    Im Punkt Wegfindung und Lernmodus will ich halt sowas wie folgendes erreichen: http://www.societyofrobots.com/images/sensors_IRSLAM.gif

    Dabei wird das sog. SLAM (Simultaneous Localization And Mapping) verwendet, was Bestandteil der aktuellen Robotik Forschung und sehr komplex ist...

    Um also nicht gleich von 0 auf 100 durchzustarten werde ich zunächst mit dem sog. wavefront algorithm anfangen (der Link beschreibt das recht gut mit Codebeispielen)

    Soweit ich das verstanden habe wird das in etwas so aussehen:

    Ein Raum wird in viele kleine Quadrate eingeteilt (sog. Nodes), die von der Größe her die Abmessungen des RoPi's entsprechen (so lässt es sich präziser navigieren) und als X und Y Koordinaten festgelegt werden.
    Dann werden die Quadrate in denen Objekte bzw Hindernisse stehen rot markiert bzw mit einer 1 versehen. Quadrate mit einer 0 darf er befahren, mit einer 1 nicht.

    Im Algorithmus sind diese Werte allerdings etwas anders:
    Nicht befahrbare Quadrate haben den Wert 255
    Befahrbare Quadrate haben den Wert 0
    Der Roboter selbst hat den Wert 254
    Das Ziel wohin der Roboter fahren soll hat den Wert 1

    Der Algorithmus fängt nun ab seiner Position (oder oben rechts) an zu zählen und geht jede einzelne Node Wellenförmig durch, ignoriert alle 255'er Werte und natürlich auch sich selbst, zählt die dann zusammen und legt den kürzesten Weg zum Ziel fest (geringste Zahl an Nodes die durchfahren werden müssen).

    Auch wird der RoPi ausgebremst wenn man nach jeder Fahrbewegung stehen bleiben muss um den Bereich in Fahrtrichtung nach unbekannten Objekten zu scannen.. Aus diesem Grund möchte ich den vorderen Bereich mit 3 Ultraschall Sensoren verstehen (einer Mittig und die anderen im 45° Winkel jeweils zur Seite) und diese ständig auslesen bzw in Realtime auf Veränderungen reagieren können.


    Spoiler anzeigen

    Ich bin mir nicht sicher ob man unbedingt ein RaspberryPI Modell-B verwenden muss, Modell-A hätte auch einen USB Port für WiFi und als Camera hätte ich zunächst an die PiCam gedacht. Auf eine LAN Buchse könnte der Robo auch verzichten und mit nur 500mA (bzw vermutlich auch ein bisschen weniger wenn man HDMI usw abschaltet) würde auch der Akku länger halten.

    Auf den PI würd ich dann vermutlich das RPi-Shield-Bridge von Watterott aufstecken um eine gute Basis für Erweiterungen zu haben wo ich auch den Motortreiber in der Prototyping-Area anbringen könnte...
    Möglicherweise wäre auch das RIO von Roboteq eine interessante Alternative..


    Als Stromversorgung würde ich vermutlich die neuen LiFePO4 verwenden da die nicht so empfindlich wie Lithium-Ionen-Akkumulator sind, vorallem was das explodieren angeht :D - oder liege ich da falsch :huh:
    Was mir dabei aber noch Kopfschmerzen bereitet ist das Balancing der einzelnen Zellen...
    Dabei dachte ich zB an die 4S4P Konion 2250, oder taugen die nix :huh:

    Zur Stabilisierung der Spannungsversorgung dachte ich zunächst an den Pololu Step-Up/Step-Down Spannungsregler S7V7F5. Der liefert konstant 5V bei einer input voltage von 2.7 bis 11.8V und liefert 1A sogern die input voltage über 5V liegt und 500mA wenn sie unter 5V liegt.... Oder kennt ihr was besseres :huh:

    Denkbar wäre auch der Einsatz eines weiteren Step-Downs: http://www.amazon.de/dp/B00ENE55SQ?tag=psblog-21 [Anzeige]
    Allerdings wird dann soviel herum gewandelt das dabei vermutlich mehr Verlust als Nutzen entsteht :huh:


    Als Chassis dachte ich dabei zunächst ans Rover 5 Chassis, da das Gehäuse recht günstig ist und zumindest von unten geschlossen ist und nichts "reinspritzen" könnte... Auch klingen die Rad-encodern zunächst nützlich zu haben..
    So ganz zu frieden bin ich damit aber noch nicht :mad_GREEN:


    Als Motortreiber dachte ich da zunächst an den von Toshiba. Der hat 4 Pins für die Drehrichtung und 2 für PWM.
    Hab auch schon an eine Lösung via Arduino-NANO nachgedacht aber das zunächst wieder verworfen..
    Eine Alternative könnte auch der DRV8835 sein.


    Soviel zur Grundausstattung.


    Worüber ich mir jetzt noch nicht ganz im klaren bin ist was für Sensoren man benötigt. Welche sind für welchen Einsatz am besten geeignet usw :huh:

    Zum einen sollte auch alles so kompakt wie möglich sein aber auch so wenig Gewicht wie möglich haben. Klobige Sensoren die irgendwo heraus ragen möchte ich eigentlich vermeiden.

    Da der Roboter sich später auch noch (zumindest ein bisschen) Autonom bewegen können soll, dachte ich dabei auch an eine Kombination aus:

    • Navilock 507ETTL GPS Empfänger (über UART) zur Bereitstellung der GPS Position umgerechnet auf Grundstückkordinaten, Datum, Uhrzeit - Alternativ mit DGPS Support: NL-652ETTL
    • Beschleunigungssensor BMA020 (über I2C oder SPI)
    • Odometriedaten

    • interne Karte vom Grundstück bzw Wohnung

    Durch die Kombination mehrerer Daten ist es theoretisch möglich auf 0.25m² genau zu erfassen wo sich der RoPi befindet.. Limitiert wird diese Fähigkeit durch das GPS, wenn ein schlechtes Signal erkannt wird, wird nur nach Odometrie gefahren. Problematisch wird es wenn das GPS durch Reflektionen ein gutes Signal, aber mit falscher Position liefert, das kann derzeit nicht erkannt werden... Aber darum muss ich mich später kümmern.

    Auch sollte sich der RoPi sich selber aufladen können, ich brauch also auch eine Überwachung und Übermittlung der Zellenspannungen sowie eine Vorrichtung wo er sich selber wieder aufladen könnte.

    Zusätzlich würde ich dann aber natürlich auch noch sowas wie Abstandsmessungen benötigen damit er nirgends gegen fährt.
    Da ich ihn aber auch gerne draußen einsetzen würde, sollte er auch herankommende Objekte (Fußgänger, Fahrradfahrer, Autos) erkennen - aber eins nach dem andern also darum kümmer ich mich später ;)
    Da weiß ich noch nicht genau Welche Sensoren besser geeignet wären aber vorallem auch Wieviele ich davon brauche und Wo diese angebracht werden müssten


    Auch würde ich gerne eine Spracherkennung und Steuerung über Sprachbefehle einbauen, dafür muss ich mir noch ein vernünftiges Mikro raus suchen (da hab ich noch nix gescheites gefunden, was auch bei 10m Entfernung eine genügende Empfindlichkeit aufweißt)


    Folgende Seiten haben mich bei diesem Plan inspiriert:
    http://www.robotiklabor.de/roboter/
    http://letsmakerobots.com/node/38610
    http://blog.dawnrobotics.co.uk/
    http://blog.dawnrobotics.co.uk/2014/01/using-…i-camera-robot/


    Wegen der Software bin ich da zZt absolut ratlos, nicht wegen der Steuerung ansich sondern vielmehr bezüglich Autonomi - da bräuchte ich auch ein bisschen hilfe :helpnew:


    Vorläufige Einkaufsliste:

    Um erst mal eine Basis zu haben und die Software fürs Pathfinding soweit in Angriff nehmen zu können (dafür brauch ich kein Chassis):


    Die Links sind keine Kaufempfehlung!

  • Entwicklung: RoPi - Autonomer Roboter mit RaspberryPI? Schau mal ob du hier fündig wirst!

  • Ja hey, wie jetzt ... Langeweile ;) ...

    alles, was jetzt folgt spiegelt nur meine, zugegebenermassen teilweise etwas abstrusen und/oder abgehobenen, Gedanken wider und erhebt keinen Anspruch auf Professionalität oder allgemeine Gültigkeit:


    so ... und nun hab' ich den Faden verloren ...

    dies also erst mal als meine unmaßgebliche Meinung dazu.

    cheers,
    -ds-

  • Hm aktuell hab ich noch das Problem nen richtigen Chassis zu finden , bei einem maximalen Preis von 100eu. Bzw eins das größer ist...

    Das was ich an Sensorik alles unter bringen will brauch ich vermutlich 2 RaspberryPI's und somit auch einen grösseren Akku und das wiederum bedeutet auch einen leistungsstärkeren Spannungskonverters :lol:

    Den 2.Pi werden ich wohl alleine für DGPS brauchen, das soll nämlich eine ziemlich hohe CPU-Last erzeugen.. Vorteil ist allerdings dass die Messungen genauer sind und dass das auch innerhalb Gebäude funktioniert.

    Bei den Sensoren bin ich derzeit dabei zu recherchieren welche Abstands-Sensoren ich verwende.. Hier wird der HC-SR04 beschrieben, der ist aber schon älter. Ich tendiere zZt eher zum SRF08 der aber auch merklich teurer is.
    Zusätzlich zum Ultraschall Sensor benötigt man anscheint auch noch einen Temperatur Sensor um die Schallgeschwindigkeit bei zB 20 °C zu berechnen. Ändert sich die Temperatur ändert sich auch die Schallgeschwindigkeit...

    Der nächste Sensor wird dann entweder ein normaler PIR werden, oder ein Tiny-PIR - wobei ich d auch noch nicht weiß ob einer reicht... http://www.raspberrypi.org/learning/parent-detector/
    Besser jedoch wäre ein X-Band Bewegungsmelder, die sind nicht so anfällig wie Passiv-Infrarot-Bewegungsmelder

    Ein Geräuschsensor wäre ebenfalls praktisch um herannahende Objekte zu orten :)

  • Du hast viel vor. Aber ich denke das weißt du, denn das hast du selbst schon vielen Leuten hier im Forum gesagt.

    Für Hindernisvermeidung wäre ein Laserscanner optimal... bleiben wir mal auf dem Boden der Tatsachen: Nutze Ultraschall :)
    Fußgänger + Fahrräder + Autos huiuiui da nimmst du dir echt was vor. Auf jeden Fall eine Kamera und viel Zeit für Bilderkennung.
    Odometrie gibt es viele Ansätze, du kannst:
    * einfach nur recnen wie viel Strom du den Motoren gegeben hast und wie weit du damit theoretisch gefahren bist.
    * Vordefinierte Bewegungen messen und fahren, dann einfach aufaddieren (geht gut bei Laufrobotern)
    * die Drehungen der Achse messen (encoder oder mit Lichtschrankenmessung und schwarz-weißer Scheibe)
    * Über Bilderkennung gucken wie weit du dich über den Boden bewegt hast
    * über den Bewegungssensor deine Geschwindigkeit aufintegrieren
    Such dir was aus.

  • Einen hab' ich noch:

    für mechanische Prototypen habe ich mir mal einen günstigen Metall-Baukasten beim großen Auktionator ersteigert ...
    Ein aktueller Kasten von z.B. Fischer-Technik oder Lego wäre da vermutlich noch besser, aber die bewegen sich preislich m.E. mittlerweile jenseits von gut und böse.

    Vielleicht mal noch eine kleine Aufstellung, was sich unter anderem so nach und nach bei mir in diesem Zusammenhang so angesammelt hat:

    Als Controller-Board für eigenständige Aufgaben habe ich mich auf den Arduino Pro mini eingeschossen. Der hat eine Menge I/Os und ist für einen Appel und ein Ei zu bekommen.

    Als Drehzahl-Messer habe ich sowohl -> diese <- Teile als auch die Standard-Encoder vorgesehen.
    Motoren dazu sind im Moment erst mal die Standard-Getriebe-Motoren, mit denen auch die Encoder-Scheiben verwendet werden können. Dazu noch diese Gabel-Lichtschranken, von denen ich hoffe, dass beides zusammen passt.
    Passende Sketches für den Pro Mini (Synchronisierung zweier/vierer Motoren, Steuerung der Drehzahl) folgen demnächst.

    Zur Motor-Steuerung würde ich so ein ICSE001A Shield nehmen.

    Als Chassis habe ich mir recht günstig dieses hier besorgt.
    So eins hab ich mir auch mal irgendwann zugelegt.

    HC-SR04 Ultraschall-Sensor zur Distanzmessung.

    Einen -> solchen <- Stepper habe ich mir spasshalber mal zugelegt. Der dürfte gut ziehen ... ist jedenfalls eher was für eine grössere Anwendung.

    Dann noch Laser-Dioden, für die ich noch keine rechte Verwendung habe.

    An Displays habe ich dann eben noch diverse Teile vom Nokia 5110 TFT-Display über 1,8" TFT-Display bis hin zu 16x2 bzw. 20x4 LCDs ... kommt alles später noch mal als Einzel-Tut zum Anschluss an RPi und Arduino.

    Ach ja, und dann eben noch Funken mit 2.4GHz, 433 MHz usw. ... auch mit sowohl als auch (RPi und Arduino).

    Dazu noch Kunststoffplatten in diversen Stärken die mittels PUK-Säge, Heissluft-Gebläse und Proxxon-Mini-Tools in Form gebracht werden, diverse kleine Schrauben und Schräubchen sowie Heiss- und Kontakt-Kleber zum Verbinden der Einzelteile.

    Die angegebenen Links stellen, wie immer, keine Kaufempfehlung dar, sondern sind nur Beispiele für mögliche Bezugsquellen.

    cu,
    -ds-

  • Das folgende Kit könnte interessant sein: Rover 5 Seeeduino/Arduino Robot Kit
    Da gibts auch ein gutes Tutorial zu sowie bereits fertige Software ;) Bzw von einem anderen Kit auch Soft für den PI

    Das interessante bei dem Kit ist vorallem das Dagu Explorer PCB for Rover 5

    Damit könnte der RoPi später dann auch hoffentlich ungefähr so aussehen:

    Spoiler anzeigen

    4413b1abad106d0b.jpeg

    Aber 170€ ist nicht gerade wenig :(
    Im vergleich dazu den kram einzeln zu kaufen:

    Mach zusammen: 119€ plus VSK.
    Dann fehlt aber auch dieses schicke PCB mit den bereits draufgelöteten Spielerein :-/

    Hmhm... kann mich nicht entscheiden :(

  • Und nen asuro mit nem RPi aufzupeppen ist keine Option?

    Kommt drauf an, was Du haben möchtest ... ich persönlich möchte nicht den x-tausendsten Nachbau eines fertigen Teil zusammen basteln.
    Und wenn's anschliessend nicht so professionell aussieht ... mir zumindest egal.

    cu,
    -ds-

    Ich hätte da noch was in petto, was imho eine echte Herausforderung darstellt:

    Eine Platte mit Rand, die mit einer Touchfolie beklebt ist.
    Diese Platte kann über Servos in alle Richtungen gekippt werden.
    Nun legst Du eine (schwere) Messing- oder Stahlkugel auf die Platte und die Servos sollen dafür sorgen, dass die Platte in der Waage ist, also die Kugel quasi "auf der Stelle steht" ;) ...

    Das wär imho mit Sicherheit etwas, mit dem Du auch eine relativ lange "Langeweile-Phase" überbrücken kannst ...

    cu,
    -ds-

  • Einen ASURO habe ich zu Hause liegen... ist schon lange geplant den mal zu koppeln, aber die Zeit... (Falls noch jemand soetwas vor hat kann er sich gerne melden, dann hätte ich wenigstens mal einen Grund anzufangen)
    Ist im Grunde ein netter Roboter, und mit Pi zusammen müsste der ordentlich was können. Die Steuerung zu schreiben mit MC-Ansteuerung ist auch interessant.

  • Bevor ich Sachen kaufe bzw weiß was ich eigentlich brauche, hab ich mich erst mal um die Softwaremöglichkeiten gekümmert und die letzten Tage viel recherchiert...

    Bin dabei auf ROS gestoßen: Robot Operating System
    Das sieht schon mal sehr gut aus - werde mich da die nächsten Tage mal durch quälen..

    Spoiler anzeigen
    Code
    wget -qO - http://64.91.227.57/repos/rospbian.key | sudo apt-key add -
    echo "deb http://64.91.227.57/repos/rospbian/ wheezy main" >> /etc/apt/sources.list
    apt-get update
    
    
    READ --> http://wiki.ros.org/groovy/Installation/Raspbian/Source

    Desweiteren habe ich ein paar gute Artikel gefunden die "die Kunst einen Weg für den Roboter zu finden" behandeln und den am einfachsten zu verstehenden will ich euch nicht vorenthalten: > klick <
    Es gibt ne ganze menge an Algorithmen - nicht nur den BUG2 der in dem Artikel verwendet wird - aber die meisten sind ziemlich komplex..

    Mittlerweile habe ich mich dazu entschieden nicht nur einen beweglichen Ultraschall-Sensor vorne anzubringen sondern mindestens 4:

    • einer vorne-mittig
    • einer vorne-links
    • einer vorne-rechts
    • einer vorne-unten (wofür erklär ich weiter unten bzgl. PathMap)

    Der Grund hierfür ist einfach: möchte man nicht allzuviel Geld ausgeben muss man sich mit einem geringen Erfassungswinkel zufrieden geben (30 bis 60°)
    Hinten möchte ich aber auch mindestens einen anbringen um nicht rückwärts irgendwo gegen zu ballern...

    Leider weiß ich noch nicht genau wieviele Arduino's ich einsetzen werde - auch brauch ich eine RTC um mit dem PI nen vernünftigen Takt hinzukriegen.. Dabei dachte ich jetzt schon an den AlaMode: Ein Arduino zum aufstecken auf den RaspberryPI. Vorteil wäre dass der Arduino direkt mit dem PI kommuniziert und in realtime programmiert werden kann. Damit wäre ua. das Problem von zu wenigen Analogen I/O's des PI's auch schon mal im Griff. Auch kann man dann die Vielzahl an Arduino Shields direkt mit dem PI verwenden...

    Bei dem Rover5 Chassis werd ich wohl bleiben da dort bereits Rad-Encoder integriert sind und somit die Odometrie leichter umzusetzen sein wird

    Auch hätte ichs gerne wenn der RoPi sowas wie ein Lernmodus hat und bei bedarf Bereiche der Wohnung abfährt die er noch nicht kennt, und speichert. Auch möchte ich die PathMap bearbeiten können und Objekte benennen oder zB Taboo-Zonen festlegen: "da darfst du nicht lang fahren", damit er nicht die Treppe runter crasht :D Für diesen speziellen Fall möchte ich auch einen IR-Sensor vorne im 45° Winkel nach unten gerichtet anbringen damit er Unebenheiten, also zB eine Steigung oder Gefälle oder eben einen "Abgrund" erkennen kann.
    Eine Sprachsteuerung wäre auch nicht schlecht sodass ich ihm zB sagen kann "fahr ins Wohnzimmer unter den Tisch" und der RoPi dann weiß welcher Raum der Wohnung das Wohnzimmer ist und wo sich der Tisch befindet... Deswegen auch die PathMap

    Auch möchte ich eine Ladestation realisieren und hab mir das so überlegt das auf dem RoPi jeweils links, rechts und in der Mitte IR-Empfänger angebracht sind und in der Ladestation ein IR-Sender. Erst wenn der RoPi mittig über dem IR-Sender steht wird ein "Ladearm" ausgefahren, kontakt hergestellt und ein Relais schaltet Verbindung zum Akku zum laden frei...


    Ich weiß das ich mir da viel vorgenommen habe und dass das Projekt nicht innerhalb ein paar Wochen fertig sein wird - so viel Zeit hab ich eh nicht um mich da jeden Tag 8h mit zu beschäftigen.. :auslachen: Mal gucken wie lang ich das durchhalte :rolleyes:

  • Zitat


    Ich weiß das ich mir da viel vorgenommen habe und dass das Projekt nicht innerhalb ein paar Wochen fertig sein wird - so viel Zeit hab ich eh nicht um mich da jeden Tag 8h mit zu beschäftigen.. Icon_auslachen Mal gucken wie lang ich das durchhalte Icon_rolleyesnew

    Naja auch täglich 8h helfen dir bei dem Vorhaben kaum. Du willst alles auf einmal.
    Jedes einzelne deiner Themen sind aktuelle Forschungsgebiete.
    Ich habe (ein bisschen) geholfen eine Sprachsteuerung für einen E-Rollstuhl zu entwickeln -> SEHR aufwendig wenn er "echte Sätze" und keine vorgefertigten mit klarer Syntax erkennen soll. (Spracherkennung selbst gibt es inzwischen relativ gute.) das Projekt läuft seit Jahren.
    In meinem aktuellen Projekt geht es um (Unterwasser-) Exploration, also sich selbstständig in halbwegs fremden gebieten zurechtzufinden. Auch über Wasser habe ich genug davon mitbekommen um zu sagen: Viel Spaß
    Ladearm ausfahren... so genau darauf zufahren das man so genau mittig ist, ist auch eine Kunst. Dann noch mit einem Ladearm zu treffen (Der zwei Kontakte braucht) ist die ächste Schwierigkeit.
    Fange ersteinmal an einen sich bewegenden Roboter zu haben und erweitere ihn dann Stück für Stück.

  • Naja Rasenmäher Roboter kriegen das ja auch hin in eine Ladestation einzuparken und zu laden :)
    Sprachsteuerung mach ich ganz zum Schluss, wenn alles andere insbesondere PathFinding funktioniert :D

    Ich hab halt nur nicht so viel Lust alles immer wieder umzuprogrammieren, möchte lieber gleich den Code darauf vorbereiten zumindest ohne Sprachsteuerung zurecht zu kommen - aber das wird so oder so noch ein riesen Akt da ich bisher keine Sources für "Roboter mit RaspberryPI" gefunden habe, die scheint keiner detailliert zu veröffentlichen oder überhaupt bereitzustellen. Dh. ich muss mir alles selber erarbeiten usw :(

  • ich glaube das hauptproblem ist eine bezahlbare, technische gute mechanische basis für den roboter, und dies ist stark von dem einsatzgebiet abhängig. ich habe ein projekt zu laufen, ganz langsam, auf basis eines crawler, das sind besonders geländegängige modellautos (400mm, 220mm, bodenfreiheit 85mm).
    alles andere ist irgendwie schon mal gemacht worden.
    ich halte persönlich ros für den rpi zu groß.

    das leben ist hart, aber wir müssen da durch.

    Einmal editiert, zuletzt von morob65 (16. Juli 2014 um 16:13)

  • > ich halte persönlich ros für den rpi zu groß.

    Ja das ist auch mein Gedanke. die "üblichen" Roboter-Frameworks sind auf ganz andere Leistungen ausgerichtet. Aber es gibt "Berichte" von Raspberrys mit ROS. Ich möchte irgendwann mal ROCK auf dem Raspberry ausprobieren ( http://rock-robotics.org ) Hab gehört, dass auch das auf dem Raspberry läuft, aber nur als Gerücht.

  • Nunja, nun wollt ich mir erstmal ein paar Komponenten bestellen aber bin bereits jetzt auf der Suche nach dem richtigen Entfernungsmesser verwirrt...

    Der HC-SR04 soll laut Watterott einenBereich zwischen 2cm und ca. 4m erkennen können sowie eine Auflösung von 3mm haben sowie einen maximalen Winkel von weniger als 15°.
    Bei > diesem < [Anzeige] steht aber ein Bereich von 2cm bis 4.5m und bei diesem vom SaintSmart [Anzeige] steht 2cm – 500 cm/1" - 16ft .... Also was denn jetzt? 4 Meter oder 5 Meter?

    Was mir daran aber immer noch nicht gefällt ist diese Dual Ausführung - wozu 2 die gerade aus platziert sind? Gibts die nicht einzeln aber dann nich gleich für 40€ pro Stück? (er sollte mind. 1 Meter erkennen)


    ...Einkaufsliste steht nun in Beitrag#1...

    RaspberryPI Model-B, WiFi-Stick und Arduino UNO R3 habe ich bereits hier bzw 'über'


    Bei dem Rover 5 weiß ich noch nicht ob ich den von EXP-Tech oder Sparkfun oder Pololu bestelle..... Leider gibt es nicht alle Teile in einem Shop also muss ich vermutlich mit mehrmals VSK leben :mad_GREEN:

    Aktuell bin ich auch noch auf der Suche nach einem Micro Pan-Tilt und dieses Gehäuse für Ultraschall Sensor ist auch nett ;)
    Dazu dann eben noch eine PiCam...

    Derzeit denk ich auch daran (so wie beim Rover5 dabei ist) für die Motoren und den Driver eine eigene Stromversorgung zu verwenden und den Rest dann eben über einen großen - weil Sensoren, Arduino, RPI usw müssen die ganze Zeit laufen die Motoren aber nur wenn gefahren wird ;)
    Also die PowerBank versorgt PI+Arduino und eben sowas wie Sensoren oder Lampen und die Motoren kriegen ihren Saft von dem beim Rover5 beigefügten 6xAA Akku Pack (á 1.2V). Und ein Ladegerät bräuchte man dann halt auch noch...


    Hab ich für den Anfang sonst noch was vergessen :huh:


    /EDIT: Hm ich muss mir nen anderen Shop suchen, über Pololu müsste ich $43.95 VSK blechen :(

  • Hab ich auch schon gesehen aber der hat leider keine Encoder in den Motoren. Die brauch ich aber für Odometrie, damit der Bot weiß wie weit er schon gefahren is usw ;)

    Auch gefällt mir nicht das die Räder höher stehen als die Aufbaufläche, man müsste also erst ziemlich hoch bauen um ggf auch was überstehen zu haben (seitliche Sensoren oder Prototype Fläche)., und die Motoren brauchen 12V aber kein Batteriepack dabei

    Also den Rover5 finde ich schon super, auch weil man die Höhe bei Bedarf etwas rauf setzen kann. Nur leider hab ich zu spät reagiert und EXP-Tech hat jetzt keine mehr auf Lager :/
    Das Explorer PCB ist auch nett, alles drauf was man für den Anfang so brauch :) Dieses Bundle ist auch verführerisch nur sind 215€ inkl. VSK (bzw 187€ über ebay) etwas schwer zu verdauen - wobei da halt auch echt viel dabei is:

    Features

    • Rugged Tank chassis with 2 powerful motors
    • Encoders with 1000 pulses every 3 wheel revolutions
    • Motor current sensing
    • 4 corner mounted Infra Red sensors
    • Ultrasonic Range Sensor mounted on a pan/tilt head
    • 6xAA battery holder (batteries not included)
    • NiMh batteries can be trickle charged using a 9-12V DC Power Adaptor (not included)

    The kit contains

    • 1 x Dagu Rover 5 Robot Chassis - (2 Motors and 2 Encoders)
    • 1 x Dagu Explorer PCB for Rover 5
    • 1 x Seeeduino V3.0 (Atmega 328P) - Arduino Compatible Board
    • 1 x 40 Pin Dual Male Splittable Jumper Wire - 300mm
    • 2 x Jumpers
    • 1 x Jumper Cable - 200mm Female to Female - 3 Pin
    • 1 x Dagu Sensor Pan/Tilt Kit
    • 1 x SeeedStudio - Ultrasonic Range Measurement Sensor Module
    • 1 x Sensor Fixing Set
    • 4 x Cable ties
    • 1 x USB to mini-USB cable
  • Appropo Drehzahl-Encoder:
    Hast Du Dir da schon was überlegt?
    Ich habe gerade mein kleines Chassis (so was -> hier <-) mit den zwei Getriebemotoren bestückt (ich hab' die mal mit drei Kerkos entstört, kann aber nicht sagen ob das notwendig ist).
    Blöd nur: die im Netz erhältlichen Gabel-Lichtschranken, von denen ich annahm, dass die dazu gehören, passen nicht, weil die Scheiben zu klein sind.
    Ich habe mir dann diese -> hier <- geordert, das funzt.

    Besser wären wohl solche Teile -> hier <-. Die hab' ich zwar auch, aber im Moment keine Zeit, mir zu überlegen, wie ich die einbaue.
    Die haben den Vorteil, dass Du zwei Rechteck-Impulse bekommst, ähnlich wie bei einem Rotary-Encoder, und daraus auch die Richtung ermitteln kannst.

    cheers,
    -ds-

  • Es gibt Getriebemotor mit Encoder. Die vom Rover5 sind vom Typ her Quadratur:

    Spoiler anzeigen

    rover5_001.jpg

    Es gibt aber wohl auch einfache SelbstbauLösungen mithilfe von Magneten: Ein 5mm Magnet wird ins Rad eingelassen und ein Hallsensoren TLE4905L erfasst diesen.

    Oder ein Reflexkoppler

    Ich bevorzuge aber lieber die ready-to-go Lösung, fertig eingebaut in die Motoren :fies:

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!