Hi all, I am building a freezer alarm and temperature display. I am using an LM335AZ as the temp sensor. Output of the sensor is buffered with an op amp, and then further conditioned with an offset and amplification so that there is a larger voltage swing over a smaller temperature range. This is done with two more op amps, so the output current sourcing is quite robust. I have monitored the output with both a DVM and an oscilloscope. There was some very high frequency ripple in the signal that I removed with some capacitor filtering in the amplification stage. At this point, the output of the temperature sense is rock solid with no visible fluctuation. The output of the final op amp goes directly to Analog in port 1, with a 10uf capacitor to ground for further filtering. I did this with both a Seeeduino and an Arduino Mega. The program takes 10 readings 200 milliseconds apart, averages the readings, and then displays the data. I have not even begun to do the conversion to a temperature; we're just looking at the raw voltage.
so... I have this thing sitting on my desk. The room is at room temperature. there are no drafts. The readings are not at all stable and bounce around far more than I would expect. The a/d voltages do generally track the temperature-- if I warm the sensor with my fingers, the average voltage is higher with voltages varying centered around a new higher average voltage. DVM and oscilloscope examination of the input signal shows it to be stable. Why is the A/D conversion so inaccurate?
Any ideas out there? Feels like I don't understand something abou the A/D process. Help would be welcome.