www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ADXL beschleunigungsmesser auswerten


Autor: Marcel Meyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich mal wieder :(

habe jetzt meinen beschleunigungsmesser wieder ausgepackt und will das
jetzt zum laufen bringen, das dingen erzeugt einen PWM und je nach lage
verändert sich das verhältnis ( 0g=50% / 50%), das teil funktioniert
laut osziloskop auch einwandfrei... das auswerten versuche ich derzeit
mit einem ATMEGA16 und codevision, nur leider komme ich nicht so recht
weiter... derzeit versuche ich über einen interrupt den erzeugten
High-pegel zu messen, da scheitert es jedoch schon :(

code:

interrupt [EXT_INT2] void ext_int2_isr(void)
{
// Place your code here
high=TCNT1H;  //sichern
low=TCNT1L;

TCNT1H=0x00;   //timer zurücksetzen
TCNT1L=0x00;
}

im main wird nur der inhalt von high u. low per uart ausgegeben, jedoch
ist der wert immer 0?!

die einstellungen am timer sind wie folgt:
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 7,200 kHz
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
TCCR1A=0x00;
TCCR1B=0x05;
TCNT1H=0x00;
TCNT1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

stehe leider mächtig auf dem schlauch, und weiss nicht wie ich so
richtig weitermachen soll, die suchfunktion im forum hat mir auch nicht
sooo richtig weitergeholfen.

Mfg
Marcel

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
tja, bei mir sind heute auch ein paar adxl angekommen.
http://www.thomaskropf.at/elektronik/adxl202je.html
leider hab ich erst richtig in einem monat zeit mich damit zu
beschäftigen :(

Autor: Marcel Meyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok dann wir sind wir scheinbar schon 2 mit einem ähnlichen problen ;)

hilft mir aber momentan nich wircklich weiter...

Mfg

Autor: leif (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
guck mal in der academy von avrfreaks, da gibt's meines Wissens die
Auswertung ein paar mal, der Sensirion Sxx ist da ebenfalls mehrmals
vertreten. Und ich glaube MIS von yampp hat damit mal einen
Beschleunigungs/Kraft/Weg Rechner mit realisiert, weiß aber nicht, ob
der den code rausgegeben hat.

viel erfolg!

-leif

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mal ne Frage. Wenn der ADXL ein PWM- Signal ausgibt, kann man doch einen
Tiefpass dahinterhängen und die Analogspannung auswerten. Ich weiß,
erst digital und dann analog und dann wieder digital ist schon Mist,
aber wäre doch ne Möglichkeit

Autor: Marcel Meyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja das mit dem analog hab ich schaun überlegt, der adxl gibt auch ein
analog signal aus, jedoch finde ich es eleganter das PWM signal
auszuwerten, muss ja möglich sein :)

@leif, da schaue ich mich mal um, aber die seite ist irgendwie recht
unübersichtlich

Autor: leif (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja, das ist leider wahr. völlig bescheuerte navigation. moment,
vielleicht helfen die links:

bei avrfeaks hab ich noch nix gefunden...

 http://autopilot.sourceforge.net/

http://www.myplace.nu/avr/accelr8/

http://alumni.deec.uc.pt/~ruyfra/PSD/CycleDuty.pdf

-leif

Autor: Marcel Meyer (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
danke für die links, http://alumni.deec.uc.pt/~ruyfra/PSD/CycleDuty.pdf
hilft schon ein wenig, ist ja eigentlich nur eine zusammenfassung vom
datenblatt, jedoch übersichtlich ;)

so hatte ich mir das ja auch schon vorgestellt, nur läuft mein code ja
nicht so wie er sollte :-/

im anhang ist ein bild aus dem PDF, ich würde gerne erstmal die zeit
Ta-Tb (T1) messen, Ta-Tc (T2) ergibt sich ja aus T1 * 2 bei 0g...

Autor: leif (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tja, mit dem Code kann ich Dir leider noch nicht helfen ;-) Aber wenn Du
noch ein paar Monate warten kannst..
Alternativ wär's toll, wenn Du Deine Ergebnisse schön erklärst, und
irgendwann mal zur Verfügung stellst. Ist zwar ein bißchen Spinnerei,
aber mein MP3 Wecker soll auch so ein tolles Teil bekommen, falls
möglich. Dann kann man ihn halten wie man will(Display wird dann
gedreht), den Alarm 'ausschütteln', ihn als Türwächter benutzen
(sofern Laut genug), Wasserwaage..

Zumindest plane ich ihn erstmal ein, die Software ist dann eine andere
Frage..

Jaja, der Phantasie sind keine Grenzen gesetzt :-)

Gutes Gelingen!

-leif

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
gibt es für den adxl202 (in der bauform auf meiner seite) eigentlich
einen sockel?
die lösung mit dem kupferlackdraht ist nicht gerade vorteilshaft :(

Autor: Marcel Meyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich habe mir einfach eine platine geätzt, und den adxl verlötet, d.h.
ein pin auf der platine verzint, dann den adxl zuerst mit einer fläche
angelötet und dann die anderen, ging ganz gut, du brauchst nur eine
sehr feine lötspitze!

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
...tja und einen der platinen ätzt :(

Autor: Marcel Meyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
soll ich dir eine adapter platine anfertigen?

Autor: Joern Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

dazu gibt es auch einen Bausatz bei ELV (einfach mal "BM 2" im Shop
eingeben oder "beschleunigungsmesser").
Die Doku kann man runterladen - mit Schaltplan, ist sehr nett
realisiert mit verschiedenen Bandbreiten einstellbar vom ATmega8, den
Code gibt es natürlich (wie üblich bei ELV) nicht.

Ich habe gestern mir das Ding (also den Bausatz, der jetzt reduziert
sogar erschwinglich geworden ist) zusammengelötet und war erstaunt,
dass der ATmega nicht gelockt ist... ;-)) also den Code gibt es
offiziell nicht. ;-)  Ist aber schon ein ganz schon grosses Programm
und das ganze im Disassembler nachzuvollziehen nicht gerade ein
Zuckerschlecken.

cu joern

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Marcel:

danke für das angebot, aber irgendwie muss ich das auch selber
schaffen.
schon vor allem deswegen weil ich bis jetzt 4 sensoren habe und 2
sollten noch kommen.

Autor: Marcel Meyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wär aber kein problem dir die paar platinchen zu ätzen, sind ja nichtmal
briefmarken groß ;)

Autor: Thomas K (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke, aber ich muss sowieso irgendwann ins platinenätzen einsteigen.
ich schau mir grad an was reichelt so hat. will nicht unbedingt was
basteln.

ich überleg mir das
ÄTZGERÄT 1 - Platinen-Ätzgerät bis Platinengröße 250x175mm um 99,95
ENTWICKLUNGSSET - Einsteigerset zum Platinen entwickeln um 7,50
(als vorrat noch zusätzlich entwickler und ätzmittel)
dann bräuchte ich doch eigentlich nur noch etwas zum belichten, oder?
da werde ich mich dann um einen Gesichtsbräuner umschauen.

aber das ganze erst in ca. 1 monat

Autor: Timo Ottersberg (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Moin Moin

Ich habe mich auch schon mit dem ADX202 beschäftigt. Allerdings mit
AVR-GCC und nicht in CodeVision. Aber ich denke, dass sich der
Quelltext im Anhang leicht übertragen lässt. (Bitte nicht über den
Quelltext lachen :-))
Mit dem kleinen Gehäuse hatte ich auch Probleme. Ich habe den Chip dann
einfach in einen acht poligen Dip Sockel gelötet. Somit kann ich ihn
auch mal ausbauen und musste keine extra Platine ätzen. (siehe
Anhang).
Ich habe allerdings noch ein anderes Problem mein DutyCycle ist bei 0 g
nicht genau 50% deshalb musste ich noch einen Offset einbauen. Kann mir
evtl. jemand sagen woran das liegen könnte?

Schönes Restwochenende
Timo

Autor: Marcel Meyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

danke vielmals für den code, hat mir SEHR weitergeholfen, ich war auch
schon auf dem richtigen weg, aber auf die idee, von rising edge auf
falling edge umzustellen bin ich nicht gekommen ;)
habe das jetzt in meinen code zum teil übernommen, jedoch noch etwas
abgewandelt - er funktioniert schon mal! :)
ich werde meinen code, sobald er einwandfrei funktioniert in der
codesamlung veröffentlichen ;)

>Ich habe allerdings noch ein anderes Problem mein DutyCycle ist bei 0
g nicht genau 50% deshalb musste ich noch einen Offset einbauen. Kann
mir evtl. jemand sagen woran das liegen könnte?

evtl. ist der kondensator nicht der beste? so das er beim "umladen"
nicht schnell genug ist? ist nur eine vermutung, weil bei mir ist der
dutycycle bei 0g ca 49-50% (laut oskar)

Autor: Sascha (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
für den 202 habe ich sowas mal geschrieben.
der Controller ATmega163 captured nach Knopfdruck die LOW und High
zeiten und speichert siem im Ram. Nach einem Weitern Knopfdruck werden
sie über RS232 formatiert ausgegeben. Vielleicht hilft Dir das weiter.
Bei der Berechnung des Ausgabewerts ist aber (glaube ich)ein Bug drin,
bin aber nicht ganz sicher. Sollte mir mal ein gescheites
Versionsmangetment angewöhnen.Nacher habe ich den Timer nur als 8 bit
ausgelesen.


Zum 50% Problem:
1. Der ADXL reagiert auch auf statische Beschleunigung, d.h. wenn du
ihn schief halts kommt die Erdanziegung ins spiel.
2. Es gibt einen Testpin. wenn der auf High(Low?) liegt verschiebt sich
der Ausgang um 10%. Mal im Datenblatt schauen.

Gruß Sascha

Autor: Marcel Meyer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke auch für deinen code, werde ihn mir heute abend mal zu gemüte
führen ;)

Autor: Marcel Meyer (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
so, hier mal ein kleines diagram von meinen gemessenen werten ;)
ist aber noch nicht so 100%ig

Autor: Marco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo, habe mir ebend das datenblatt angeschaut, aber irgendwie kann ich
nicht erkennen, wie anhand der g werte die beschleunigung errechnet
werden kann. kann mir da einer kurz weiterhelfen?

und wie ist es mit der schieflage des adxl, muß ich ihn immer
ausrichten, oder kann ich auch mit umrechner per software bzw
zusatzschaltung ihn nach lust und laune plazieren?

Autor: Cambrino (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Marco

1g sind 9.81 m/s2. Also hast du ja die Beschleunigung.

Gruss
Cambrino

Autor: Sepp Kradez (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hier gibt es ein Breakout-Board für den ADXL, sehr hilfreich.

http://www.sparkfun.com/shop/index.php?shop=1&itemid=147

Sepp

Autor: Mark (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hat jemand das programm ??? den bausatz bekommt man nicht mehr und ich
möchte mir das gerät nachbauen ! die platine bekommt man noch bei
elv...

@Joern Gerhard  -  du hast es ja anscheinend, kannst du es mir zur
verfügung stellen ???

oder hat jemand die email von ihm ???

danke für eure hilfe !!!

mark


Org:

Autor: Joern Gerhard
Datum: 05.06.2004 00:04

------------------------------------------------------------------------ 
--------

Hi,

dazu gibt es auch einen Bausatz bei ELV (einfach mal "BM 2" im Shop
eingeben oder "beschleunigungsmesser").
Die Doku kann man runterladen - mit Schaltplan, ist sehr nett
realisiert mit verschiedenen Bandbreiten einstellbar vom ATmega8, den
Code gibt es natürlich (wie üblich bei ELV) nicht.

Ich habe gestern mir das Ding (also den Bausatz, der jetzt reduziert
sogar erschwinglich geworden ist) zusammengelötet und war erstaunt,
dass der ATmega nicht gelockt ist... ;-)) also den Code gibt es
offiziell nicht. ;-)  Ist aber schon ein ganz schon grosses Programm
und das ganze im Disassembler nachzuvollziehen nicht gerade ein
Zuckerschlecken.

cu joern

Autor: Christoph Kessler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hier gibts von ELV den Artikel als pdf gratis:
 http://www.elv-downloads.de/service/manuals/BM2/560-01.htm

Autor: Mark Abc (coyote)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke,

das pdf habe ich schon, ich brauche aber noch das dazu passende
programm ...

Mark

Autor: Mark Abc (coyote)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

hat jemand das programm vom beschleunigungsmesser von elv

http://www.elv-downloads.de/service/manuals/BM2/560-01.htm

angeblich kann man es auslesen!!!

mark

Autor: Steven Kienast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Heyho...

was mich interessieren würd: Wie kommt man an samples bei analog
devices? ich finde da nichts, bei der sparte add to samples cart fehlt
immer der Link. Hab auch vor etwas mit Beschleunigungssensoren zu
realisieren.


MfG

Steven

Autor: Dennis Kleine-Beck (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Samples vom ADXL202 gibt's nicht mehr, da das Teil ausläuft. ADXL320
sollte klappen, oder, auch sehr interessant, Freescale MMA6260. Beides
aber ohne PWM-Ausgang, rein analog. Der MMA6260 ist aber sogar
temperaturkompensiert.

Gruß,
Dennis

Autor: Marco Pedro (bruchpilot-deluxe)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, dieser Beitrag ist zwar schon älter aber ich greife ihn nochmals 
auf...

Joern Gerhard (Gast) schrieb seinerzeit das das Programm ausgelesen 
werden kann, da der ATmega nicht gelockt ist...

Hat jemand das Programm und kann es mir zur Verfügung stellen, möchte es 
nachbauen, da bei elv nicht mehr im programm...

oder wenn jemand das gerät noch hat und nicht mehr benötigt wäre ich 
auch interessiert...

Danke!

Marco Pedro

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.