-         

+ Antworten
Ergebnis 1 bis 10 von 10

Thema: Steuer-Lösung für KI Laufroboter

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    11.12.2011
    Beiträge
    31

    Steuer-Lösung für KI Laufroboter

    Anzeige

    Hallo zusammen!



    Bin gerade dabei, das Grundgerüst für einen Laufroboter aufzubauen. Der Roboter soll hauptsächlich dazu da sein, um ein paar KI Algorithmen aus dem Studium zu testen. Um die 18 Servos anzusteuern habe ich mir schon das Pololu Mini Maestro 18 Servo-Steuerboard angeschafft. Nun stellt sich mir die Frage, wie ich die "Intelligenz" einbringen soll. Der Roboter soll Sprachverarbeitung und Bildverarbeitung können, deswegen brauche ich eine relativ leistungsstarke Lösung. Ich dachte entweder daran, einen relativ mächtigen Microcontroller zu benutzen (wie den STM32) und alle Rechenarbeit dort zu erledigen oder einen einfacheren Microcontroller in Verbindung mit einem Smartphone. Dazu muss ich sagen, dass ich nicht allzuviel Erfahrung mit der Materie habe (ein wenig Arduino Gebastel) und wahrscheinlich an der ein oder anderen Stelle Hilfe brauchen werde. Deswegen hier meine Fragen an euch:


    1. Würde ein STM32 ausreichen für mein Einsatzgebiet?

    2. Ist eine Anbindung eines Smartphones per USB Anschluss an einen einfachen Microcontroller ohne Probleme möglich?

    3. Wenn ja, welchen Microcontroller könnte man dazu verwenden? Wäre ein 16-bit PIC sinnvoll?




    Das solls erstmal sein. Ich freue mich über jede Antwort!


    Gruß,
    Phil

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    24.06.2004
    Ort
    Berlin
    Alter
    51
    Beiträge
    316
    da hats du dir ja was vorgenommen
    1. ich würde sagen nein
    2. wenn das smartphone otg hat ja, ich würde aber eher auf ein tablet schaun. ich frage mich allerdings was soll das smartphone machen?
    3. je besser der controller, je bessere leistung ist vorhanden.

    was für ein laufmuster, 2, 4 oder 6?
    das leben ist hart, aber wir müssen da durch.
    www.berlinerroboter.de - versuch einen klub in berlin hochzuziehen

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.04.2015
    Beiträge
    136
    Mit dem STM wirst Du wohl keine Sprach/- Bildverarbeitung hinbekommen. Das spricht eher für etwas mit Betriebssystem (Raspi/ Android- oder Windoof-Phone/ -Tablet).
    (Ich verwende z.B. ein Windoof-Tablet, weil ich es nicht einsehe, beim Raspi für die zur Verfügung gestellten Komponenten Touch/ Bildschirm/ WLAN/ Bluetooth/ CAM letztendlich das doppelte zu bezahlen. So'n Trekstore-Tablet mit Win10 kannst Du gerade günstig bei Reichelt für 50€ schießen. Der Prozessor ist recht flott (QuadCore 1,83GHz), C# unterstützt Parallel-Processing, für OpenCV gibt's nen Wrapper, einzig Mangelware wird RAM (1GB, davon ca. 300...400 MB frei ), wenn Deine KI noch nebenher auf 4 Tabs im Browser surft).

    Allerdings brauchst Du trotzdem einen Controller, der Dir z.B. die Bewegungssequenzen annähernd flüssig übersetzt, der die nötige Anzahl IO-Ports für weitere Sensoren zur Verfügung stellt und der z.B. intern Reflexe verarbeitet, so was, wie ein vegetatives Nervensystem (ja, auch den Akkustand will man sich mal anschauen oder zu Diagnosezwecken mal die Stromaufnahme einzelner Servos). Ich verwende dazu nen ATXMega mit gcc. Der langweilt sich zwar zu Tode, ist allerdings damit auch noch ausbaufähig. Zu Arduino kann ich nichts sagen, bis auf dass ich den Eindruck gewonnen habe, dass sich das Ding in einigen Nischen selbst auf den Füßen steht.

    Als Verbindung zum "Brain", also dem Denkerrechner hat sich Bluetooth bewährt. Am Controller ist das eine UART, am Phone oder Tablet ist es ein virtueller serieller Port. Die üblichen verdächtigen Module sind:
    - HC-05/06
    - BTM222
    - andere (guckst Du bei Amazon, ebay oder hier im Forum)

    Das mit dem Bluetooth ist eine feine Sache. Bedenke: Du arbeitest mit einer beweglichen Maschine. Nix macht weniger Spaß, als für jeden Testlauf ein Kabel abziehen zu müssen. Der Bildschirm am Gerät bringt Dir beim Testen auch nur etwas, wenn Du ihn in der Hand hältst. Bluetooth ist auch am Arbeitsrechner (PC oder Notebook) anwendbar. Ich watschel z.B. bei Testläufen mit 'nem Notebook in BT-Reichweite hinterher. Wenn's rennt, spiel ich auf's Tablet.

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    11.12.2011
    Beiträge
    31
    Das Smartphone wäre ein Galaxy S2, kann also OTG.
    Tablet fällt für mich raus, weil ich langfristig plane, das Smartphone fest auf dem Bot zu verankern (auch wegen der ganzen Sensorik auf dem Smartphone) und ein Tablet einfach zu groß/schwer wäre.
    Ich bin nicht ganz so extrem bewandert, was die Robotik angeht, aber ich hatte mir das so vorgestellt, dass ich eine Android App schreibe, die für den Roboter die nötigen Lern-Algorithmen ausführt und dann die Befehle an den Mikrocontroller schickt, der diese dann wiederum an die Motorsteuerung weitergibt.
    Also beispielsweise: Kamera nimmt Bild auf -> schickt Daten an Microcontroller -> Microcontroller gibt Daten direkt an Smartphone weiter (evtl ein wenig aufbereitet) -> Smartphone verarbeitet Daten und errechnet angebrachtes Verhalten -> Schickt Befehl wie "zwei Schritte zurück" an Microcontroller -> Microcontroller errechnet Motorpositionen und gibt diese an Servosteuerung weiter
    Als kleine Erweiterung hab ich mir überlegt, damit einen Hybrid-Ansatz aus reaktiver und geplanter Steuerung zu realisieren und die reaktive Ebene auf den Microcontroller zu verlagern während das Smartphone die Planung übernimmt.
    Das alles ist bei einem 4-beinigen Laufmuster. Im Klartext: Es ist ein kleiner mechanischer Affe.


    @Holomino: Ups, da warste wohl schneller als ich. Sehr interessante Ideen hast du da. Ich muss mich ein wenig über deine Vorschläge informieren und melde mich dann wieder!
    Geändert von LesSV (14.01.2016 um 18:22 Uhr)

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    11.12.2011
    Beiträge
    31
    Die Idee mit dem Bluetooth macht Sinn, werde das wahrscheinlich aufnehmen.
    Ich denke, ich werde ein Setup aus STM32 + HC 05 + Smartphone benutzen. Auch wenn der STM gnadenlos unterfordert sein wird. Aber wie du selbst gesagt hast Holomino, die Option da noch auf der Zwischenebene ein wenig was programmieren zu können ist schon eine feine Sache. Außerdem höre ich nur gutes von den Cortex Prozessoren.
    Bestelle mir jetzt das und das. Falls das den ein oder anderen Mitleser interessiert.
    Geändert von LesSV (15.01.2016 um 04:08 Uhr)

  6. #6
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    24.06.2004
    Ort
    Berlin
    Alter
    51
    Beiträge
    316
    das s2 ist meiner meinung nach zu schwach auf der brust.
    nutze die kamera von handy wenn du es benutzen solltest.
    ich würde, ohne jetzt eine diskussion anzufangen , einen rpi2 nehmen, debian und opencv verwenden.
    das leben ist hart, aber wir müssen da durch.
    www.berlinerroboter.de - versuch einen klub in berlin hochzuziehen

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    11.12.2011
    Beiträge
    31
    Könntest du das näher erläutern, wieso du den Raspberry nehmen würdest?
    Und was meinst du mit "das S2 ist zu schwach auf der Brust"?
    So wie ich das sehe, ist das S2 dem RPI2 was die Leistung angeht gleichwertig und teilweise sogar überlegen (Prozessorleistung z.B.)
    Oder übersehe ich da was?

  8. #8
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    24.06.2004
    Ort
    Berlin
    Alter
    51
    Beiträge
    316
    joo, s2 hat zwei rechenkerne und 1gb ram, rpi2 hat 4 kerne und 1gb ram, s2 android, rpi2 linux, das für mich erstmal das wichtigste.
    opencv und die spracherkennung braucht seine leistung.
    Geändert von morob (16.01.2016 um 11:26 Uhr) Grund: edit s2
    das leben ist hart, aber wir müssen da durch.
    www.berlinerroboter.de - versuch einen klub in berlin hochzuziehen

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    11.12.2011
    Beiträge
    31
    Danke für den Input! OpenCV sieht ja genial aus. Spricht mich auch besonders an, weil man dabei in Python programmieren kann, was ich gegenüber C bevorzugen würde.
    Hab mich jetzt über die Alternativen zum S2 informiert und ich denke, der RPI2 hat mich am ehesten überzeugt. Es gibt ja sehr viele Anbieter solcher Ein-Platinen-PCs (Odroix, BeagleBoard, Cubieboard, etc.) die teilweise auch leistungsstärker sind als der RPI2. Was ich aber auch immer ein wenig im Hinterkopf habe, ist der Support. Durch die große community hat der RPI2 da einen Vorteil gegenüber den anderen Boards.

  10. #10
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    24.06.2004
    Ort
    Berlin
    Alter
    51
    Beiträge
    316
    pass auf das du keine allwinner cpu hast, das ist wichtig alles andere ist ok.
    rpi hat eine großen benutzergruppe, richtig, aber man muß sich auch selber einbringen
    Geändert von morob (17.01.2016 um 18:49 Uhr)
    das leben ist hart, aber wir müssen da durch.
    www.berlinerroboter.de - versuch einen klub in berlin hochzuziehen

+ Antworten

Ähnliche Themen

  1. CNC Steuer Software
    Von Ripper121 im Forum Software, Algorithmen und KI
    Antworten: 2
    Letzter Beitrag: 26.12.2012, 17:58
  2. Geradeaus fahren: einfachste Lösung = beste Lösung ?
    Von s.frings im Forum Sonstige Roboter- und artverwandte Modelle
    Antworten: 26
    Letzter Beitrag: 10.04.2010, 15:14
  3. Steuer Progr. USB-Mo.-RS232
    Von Astro im Forum Microcontroller allgemeine Fragen/Andere Microcontroller
    Antworten: 0
    Letzter Beitrag: 17.01.2008, 17:31
  4. Wie steuer ich diesen Elektromotor an?
    Von Moonbiker im Forum Motoren
    Antworten: 3
    Letzter Beitrag: 26.06.2005, 19:24
  5. Wie steuer ich ein serielles E²prom an?
    Von Matthias im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 02.01.2004, 11:00

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •