PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Einrad-Roboter



Mqtt
16.04.2010, 18:31
Aloha RoboterNetz-Community

hab heute den halben tag damit verbracht dieses Formu zu durchstöbern um nach Lösungen für mein anstehendes Projekt zu suchen. Bin total begeistert von dem Engagement das hier für unterschiedlichste Projekte gezeigt wird! Deshalb denke ich das ich mit meinen Fragen hier an der richtigen Adresse bin und vllt später selber auch mit meinem Projekt einen Beitrag dazu leisten kann.

Projektbeschreibung:
Im rahmen meiner Diplomarbeit soll ein autonomes EINRAD konstruiert, modelliert, geregelt und aufgebaut werden. Die Arbeit läuft an einem Lehrstuhl für Systemtheorie und Regelungstechnik, dementsprechend steht für mich die mathematische modellierung und regelung im Vordergrund.
den mechanischen Aufbau hab ich bereits als cad-modell entwickelt. mechanisch gesehen besitzt der roboter darin 9 freiheitsgrade und 4 angetriebene Bewegungsachsen. zur besseren verständlichkeit hab ich mal ne grafik von nem ersten Entwurf angehängt. dieses modell wäre ca. nen halben meter hoch, die Balancierstange hat ne "spannweite" von ca. 40cm und der aufbau wäre ca. 6kg schwer.
Da ich auf aufwendige Riehmenantiere etc. verzichten möchte sind die Motoren direkt an den jeweiligen gelenken plaziert (z.B. im Rad).
Durch simulation des geregelten modells für angemesse Bewegungsabläufe kann ich notwendige Motormomente von ca 40Ncm ableiten. Weiterer Knackpunkt bei dem aufbau ist die Genauigkeit der Sensorik da die seitliche stabilisierung ziemlich kritisch ist...

Mein Dilemma ist allergings der reale Aufbau des Roboters, da meine praktische Erfahrung im bereich Elektronik gegen null geht....

Also zusammengefasst: Einrad is mechanisch konstruiert - regler stabilisiert und verährt einrad in der ebene - simulation mit realistischen parametern läuft - für die elektronische Steuerung steh ich vorm Berg... ](*,)

Deshalb mal was ich mir für die Steuerung vorstellen könnte (bitte bitte korrigiert mich wenn hier was total daneben ist!):
- Microcontroller RN Control 1.4 Mega32 zur implementierung des Regelalgorithmus
- Scheibenläufermotoren von Printed Motors http://www.printedmotors.com/e03produkte/e01dc_serie/e01kn_motor/index_ger.html
- Motoransteuerung FEHIG36V9 von http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=65&products_id=209
- inertialsensorik CHR-6D von http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=71&products_id=221
- Funkmodul hab ich keine Ahnung... Anforderung ist das ich z.b. die messdaten von inkrementalgebern und gyros am pc in echtzeit ausgeben könnte und auch die sollwerte für die bewegung des vehikels vom pc aus steuern kann.
- Akkus..

Wäre super wenn jemand mir jemand n feedback zu meiner idee geben könnte. insbesondere wenn jemand erfahrung mit einer/mehreren der genannten Komponenten hat und die für dieses Projekt empfehlen (oder eben nicht) könnte.

Danke schonmal im Vorraus
_Matthias

wisda.noobie
17.04.2010, 10:04
Oh mann, bei so professionellen Zechnungen usw war ich erst mal baff, und kann zu der konstruktion wenig sagen... ich kann dir allerdings sagen, dass BTM-222 - Module sich gut eignen....

Ob die (doch recht komplizierten) Regelungsalgorithmen auf dem Atmega laufen kann ich nicht beurteilen... evt. doch lieber was in Richtung ARM/Propeller?

HannoHupmann
17.04.2010, 10:38
Ich würde fast sagen, dass für ein solch komplexes Regelungsproblem ein Mega32 zu langsam ist.

Mit der Funkübertragungstrecke und Auswertung am PC kaufst du dir jedemenge Delay ein, ich fürchte damit wird dein Regelalgo zu langsam.

Da es eine Diplomarbeit werden soll, würde ich also erwarten, dass du dir genau ausrechnest wie lange jede einzelne Übertragung dauert, bzw. wie schnell der zu verwendende Controller sein muss. Wenn du eh schon mit Funk arbeiten willst, würde ich auf den Roboter fast nen richtigen Real-Time PC packen und mit Matlab Simulink - RealTimeWorkshop die ganze Regelung laufen lassen.

Kleiner Hinweis noch, jede übliche Linux oder Windows Maschine ist NICHT Echtzeitfähig! Dein System verlangt aber harte Echtzeit, darüber solltest du dir Gedanken machen.

Mqtt
17.04.2010, 11:30
Danke für die Antworten!

BTM-222 sieht schonmal super aus. denke das ich mit bluetooth die bequemste lösung für den PC habe, allerdings brauch ich dann noch ne extra schaltung um den ans controllerboard zu koppeln? reichweite des moduls hab ich was von 25m gefunden.. müsste ich abklären ob das reicht..
wäre ein board mit integriertem funkmodul einfacher und leistungsfähiger (reichweite, übertragungsbandbreite)?

