Forum: Mikrocontroller und Digitale Elektronik Temperaturabhängigkeit eines Beschleunigungssensors


von Mario I. (thunder)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich beobachte ein merkwürdige Temperaturabhängigkeit meines 
Beschleunigungssensors.

Zum Aufbau:
Ich habe einen piezoelektrischen 3-Achsen Beschleunigungssensor,
welcher mit einer Heizung (Heizwiderstand) in einem Gehäuse verbaut ist.
Mir ist es nicht möglich dieses zu öffnen. Außerdem ist darin ein
Temperatursensor, welcher für eine Zweipunktregelung der Heitung 
verwendet wird.
Eingestellt ist eine Arbeitstemperatur von 40Grad, welche durch An- und 
Ausschalten der Heizung mit einer Hysterese geregelt wird (siehe Anhang 
Z_Acc_Temp_plot.png unterer Plot). Das System wird zunächst auf 50 Grad 
erhitzt um das Gehäuse gleichmäßig zu erwärmen. Unten beschriebene 
Beobachtung ist auch ohne diese Vorheizen existent.

Zur Beobachtung:
Ich habe natürlich erwartet, dass der ADC-Output aller Achsen von der 
Temperatur abhängt. Allerdings kommt mir der Plot merkwürdig vor.
Am Anfang wird ein großer Temperaturbereich überschritten, wobei der 
ADC-Output des Sensors sich nur geringfügig verändert. Nachdem der 
Wunschtemperaturbereich erreicht wurde, "zappeln" die ADC-Werte sehr 
stark.

Außderdem ist diese Phänomen NUR bei der z-Achse zu beobachten.
Bei den anderen hat man eine direkte Temperaturzuordnung (siehe Anhang 
X_Acc_Temp_plot.png für die X-Achse).


Hat vielleicht jemand eine Idee zur Erklärung dieser Beobachtung?

Vielen Dank schon mal!
Gruß Thunder

von Mario I. (thunder)


Lesenswert?

Hat keiner eine Idee woher dieses nicht-lineare Verhalten kommt?

Ich habe schon mit verschiedenen exponentiellen Modellen herumprobiert 
aber ohne Erfolg. Ich bekomme einfach keinen Zusammenhang zur Temperatur 
hergestellt.


Gruß Thunder

von 6A66 (Gast)


Lesenswert?

Mario Inkognito schrieb:
> Hallo zusammen,
>
> ich beobachte ein merkwürdige Temperaturabhängigkeit meines
> Beschleunigungssensors.
>
> Zur Beobachtung:
> Ich habe natürlich erwartet, dass der ADC-Output aller Achsen von der
> Temperatur abhängt....
>
> Hat vielleicht jemand eine Idee zur Erklärung dieser Beobachtung?
>
> Vielen Dank schon mal!
> Gruß Thunder

Hallo Thunder,

ohen zu wissenw elcher beschleunig7ungssensor das sit, ob dieser 
analog/ddigital angeschlossen ist, ob die versorgunsspannung schwankt 
ist eine Dinagnose reichlich schwierig. Es sieht aber wohl so aus dass 
Dein Ausgang in Z-Richtung um 15/2500 = ca 1% schwankt wenn die Heizung 
an ist. Denkbar ist dass die Versorgunsspannung schwankt und der ADC das 
mitmacht.

rgds

von 6A66 (Gast)


Lesenswert?

Oder schau Dir mal denn Temperaturgang deines Sensors an.

rgds

von Udo S. (urschmitt)


Lesenswert?

Vieleicht ein schlichtes Übersprechen des Heizstroms in den Messwert.

Aufbau?

Das kann alleine schon eine nicht optimale Masse sein. Da der Heizstrom 
wohl deutlich sein wird, sollte man die Heizungsmasse trennen.

Ausserdem ist das je nach Sensor nicht so viel. Weniger als 0,4% des 
Messwerts. Wie genau und wie auflösend ist denn der Sensor?

