3
\$\begingroup\$

I've got a TMP36 temperature sensor of which I'm trying to read the value of using an Arduino Uno. I know that the sensor has an accuracy of -/+ 2 degrees celsius but my readings are peak far past this range.

I soldered three wires onto the three legs of the sensor. I hadn't exposed the legs (and thus) the sensor to the heat of soldering for that long a time, but could this have damaged the sensor?

Also the three wires I've soldered on are about 50cm in length and are twisted together, could this cause interference of the voltages?

\$\endgroup\$
  • 5
    \$\begingroup\$ What's your reading, at which temperature? Is this more or less constant, or (wildly) varying? Do you have a 100 nF decoupling capacitor across the power supply pins? \$\endgroup\$ – stevenvh Jul 15 '12 at 14:41
  • 1
    \$\begingroup\$ Ben, I added a link to the TMP36's datasheet. Please make it a habit to do this in the future, so that we all know what you're talking about. \$\endgroup\$ – stevenvh Jul 15 '12 at 14:59
  • 1
    \$\begingroup\$ In addition to the information stevenvh asked for, what are you comparing the TMP36 reading to, so that you know the TMP36 error is more than 2 degrees? \$\endgroup\$ – The Photon Jul 15 '12 at 15:22
  • 2
    \$\begingroup\$ Also, just in case your Arduino reading is incorrect, have you checked the output voltage with a multimeter? \$\endgroup\$ – Oli Glaser Jul 15 '12 at 15:25
  • \$\begingroup\$ Thanks for your comments everyone, I'll reply back to your comments this evening :-) \$\endgroup\$ – Ben Everard Jul 16 '12 at 8:51
1
\$\begingroup\$
  1. Output voltage pec is 750mV @ 25'C nom and your reading is what from cold start to after a few minutes? Does it change?

  2. Spec is 1000 pF load max you are using twisted cable which is typically 5 pF/cm depending on tpi, diam. etc., so 50cm x 5 = 250 pF, so cable seems ok to prevent instability and oscillation. If you don't have a microamp analog meter get one or use series drop R to estimate.

  3. Self heating from 5V should be less < 0.05'C unless it is damaged so measure current against spec to ensure self-heating is not the issue.

  4. open air thermal time constant is < 1 minute.. immersed in ice water is 3 seconds . what are the calibration results you get?

  5. Do you have 0.1 µF cap across IC?
  6. Did you add an op amp to compensate for offset only inherent to TP36 and not TMP35 or TMP37? VOUT @ 1mV/°F – 58°F It is designed for 'F
\$\endgroup\$
  • \$\begingroup\$ According to the datasheet they are designed for deg C - the TMP36 is 10mV/C with 500mV offset. There is an example circuit using a few extra components for conversion to 1mV/F though. To quote the datasheet: "Although the TMP3x temperature sensors are centigrade temperature sensors, a few components can be used to convert the output voltage and transfer characteristics to directly read Fahrenheit temperatures" \$\endgroup\$ – Oli Glaser Jul 15 '12 at 17:35
  • \$\begingroup\$ yes understood, without user's schematic , we can only guess. \$\endgroup\$ – Sunnyskyguy EE75 Jul 15 '12 at 18:13
  • \$\begingroup\$ Many thanks for your help, got to be honest some points in your answer went straight over my head, but some certainly helped. Thanks :-) \$\endgroup\$ – Ben Everard Sep 15 '12 at 10:42
1
\$\begingroup\$

So I solved the problem, as suggested in my original question I had soldered 50cm of wires from each leg of the TMP36 and twisted them to keep them neat.

I was watching an episode of ask an engineer on adafruit where someone just so happen to ask about twisting wires against the TMP36, Limor said that is should be done, although I forget exactly why.

I had attempted to test the sensor by connecting the wires at the end of the twisted section to the arduino, but also by connecting right the legs of the sensor, I had left them slightly exposed. In both instances the sensor failed to provide a voltage, all my measurements were out because I was measuring what is the floating voltage on analog pin 0 (I think I've worded that right).

Either way I cut off the 3 twisted wires and the sensor now works as expected.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.