Affordable hardware for a Pt100 thermometer

Hi, I'm new to this forum!

Me and my co-worker are working on a physics laboratory (we're physics students) and we are trying to control the temperature of 4 compost samples that are decomposing (4 identical experiments). For this we bought:

  • An Arduino Uno.
  • 4 Pt100 sensors.
  • 4 cylindrical resistors to heat up the compost. The compost is on a cylindrical glass jar and the resistor wraps the entire jar so that the heat comes from the outside to the inside of the jar through the glass walls of the jar.
  • 4 relays.

Our plan was to use the Arduino as a PID controller to keep the temperature of the compost samples at (52±2)°C by turning on and off the heaters using the relays. Sadly, we thought that the Pt100 sensor came with the module necessary to use it with the Arduino and it didn't, and now we realize that the modules like the MAX31865 are beyond are budget for this experiment.

So that is the problem we are facing. To overcome this problem we would need to either:

  • Find cheaper modules that could work for this setup.
  • Build the modules ourselves (which we leave as a last resort because we haven't done something like that before)
  • Find a more affordable setup and leave the Pt100 sensors unused (which is sad because it's wasted money). We found that the LM35 sensor is a cheap sensor that works in our temperature range, is decently accurate and is way cheaper than buying the modules for the Pt100 sensors.

Any help, advise or personal experience that could help us with this project is deeply appreciated!

Additional info:

  • The cylindrical resistors that we use for heating are ~140Ω and to heat them up to (52±2)°C we would work on a voltage range of 40V to 70V.
  • The compost will be moist so we may need to wrap the thermometer on some kind of material that is heat conductive to protect it (if it's necessary).
  • We plan on running this experiment for months so supervision will be minimal. That is why we will use a PID controller.

The DS18B20 is accurate to ±0.5°C. Only one pullup resistor is needed for a few DS18B20. You have to seal it yourself.

Don't buy the DHT11, LM35, TMP36 sensors.

Is the PID output used for a relay ? That turns on and off with minutes interval or so ?

A cylindrical heater seems small to heat up a pile. I would prefer to heat up the floor that the compost is on.
There are flat sheets with electrical heating to be used on a floor.
Or you could use heating wire from a heating blanket to heat up the floor of the compost. Perhaps the heating blanket itself with layers of plastic to make a good isolation.

Is a PID really required ? The hard part is to tune the parameter for your project.
Perhaps a very simple on/off with the temperature is enough.
I made a heater and measure the temperature every few seconds and turn on or off the heater. I did not expect it to work very well, but it did.
Since I use fixed intervals, I can calculate the average power with a low-pass filter in software.

You have to seal the heaters as well. The wires should not make contact with the compost.


Now that you mention it I remember seeing this sensor while buying the Pt100s.


Yes, we plan on making a program so that it turns on and off at intervals so that the temperature is as stable as possible. We decided to use a PID because we expect the temperature to increase as the compost decomposes. We want to automate the process as much as possible because we can't go to supervise the experiment at the lab very often due to the current pandemic. We also plan on running this experiment for months so supervision will be minimal. I will add this info to the post.

We're kind of in a budget so we're not looking for buying 4 another resistors for the heating. Besides, we tested them and they easily get to the temperature we need for this experiment. Also, we chose cylindrical heaters so that we ensure that the temperature in the compost is as evenly distributed as possible.

The DHT11 is not accurate and the LM35 and TMP35 depend on a reference voltage if they are accurate. You have to do everything right to get a valid temperature from them.

The DS18B20 is accurate as it is, because it has a digital interface. If it works, then it is accurate.
The Adafruit sous-vide project uses a DS18B20.
I used a DS18B20 for my own heater.

A cylindrical heater that evenly distributes the heat, hmmm :thinking: I'm still thinking about a heated bed, but that is with what I think a pile of compost looks like. Perhaps the compost is more a box shape with the heater in the middle ?

1 Like

Couldn't I just use the Arduino for the reference voltage? I've seen tutorials on YouTube where people did this.

The compost is on a cylindrical glass jar. The cylindrical heater wraps the entire jar so that the heat comes from the outside to the inside of the jar through the glass walls of the jar. I will add this info the post.

We will do some research on the DS18B20 to see if it works for our project, so far it seems it will. Thank you so much for your replies!

Adafruit has a section "Getting Better Precision" where the 3.3V is used as a reference voltage. Also the internal reference voltage of a Arduino can be used. However, everything depends on doing it right, and the internal reference voltage can be between 1.0 and 1.2V.

The DS18B20 has a overall accuracy of ±0.5°C. There is nothing that you have to do for that, just grab a DS18B20.

1 Like

Keep in mind that there are DS18B20 waterproof temperature sensors that can also be with the pluggable Arduino module if you don't want to deal with a soldering iron.
Example DS18B20 Temperature Sensor Module Kit Waterproof

1 Like

@Boffin, they are waterproof for a day or so. That is why I wrote: "You have to seal it yourself".


Using a platinum thermometer for your task is a bad idea.

First, a current source is needed, and a constant current source is desirable.

Secondly, if you use a measuring current, for example, 1mA, then at 52°C you will get a voltage change of Pt100 about 0.385 mV/°C, but the Arduino ADC has a resolution of 4.88 mV/°C at Vref = 5V or 1.074 mV/°C at Vref = 1.1V. This is clearly not enough.

This means that a platinum thermometer needs either a precision op-amp or a high-resolution ADC.

Use the DS18B20 as suggested above, it's simple and accurate enough.
But It's advisable to use original Dallas sensors. Chinese counterfeit products are often problematic.

1 Like

Good to know about this. We are not based in the US, Canada or Europe so usually this kind of things are not easy to find and we buy them from secondary markets. We will be wary about counterfeits.

I have several Chinese DS18B20s from Aliexpress, they are cheaper and they work well. However, in various forums, I have come across many complaints about the operation of sensors of unknown origin, especially in the case of connecting several sensors to one bus.

1 Like

You are correct you need to protect the sensor if it is not in plastic or stainless steel. Compost is corrosive to most metals.

1 Like

I used the DS18B20 Waterproof version for one of my projects. I would buy some of of amazon cause you can get the real Dallas ones for $10 for 5. It is a great deal. And they work very well.

1 Like

is any way I can sponsor your guys with wish list? - Arduino does not allow user to post their personal information, me neither.
My twin boys are students too.

I didn't understand your comment. What do you want to sponsor? What personal information? Which wish list?

1 Like

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.