von Mario I. (thunder)


Lesenswert?

Hallo 6A66, hallo Herr Schmitt,

es handelt sich hierbei um einen Epson AP-6110LR.

Zum genauen Aufbau kann ich leider nichts sagen, da er in einem für mich 
nicht zugänglichen Gehäuse liegt....

Die obige Schwankung liegt hier unabhängig von der Lage im Bereich von 
0.02g in der Z-Achse. Aufgrund des Anwendungsbereichs ist dies aber 
relevant.

An eine Schwankung der Versorgungsspannung habe ich auch schon gedacht, 
allerdings würden dann aber die andern Achsen auch betroffen sein oder!?
Diese haben aber einen direkten linearen Zusammenhang zur Temperatur.

Um das mit der Versorgungsspannung trotzdem zu überprüfen habe ich den 
Sensor extern mit einem Fön geheizt und konnte in etwa den gleichen 
Effekt beobachten. Das heißt auch hier waren die Drifts der X- und 
Y-Achse perfekt mit der Temperatur im Einklang und die z-Achse hat diese 
Sprünge drin.

Die Frage, welche ich nun klären möchte ist, ob dieses Phänomen mit 
einem Modell erklärt werden kann und somit bei der Kalibrierung 
eliminiert werden kann oder ob es ein technischer Defekt oder sonstiges 
ist, was nichts unmittelbar mit dem Sensor zu tun hat.

Viele Grüße
Thunder

von Udo S. (urschmitt)


Lesenswert?

Aus dem Datenblatt:
Bias variation with temp. - 150mG Typ. VDD=3V,Based on Ta=+25°C

also 0,15G das ist schon ganz ordentlich, Leider sieht man nicht bei 
welcher Temperaturänderung.


Mario Inkognito schrieb:
> Die obige Schwankung liegt hier unabhängig von der Lage im Bereich von
> 0.02g in der Z-Achse. Aufgrund des Anwendungsbereichs ist dies aber
> relevant.

Aber damit zuverlässig 0,02G messen zu wollen, hmm....

von Mario I. (thunder)


Lesenswert?

Ich glaube, dass die +-0.15G in den Randbereichen der zulässigen 
Temperatur angenommen werden.
Mir liegt hier vom Vorgängermodell AH-6100LR ein Plot von Epson vor, 
welcher die Biasentwicklung bezüglich der Temperatur aufzeigt. Hier ist 
eine klare (näherungsweise) lineare Entwicklung der Biase des 
Beschleunigungssensors zu beobachten.
Ich würde daher mit einer temperaturbedingten Veränderung des Bias im 
Bereich von 0.002G rechnen.


Ich habe mittlerweile auch die Gyroskope untersucht und habe dort einen 
direkten linearen Zusammenhang zur Temperatur in allen drei Achse 
beobachtet.

Ich habe keine Erklärung warum nur die Z-Achse des Beschleunigungssensor 
aus der Reihe tanzt..

von Stefan (Gast)


Lesenswert?

Dass die Z-Achse sich anders verhält, wundert mich nicht. Ist beim Bosch 
Sensor BMA020 auch so.

Die Y und Y Achse sind horizontal zur Chip-Fläche ausgerichtet, die 
Z-Achse ist vertikal ausgerichtet. Folglich wirken diverse 
(unerwünschte) Kräfte auf die Z-Achse ganz anders.

von 6A66 (Gast)


Lesenswert?

Mario Inkognito schrieb:
> Ich glaube, dass die +-0.15G in den Randbereichen der zulässigen
> Temperatur angenommen werden.

Hallo Mario,

das sind alles Annahmen. Der Hersteller hat gewisse Genauigkeiten im 
Datenblatt angegeben. Die Messgenauigkeit die Du Dir wünschst ist aber 
bei weitem keliner als die Genauigkeit.

