Beim Pendel?
Hatte auch ein Gewicht am Ende drauf... hat nix gebracht.
Dann eine Feder auf die Welle des Encoders, dammit sie sich nicht so leicht dreht....
Bringt alles nix
Druckbare Version
Beim Pendel?
Hatte auch ein Gewicht am Ende drauf... hat nix gebracht.
Dann eine Feder auf die Welle des Encoders, dammit sie sich nicht so leicht dreht....
Bringt alles nix
Hallo, Roberto
Was für einen Encoder verwendest du und wo kann man so einen kaufen.
Vieleicht hast du auch einige technische Daten (Messbereich, mechanischer- Drehbereich, Genauigkeit)
MfG
Hans
Hallo Hans
Encoder gibt es z.B. bei Ebay:
http://search.ebay.de/encoder_W0QQfkrZ1QQfromZR8
Aber mit Pendel wird es wohl nicht gehen...
Gemessen am bisher betriebenen Aufwand finde ich das eigentlich auch.Zitat:
Hallo recycle,
das sieht doch schon ganz gut aus.
Mist, jetzt bekomme nach über 15 Jahren doch noch die Quittung für die 100%ige Abwesenheitsquote während der paar Reglungstechnk-Vorlesungen die nicht ausgefallen sind ;-)Zitat:
Mit einer Zweipunktregelung kann man überhaupt nicht mehr erwarten.
Probiere es doch mal mit einem P-Regler.
Wie die Regelung mit P-Regler aussieht, hast du ja im ADXL-Thread beschrieben. Dafür muss ich aber erst mal ein paar Messreihen machen, was mein Sensor überhaupt ausgibt und einen brauchbaren Verstärkungsfaktor mangels Drehgeber austesten.
Klingt spannend, leider werde ich dafür aber frühestens am Wochenende Zeit haben :-(
Ein zusätzliches Gewicht am Pendel hört sich für mich nicht gerade nach Dämfung. Eine Feder die auf der Achse des Drehgebers zusätzliche Reibung erzeugt schon etwas eher. Da die aber an der Achse mit einem ziemlich schlechten Hebel ansetzt und Metall auf Metall nicht so besonders viel Reibung ergibt, wird sie da auch nicht viel ausrichten.Zitat:
Hatte auch ein Gewicht am Ende drauf... hat nix gebracht.
Dann eine Feder auf die Welle des Encoders, dammit sie sich nicht so leicht dreht....
Das Pendel durch Wasser, Öl oder Honig pendeln zu lassen würde gut dämpfen, aber die anschliessende Reinigung des Teppichs wäre etwas lästig ;-)
Ein Stück Gummi, Stoff oder was ähnliches zwischen Pendel und Holzplatte könnte helfen. Wenn das Pendel da beim Schwingen dran reibt, müsste das die Schwingung dämpfen.
@recycle:
Meinen Glückwunsch auch zum gelungenen Experiment. Nach meinen ersten drei Studien in diesem Thread (Sharp, Gewicht und Fächer) ist dies zusammen mit "roberto" ein großer Schritt in Richtung auf das Ziel.
Da ich auch keine Quelle für die Lösung hatte, habe ich einmal die Beschleunigung beim Kippen in eine EXCEL Tabelle eingegeben zusammen mit einer Beschleunigung des Fahrzeugs über die Räder die über einen P-Regler arbeitet.
Immerhin ließ sich mit linearer Kennlinie und auch mit quadratischer Kennlinie (Beschleunigung in Abhängigkeit von der Schräglage) eine schwankende Stabilität erreichen. Wenn man dann den Weg von der Teppichmitte noch mit entsprechend geringer Gewichtung zum Stabilitätskriterium addiert, dann ergibt sich sogar eine Schwingung die zur Teppichmitte zurückkehrt.
Die Berechnung war sehr vereinfacht, sodass es sich wohl noch nicht lohnen wird sie hier darzustellen. Sie hat mir nur erst mal den möglichen Erfolg bestätigt. Die maximale Beschleunigung unter Berücksichtigung der aktuellen Geschwindigkeit müßte ich (zugeschnitten auf beispielsweise den Asuro) noch einbringen.
(Ich vermute, der schnellste Weg zum Ziel wird von hier aus nicht über ein Pendel führen, sondern über einen Entferungssensor der von einem kleinen Ausleger aus den Winkel zum ebenen Boden misst. )
Manfred
Hi recycle,Zitat:
Wie die Regelung mit P-Regler aussieht, hast du ja im ADXL-Thread beschrieben. Dafür muss ich aber erst mal ein paar Messreihen machen, was mein Sensor überhaupt ausgibt und einen brauchbaren Verstärkungsfaktor mangels Drehgeber austesten
ein paar Meßreihen brauchst du eigentlich nicht machen.
Am schnellsten geht folgendes:
Du neigst den Robbi um 90° nach vorn. A = Wert1.zB. 320.
Nullage.
Du neigst den Robbi um 90° nach hinten. B = Wert2. z.B. 840
Nullage = (A+B)/2. z.B. 580
Besser nochmal kontrollieren.
Dann gilt: phi[°] = Meßwert * 180°/580
Regler:
Motorspannung = P * phi; (P wie Probieren)
Da habe ich auch schon mal kurz mit herumexperimentiert. Die Messswerte die der IR-Sensor ausgespuckt hat, sahen eigentlich vielversprechender aus als das was ich bisher aus dem ADXL herausbekommen habe.Zitat:
(Ich vermute, der schnellste Weg zum Ziel wird von hier aus nicht über ein Pendel führen, sondern über einen Entferungssensor der von einem kleinen Ausleger aus den Winkel zum ebenen Boden misst. )
Mit einem ähnlich primitiven Programm wie ich oben gepostet habe und dem Fahrgestell unten auf dem Foto war das Ergebnis allerdings nicht ganz so toll.
Das Ding pendelte wie wild und machte wenig Anstalten sich aufrecht zu halten.
Das lag aber sicher an meiner sehr simplen Programmierung und dem etwas trägeren Antrieb und nicht am Sensor.
Naja, 2 Werte sind ja auch eine kleine Meßreihe ;-)Zitat:
ein paar Meßreihen brauchst du eigentlich nicht machen.
Am schnellsten geht folgendes:
Du neigst den Robbi um 90° nach vorn. A = Wert1.zB. 320.
Nullage.
Du neigst den Robbi um 90° nach hinten. B = Wert2. z.B. 840
Nullage = (A+B)/2. z.B. 580
Und damit sind's dann schon ein Paar Meßreihen ;-)Zitat:
Besser nochmal kontrollieren.
Das Problem ist, dass ich mir bisher noch gar nicht angesehen habe, welche Messwerte mein ADXL überhaupt ausgibt. Ich ihn habe nur mal kurz ans Oszilloskop angeschlossen und gesehen, dass sich was tat wenn ich den Sensor schräg halte. War kein so besonders klares Signal, allerdings auch kein besonders gutes Oszilloskop. Was über die Pulsweitenmessung mit meinem Controller an Zahlenwerten rauskommt weiss ich noch nicht.
Für den Versuch in dem Videoclip oben habe ich das Ding einfach gerade hingestellt, den Sollwert messen lassen, und das Programm basierte ja nur auf Istwert > oder < Sollwert.
Wenn ich da wirklich so klar unterscheidbare und plausible Messwerte rausbekomme wie in deiner Beispielrechnung werde ichs so machen wie du es beschrieben hast.
Danke für die Tipps, sobald ich die nächsten Fortschritte gemacht habe werde ich sie posten.
Vor dem Wochenende wird das leider nichts mehr. Bis ich meinen Koffer fertig gepackt habe bleiben mir auch ohne Meßreihen nur noch knapp 4 Stunden Schlaf.
Hallo
Ihr macht mir ja richtig Gusta da weiterzumachen.
(obwohl es für mich schon erledigt war..)
Habe da gehört, dass man die Beschleunigungssensoren da als Muster bekommt.. !
Kann wer da mehr darüber erzählen ?
Link u..s.w Welchen Typ.
Es soll ja auch welche geben, mit Analogausgang...
Wären die nicht besser ?
---
Mein Gedankengang geht eher in die Richtung:
Zwei Beschleunigungssensoren.
Einer auf die Achse (Räder) und einer ganz oben und mit der Differenz der beiden, die Motoren regeln.
Meines erachtens bräuchte man auch nur darauf achten, dass der Robo , am oberen Punkt, auf keine Seite beschleunigt "
Man braucht also nicht wissen, wie viele Grad das jetzt abweicht..
Auch eine Nullstellung zu definieren, finde ich nicht so gut.
Wenn der Robo auf einer Seite schwerer ist, kann ich das nie so genau hinbekommen..
Er braucht eigentlich nur im Gleichgewicht bleiben, also in keine Richtung beschleunigen (oben).
Dann ist es egal, ob er auf einer Seite schwerer ist oder nicht..
Hallo Roberto,Zitat:
Meines erachtens bräuchte man auch nur darauf achten, dass der Robo , am oberen Punkt, auf keine Seite beschleunigt "
Man braucht also nicht wissen, wie viele Grad das jetzt abweicht..
das würde möglicherweise funktionieren, wenn du auf einer Stelle balancierst.
Wenn der Robbi aber umherfahren soll, muß er in eine Richtung beschleunigen....
Also ist es besser den Neigungswinkel in Relation zum (konstanten) Gravitationsfeld zu messen.
Nullstellung
Beim manntragenden Fahrzeug gibt der Fahrer diese vor. Ob die Nullstellung bei + oder - 3° liegt merkt er nicht.
Beim Robbi muß man es von außen mit einer Fernbedienung o.ä einstellen, oder man überlegt sich einen Algorithmus der die Nullstellung festlegt....
So wie sich das in einem einfachen Algrorihmus mit Neigungswinkel und gefahrenem Weg als Messgrößen zeigt, ist die Nullstelle der Neigung im Mittel dann erreicht, wenn der Roboter beim Balancieren im Mittel zum Ausgangspunkt zurückkehrt. ( Ist ja auch klar.)
Umgekehrt kann man zum Verändern des Ortes (zum Fahren einer Strecke) den Sollwert für die Neigung vorübergehend verstellen. Das ist die gleiche Betrachtung wie oben.
Die Folgerung ist, daß der Sollwinkel nicht absolut bestimmt werden muß, er ergibt sich aus der Wegmessung beim Regelvorgang.
Manfred
Hallo Manfred
RichtigZitat:
So wie sich das in einem einfachen Algrorihmus mit Neigungswinkel und gefahrenem Weg als Messgrößen zeigt, ist die Nullstelle der Neigung im Mittel dann erreicht, wenn der Roboter beim Balancieren im Mittel zum Ausgangspunkt zurückkehrt. ( Ist ja auch klar.)
Vorsicht:Zitat:
Umgekehrt kann man zum Verändern des Ortes (zum Fahren einer Strecke) den Sollwert für die Neigung vorübergehend verstellen. Das ist die gleiche Betrachtung wie oben.
Welche Neigung stellt sich am Ende der Strecke ein und welche Neigung muß man einstellen, wenn man längere Strecken fahren will ?
Was geschieht wenn man die Rückkopplung des Weges auftrennt ?
Gemeint war die Bemerkung erst einmal in Richtung Nullposition der Neigung. Die ergibt sich genauer aus den zweifachen Integral der Beschleunigung also dem Weg.
Bei längeren Strecken muss man auf den Sollwert der mittleren Geschwindigkeit achten, am Ende des Weges ist auf die mittlere Position zu regeln.
Die Rückkopplung zu Weg und Geschwindigkeit auftrennen heißt ungefähr sich treiben lassen und im engeren Sinne "chaotisch" wegdiffundieren.
Manfred
Habe mir das nochmal überlegt und das dürfte mit der Idee doch nicht so einfach sein, weil beim Aufrichten beschleunigt ja der Sensor auch.
Also, kann ich das Beschleunigen bei Aufrichten nicht unterscheiden vom Beschleunigen, beim kippen :-(
Dazu gibt es einen eigenen Thead: https://www.roboternetz.de/phpBB2/viewtopic.php?t=8573Zitat:
Habe da gehört, dass man die Beschleunigungssensoren da als Muster bekommt.. !
Dass und wie man an Samples vom Hersteller kommt wurde aber auch in älteren Thread schon berichtet. Kannst ja mal über die Forensuchfunktion nach "Beschleunigungssensoren" und "ADXL" suchen.
Bei den ADXL-Sensoren von denen wir hier reden kann man die Beschleunigung über einen PIN direkt als analoge Spannung auslesen und über einen anderen Pin als Pulsbreite eines PWM Signals.Zitat:
Es soll ja auch welche geben, mit Analogausgang...
Wären die nicht besser ?
Als 3. Variante kann man das PWM Signal auch selber über ein RC-Glied in eine analoge Spannung umwandeln.
Weitere Infos dazu findest du im Datenblatt irgendwo auf www.analog-devices.com.
Ich habe jetzt mal ein bischen in Richtung P-Regler rumprobiert.Zitat:
Mit einer Zweipunktregelung kann man überhaupt nicht mehr erwarten.
Probiere es doch mal mit einem P-Regler.
Das Ergebnis war bisher zwar noch lange nicht befriedigend, aber gleich beim ersten Versuch um Klassen besser als mit der Zweipunktregelung.
Ich bin sehr an weiteren Versuchsergebnissen interessiert. Ich habe auch fest vor, vom Asuro noch ein paar Daten aufzunehmen.Zitat:
Das Ergebnis war ... gleich beim ersten Versuch um Klassen besser
Manfred
Ich hab mir jetzt nicht alles durchgelesen, aber ganz zu anfang des threads war ja auch mal die idee mit magnetsensoren. und wenn jetzt auch der wusch danach ist, den aufbau möglichst unabhängig von mechanischen bauteilen zu machen wäre das ja eigentlich perfekt. alle sensoren die die beschleunigung, neigung bzw. den winkel zu horizontalen messen, haben ja wie schon besprochen das problem nicht zwischen beschleunigung nach vorn und der gravitation zu unterscheiden. außerdem kommt dazu, daß sie immer träge sind, und dieser effekt sich genau dem zu messenden entgegengesetzt. ich weiß jetzt nicht, ob da ein denkfehler drin ist, oder ob das hier schonmal durchgedacht worden ist, aber wenn man zB einen schlauch mit wasser und helligkeits oder drucksensoren, oder ein paar quecksilberschalter benutzt, dann bleibt die träge flüssigkeit beim nach-vorn-kippen von der sensoreinheit aus gesehen zunächst noch in der normallage, bzw. die ganze messaparatur bewegt sich nach vorn, aber die flüssigkeit bleibt "gerade". dies wäre gleich der situation des "nach-hinten-kippens". die reaktion des roboters wäre ein genau falsches entgegensteuern, das kippen wird verstärkt.
ist das kippen doch aufgehalten, der roboter wider in nomallage, schwappt die flüssigkeit noch einmal nach vorn, der sensor "denkt" wieder: achtung entgegensteuern!, obwohl der roboter ausbalanciert ist. irgendwie also alles nicht ganz so klasse. diese sensoreinheiten würden sich zur neigungsbestimmung eignen, würde sich der ganze roboter nicht bewegen, oder nur zur neigungsänderung gesehen sehr langsam.
Nun zu den magnetsensoren: eine nicht veränedrliche richtgröße hier ist das mangetfeld der erde. mit der messung dieser größe könnte zwar mit ein wenig rechenaufwand, den der roboter fährt ja nicht nur in nord-süd richtung, einwandfrei die neigung zur horizontalen bestimmt werden.
die frage, ob die motoreinheit die so gewonnenen daten auch umsetzten kann, und der roboter nicht umkippt ist aber eine andere.
gruß
Das Problem ist nicht der Rechenaufwand sondern die Erfassung der Winkelabweichung von der Nord-Süd Richtung. Jeder Fehler bei dieser Messung würde sich als Neigungswinkelfehler auswirken. Weiterhin kann das Magnetfeld in Gebäuden und überall dort wo es elektromagnetische Störfelder gibt, stark verzerrt sein.Zitat:
Nun zu den magnetsensoren: eine nicht veränedrliche richtgröße hier ist das mangetfeld der erde. mit der messung dieser größe könnte zwar mit ein wenig rechenaufwand, den der roboter fährt ja nicht nur in nord-süd richtung, einwandfrei die neigung zur horizontalen bestimmt werden
Statt die Motoren bei jeder Abweichung vom Sollwert mit voller Kraft anzusteuern habe ich es mal mit einer zur Abweichung proportionalen Ansteuerspannung versucht.Zitat:
Ich bin sehr an weiteren Versuchsergebnissen interessiert.
Beim ersten Test war das Ergebnis nicht so gut, dass es sich lohnen würde einen neuen Videoclip zu posten, aber doch schon wesentlich besser als bei der 2-Punkt Regelung.
Ich habe dann noch ein bischen mit dem Verstärkungsfaktor herumgespielt, dabei wurde das Ergebnis aber nur schlechter.
Ein Problem das mir aufgefallen ist, ist die geringe Auflösung meiner Messung in Verbindung mit einer hohen Mess- und Regelfrequenz.
Den Winkelbereich von -90 bis 90 Grad löst mein Sensor in ca. 180 Schritten auf, d.h. ich habe eine Auflösung von ca. 1 Grad. mit einem Fehler von +- 2 Grad.
Mehr als ca. 10 Grad darf das Fahrgestell nicht kippen, sonst lässt es sich nicht mehr auffangen. Da meine Motoren zur Zeit noch mit der 5V Versorgung des RN Control laufen, habe ich relativ wenig Spiel bei der Steuerspannung. Bei einem PWM-Wert von 400 fangen die Motoren gerade an sich zu bewegen und bei 10 Grad Neigung brauch ich dann schon den maximalen PWM-Wert von 1023 um das Fahrgestell überhaupt noch abfangen zu können.
Als Verstärkungsfaktor für den P-Regler ergibt sich also ca. 100 und damit wird die Steuerung der Motoren durch den grossen Messfehler und die hohe Regelfrequenz sehr ruckelig. Den Getriebemotoren macht das sicher keinen grossen Spass, die hören sich jedenfalls Mitleiderregend an und würden das so nicht lange mitmachen.
Ausserdem kommt dadurch neben der Beschleunigung noch ein weiterer Faktor der die Messung des Neigungswinkels beeinflusst ins Spiel , nämlich eine ziemlich starke Vibration.
Durch die Vibration wird der Messfehler grösser, dadurch wird wiederum die Vibration grösser - das System schaukelt sich auf bis es umkippt.
D.h. ich muss jetzt wohl erst mal zusehen, dass ich eine höhere Auflösung bei der Messung und einen niedrigeren Messfehler hinbekomme.
Das müsste eigentlich möglich sein, indem ich einerseits die Pulsweite am ADXL durch einen anderen Widerstand vergrössere und andrerseits die Auflösung bei der Messung der Pulsbreite durch den µC erhöhe.
Außerdem werde ich die Motoren mit 12 statt mit 5 Volt versorgen um auch da etwas mehr Spiel zu bekommen. Durch das Gewicht des zusätzlichen Akkus müsste das ganze System dann auch noch etwas träger werden.
Vielleicht bekomme ich dadurch die Vibration raus.
Toll, wirklich spannend zu lesen.
Wie ist es mit dem Anbinden eines "Besenstils", um erst einmal ein besseres Gefühl für die Regelparameter zu gewinnen?
Nicht zuviel Gewicht (fürs Getriebe) aber zeimlich weit oben zur Verlangsamung des Kippens.
Manfred
Ein paar Gewindestangen mit ein bischen Ballast als "Besenstilersatz" anzuschrauben sollte dank Lochblech-Konstruktion kein Problem sein.Zitat:
Wie ist es mit dem Anbinden eines "Besenstils", um erst einmal ein besseres Gefühl für die Regelparameter zu gewinnen?
Vom Gefühl her vermute ich, dass ich mir erst mal etwas Spielraum verschaffen muss um überhaupt mit den Regelparametern herumzuexperimentieren zu können.
Ich bin mir momentan nur noch nicht so ganz über die richtige Kombination von Kondensatoren und Widerstand für die Beschaltung des ADXL im klaren.
Die momentane Auflösung von 1 Grad+-200% Fehler kanns ja eigentlich nicht sein.
Ich habe mal den Absatz zur Bestimmung von R und C aus dem Datenblatt hereinkopiert.
Wenn Du das Signal analog abgreifst dann ist der R im letzten Satz schon mal klar mit 500k-2M.
Für C ist eine Tabelle dabei. Man sollte sie halt so groß wie möglich manchen, denn sie reduzieren das Rauschen. Mehr als 50-100Hz wird man nicht brauchen, also etwa 50nF-100nF.
Manfred
Code:Setting the Bandwidth Using CX and CY
The ADXL202E has provisions for bandlimiting the XFILT and
YFILT pins. Capacitors must be added at these pins to implement
low-pass filtering for antialiasing and noise reduction. …
The tolerance of the internal resistor (RFILT), can vary typically as
much as ±15% of its nominal value of 32 kΩ; so the bandwidth
will vary accordingly. A minimum capacitance of 1000 pF for
C(X, Y) is required in all cases.
Table I. Filter Capacitor Selection, CX and CY Capacitor
Bandwidth Value
10 Hz 0.47 µF
50 Hz 0.10 µF
100 Hz 0.05 µF
200 Hz 0.027 µF
500 Hz 0.01 µF
5 kHz 0.001 µF
Setting the DCM Period with RSET
The period of the DCM output is set for both channels by a single
resistor from RSET to ground.
A 125 kΩ resistor will set the duty cycle repetition rate to approximately
1 kHz, or 1 ms. The device is designed to operate at duty
cycle periods between 0.5 ms and 10 ms.Table II. Resistor Values to Set T2
T2 RSET
1 ms 125 kΩ
2 ms 250 kΩ
5 ms 625 kΩ
10 ms 1.25 MΩ
Note that the RSET should always be included, even if only an
analog output is desired. Use an RSET value between 500 k;
and 2 M; when taking the output from XFILT or YFILT.
Ich habe als Kondensatoren 100nF und mit meinem Rset von 1M eine Pulsweite T2 von 8 ms.Zitat:
Für C ist eine Tabelle dabei. Man sollte sie halt so groß wie möglich manchen, den sie reduzieren das Rauschen. Mehr als 50-100Hz wird man nicht brauchen, also etwa 50nF-100nF.
Was mich im Datenblatt verwirrt hat ist:
Die Pulsweite von 8ms ergibt eine DCM Frequenz von 125 Hz. Wenn die analoge Bandbreite kleiner als 1/10 sein soll, komme ich nur noch auf 12,5 Hz, das erscheint mir etwas wenig.Zitat:
To minimize DCM errors the analog bandwidth should be less than 1/10 the DCM frequency.
Analog bandwidth may be increased to up to 1/2 the DCM frequency in many applications. This will result in greater dynamic error generated at the DCM.
Um den DCM Fehler bei einer brauchbaren analogen Bandbreite klein zu halten müsste ich also mit der Pulsweite runtergehen.
ABER:
Der PULSEIN Befehl in Bascom löst mit 10 µS auf, das ergibt bei 8ms gerade mal 800 Schritte, was bei einem Duty Cycle von 0,5 meiner Auflösung von 1Grad entspricht.
Kleinere Pulsweite hiesse mit der Auflösung noch weiter runtergehen, die taugt dann nicht mehr viel.
Um mir statt dem PULSEIN Befehl eine eigene Routine mit feinerer Auflösung zu schreiben, müsste ich erst mal Assembler lernen, das würde die ganze Geschichte um Jahre verzögern.
D.h. wenn ich die Meßgenauigkeit erhöhen will, kann ich es eigentlich nur mit analoger Messung über einen AD-Eingang versuchen.
Bevor ich das umlöte versuche ichs dann doch erst mal mit dem Besenstil ;-)
@recycle:
Bevor du die Bandbreite des Sensors modifizierst würde ich erst einmal die Zeitkonstante des Systems ermitteln.
Einfach den Robbi an den Rädern über Kopf pendeln lassen und die Schwingungsdauer für mehrere Perioden stoppen.
Die Beziehung gilt in der anderen Richtung:Zitat:
To minimize DCM errors the analog bandwidth should be less than 1/10 the DCM frequency.
Analog bandwidth may be increased to up to 1/2 the DCM frequency in many applications. This will result in greater dynamic error generated at the DCM.
Die Pulsweite von 8ms ergibt eine DCM Frequenz von 125 Hz. Wenn die analoge Bandbreite kleiner als 1/10 sein soll, komme ich nur noch auf 12,5 Hz, das erscheint mir etwas wenig.
Wie oft muss ich messen, um eine Schwingung sauber aufzunehmen: besser 10mal aber bis mindestens 2 mal pro Periode.
Wenn bei Dir die Messrate fest ist, dann braucht man auch keine höhere PWM-Frequenz laufen zu lassen. Die Bandbreite wird dadurch praktisch nicht verändert.
Ich fürchte, nachdem wir einen Tag nichts gehört haben, Du hast zusammen mit dem Besen zwischenzeitlich zusätzliche Aufgaben übernommen.Zitat:
Bevor ich das umlöte versuche ichs dann doch erst mal mit dem Besenstil
Manfred
So ähnlich.Zitat:
Ich fürchte, nachdem wir einen Tag nichts gehört haben, Du hast zusammen mit dem Besen zwischenzeitlich zusätzliche Aufgaben übernommen.
Bei den Experimenten die ich heute stundenlang gemacht habe, hatte das Fahrgestell 3 statt 2 Räder und der "Besenstil" hatte oben einen Griff der dazu dient die Trägheit meiner Tochter auszugleichen, die Dreiradfahren zwar ganz klasse findet, aber wenig davon hält in die Pedale zu treten.
Ich habe mal in meinen Unterlagen zum balancierenden 2-Rad Roboter nachgeschaut und einige Berechnungen zum Thema gefunden, die ggf. von Interesse sein könnten. Bei der ersten Simulation ging es um die Frage, welche Lagerkräfte eigentlich bei so einem Pendel auftreten. Die Ergebnisse gibt es hier:
Etwas Offtopic aber irgendwie doch interessant:
www.segway.at
Hab ich dieses Wochenende auf der HighEnd in München rumflitzen sehen.
Wolfgang
Hi Wolfgang!
So einen Segway habe ich auch dieses Jahr auf der Hannover Messe gesehen, da hat ein kleiner Junge eine Testfahrt drauf gemacht.
Allerdings hat sein Gewicht nicht ausgereicht um den Segway vernünftig zu beschleunigen, da man sich ja immer in die Richtung lehnen muss, wo man hinfahren möchte!
Sah etwas ulkig aus! *lol*
Funktionieren die Segways eigentlich auch so, wie wir es hier besprechen?
So wie ich das verstanden habe reagiert der Segway auf das vor und zurücklehnen (Beschleunigung bzw. Bremsen). Die Gleichgewichtsproblematik sollte die selbe sein wie hier besprochen.
Wolfgang
wir haben hier in der stadt zwei zum ausleihen, geile gefährte ;-)
hab vorige woche mit der generalimporteurin gesprochen und ein wenig gefragt.
das schwierigste war angeblich die stabile geraudeausfahrt, gelenkt wird ja per drehgriff mit der rechten hand.
und die richtung bzw das tempo wird nicht über die säule erfasst, sondern über drucksensoren auf dem stehpodest (deshalb konnte der kleine junge vielleicht nicht fahren?).
die säule ist praktisch nur zum anhalten bzw gleichgewichtshilfe.
mfg knacki
Laut Segway gibt es 5 Gyros und zwei Neigungssensoren:
http://www.segway.com/segway/component_details.html
Von Drucksensoren ist bei Segway nichts zu erfahren.
Der Segway HT funktioniert demnach so wie hier besprochen.
tja, so hats die mir erklärt.....
was noch dafür spricht: wenn man daneben steht, kann man den auch neigen und er fährt nicht weg, wenn man draufsteht, fährt der bei der leisesten verlagerung los.
man kann ihn auch am monitor so umschalten, dass man ihn ohne kraftaufwand hinter sich stiegen rauffahren lassen kann.
ich hab eh zwei gutscheine für jeweils 1 1/2 stunden ausfahrt, werd mir das dann genauer ansehen ;-)
mfg knacki
@Alter Knacker
Hi knacki,
da bin ich sehr gespannt.
Die Steuerung für einen balancierenden 2-Rad Roboter ist natürlich etwas anders aufgebaut. Dort benötige ich keine Drucksensoren, oder andere Sensoren um zu erkennen, ob der Fahrer an Bord ist. Bei meinem UCBalBot ist es so realisiert, daß der Robbi unabhängig (theoretisch) von der Last auf der Stelle balanciert.
Soll er fahren, gebe ich das über eine Infrarotfernsteuerung vor.
@UlliC:
hast du dir schonmal mein video aus diesem thread angesehen, wäre das nicht das richtige?
mfg knacki
Hallo knacki,Zitat:
hast du dir schonmal mein video aus diesem thread angesehen, wäre das nicht das richtige?
das Video habe ich schon gesehen. Klasse.
Balancieren eines Doppelpendels wäre der nächste Schritt.
Ich empfehle aber zuerst einmal ein invertiertes Einfachpendel zum Balancieren zu bringen.
Der zweite Schritt ist dann mit einem Winkelgeber im Gelenk zwischen 1. und 2. Pendel deutlich einfacher.
@UlliC
Habs mal probiert, besonders genau bekomme ich das aber nicht hin. Das Ding pendelt 2-3 mal, wenn man ganz scharf hinguckt, kann man vielleicht auch noch 4-5 Perioden erkennen, mit der Hand gestoppt gibt das höchstens nen Schätzwert.Zitat:
Bevor du die Bandbreite des Sensors modifizierst würde ich erst einmal die Zeitkonstante des Systems ermitteln.
Einfach den Robbi an den Rädern über Kopf pendeln lassen und die Schwingungsdauer für mehrere Perioden stoppen.
Wozu nutzt mir die Zeitkonstante denn überhaupt? Nur um abzuschätzen, ob meine Messfrequenz hoch genug ist?
Die müsste eigentlich hoch genug sein. Momentan kickt mein Programm das Fahrgestell jedenfalls viel schneller hin- und her, als es von alleine umfallen würde ;-)
@ recycleZitat:
Wozu nutzt mir die Zeitkonstante denn überhaupt? Nur um abzuschätzen, ob meine Messfrequenz hoch genug ist?
Genau.
Die Zeitkonstante brauchst du für die Auslegung des Reglers, die Bestimmung der Abtastfrequenz und der Messfrequenz.
Dein Roboter verhält sich bei diesem Versuch wie ein "System zweiter Ordnung" mit geringer Dämpfung.
Aus der Periodendauer Tp einer Schwingung kann man näherungsweise die regelungstechnisch relevante Zeitkonstante des Systems wie folgt bestimmen:
T ~ Tp/2Pi
Die Abtastfrequenz sollte etwa 5 bis 10 * 1/T sein.