bzgl dem controller hab ich mich wahrscheinlich zu ungenau und zu wenig gesagt.. oder vllt hab ich auch ganz falsche vorstellungen was möglich ist ](*,)
mein ziel ist es den Reglungsalgorithmus zur stabilisierung bzw zum folgen berechneter trajektorien in dem Mikrocontroller zu implementieren
und am PC nur zu analysezwecken die messdaten wiedergeben kann und triggersignale für Wunschpositionen etc senden kann.
Also den (natürlich echtzeitfähigen) Regler im Mikrocontroller mit hoher Abtastrate (so 20ms sollte der schon schaffen)
und den PC nur als human interface das keine hohen anforderungen echtzeit stellt.

der Regelalgorithmus ist auch nicht soo aufwendig: für nen linearen zustands Regler reicht z.B. schon ein Kalman-Filter 14. Ordnung und ein P-regler (hier 4x14 Matrix) mit 20 Einträgen aus
allerdings brauche ich noch 4 unterlagerte stromregler (für die motoren), die zwar sehr einfach sind aber ne abtastzeit von ca 1ms arbeiten sollten.. geht das auch auf dem controller, oder ist dafür ein extra controller oder sogar ne hardwarelösung notwendig??


_Matthias

s.frings
17.04.2010, 18:29
Sobald Du Fließkomma Zahlen verwendest, kommst Du ratz Fatz an die Grenzen der ATmega Controller, sowohl was Speicher angeht, als auch Prozessorgeschwindigkeit. Darum umgehe ich Fließkomma-Arithmetik immer, als wäre es die Pest.

Du wirst kaum Funk-Module mit größerer Reichweite bekommen, denn die erfordern alle eine besondere Lizenz, und an die kommt man nicht so einfach heran (es sei denn, Du bist Funker).

Das BTM222 ist für 3,3V ausgelegt, um es an den AVR anzuschließen, brauchst Du nur einen Spannungsregler, und 2 Transistoren für die Richtung BTM222 zum AVR hin. Für die Richtung AVR zum BTM222 genügt ein simpler Spannungsteiler aus zwei Widerständen.

Schau mal auf die Website von Ulrich Radig http://www.ulrichradig.de/ , der hat dafür mal eine Platine konstruiert.

oberallgeier
17.04.2010, 18:42
Hallo Matthias,

eine sehr hübsche Aufgabenstellung! Ist Dein R so groß, dass (wenigstens in gewissen Grenzen) Eigenstabilität um die Rollachse auftritt oder auftreten kann (xB oder y - ist mir nicht ganz klar) ?

Ohne Dich verunsichern zu wollen (also besser erst garnicht lesen) : kennst Du diesen Thread (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=34392&highlight=mono+wheel&sid=2c42c925ea404b11debc228eff7ebd57) und diesen? (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=41391&highlight=mono+wheel&sid=2c42c925ea404b11debc228eff7ebd57)

Willa
17.04.2010, 21:16
Hallo,
bei den sensoren würde ich gleich in die vollen greifen und ADXRS614 Gyros verwenden. Die haben eine max. Geschwindigkeit von 50°/s und daher eine sehr hohe Auflösung für kleine Winkelgeschwindigkeiten (ich nehme an, du möchtest die Winkelgeschwindigkeiten gerne auf null halten...). Ich nutze die ADXRS610 (300°/s) und bin begeistert.
Kennst du schon das Murata girl? Das ist ein sehr gut funktionierender Einrad Robo, der etwas anders funktioniert als dein Vorschlag:
http://www.youtube.com/watch?v=IAWYgZbUvHs
Lustig, was die Japaner immer für beknackte Hüllen an ihre Roboter flanschen.
Ich glaube ein Mega32 reicht locker für die Stabilisierung eures Gerätes. Ob der allerdings auch ein
Kalman-Filter 14. Ordnung und ein P-regler (hier 4x14 Matrix) mit 20 Einträgen schnell genug berechnen kann, kann ich nicht sagen, da ich nicht weiss wie viel Mathematik dahinter steckt. Auf jeden Fall würde ich schon versuchen die Regelfrequenz so hoch wie möglich zu machen, das macht das Einstellen deutlich unkomplizierter (das sind meine Erfahrungen als ausgewiesener nicht-Regelungstechniker).

Klingon77
18.04.2010, 08:25
...
Ohne Dich verunsichern zu wollen (also besser erst garnicht lesen) : kennst Du diesen Thread (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=34392&highlight=mono+wheel&sid=2c42c925ea404b11debc228eff7ebd57) und diesen? (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=41391&highlight=mono+wheel&sid=2c42c925ea404b11debc228eff7ebd57)


hi,

ich hatte mir auch schon überlegt darauf hinzuweisen :-k


Sein Konstruktionsprinzip ist aber mit dem außerhalb des Rades gelegenen Schwerpunkt anders als "unseres".

Das es funktionieren muß zeigt das Video von Willa auf eindrucksvolle Weise.



Leider fehlen mir für ein solches Projekt die mathematischen und elektronischen Kentnisse.
Ich wünsche Dir aber viel Erfolg und sei gewiß, daß Du einen fleißigen Mitleser hast.
Mir wünsche ich eingie Bilder während der Entstehungsphase und natürlich die zugehörigen technischen Beschreibungen.


liebe Grüße,

Klingon77