Druck von oben – ein Barometer mit AVR

Nachdem inzwischen Temperatursensoren und Feuchtigkeitsmessung an meiner „Wetterstation“ recht gut funktionieren ist es Zeit für das nächste Modul: Ein Barometer. Passend dazu konnte ich einen MPX4115A von Motorola aus einem anderen Gerät ausschlachten. Dummerweise bewegen sich die interessanten Messwerte alle in einem sehr kleinen Bereich, was den 10Bit AD-Wandler des ATMega an seine Grenzen treibt. Zwar gibts ungefäre Messwerte, aber die Schwankungen waren für meinen Geschmack zu groß. Fündig wurde ich bei tuxgraphics, welche eine eigene „Wetterstation“ im Angebot haben. Auch dort kommt ein MPX4115A zum Einsatz, der wird aber mittels eines TLC272 entsprechend verstärkt. Der TLC272 kommt zum Einsatz, da dieser nicht wie die meisten eine negative Spannung benötigt, sonder sich auch mit einer einzelnen +5V-Spannung begnügt.

Da tuxgraphics die interne 1,1V-Referenz ihres ATMega88 nutzen musste ich etwas dran drehen, denn ich habe bei meinem ATMega8 nur die Wahl zwischen 2,56V oder 5V – da letztere nach einigen Berichten stabiler wäre kommen also +5V als Referenzspannung zum Einsatz.

Wirklich verstehen tue ich die Schaltung zwar nicht, aber ich denke, dass das ganze so einigermaßen stimmt – für die letzten 18 Stunden hatte ich auf jeden Fall den selben Luftdruckverlauf wie eine angrenzende Wetterstation. Werde das Ganze noch einige Zeit weiter beobachten.

Hier der ADC-Relevante Teil meiner Schaltung:

Bild: http://adlersa.yotaweb.de/blog/wp-content/uploads/2008/07/admpx.png
OpAmp und MPX4115A an ATMega8

Die Formeln sehen momentan so aus:

$r1=100;
$r2=11;
$vcc=4.93;
$ref=3.82;
$offset=-2; //Druck Differenz zu NN und Messfehler
//$adc=Messwert

$vin=($ref+($vcc/1023*$adc/($r1/$r2+1)));
$hpa=($vin/$vcc+0.095)*1111.11+$offset;

2 Gedanken zu „Druck von oben – ein Barometer mit AVR“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert