Controlling Peltier Modules with Arduino

Hello. As my undergraduate thesis, I am working on controlling the temperature of a water tanks with peltier elements. Peltier elements are mounted on brass heat exhanger unit. Water in the tank flows through to heat exhanger and feed back on the water tank. I am using peltiers for their ability to both warm and cool and their small size.

Now that I gave the basic information on what I am doing, I should move on to my problem. I want to use motor drivers(currently l298n but I plan to upgrade it to better model with more current tolerance) to ride the peltier elements. But Arduino uses PWM and peltiers didn't perform well with that. I have done research to find out Peltier elements don't like PWM.

To convert PWM I am planning either building a low pass filter and bobin-diot circuit with relay logic circuits. Both have ups and downs and I don't know if either of them is the right way. Does anyone have experience with controlling Peltier for both heating and cooling?

Just use an H bridge but only switch full power +/- or no power. Either way your going to have to dump a lot of waste heat.

-jim lee

I don't have experience with on/off controllers. I heard they are harder than constant controls. I am going to try it with BTS7960B 40A motor driver; not sure about 20A or 40A.

A PWM is on/off lots of times a second. Just turn it on and don't turn it off 'till you're finished with the heating/cooling cycle. You can do this with a couple relays, you don't need anything fancy. I mean your just basically doing the same thing as turning on a light bulb. That draws a bunch of power.

-jim lee

I like your choice of the BTS7960B, I use them a lot. The module is built with 2 half bridges, and each chip surprisingly has a lower RDSon on the high side FET then the low side FET. The resistance of a relay is much higher then this device especially after the relay is used for a while. You can use this as a High or Low side switch or bridge. If you change your mind about PWM it will do it just fine. I ran ten amps through one the other day without a heat sink and it did not get noticeably warm. They are good modules.

Hi,
Welcome to the forum.

Please read the post at the start of any forum , entitled "How to use this Forum".
OR
http://forum.arduino.cc/index.php/topic,148850.0.html.

What are the specs of your Peltier Device(s)?
How many are you using?
How are they wired?
Do you have temperature sensors on BOTH of the Peltier faces?

Thanks.. Tom.. :slight_smile:

TomGeorge:
Hi,
Welcome to the forum.

Please read the post at the start of any forum , entitled "How to use this Forum".
OR
http://forum.arduino.cc/index.php/topic,148850.0.html.

What are the specs of your Peltier Device(s)?
How many are you using?
How are they wired?
Do you have temperature sensors on BOTH of the Peltier faces?

Thanks.. Tom.. :slight_smile:

Thank you. I am using peltier element TEC1-12710. Specs of the Peltier are;
Umax = 16V / 17.2V
Imax = 10.1A
Temperature Difference between cold and hot side = 70C/79C
Cooling Capacity = 101.1W/110.5W

I am using 4 of these Peltier elements. They are placed on a Brass Profile Pipe along with thermal mass on each of them(heatsinks and fans). Two of the peltiers are placed on the upper side of the pipe and the other two are placed on below of the pipe.

They are currently not wired. I am open to suggestions on this and every part of the project. I am running tests on a separate TEC1-12710 model Peltier.

I don't have temperature sensors on either side of the Peltier. One is obscured by heatsink and fans and the other is directly connected to the brass pipe. I plan on placing sensors on In and Out of brass pipe, calculation temperature of the water entering and leaving, and on the brass surface of heat exchanger.

gilshultz:
I like your choice of the BTS7960B, I use them a lot. The module is built with 2 half bridges, and each chip surprisingly has a lower RDSon on the high side FET then the low side FET. The resistance of a relay is much higher then this device especially after the relay is used for a while. You can use this as a High or Low side switch or bridge. If you change your mind about PWM it will do it just fine. I ran ten amps through one the other day without a heat sink and it did not get noticeably warm. They are good modules.

Thank you. Drivers should arrive by cargo tomorrow. I want to test them out.

Using Peltiers with PWM is getting more confusing more I read about it. They say it is not usually used because nothing heats-up or cools down as fast as the PWM signal. Some say it is only an academic problem. Others say just put an inductor in series to PWM and it would be alright. I am quite confused.

jimLee:
A PWM is on/off lots of times a second. Just turn it on and don't turn it off 'till you're finished with the heating/cooling cycle. You can do this with a couple relays, you don't need anything fancy. I mean your just basically doing the same thing as turning on a light bulb. That draws a bunch of power.

-jim lee

I think I understand. The heater should start when the temperature is below the target and turn down when it is slightly above the target temperature. Same for Cooling. My only concern is stressing the Peltier too much by making high-temperature changes on the same side of Peltier.

Hi,
Check the specs;


You need to be careful about how much energy you can use in them.
Only 96W, even though max is 17.4V and Imax is 10.5V.

This may help.

Have you googled

arduino peltier controller

Tom... :slight_smile:

If you have access to some thermal simulation software such as Ice Pak, you can do about 80% of your work without leaving your chair. Not knowing the details of the project I am assuming your water tank is your largest thermal mass, and it will change temperature slowly. Using BTS7960B for PWM should work just fine if you keep it say maybe to a 60 second or longer cycle. Your thermal simulations will give you that information and the cycle time. You can also simulate the power and see what the temperatures will be. For the IC's just use a point source. You could also use a programmable power supply for the heating cooling power.