Mario Inkognito schrieb:
> Die Frage, welche ich nun klären möchte ist, ob dieses Phänomen mit
> einem Modell erklärt werden kann und somit bei der Kalibrierung
> eliminiert werden kann

Das kann nur das Modell, das Du Dir leider selbst bauen musst, klären. 
Das Verhalten das Du siehst dürfte aber in einem gewissen Maß 
systematisch sein und am Sensor liegen (thermische Ausdehnung der MEMS? 
ADC Drift, ...). Das in einem gewissen Maß "wegzurechnen" denke ich ist 
möglich. Aber ob Du dann auf die Genauigkeit kommst bezweifle ich. Dass 
dies aber mit eienr einmaligen Kalibrierung über Lebenszeit des Sensors 
zue rledigen ist bezweifle ich ebenso da das dann interne Störungen des 
Sensors sind die über Alterung sich von einem Sensor zum anderen 
unterschiedlich stark weiterentwicklen können.

rgds

von 6A66 (Gast)


Lesenswert?

6A66 schrieb:
> Der Hersteller hat gewisse Genauigkeiten im
> Datenblatt angegeben.

Datenblatt: Scale factor variation over temperature: 3% Typ.
Da bist Du mit <1% noch gut bedient.
BTW: Wie kommst Du denn vom Sensor auf die Digitalen Werte - welcher 
ADC? Welche Schaltung? Temperaturgang der Bauelemente dort?

rgds

von Mario I. (thunder)


Lesenswert?

6A66 schrieb:
> Das kann nur das Modell, das Du Dir leider selbst bauen musst, klären.
> Das Verhalten das Du siehst dürfte aber in einem gewissen Maß
> systematisch sein und am Sensor liegen (thermische Ausdehnung der MEMS?
> ADC Drift, ...).

Dort wird ein 12-bit SAR-ADC  verwendet. Sofern der Fehler dort liegt, 
sollten doch auch die anderen Achsen betroffen sein.

> Das in einem gewissen Maß "wegzurechnen" denke ich ist
> möglich. Aber ob Du dann auf die Genauigkeit kommst bezweifle ich. Dass
> dies aber mit eienr einmaligen Kalibrierung über Lebenszeit des Sensors
> zue rledigen ist bezweifle ich ebenso da das dann interne Störungen des
> Sensors sind die über Alterung sich von einem Sensor zum anderen
> unterschiedlich stark weiterentwicklen können.

Da der Sensor auf Quarz basiert hätte ich jetzt mit einem 
vernachlässigbaren Alternungsprozess gerechnet.


Gruß Thunder

von 6A66 (Gast)


Lesenswert?

Mario Inkognito schrieb:
> Sensor auf Quarz

Habe ich nicht aus dem Datenblatt lesen können - woher kommt die 
Information? Halte ich für äußerst unwahrscheinlich. Die meisten mir 
bekannten Gyro/Acell. Sensoren basieren auf Silicon-MEMS.

rgds

von Mario I. (thunder)


Lesenswert?

Epson bezeichnet diese als QMEMS:

https://www.spezial.com/doc/eps-qd/ah-61_ap-61_.pdf

Gruß Thunder

von 6A66 (Gast)


Lesenswert?

Interssant! Aber eben auch ein MEMS.
BTW: Jedes Bauteil altert, auch ein Quarz.
Bei diesem Bauteil würde ich vermuten dass neben dem eigentlichen MEMS 
noch weitere Elektronik drinnen ist (Umsetzung, Linearisierung, ...). 
Wenn dem nicht so ist würde mich die Herkunft der doch recht groben 
Ungenauigkeit wundern. Sei's drum.

Mario Inkognito schrieb:
> Dort wird ein 12-bit SAR-ADC  verwendet. Sofern der Fehler dort liegt,
> sollten doch auch die anderen Achsen betroffen sein.

Kommt auf die Umsetzung an. Schaltung?

rgds

von Mario I. (thunder)


Lesenswert?

Wie gesagt, alles im Gehäuse ist für mich nicht zugänglich aber ich 
vermuten stark, dass es analog zur Verdrahtung in

http://www.epsondevice.com/docs/qd/en/DownloadServlet?id=ID000870

Kapitel 3.5 gemacht wurde. Mir fehlt allerdings die Erfahrung damit 
potentielle Fehlerquellen zu erkennen.

von 6A66 (Gast)


Lesenswert?

Mario Inkognito schrieb:
> mich nicht zugänglich aber ich
> vermuten stark, dass es analog zur Verdrahtung in
>
> http://www.epsondevice.com/docs/qd/en/DownloadServ...

Ich verstehe das so, daß Du eine Black-Box (Gehäuse) hast, in der nicht 
nur der Sensor ist sondern auch noch der ADC neben den schon erwähnten 
Temperatur-sensor und der Regelung.

Wenn dem so ist hast Du eine Unmenge an Schaltung zwischen dem Sensor 
und der digitalen Darstellung im ersten post die wir hier nicht kennen 
und damit auch nicht klären können warum das passiert.

rgds

von Stefan C. (felsnadel)


Lesenswert?

Hallo,

hast du schon einmal probiert dass Gehäuse um 90° zu drehen, sodass die 
Z-Achse nicht mehr zum Erdmittelpunkt zeigt? Vielleicht wirkt sich die 
Temperatur abhängig zum Messbereich aus.

Gruß
Stefan

von Mario I. (thunder)


Lesenswert?

6A66 schrieb:
> Ich verstehe das so, daß Du eine Black-Box (Gehäuse) hast, in der nicht
> nur der Sensor ist sondern auch noch der ADC neben den schon erwähnten
> Temperatur-sensor und der Regelung.

Ja genau, die ADC-Daten für Gyros, Beschleunigungssensor und Temperatur 
bekomme ich über SPI aus dem Gehäuse und entscheide ob die Heizung An 
oder Aus sein soll.

>
> Wenn dem so ist hast Du eine Unmenge an Schaltung zwischen dem Sensor
> und der digitalen Darstellung im ersten post die wir hier nicht kennen
> und damit auch nicht klären können warum das passiert.

Ja das ist echt schlecht, dass ich dort keinen Zugang habe. Inzwischen 
habe auch einen Temperaturtest mit einer älteren Hardwareversion 
gemacht, welche ich besorgen konnte. Dabei handelt es sich genau um das 
Eval-Board EB02 in

http://www.epsondevice.com/docs/qd/en/DownloadServlet?id=ID000870

mit identischer Verdrahtung. Hier habe ich keinen Heizwiderstand und die 
Platine liegt offen, weshalb ich hier extern heizen muss. Hier kann ich 
tatsächlich die gleiche Auffälligkeit der Z-Achse beobachten. Es scheint 
sich tatsächlich um einen systematischen Fehler bei der Z-Achse zu 
handeln...

Gruß Thunder

von Mario I. (thunder)


Lesenswert?

Hallo Stefan,

> hast du schon einmal probiert dass Gehäuse um 90° zu drehen, sodass die
> Z-Achse nicht mehr zum Erdmittelpunkt zeigt? Vielleicht wirkt sich die
> Temperatur abhängig zum Messbereich aus.

ja das habe ich schon ausprobiert. Das Ergebnis ist genau das Gleiche. 
Die absolute Dimension des Phänomens ist in jeder Ausrichtung die 
Gleiche.

Gruß Thunder

von 6A66 (Gast)


Lesenswert?

Mario Inkognito schrieb:
> mit identischer Verdrahtung.

D.h. zwschen Deinem Sensor und der digitalen Repräsentierung in post1 
ist das Evalboard? Da ist dann dieses Customized AD-IC dazwischen. Da 
kann alles mögliche an Unlinearitäten und Tolaranzen mit verbunden sein.

