Lab 2: Thermometry

PHYS 37100 - Fall 2021

Due: October 4th, 4 pm

The goal: Measure temperature using your Arduino and make a plot.


  1. Construct a simple voltage divider circuit and use the thermistor to measure the temperature change of something.
  2. Adapt the example sketch: AnalogReadSerial, as needed, to measure the voltage and time.
  3. Record the values (using a reasonable $\Delta t$ - i.e. if you're measuring a whole day of values, 1 minute intervals might be appropriate)
  4. Copy the data from the serial monitor into a text editor and save as a csv file.
  5. Plot the temperature* as a function of time.
  6. Describe your measurement in words and if there is any math/physics that would help, please share.
  7. Extra Challenge: If you can figure out a way to calibrate your thermistor, and actually show the graph in a units of temperature, i.e. K or C, (preferably K) go for it!
  8. Submission: Please submit all files and links needed via the Blackboard Assignment Lab #2 page.

* When I write 'temperature' here, I mean the voltage, or even better, the resistance of the thermistor. The Arduino measures the voltage and using the voltage divider equation you can easily obtain the resistance. You could investigate how to calibrate your device as an extra and interesting activity.

Useful physics

A voltage divider circuit

The voltage divider allows to the measure the voltage across a known resistance, and in so doing figure out an unknown resistance.

The equation that relates the 4 quantities in the schematic is: $$ V_{\mathrm {out} }={\frac {R_{ref}}{R_{unknown}+R_{ref}}}\cdot V_{\mathrm {in} }$$

Coding tips

To format your output in a way that can be easily read, you can combine three Serial.print() commands:


(The last command, println(), indicates that this is last part of the line, and the next output will be on a new line.)

More tips

A basic measurement tutorial can be found here: Basic Measurements