PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : luftdruckmessung mit mpx4115a



dremler
17.02.2008, 22:12
hallo

ich habe folgende schaltung nachgebaut...:

http://www.k-webdesign.com/modellflug/attiny15.htm#H%F6hensensor

diese schaltung will ich an rn atmega128 funk anschließen und auswerten..soweit so gut....

habe alles aufgebaut..bloß die auswertung macht mir arge probleme..zum einen messe ich an dem ausgangspin des sensors ~ 4,87 V am ausgang des operationsverstärker kommen ~ 10 mV mehr an....

ich habe aber einen ersatztypen genommen nämlich den TLC 272

(er wurde mir mal hier empfohlen: https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=33480&highlight= )


wie kann ich nun daraus den aktuellen luftdruck errechen? welcher wert ist richti? wenn ich zb in den luftdrucksensor reinpuste(konstant bissl länger und stärker) dann ändert sich nix....)

nach der formel

P=((Vout/Vin)+0.095)/0.009

müssten das ca 118 bis 120 kPa sein... aber wenn ich direkt reinpuste müsste sich doch merklich was ändern?

das war das erste problem.....nun will ich das ganze per adc wandlung auswerten...

da kommt immer ein wert um die 100 raus....so von 950 bis 1020.....

wie kann ich daraus nun die spannung erschließen???



Config Portf.0 = Input 'Pin für analog digital Wandlung schalten
Config Adc = Single , Prescaler = Auto , Reference = Avcc


Start Adc
Druck = Getadc(0)
Stop Adc

der funktioniert auch....aber was fang ich mit diesem wert an?

danke!

Titel etwas reduziert, Manf

Dirk
17.02.2008, 22:40
... nach der formel P=((Vout/Vin)+0.095)/0.009

Laut Datenblatt kommt die Formel so nicht hin.

Ich komme auf: P = Vout / (Vs * 0,009) + 10,555 [+- Error]


Gruß Dirk

P.S.: Error = Pressure error * Temp. Factor (siehe Datenblatt)

dremler
18.02.2008, 22:09
demzufolge habe ich bei einem wert von

966

eine spannung von 4,72 V und daher einen druck von 115,26 kPa

laut datenblatt gehen nur 115kPa

daher muss ich den fehler noch einrechnen...

dieser besteht nach deiner gleichung aus temp. factor (laut datenblatt =1 )
und dem pressure error band....

da steht im messbereich +- 1,5kPa

wie soll ich nun rausfinden welchen wert ich nehemen muss????

danke...

hier noch mal das datenblatt:
http://www.freescale.com/files/sensors/doc/data_sheet/MPX4115A.pdf

T.J.
19.02.2008, 07:58
Damit ist doch nur die maximale Abweichung von 1,5% gemeint oder? Und selbst wenn du dann nur 114kPa hast, kommt das hin?
Sollten wohl eher so 100kPa sein

Was hast du denn da genau gerechnet? Wenn ich für Vin 5V und für Vout 4,72V einsetze bekomme ich 4,72/10 = 0,44

Dirk
19.02.2008, 17:36
... bei einem wert von 966 eine spannung von 4,72 V und daher einen druck von 115,26 kPa

Diese 115 kPa sind tatsächlich das Maximum. Bei 4,72V ist das allerdings auch schon erreicht.

Wenn du den Luftdruck gestern gemessen hast (bei mir lag er so um 1014 hPa = 101,4 kPa), dann dürfte am Ausgang des MPX4115A nicht eine so hohe Spannung zu messen sein. Natürlich OHNE den OP, den du ja nachgeschaltet hast.


... da steht im messbereich +- 1,5kPa wie soll ich nun rausfinden welchen wert ich nehemen muss????
Das ist quasi die Eichung deiner Messschaltung. Wenn deine Gleichung stimmt und die Hardware ok ist, kannst du im Bereich +- 1,5 kPa einen einmaligen Abgleich vornehmen.

Ich würde aber zunächst klären, warum die Ausgangsspannung mit 4,72V so hoch ist. Miss das 'mal mit einem guten Multimeter am Ausgang des Sensors nach. Bei einem Luftdruck von 1014 hPa müßte die Ausgangsspannung bei 4,09V liegen (Vs = 5V).

Gruß Dirk

dremler
19.02.2008, 17:38
erst mal habe ich die spannung per adc berechnet....dass is der wert 4,72V

4,72=(5*966)/1023

das in die von dirk genannte formel eingesetz (noch ohnen +- error)

=4,72/(5,01*0,009)+10,555

=115,26 kPa (mit excel wars genauer...)

Dirk
19.02.2008, 17:46
... jaja, das stimmt ja auch alles.

Aber ...:
Hast du den OP erst 'mal vom Ausgang des Sensors getrennt?
Was sagt das Multimeter am Ausgang des Sensors?
Was sagt das Mulitmeter zu Vs? Wie hoch ist Vs?

Gibt es einen Kondensator 470 pF am Ausgang des Sensors?

Gruß Dirk

dremler
19.02.2008, 18:23
nein...werd ich sofort tun....ich soll ihn also mit dem ausgangspin direkt am eingangspin des mega betreiben?

ich werds fix umlöten


ich habe 220nF dran...is mehr...solte aber net wirklich schlimm sein...oder?

dremler
19.02.2008, 18:32
so....mit dem multimeter gemessen zeigt er 4,56 v an....

schnell in excel getippt meint er es währen 103,19kPa

das sind ja ohne fehlereinrechnung 1031,9 hPa..........nach den werten von wetter.com sind bei der nächsten messstation sind es 1026,9 ....das sieht doch schon mal gut aus.....oder?
inwieweit muss ich die fehlerrate noch anpassen?

danke erst mal für die hilfe...dadurch bin ich schon sehr viel weiter...;)

dremler
19.02.2008, 19:31
hmmm entweder hab ich mich vorhin gehörig verguckt oder da stimmt was net...

der sensor gibt mir 4,54 V aus....das ist ja aber zu viel?

woran kann es liegen?

versorgungsspannung ist laut multimeter bei 5,01 V (wird auch von einem funktionierenden spannungsregler erzeugt.....)

das würde nach der formel einen druck von 111,4kPa...was ja wieder nicht sein kann....

Dirk
19.02.2008, 20:07
... der sensor gibt mir 4,54 V aus....das ist ja aber zu viel? woran kann es liegen?
Ja, das scheint mir auch zu viel.
Jetzt habe ich hier 1008 hPa, das müßte bei dir 4,061V entsprechen.

Woran es liegt? Keine Ahnung. Sicher hast du auch an Vs einen Elko (min. 1,0 .. 4,7uF) nahe am Sensor. 220nF am Ausgang ist auch ok.

Also: Ich weiss da nicht weiter.

Gruß Dirk

dremler
19.02.2008, 20:22
hmm naja versorgungsspannung hatte ich direkt am sensor gepuffert (allerdings ein kleiner folienkondensator....reicht aber auch)

dann habe ich noch einen am ausgang gemacht...

der is mir in die hände gefallen....0,1 µF-.....mit oder ohne es gibt keinen messunterschied..
:(

dremler
21.02.2008, 20:08
sooooooooo neuer sensor neues glück...;)

nu geht er....aber er zeigt mir 3,96 V an......was nach den berechnungen 879 hPa ergibt.....

der analog digitalwandler misst das ein bisschen anders... sodass ich am ende der übertragungstrecken auf einen druck von 982,47 komme

der fehler is noch nicht eingerechnet

ich hab das nu prvisorisch so gelöst das ich einfach 20 draufaddiere....da komm ich auf 1022,48 hPa....... der aktuelle luftdruck der nächsten station ist 1022,7 hPa

passt also...aber das is ja net normal.....der fehler ist ja max. +- 15 hPa......

aber naja...

wär schön wenn jmd noch ne schnelle besser lösung hat....denn heut abend muss es fertig sein..und dieses provisorische gefällt mir net wirklich....;)

Dirk
21.02.2008, 20:21
Hallo dremler,

ich glaube, du verwechselst da was.

Dein Sensor liefert den absoluten Luftdruck am Meßort, d.h. da, wo du wohnst. Der Hersteller garantiert für den Sensor eine Toleranz von +- 15 hPa. Wenn also deine AD-Wandlung und Berechnung zuverlässig ist, kannst du dich in dem Rahmen (+- 1,5%) darauf verlassen, dass der richtige Wert gemessen wird.

Der Wert, den du im Internet oder von einer nahen Meßstation bekommst, ist der [highlight=red:e3219a7bfb]relative Luftdruck (in Meereshöhe)[/highlight:e3219a7bfb]. Der ist deutlich höher als der absolute Luftdruck deines Sensors. Er dient dazu, dass man die Luftdruckwerte von Meßstationen miteinander vergleichen kann, auch wenn sie in verschiedenen Höhen liegen.

Du must also deinen Meßwert (P abs) durch die sog. [highlight=red:e3219a7bfb]Luftdruckreduktion[/highlight:e3219a7bfb] umrechnen auf den Druck in Meereshöhe (P0). Das ist ein Rechenverfahren, geh' mal auf die Suche!
Erst mit dem Wert kannst du dann deinen jetzigen Meßwert mit Internet-Angaben vergleichen.
Wenn du ohne diese Luftdruckreduktion einen Anhalt haben willst, ob du einen richtigen Wert misst, könntest du auf einem nahen Flughafen anrufen (sollte auch in der selben Höhenlage liegen!). Dort kann man dir in der Regel auch den aktuellen absoluten Luftdruckwert nennen.

Gruß Dirk

dremler
21.02.2008, 21:35
hmm naja ich hab ne formel gefunden...aber ich steig da noch net so wirklich durch...

P(reduziert) = P(gemessen) * exp [g0Zg / (RdTv) ]

Dabei sind

* g0 die Schwerebeschleunigung in Meereniveau (= 9,81 m/s²)
* Zg
* ist gleich RdTv/g0 * ln [P(reduziert) / P(gemessen)] Rd ist die Gaskonstante für trockene Luft (=287 J/(kg*K))
* Tv
ist die mittlere virtuelle Temperatur der Schicht zwischen dem Referenzniveau und der Station (Angabe in Kelvin!)

wie bestimme ich Zg?????

dazu braucht man den gemessenen und den reduzierten wert...den will ich doch aber ausrechnen...

Dirk
21.02.2008, 21:45
Hallo dremler,

... dazu braucht man den gemessenen und den reduzierten wert...den will ich doch aber ausrechnen...
Wieso? Mit "P(reduziert) =..." errechnet man doch den Luftdruck in Meereshöhe!

Hier ...
https://www.roboternetz.de/phpBB2/viewtopic.php?t=10949
... hatte ich 'mal eine vereinfachte Version gepostet.

Gruß Dirk