Barometer Drift Problem ( Temperature Dependent )


It's My first question here. So excuse me for any problem in the post.

I have a ms5611 barometer that installed on a GY-86 breakout module.

in order to understand the accuracy of the sensor, I log several minutes reading of it in a fixed place with some fabric casing. casing is because of air flow rejection. using an arduino uno and an ethernet shield for logging.

this is the picture of configuration:


The library i use, is a library that i download with gy-86 examples. with MS561101BA header and cpp files. it has a default moving average filter with 32 window.

The Problem is that my results show that pressure is changing over temperature and is very sensitive to it. This is the first question. is it right? i know that temperature has a role in the pressure. but maybe it should canceled over calibration calculations.

this is the results of pressure and temperature changes over time.


3691326545?profile=originalas you can see, the pressure changes is the direct result of slight temperature changes. 

The second stage is altitude calculation.

For altitude calculation, there is no hint in ms5611 datasheet. but i found in other libraries and datasheets two different formulas that both of them are extracted from standard standard atmosphere formulas.

first : 

 h = ((pow((101315 / press), 1/5.257) - 1.0) * (temp + 273.15)) / 0.0065

This formula is the exact reformulation of standard atmosphere formulas in first 11 km of atmosphere.


h= (1.0 - pow(press/101325.0, 0.190295)) * 4433000.0

this formula is suggested from other barometer manufacturers like boch and nxp. although it's a little unclear to me.

Unfortunately both of them show the varying altitude with respect to temperature. See the result:

The first formula result :


The second formula result :


As you can see, In both altitude estimations, regardless of altitude values itself, The altitude changes with time clearly because of temperature.

I have another very long data that shows a sudden 20 meter change in altitude because of abrupt 1 degree temperature change. I think one degree is something that can not be avoided in a circuit. So what is your suggestions for stable altitude reading? I do not mean exact altitude, but approximately constant altitude with sub meter variations over slight changes of temperature is something essential for me.  

Thanks a lot.

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –