- Labornetzteil AliExpress         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 23

Thema: 3D-Accelerometer ADXL330

  1. #11
    Erfahrener Benutzer Roboter Genie Avatar von Willa
    Registriert seit
    26.10.2006
    Ort
    Bremen
    Alter
    44
    Beiträge
    1.273
    Anzeige

    E-Bike
    ...okay, klingt so als hättest du dich ein bisschen damit auseinandergesetzt..... ;-D Im Gegensatz zu mir... Mein Tiefpass ist einfach:
    yACCfiltlowpass = Yacc * 31
    yACCfiltlowpass = yACCfiltlowpass + Yacc
    Shift yACCfiltlowpass, Right , 5 '<-- das gleiche wie division durch 32
    Wie der offizielle Name für diese Filterung ist weiss ich aber nicht. Ich frage mich allerdings wie komplex die Filteroperationen auf einem µC so sein können... Werde mich mal etwas mit deinem Post beschäftigen...
    Viele Grüße, William
    -> http://william.thielicke.org/

  2. #12
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.08.2004
    Ort
    Stuttgart
    Alter
    49
    Beiträge
    851
    Zitat Zitat von Willa
    yACCfiltlowpass = Yacc * 31
    yACCfiltlowpass = yACCfiltlowpass + Yacc
    Shift yACCfiltlowpass, Right , 5 '<-- das gleiche wie division durch 32
    Wie der offizielle Name für diese Filterung ist weiss ich aber nicht.
    Der Filter sieht (ohne den Zussammenhang jetzt genauer zu kennen) aus wie eine arithmetische Mittelwertsbildung. Wenn du ihn nach jeder Messung aufrufst verhält er sich wie eine Halbwertszeit über t. Ist also recht sensibel auf apruppte neue Eingangsgrößen und wird dir daher auch in deine Regelkreise einschlagen als Istwert-Sprung bei einer Sensorwert-Spitze.

    Der (Glättungs)Filter von mir basiert auf einer Tiefpassfilterung, das heißt es wird eine digitale Filterung aufgrund eines Frequenzspektrums (0Hz bis Samplingfrequenz) vorgenommen. Sinn ist schlicht und einfach das "hochfrequente" Anteile (hoher Differentialsprung dg/dt) aus dem nützlichen "tieffrequenten" Anteil sicher und definiert entfernt werden. Die Qualität ist eine Frage wie weit man die digitalen Filter ausreizt und was der Ziel-Prozessor an Resorcen zur Samplingfrequenz hergibt.

    Hier habe ich eben noch eine kleine Grafik zur Veranschaulichung gezeichnet wie das System grundlegend funktioniert:

    Bild hier  

    Hat irgendwas von Sudoku, nur bissel aufwändiger...

    Noch ein kleiner Nachtrag, habe den Code von dir einmal einfach umgestellt auf eine einfache Darstellung:

    NeuenWertRechnen
    {
    Wert = NeuerWert * 31
    Wert = Wert + NeuerWert
    Wert = Wert / 32
    }

    Wobei Wert 'Static' ist, also nicht bei jedem Aufruf neu initialisiert wird, sondern seinen Wert beibehält bis zum nächsten Aufruf.

    Das Verhalten ist eine (Laufzeitverbesserte) arithmetische Mittelwertsbildung auf einer Dimension (Array[n]). Heißt du schiebst einen neuen Wert in das Array unter Beachtung von 31 (weil ja eines rausfliegt bei neuem Wert) verbleibenden Messpunkten und fügst den 32sten hinzu um ihn über den gesamten Bereich von 32 Samples wieder zu dividieren. Das erspart die unnützen Shiftoperationen beim Eingang eines neuen Samples über alle 32 Arrayelemente in der Form:

    For n = 30 To 0 Step -1
    Buffer(n) = Buffer(n + 1)
    Next n
    Buffer(31) = NeuerWert

    Ist im Grunde das hier:

    Wert = Summe{Buffer[n]} / 32

    Wobei n einen Buffer über n Elemente (in deinem Fall 32) darstellt.

    Habe das bei meiner Software anstatt FIR-Filter AMW-Filter (arithmetisches Mittelwertfilter) genannt. Da sieht man das ein Mittelwertsfilter "träge" reagiert, mit einem FIR dafür subitl und schnell. Hängt daran, das auf der Frequenz selektiert wird (dem speziellen eben frequenz-selektiven Differenzial aufgrund y=dx/dt), nicht auf einem Mittelwert.

    Grüße Wolfgang

  3. #13
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.08.2004
    Ort
    Stuttgart
    Alter
    49
    Beiträge
    851
    Fehler bei einer Korrektur

  4. #14
    Benutzer Stammmitglied
    Registriert seit
    07.03.2008
    Ort
    Nürnberg
    Alter
    41
    Beiträge
    51
    Hi!

    Ich lese mir gerade die Projektdoku auf deiner Webseite durch.
    Super Arbeit!
    Schon lange nicht mehr eine so ordentliche und vollständige Ausarbeitung gesehen!
    Danke fürs Veröffentlichen!

    Gruß

  5. #15
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.08.2004
    Ort
    Stuttgart
    Alter
    49
    Beiträge
    851
    @error41
    Vielen Dank für das positive Feedback, ich hoffe es stimmt alles soweit und du kannst es gebrauchen.

    Grüße Wolfgang

  6. #16
    Hallo,
    erstmal muss ich sagen, dass dieses Projekt sehr interssant ist und mich inspiriert hat!
    Ich habe jetzt auch einen ADXL 330 bestellt . Es ist geplant minimale Winkeländerungen (<1,0°) und Vibrationen zu detektieren.
    Leider werde ich aus dem Datasheet nicht schlau und kann mir unter +/- 3g nicht genau vorstellen welche minimalste Winkeländerung messbar sind? Ich freu mich über eure Antworten.
    Gruß Lukas

  7. #17
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.08.2004
    Ort
    Stuttgart
    Alter
    49
    Beiträge
    851
    Servus,

    Vorweg, +/- 3g sind die maximalen verzerrungsfreien (linearen) Auflösungen in allen drei Raum-Achsen. Bei Ruhelage im Raum hat der Sensor damit 1g Vorbelastung in Z (wenn er mit Z genau senkrecht steht) und in X bzw. Y 0g. Im freien Fall hätten alle Achsen genau 0g.
    Die theoretische Auflösung kannst du dir damit grob ausrechnen. Primär hängt aber alles von deiner verwendeten Digitalisierung (AD-Wandlung) ab. Solltest es einmal ausrechnen als Tabelle über den Winkel (z.b. -90 bis +90°) bei einer Drehung um die X-Achse. Dann folgen die Y und Z-Achsensignale einem Sinus und Cosinus. Daraus erkennst du das Problem mit der Winkel-Genauigeit, diese kann nicht linear beziffert werden.

    Grüße Wolfgang

  8. #18
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    09.09.2006
    Alter
    35
    Beiträge
    841
    Blog-Einträge
    1
    was ist von solchen angeboten zu halten:

    http://cgi.ebay.de/ADXL330-Small-Low...item335737d6ce


    der preis lockt schon...

  9. #19
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.08.2004
    Ort
    Stuttgart
    Alter
    49
    Beiträge
    851
    Zitat Zitat von dremler
    was ist von solchen angeboten zu halten...
    Was davon zu halten ist weiß ich nicht, habe noch keine Erfahrungen mit diesem Anbieter. Der Preis sollte ca. um 11,35 Euro liegen.
    Meine beiden Sensoren hatte ich in Österreich bei Neuhold-Elektronik gekauft und lagen in ähnlicher Preisregion wenn man den Versand mitbetrachtet.
    http://www.neuhold-elektronik.at/cat...oducts_id=3094
    Dieser Artikel wird dort auch wie es aussieht noch vertrieben.

    Grüße Wolfgang

  10. #20
    Hallo,
    Vielen dankt für die ausführliche Antwort zur Winkel Berechnung. Die von Ihnen gut dokumentierte Schaltung habe ich aufgebaut und konnte die analogen Spannungswerte vom ADXL330 auch schon am Oszi nachvollziehen.
    Jetzt hängt es nur an der Dimensionierung der Pegelwandler Schaltung. Da die Bezeichnung der Bauteile auf dem Layout nur schlecht lesbar sind, wäre es super wenn Sie den Pegelwandler nochmals kurz nähr erläutern könnten.

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

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

12V Akku bauen