-         

Seite 1 von 7 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 66

Thema: Habe Probleme mit Drift bei Gyro ADIS16250

  1. #1

    Habe Probleme mit Drift bei Gyro ADIS16250

    Anzeige

    Hallo zusammen

    Habe mich schon einige Male auf Eurer tollen Homepage rumgetrieben. Ich selber baue keine Roboter, aber vielleicht helft ihr mir ja trotzdem bei einem Problem welches Euch vielleicht auch schon einmal beschäftigt hat. Ich fahre Autorennen und baue mir gerade ein Gerät welches mir die rein dynamische Beschleunigung ausgeben soll (also ohne Erdbeschleunigung) Da das Auto ja nicht immer gerade steht, muss ich also die Neigung erfassen können. Hierzu verwende ich die Gyros ADIS16250 von Analog Device. Als Beschleunigungssensor dient ein SCA3000 von VTI.

    Und hier nun zu meinem Problem. Den Code sowie das Datenblatt könnte ich posten falls es etwas bringen sollte.

    Habe schon diverse Artikel gelesen über die Drift bei Gyros. Mein Problem ist es nun, das ich genau das habe, aber in einem Mass in dem ich es mir nicht erklären kann. Wenn ich mein Gerät einfach auf dem Tisch liegen lasse, also eigentlich nur die Erddrehung einen Einfluss hat, läuft mir das Teil einfach hoch. Das heisst, die Anzeige zeigt ca. 1°/s an dann 2,3,4.....20°/s und fängt dann wieder bei 1 an (wie ein interner Reset). Dieser Durchlauf dauert ca. 2s. Der Winkel den der Sensor dann natürlich intern daraus integriert, läuft in gleichem Masse davon. Muss sagen, dass alle drei immer gegen (-) laufen. Auch wenn ich sie ein paar Stunden eingeschaltet habe, ist die Drift nicht besser. Spannung ist Stabil. Temperatur auch.
    Der Sensor kostet einzeln ein ganz schönes Geld und ich kann mir einfach nicht vorstellen, dass dies so extrem sein soll. Kann vielleicht mal jemand ins Datenblatt schauen. Habe es schon mehrmals durchgelesen, aber verstehe einige Sachen noch nicht genau.
    Um es ein bisschen weniger Empfindlich zu machen habe ich die Filter Taps auf 128 gestellt, aber an der Anzeige sehe ich absolut keinen Unterschied. Einen externen Kondensator habe ich noch nicht verbaut. Mich wundert einfach wieso die Drift in °/s immer mehr zunimmt und nicht konstant bleibt. Wenn er sagen wir mit Konstant 3°/s driftet kann ich das ja rel. einfach filtern, aber wenn der macht was er will, wie soll man da dran gehen. Ach ja, wenn ich das Teil ein bisschen drehe, sehe ich wie er mir pos. und neg. Werte je nach Richtung anzeigt. Ob sie von der grosse her stimmen kann ich halt im Moment nicht sagen, da ich es eben nur von Hand ein bisschen drehen kann. Was mir auch noch aufgefallen ist, ist, dass sich der Winkel den das Teil intern integriert von -320 - +320° geht !? Also ein Kreis hat für mich immer noch 360° *g* Da bin ich auch noch nicht gestiegen. Ist das erste mal das ich solche Bauteile einsetze und wäre froh wenn mir jemand helfen könnte. Vielleicht mache ich ja auch einfach sonst was falsch mit der Ansteuerung.

    Danke schonmal im Voraus für die Hilfe

    Gruss reflection

  2. #2
    Salu zusammen

    Wollte nur noch einmal nachfragen ob das Problem niemand kennt, oder halt eben nicht kennt. Wäre über Infos echt froh. Bleibt bei Euch die Drift stabil, also z.B. 3°/s oder so, oder läuft es auch so aus dem Ruder wie bei mir. Vielleicht ist das ja normal, wie gesagt, habe noch nie solche Bauteile verbaut und wäre über Erfahrungen, auch mit anderen Typen sehr froh.

    Gruss reflection

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.07.2007
    Alter
    53
    Beiträge
    1.080
    Ich kann dir da nur die Kollegen vom UFO-Forum empfehlen. Piezo-Gyros werden meistens eher im Flugbereich eingesetzt und dort ist reichlich Erfahrung vorhanden

    http://forum.xufo.net

    Dort solltest du per "Suche" einiges an Informationen finden.

    Gruss MeckPommER
    Mein Hexapod im Detail auf www.vreal.de

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.02.2006
    Beiträge
    982
    Da es keine volle 360grad sind wuerde ich spontan darauf tippen dass du nen Wurm in deiner Software hast?
    Nam et ipsa scientia potestas est..

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    28
    Beiträge
    1.461
    Hi.

    Das haben diese Gyros einfach an sich, dass die davon driften.
    Da kann man (fast) nichts dagegen machen.
    Da ich zur Zeit was ähnliches entwickle (naja fast www.tobias-schlegel.de/?id=lena ) habe ich ein ziemlich ähnliches Problem wie du.
    In der Professionellenszene werden die Gyros mit allerhand Mathematik behandelt (bestimmte Frequenzen gedämpft oder ausgefiltert, das macht man auch schon hardwareseitig per Tiefpass etc, ganz wichtig ist da auch der Kalman-Filter).
    Ohne diese Mathematischen Tricks wirst du dem Drift nie beikommen, da dein Rennauto auch ganz schön vibbrieren dürfte.

    Aber wenn ich dein Anliegen richtig verstanden habe, brauchst du garkeinen Gyro.
    Du verwendest ja einen 3-Achsigen Beschleunigungsmesser. Und dir ist die Fallbeschleunigung g (= 9,81m/s²) bekannt.
    Dein Problem ist, dass sich dein Auto in der Kurve neigt, und du so die Beschleunigung nicht exakt messen kannst.
    ABER *Trick*:
    Wenn du dich in der Kurve neigst, wird ja die Z-Beschleunigung größer als g. Dazu kommt die Seitenbeschleunigung a(x), die du von der X- und Y-Achse ablesen kannst.
    Du kannst also die Gesamtbeschleunigung berechnen aus:
    a[ges]² = (a(z)-g)² + (a(x))² (Satz des Pythagoras).

    Ich hoffe ich hab richtig verstanden was du messen willst, und keinen schweren Denkfehler gemacht

    VLG Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.02.2006
    Beiträge
    982
    Der Drift is klar..aber ~20° in 2 Sekunden nur durch Rauschen wenn das Ding flach auf dem Tisch liegt? Und hatten die iMEMS mit I²C nicht auch schon integrierte Digitalfilter?..naja..

    Ja tobi, die Seitenneigung kann man auch über die änderungen an der Senkrechten Achse messen.

    btw. tobi, Kalmanfilter...hast du selbigen schon implementiert? Das kommt demnächst auch auf mich zu nur leider entzieht sich die Thematik vollständig meinem Verständnis
    Ein paar Codeschnippsel in Bascom wären super.
    Nam et ipsa scientia potestas est..

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.06.2004
    Ort
    Bad Schussenried in Oberschwaben
    Alter
    28
    Beiträge
    1.461
    Hi

    20° in 2 Sekunden... ouch.
    Hast du mal versucht einen Tiefpass zu implementieren? Viele Sensoren haben diesbezüglich schon was vorgesehen... (Externer Kondensator oder so).

    Joa, also würd ich den Gyro weglassen, nur etwas, was das Ergebnis verfälschen kann.

    Den Kalmanfilter... nein. Davon hab ich leider auch (noch??) keine Ahnung.
    Aber ich hab gehört, dass es den Filter komplett implementiert irgendwo im Netz zun downloaden gibt, genauso wie Libs zum Fast-Fourier-Transformieren.
    Da müsstest du dann allerdings auf C umsteigen...

    VLG Tobi
    http://www.tobias-schlegel.de
    "An AVR can solve (almost) every problem" - ts

  8. #8
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    19.02.2006
    Beiträge
    982
    Das mit C wollt ich eigentlich umgehen..da bin ich eher mager bewandert x.x
    Naja, ich werd mal Google bemühen..muß eh erst mal das BGA auf die PCB gepfriemelt bekommen.
    Nam et ipsa scientia potestas est..

  9. #9
    Du verwendest ja einen 3-Achsigen Beschleunigungsmesser. Und dir ist die Fallbeschleunigung g (= 9,81m/s²) bekannt.
    Dein Problem ist, dass sich dein Auto in der Kurve neigt, und du so die Beschleunigung nicht exakt messen kannst.
    ABER *Trick*:
    Wenn du dich in der Kurve neigst, wird ja die Z-Beschleunigung größer als g. Dazu kommt die Seitenbeschleunigung a(x), die du von der X- und Y-Achse ablesen kannst.
    Du kannst also die Gesamtbeschleunigung berechnen aus:
    a[ges]² = (a(z)-g)² + (a(x))² (Satz des Pythagoras).


    Vielen Dank für die ausführlichen Tipps. Also ich denke schon das ich Gyros benötige. Wenn ich ja in eine Kurve fahre wird die z- Beschleunigung kleiner (teilt sich auf zwei Vektoren auf) als 1g (das Gerät ist fix im Auto drin) da ich aber nun nicht weiss welcher Teil der Beschleunigung durch die Schräglage kommt und welcher Teil durch die Beschleunigung des Fahrzeugs benötige ich die Gyros, oder bin ich jetzt seit Monaten von falschen Bedinungen ausgegangen? Vielleicht verstehe ich auch einfach Deine Antwort falsch. Würdest Du mir vielleicht nocheinmal erläutern wie Du es machen würdest?

    Gruss reflection

  10. #10
    Erfahrener Benutzer Roboter Genie Avatar von Crazy Harry
    Registriert seit
    15.01.2006
    Ort
    Raum Augsburg - Ulm
    Beiträge
    1.192
    um einen gyro kommst du nicht rum, da hier zentrifugalkräfte auch eine rolle spielen und das ergebnis total verfälschen. die rechnung von tobimc dürfte nur im stand stimmen wenn du den sensor kippst.

    ein beschleunigungssensor müßte eigentlich in Y-richtung in fahrt (wenn ich z.b. von einem fahrrad in schräglage ausgehe) 0 anzeigen ..... falls nicht fällt man gerade auf die schn...e
    Ich programmiere mit AVRCo

Seite 1 von 7 123 ... LetzteLetzte

Berechtigungen

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