rgds

von Mario I. (thunder)


Lesenswert?

> D.h. zwschen Deinem Sensor und der digitalen Repräsentierung in post1
> ist das Evalboard?

Ja genau. Auf dem Evalboard wird es digitalisiert und über SPI 
verschickt. Der Plot ist mit diesen Daten entstanden.

> Da ist dann dieses Customized AD-IC dazwischen.

Was meinst du mit AD-IC?

> Da kann alles mögliche an Unlinearitäten und Tolaranzen mit verbunden sein.

Ja das ist möglich und wird schwer herauszufinden sein. Allerdings 
befremdet mich immer noch, dass nur die Z-Achse betroffen ist. Daher 
würde ich die Fehlerquelle eher beim Sensor direkt vermuten.

Gruß Thunder

von Uwe (Gast)


Lesenswert?

> Daher würde ich die Fehlerquelle eher beim Sensor direkt vermuten.
Und wenn es so wäre ? Was würdest du dann tun ?

von 6A66 (Gast)


Lesenswert?

Mario Inkognito schrieb:
> Was meinst du mit AD-IC?

Das "dedicated AFE-IC" vom EVALboard: S1A15001

rgds

von Mario I. (thunder)


Lesenswert?

Hallo Uwe,

Uwe schrieb:
>> Daher würde ich die Fehlerquelle eher beim Sensor direkt vermuten.
> Und wenn es so wäre ? Was würdest du dann tun ?

1. Möglichkeit: Ich muss ein Modell finden, welches mir diese Phänomen 
beschreibt, damit ich es softwareseitig eliminieren kann. Hab aber im 
Moment keine Ahnung wie...
Ein wenig habe ich schon mit Exponentialtermen (statt polynomial) 
herumprobiert aber ohne Erfolg.

2. Möglichkeit: Die Zuständigkeit auf Kollegen bei der 
Hardwareentwicklung zurückschieben. Dazu müsste ich mir allerdings 
sicher sein, dass ich nichts ausrichten kann...

Gruß Thunder

von 6A66 (Gast)


Lesenswert?

Mario Inkognito schrieb:
> 2. Möglichkeit: Die Zuständigkeit auf Kollegen bei der
> Hardwareentwicklung zurückschieben.

Hallo Mario,

das hättest Du vor ein paar Stunden sagen müssen, dann hätt' ich Dir 
nicht geantwortet!

Aber mal im Ernst: Entweder ihr beide (HW & SW) zieht an einem Strang 
oder ihr bekommt's nicht gebacken.

rgds

von Mario I. (thunder)


Lesenswert?

6A66 schrieb:
> Mario Inkognito schrieb:
>> 2. Möglichkeit: Die Zuständigkeit auf Kollegen bei der
>> Hardwareentwicklung zurückschieben.
>
> Hallo Mario,
>
> das hättest Du vor ein paar Stunden sagen müssen, dann hätt' ich Dir
> nicht geantwortet!

OK...du kennst nicht die genaueren äußeren Umstände meiner Arbeit und 
solltest nicht vorschnell urteilen.
Ich bin dir für deine Mühe trotzdem mehr als dankbar!

>
> Aber mal im Ernst: Entweder ihr beide (HW & SW) zieht an einem Strang
> oder ihr bekommt's nicht gebacken.

Da hast du vollkommen recht, allerdings muss ich erst analysieren wer 
dafür verantwortlich ist und ob es überhaupt einen Verantwortlichen 
gibt. Ich mag es z.B. nicht wenn einem andere Leute Arbeit aufhalsen 
ohne vorher genau selbst untersucht zu haben wer und warum dieser 
zuständig ist.
Das kostet sonst nämlich auch wieder viel Zeit bis man eingearbeitet ist 
und merkt, dass man nicht zuständig ist.

Gruß Thunder

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.