Thermistor Tolerance Every passive electronic component has a nominal value and a tolerance, which is the relative error of the nominal value. I suggest to average over 10 samples to smooth the ADC data. As far as I know, the easiest way to improve the ADC resolution is to acquire multiple samples and take the average. The lower is the supply voltage the better is the temperature accuracy.ĪDC The Arduino board has a 10-bit ADC resolution. In addition, as I will explain at the end of the post, the temperature accuracy depends on the supply voltage. So it is noisy definitely ! Instead the 3V pin is much more stable because it goes through a secondary regulator stage. So, why do we connect Vcc to the Arduino 3V pin rather than 5V pin ? The 5V pin supply comes from your computer USB and it is used to power Arduino and a lot of other stuff on the board. Supply Voltage I have shown before that the thermistor resistance measurement does not depends on the supply voltage Vcc. We used some tricks to improve the temperature measurement with a thermistor.
#ARDUINO TEMPERATURE SENSOR HOW TO#
Tip & Tricks How To Improve the Temperature Measure The resistance measurement depends on the ADC Arduino A1, the fixed resistor R in the voltage divider, and the ADC resolution 1023. Using the previous equation and some math we have: What we need for temperature measurement is the thermistor variable resistance R0.
That' s really interesting ! The thermistor resistance R0 is independent by the supply voltage Vcc Say A1 the ADC value measured by Arduino Micro then the output voltage is given by:īy combining the previous equations we have: Arduino Micro provides a 10-bit ADC Analog to Digital Converter, which means that the output voltage is converted in a number between. The output voltage is connected to the Arduino analog input pin A1. Say the output voltage V0, the power supply Vcc, the variable thermistor resistance R0 and the fixed resistance R, the output voltage is given by:
The 3V pin is connected to the AREF pin because we need to change the upper reference of the analog input range. The input voltage Vcc of the voltage divider circuit is connected to the Arduino Micro 3V, which provides a 3.3 volt supply generated by the on board regulator with a maximum current draw of 50 mA. We select a thermistor with a resistance of 10 K Ω at 25☌ and the fixed resistance of 10 kΩ. The variable thermistor resistance is labeled as R0.
#ARDUINO TEMPERATURE SENSOR SERIES#
To the purpose of measuring the voltage we connect in series the thermistor to another fixed resistor R in a voltage divider circuit. The voltage divider circuit for measuring temperature using a thermistor and Arduino
Finally we calculate the temperature using the Steinhart–Hart equation which described the thermist o r resistance – temperature curve. Arduino board does not have a built-in resistance sensor. We have to convert the thermistor resistance in a voltage and measure the voltage via the Arduino analog pin. It is common used as a temperature sensor. Because the temperature measurement is related to the thermistor resistance, we have to measure the resistance. The thermistor is a special kind of resistor whose resistance varies strongly with the temperature. The thermistor temperature sensor has a resolution of about 0.2 ☌ Thermistor Temperature Sensor Although I had processed the signal I could not do the magic, definitely !įinally we found a very easy solution, by replacing the RTD with a Thermistor temperature sensor without changing the openQCM shield circuit. The openQCM temperature sensor is physically placed into the Arduino Micro shield, so it actually measures the openQCM device temperature. The ambient temperature is a key parameter in the development of a QCM because the quartz resonator frequency is partially affected by the variations in temperature.Īt first we choose an RTD Resistance to Temperature Detector for measuring the temperature. But the test results were not good at all ! We were able to measure the temperature with a poor resolution of about 2☌.