Digital Potentiometer controlling Peltier element

Hi Everyone,

I'm trying to use an Arduino to control a peltier element, and was searching the forums when I found a link to this (Arduino Controlled Digital Potentiometer);

Would I be correct in saying that if I replaced the terminals of the LED with the terminals of the peltier element, that it would then be controllable by the Arduino?

Or am I taking a too simplistic approach?

Would I be correct in saying that if I replaced the terminals of the LED with the terminals of the peltier element, that it would then be controllable by the Arduino?

Yes, and no. Yes, you could connect a Peltier device to the digital potentiometer just like an LED.

But, no, you can't, since the current demands of an LED are orders of magnitude less than those of a Peltier device.

It's indeed to simple. It would simply blow the digital pot.

Have a Google at controlling a motor from an Arduino. You can simply replace the motor by the peltier (of course keeping an eye on the current rating of the transistor).

Cheers!

PaulS - Would your answer change if it was a small Peltier device? (Max current 6A, max voltage 1.7V, with targeted use between 0-1V)

Septillion - Does this still apply if I am only using the Petlier device as a cooler and will not need to switch between heating and cooling?

You call 6A small!? That's the current of 600 leds...

And yes, it still applies. Even more, if you would require it to switch you would need an H-bridge.

Sorry I should clarify that it would be using a small current too!

I googled how to control a motor and most of the results were just using the arduino as an on/off function. What components/methods would you recommend for using the arduino to control the peliter device? - My aim is to be able to make slight variations in the temperature of the cold side of the peltier device.

My aim is to be able to make slight variations in the temperature of the cold side of the peltier device.

You do that by changing the duty cycle of the device. That is no different from varying the duty cycle of an electric motor to make it run at different speeds.

A motor controller, suitable for the maximum amperage you need, can be controlled by two pins - one to define the direction and one to define the "speed". The "speed" pin needs to be a PWM pin. The direction pin does not.

dunns:
Sorry I should clarify that it would be using a small current too!

I wouldn't dare calling 6A a small current...

dunns:
I googled how to control a motor and most of the results were just using the arduino as an on/off function.

Then your Google skills are different then mine... I mostly find motors controlled via a transistor which the Arduino can PWM just fine :slight_smile:

Although you might get it to work by supplying a small 5V pwm out from the arduino to a suitably big fet or transistor, I'm not at all keen on that way of running a Peltier for the following two reasons :

  • A Peltier hit by 6 Amps switching events might develop an annoying rattle, or break.
  • 6 Amps for half of the time does not give half-max-cooling and is a lot less efficient than 3 Amps steady.

You are on the right tracks though. Read up on the circuit 'T-bridge capacitor smoothing' to get from an arduino pwm output to a slowly varying dc level, and set up with an npn bipolar transistor and LED to go from pwm-smoothed to "something else contolled by a transistor". Then you swap your transistor for a bigger one with a heatsink to go to your Peltier. That circuit would be about the right size to control a car headlamp bulb, if you are inclined to test thoroughly at every stage.

Good luck.