Shop OBEX P1 Docs P2 Docs Learn Events
29124 Altimeter/Barometer Temperature Anomaly — Parallax Forums

29124 Altimeter/Barometer Temperature Anomaly

JLT7JLT7 Posts: 19
edited 2012-01-07 19:31 in Accessories
I have one of the new Parallax 29124 altimeter/barometer modules and I'm seeing an anomaly in its temperature output that's not mentioned anywhere in the part's datasheet.

I've got the module in the default I2C mode and am reading it on an ARM Cortex-M3 data logger I'm developing. I'm following the temperature and pressure calculation algorithm exactly as presented in the Measurement Specialties datasheet.

The basic temperature and pressure data look correct (they agree with my weather station data). The temperature anomaly I'm seeing relates to how fast I'm reading the data out of the module. If I read the data at a leisurely pace, say once every 20 seconds, I get one temperature value (e.g. 19.75°C), but if I read it faster, say 5 times per second, I get a higher value (e.g. 19.88°C).

The datasheet says the conversion time for the highest resolution mode is ~8 msec. It doesn't say anything about how often the sensor can be read. I suspect this anomaly is caused by self-heating in the sensor at higher access rates.

I was hoping to reduce the number of sensors in my current project by using the temperature output from the ms5607, but with this apparent self-heating effect, I'll probably need to add a dedicated temperature sensor.

Has anyone else seen this with the 29124?

Comments

  • kwinnkwinn Posts: 8,697
    edited 2012-01-03 18:07
    I have seen a similar effect on a model of instrument I service. It does not use the same sensor ( chip ID's removed ) as the 29124 but it is an I2C device. The temperature reading increases slightly as fewer data channels are used. The change is small and not an issue with this instrument, but I have wondered why the temp went up when the instrument was analyzing fewer channels. Your theory of self heating due to the sampling rate increase sounds like the most likely explanation.

    The only suggestion I can make is to create a correction curve for temperature vs sampling rate and do it in software.
  • Tracy AllenTracy Allen Posts: 6,664
    edited 2012-01-04 12:50
    There is quite a spread between 1 per 20 seconds and 5 per second. Do you need it that fast and is the 0.1° rise, 0.2mb pressure miscompensation going to matter? I'm inclined to attribute the effect to a slight temperature rise too, although there might possibly be some soakage in the ADC sampling capacitors. Maybe it can as Kwinn suggested be accounted for in the math. A larger heat sink might help too, for example, the MS5803 is the same sensor but in a gel-filled carrier on a ceramic substrate--more $ though.
  • JLT7JLT7 Posts: 19
    edited 2012-01-06 12:39
    There is quite a spread between 1 per 20 seconds and 5 per second. Do you need it that fast and is the 0.1° rise, 0.2mb pressure miscompensation going to matter? I'm inclined to attribute the effect to a slight temperature rise too, although there might possibly be some soakage in the ADC sampling capacitors. Maybe it can as Kwinn suggested be accounted for in the math. A larger heat sink might help too, for example, the MS5803 is the same sensor but in a gel-filled carrier on a ceramic substrate--more $ though.

    Probably not. I can slow the rate down a lot as I don't need readings that fast as I'm using it as a barometer, not an altimeter.

    The sensor is very sensitive to small temperature changes, BTW. I have my system displaying temperature on an LCD with four updates per second and I can see the temperature start to rise when I walk into the room and continue to rise for a few minutes afterwards.
  • GordonMcCombGordonMcComb Posts: 3,366
    edited 2012-01-06 13:24
    JLT7 wrote: »
    The sensor is very sensitive to small temperature changes

    You can say that again. Picking it up will change the temperature around the sensor, which affects the reading. For testing I finally put it inside a skillet so I could test height variations by lifting the frying pan up and down in my living room. That helped remove my body heat from the equation, but I hope the neighbors didn't see that.

    -- Gordon
  • JLT7JLT7 Posts: 19
    edited 2012-01-07 19:31
    put it inside a skillet so I could test height variations by lifting the frying pan up and down in my living room.

    I'd pay money to see that.
Sign In or Register to comment.