www.mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Beschleunigungssensor Werte filtern


Autor: Luky (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe einen analogen 3-Achs Beschleunigungssensor mit einem 
Tiefpassfilter an jedem Ausgang (1. Ordnung, R im IC integriert, C muss 
noch extern hinzugefügt werden)
Ich möchte nun die 3 Achsen mit einem AVR (10Bit, 15KHz ADC) einlesen 
und wenn möglich die Werte so korrigieren, dass es wie eine 
gleichzeitige Abtastung der 3 Kanäle aussieht.
Am Ende benötige ich 10Hz (x3) Abtastrate für die Berechnung im µC.
Wie muss ich nun korrekt abtasten und digital filtern?

Autor: schalter_walter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieso nicht alle Werte gleichzeitig per Sample and hold festhalten und 
dann nacheinander auslesen??

http://de.wikipedia.org/wiki/Sample-and-Hold-Schal...

mfg

Autor: Luky (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn möglich würde ich einen Zusatzbaustein gerne verhindern und es im 
Controller lösen.

Autor: Mark Brandis (markbrandis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Luky schrieb:
> (10Bit, 15KHz ADC) einlesen
> Am Ende benötige ich 10Hz (x3) Abtastrate für die Berechnung im µC

30 Hz = dreißig Werte pro Sekunde ist doch sehr niedrig im Vergleich zu 
der Anzahl, die der ADC pro Sekunde liefern kann. Da ist ein Faktor 500 
dazwischen. Ist es wirklich so gravierend, wenn zwischen den 
Abtastwerten zweier Achsen eine Verzögerung von t = (1/15000) s = 
66,66666... µs liegt?
Oder aber kann vielleicht der Mikrocontroller nicht so schnell zwischen 
den verschiedenen Eingangssignalen für die A/D-Wandlung umschalten?

Autor: Luky (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde die Werte eben gerne digital Filtern und bis auf den 
Filterkondensator auf externe Beschaltung weitestgehend verzichten.
Der 10Bit ADC des AVRs ist nicht gerade ein spitzenprodukt, also würde 
eine Mittelung über ein paar Samples auch nicht schaden.
Die frage ist eben, wie ich das korrekt durchführen kann, sodass am ende 
10Hz Abtastrate pro Kanal rauskommen..

Autor: Filter-Tipp (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich weiß nicht, ob das eventuell zuviel Aufwand im AVR ist, aber 
prinzipiell kannst du doch einen diskreten Kalman-Filter benutzten, um 
unterschiedliche Abtastzeitpunkte benutzen zu können. Vielleicht kann 
sich noch mal jemand, der das schon mit einem AVR gemacht hat äußern. 
Sonst findest du unter dem Stichwort auf jeden Fall was.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.