www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Beschleunigungssensor ADXL 202 auslesen


Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Experten,

ich möchte mit einem Beschleunigungssensor ADXL202 die Beschleunigung
messen und auf einem LC - Display ausgeben. Als Mikrocontroller
verwende ich einen ATmega8. Als Programmierumgebung verwende ich WIN
AVR zum schreiben des Codes und zur Erstellung des HEX Files, welches
ich mit PonyProg2000 auf den Mikrocontroller lade. Ich brauche nun den
Code, mit dem ich das digitale Signal des Beschleunigungssensor
auslesen kann. Die Initialisierungsroutine für das Display habe ich
bereits geschrieben, d.h. ich kann bereits Zahlen oder Wörter auf dem
LC - Display ausgeben. Allerdings weiß ich jetzt nicht mehr weiter.
Vielleicht kann mir jemand einen Tipp geben oder vielleicht hat ja
jemand schon einmal so etwas ähnliches gemacht. Ich wäre sehr dankbar,
wenn ich dann denn Code erhalten könnte!!


mfg Hans

Autor: TheMason (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Hans,

ich hab zwar noch nichts mit dem AVR und dem ADXL 202 gemacht (obwohl
ich bei Ebay mal welche von den ADXL ersteigert hatte *gg).
Hab in den Datenblättern meine ich gesehen das die Teile ein PWM-Signal
abgeben. Die Pulsweite ist der jeweilige Beschleunigungswert.
Mit diesen beiden PWM Signalen (X/Y) würde ich auf zwei
Interruptleitungen gehen und die jeweilige Pulslänge über einen Timer
messen.
Dann solltest du die Beschleunigungswerte erhalten.
Hatte damals mal (als die Dinger rauskamen) ein Demo von Analog Devices
bei uns an der FH gesehen. Die Teile sind eigentlich recht akkurat.
Kann man bestimmt witzige Sachen mit machen. Sag mal bescheid wenns
klappt und wie genau die Teile sind.

Gruß
Rene

Autor: nelson (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
hab vor kurzem erst rumexperimentier mit denen!
Sieh dir doch mal die AP

http://www.analog.com/UploadedFiles/Application_No...

an, da ist das Auslesen erklärt!

Prinzipiell kannst du den Duty Cycle Messen oder das Analog Signal
direkt mit dem AD Wandler messen!

mfg

Autor: Hagen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du solltest drei Programmschritte vorsehen:


1.) messen der Frequenz der PWM, das musst du nur periodisch
durchführen da der Temeraturdrift des ADXL sehr gering ist. Du brauchst
abr die Frequenz

2.) permanentes messen des Dutycycles vom X und Y Kanal.

3.) Kalibrierungswerte ermitteln, dies machst du nur einmalig
undspeicherst dann die gemessenen Werte im EEPROM. Dabei legst du den
ADXL zb in der X Achse so das diese in Richtung Erde zeigt. Diu misst
den Dutycycle der X-Achse. Danach drehst du den ADXL um 180 Grad so das
die X Achse wiederum in Richtung Erde zeigt. Du hast nun zwei Werte
gemeseen für die X Achse, addiere sie und teile sie duch 2 und schon
hast du den Nullpunkt der X Achse ermittelt. Dein Duty kann also nun
+-12.5 % von diesem Nullpunkt abweichen. Das gleiche machst du auch mit
der Y-Achse.

Gruß Hagen

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.