Help using a Push-Pull amplifier to run a Peltier Heat Pump from an Arduino.

Discussion in 'The Projects Forum' started by StuartHenry, Oct 29, 2013.

  1. StuartHenry

    Thread Starter New Member

    Oct 29, 2013
    2
    0
    Hi, I'm just looking for some guidance on a project I'm currently working on for university - I'm a physics student.

    The aim of my project is to use Arduino (then Raspberry Pi & more expensive micro controllers) to build intelligent control circuits which will be used in line with some of the laser systems we have at the university. The trouble is that electronics has always been my weakest subject - I chose this project so that I would learn something.

    Initially I was asked to build a simple temperature sensor which I managed okay. I used an AD592 interfaced with the Arduino and was able to obtain accurate (for what we need) readings.

    Now I have been asked to incorporate a Peltier Heat Pump/Cooler to control the temperature of a laser diode mount based on the temperature read from the sensor.

    My supervisor drew me a quick sketch on the white board for the load part of my circuit (see below) with a couple of transistors. I have been doing some research online and realise that this is a push-pull amplifier configuration that can be used to both heat and cool the element.

    I drew the second attachment based on his original sketch. I added the names to the transistors that I'm using and have replaced the Peltier component with a DC motor so that I can easily tell if I have it working (in principle I don't think it should really make a difference what I use as a load).

    I was wondering if anyone could help me with the values of the 3 resistors? How do I go about selecting these values? The motor I currently have will run on 10V DC.

    Also, I should probably add a diode in with the 1k resistor to stop any high current going back into the Arduino. Am I right?

    Any guidance you can offer is much appreciated. I hope this hasn't been too long. Thanks for reading!!
     
  2. ronv

    AAC Fanatic!

    Nov 12, 2008
    3,657
    2,800
    Peltiers often draw quite a bit of current. The transistors you show are not very high power. The common way to do it is with a more efficient PWM controller. Start with the specs on the peltier and we can work back from there. It would help to have more detail. Like how close do you have to keep the temperature or is just on and off okay?
     
  3. wayneh

    Expert

    Sep 9, 2010
    13,625
    4,417
    Not yet it isn't. I see only one direction for current flow. Unless the lower rail is a negative voltage relative to motor ground?

    It might not hurt but it isn't needed. The 1k resistor will severely limit current in either direction and I believe an NPN cannot pass current out of the base anyway (unless of course it has failed to a short).

    It's worth noting that, depending how you run the TEC and what you need, it will heat far faster than it cools. You might want different current levels (perhaps by having asymmetric pole voltages against ground) for the two modes.

    You can get good results without PWM. It's commonly used but may be overkill here.
     
  4. David Pate

    New Member

    Oct 29, 2013
    26
    2
    I don't see how you can heat and cool with that circuit. I require two inputs (a heat signal & and cool signal) to control an H bridge circuit, being certain never to have both signals high at the same time. My bridge FETs carry 5 amps and thus require very low Rds-on values.
     
  5. ScottWang

    Moderator

    Aug 23, 2012
    5,480
    864
    You may try the DC motor driver on this page.
     
  6. StuartHenry

    Thread Starter New Member

    Oct 29, 2013
    2
    0
    Thanks for all of the replies. Sorry that I haven't been able to come back to you sooner - I've had an extremely busy week.

    The Peltier component I have sitting on the workbench has no part number or markings on it. The plain white box only says that it can draw a max current of 8.5A. I asked around and was told that for our purposes half an Amp should be fine.

    Currently on and off is fine but, ultimately, I want to implement something where the current through the Peltier depends on just how far off from the desired temperature we are. I need to do some thinking about the Arduino code for this though.


    yes, that was a silly error on my part. I'm on a learning curve not only with electronics & Arduino but also the various complementary software packages such as that I used to draw my schematic.

    I was thinking about this too and have come up with a circuit (below) where I can control the current flow to the peltier using different output pins on the Arduino. This way I can set each output to a different voltage between 0 & 5V which will allow me to control the levels of heating and cooling. I think.



    I've been doing a lot of reading and trying a lot of different things this past week. I've had success with the attached H-bridge circuit running a small motor in different directions depending on the temperature.

    You can ignore the resistor values - I had originally added those to combat the fact that the peltier element will heat faster than it cools but I realise there are other ways to control that.

    I only had 4 NPN transistors on hand (BC184L) and so built the circuit using those. It works - when running with positive current through the motor it's drawing around 3.2 volts and around 2.8 when running opposite. I'm using a 9V battery as my DC source - not the 12V stated on the schematic.

    I've been reading a lot of discussions on different forums about running an H-bridge using only NPN transistors. Over on Arduino.cc a few people have said that it will not work which is surprising to me as my circuit does. Am I missing something really obvious?

    My next step is to source some PNP transistors and put together a proper H-bridge circuit to test with the peltier component.... Unless I have done something terribly wrong?
     
  7. crutschow

    Expert

    Mar 14, 2008
    16,545
    4,459
    The possible problem with an all NPN bridge is that the upper transistors can't go into full saturation, so their minimum ON voltage drop is equal to the base-emitter voltage of about 0.7V. This may or may not be of concern in your application.
     
  8. David Pate

    New Member

    Oct 29, 2013
    26
    2
    One of my first H-bridge circuits used 4 N-FET's in the same fashion to your circuit. The FET's required 20 Volts on the gate for saturation. So my 12 Volt circuit required a charge pump and optoisolators to interface with the thermostat which was a 5 volt device. Later I designed one with 2 P & 2 N-FETs when the P-FET's had come down in price; this was far more elegant, less complicated, and more reliable.
     
  9. wayneh

    Expert

    Sep 9, 2010
    13,625
    4,417
    A single transistor likely won't give you enough current gain. You may want to consider darlingtons or MOSFETs so that there is little load on the Arduino (as you have drawn it) but then you can get plenty of current to the peltier.
     
Loading...