Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Building a Peltier heater controled by pc

Status
Not open for further replies.

Sparky_s

New Member
I'm just starting to build a coffee warmer, and it would be useful to get some assistance from others more experienced.

Basically, I want to control the temperature produced by the peltier plate using PWM instead of a regulated power supply. The idea is to send more pulses to the plate when I want to increase the temperature and decrease the amount of pulses that I send to the peltier plate when I want to reduce the temperature.

This is accomplished by using the serial port of the computer, that controls a N-Mosfet transistor, allowing more or less power to pass through the peltier module producing more or less heat.

These are the characteristics of the peltier module I have:
Umax (V): 15.2V
I max (A): 6A
Tmax (degree Celsius): 67

This technique of controling the temperature (Pulse Width Modulation) can be used to regulate the temperature produced by the peltier plate or is it only possyble using a controled power source?

**broken link removed**
 
Last edited:
You may want to give this link a read and note the following:

RS232 data is bi-polar.... +3 TO +12 volts indicates an "ON or 0-state (SPACE) condition" while A -3 to -12 volts indicates an "OFF" 1-state (MARK) condition.... Modern computer equipment ignores the negative level and accepts a zero voltage level as the "OFF" state. In fact, the "ON" state may be achieved with lesser positive potential. This means circuits powered by 5 VDC are capable of driving RS232 circuits directly, however, the overall range that the RS232 signal may be transmitted/received may be dramatically reduced.

The output signal level usually swings between +12V and -12V. The "dead area" between +3v and -3v is designed to absorb line noise. In the various RS-232-like definitions this dead area may vary. For instance, the definition for V.10 has a dead area from +0.3v to -0.3v. Many receivers designed for RS-232 are sensitive to differentials of 1v or less.

Next, a controller needs to know what the temperature actually is (process variable) and have a set point. You don't have any type of temperature sensor out there to measure temperature. There is quite a bit more to temperature control beyond what you have drawn.

Something else to consider is that the RS232 serial port is going the way of the parallel port into extinction. Today, USB has become the more popular interface.

Anyway, starting with a circuit similar to what you have you would really need a temperature sensor out there. Then a software routine would be needed to manage your temperature control. There are several methods of temperature control that can be used from simple On/Off to various PID loops and the list continues. You can't have control without starting with a sensor so you know the process variable.

Ron
 
Thank you for the link I'm reading it.
I haven't drawn any temperature sensor, but I have purchased an USB temperature sensor with temperature probe.
Precision USB Thermometer, USB Data Logger, Thermistor Temperature Sensor

Sorry about not saying nothing about the temperature sensor. Basically, I want to get a very stable temperature, with
0.1ºC accuracy. Basically this is the schematic (some parts are omitted in the drawing)
**broken link removed**

The software controls the PWM circuit and the software also receives information about the temperature of the liquid. To maintain a stable temperature, the program automatically adjust the optimal PWM sequency.

I choose the serail port, but I'm making a google search to know how can I build it using USB.
 
Last edited:
OK, things make more sense now. I didn't see a price and when I clicked on Buy I didn't get anywhere. I was just curious. Now from the link I did catch this:

You can also use a virtual serial version designed to integrate with custom third party software applications. Free Windows demo software & LabVIEW VI examples included.

What they are getting at here is that what you get is a temperature monitor software bundle designed to work reading a sensor. It (the software) includes a data logger. They mention being able to interface with LabView, a product of NI (National Instruments). I don't know if you are familiar with LabView but it isn't quite an inexpensive development suite. The cost is pretty steep. Though I don't develop in it we do use it extensively at work.

You will have a single channel of temperature measurement running via USB into your system. You will need to write or develop software to read the data, then output through another channel your control signal. The fact that the sensor can give you an uncertainty of +/- .1 degrees C. though nice is not the determining factor of how well or tight you can control temperature. This device is not going to give you a PWM or any other control signal.

Something else of interest is that even though we can accurately measure temperature of liquid in for example a beaker on a hot plate there is no mention of the thermal inversion layers of the liquid. There can be a few degrees C. difference between the levels of the liquid top to bottom as there is no agitation.

I see what you have as a start with more to do as to your control. A good start, however I would have done this differently.

Ron
 
Thanks very much again Ron,

I saw the usb thermometer in the link I posted before, but I bought, possibly, a cheap one in ebay. It cost me around 12 USD (including shipping cost to europe).
About the software, I'm writting a computer program to read the temperature from the usb thermometer and control the pulse sequence to allow/stop the power flow through the transistor (as you can see in picture 1).

I will heat liquids and metals. But I will use more small metals than liquids.
So, the computer gets the temperature readings from the thermometer probe. And then, the software changes the on/off sequence that is sent to the transistor to Allow/stop the power flow (from the serial port pins to the transistor) to the peltier junction, controlling in this way, the temperature of the peltier plate. As I said before, I'm writting a software to do that.

The problem I see here is that with this instrumentation I cannot made a 100% correct measurement. If I want to heat a lead piece to 43.2ºC for... 20 minutes, I don't know if I'm doing it right even if the temperature probe is measuring 43.2ºC. I think the accuracy won't be 100% perfect.

How you would have done it?
 
Last edited:
Before I forget, you may find this link to be an interesting read. I never used Peltier for heating or cooling applications. The link hits on something interesting in that they get into using an H Bridge approach with the Peltier which makes some sense to me.

How would I have done it or gone about it? For a computer based application I would have found a module similar to this one or a module similar to this one. The nice thing about either is they have analog input channels as well as configurable digital I/O channels. Both modules are USB and easy to connect. What that gives me is one USB line. Much like your choice but the advantage of more channels. They also allow for very easy software writing in several languages to work with them. I am not a programmer type but I do manage to stumble along with software development in simple things like VB (Visual Basic). :)

The modules I linked to are just an example of a home project approach, for a real industrial application I would go with a much better module with likely 16 bit data acquisition.

The nice thing about measuring temperature is you don't need a million or more samples per second. We are not doing high speed data acquisition here. Many times 10 samples per second is more than adequate.

The sensor can be the sensor of your choice. Sensors are chosen based on the application.

The trick now becomes to signal condition the output of the sensor so we get something like 0 to whatever degrees C (or F) = 0 to 5 or 10 volts (or 4 to 20 mA for that matter).

At this point in the game we have some options. Analog Devices for example makes a variety of chips to read directly from thermocouples (and other temperature sensors). They signal condition the sensor output and give us a voltage or current proportional to the temperature. Another option is the use of little Temperature Transmitters which are an off the shelf solution. Let's not leave out the use of a PIC based system either.

Once we have our signal we write the software to read and display what we have. The software also sends signals to the digital outputs of our module. That is where our control begins. I generally use large heating elements for heat.

Along these lines, several years ago I built a small temperature monitoring system for a computer hardware website to show what goes on with temperatures within a computer case. What is left of that science experiment ( :) ) can be found here. The code could have easily been expanded to drive a digital out on the module I used.

I seriously believe that working with temperature control is much like getting to Rome in that there are a dozen ways to go about it. :)

Ron
 
Uh Oh, I just saw your edit:

The problem I see here is that with this instrumentation I cannot made a 100% correct measurement. If I want to heat a lead piece to 43.2ºC for... 20 minutes, I don't know if I'm doing it right even if the temperature probe is measuring 43.2ºC. I think the accuracy won't be 100% perfect.

Enter another can of worms. :)

Here is what is going to happen. If we place a piece of lead bar stock into an oven @ 43.2 degrees C it will slowly begin to heat up. However, the heat will work from the outer skin towards the center of the stock. So where to start the 20 min countdown?

This is sometimes called a guaranteed soak time. Let's say I could control the internal temperature of an oven to a very accurate 43.2 degrees C. Let's say I preheat to that set point. When I open the oven door to place the load in (the load is the lead bar) I will lose heat. Additionally when the load goes in it will soak heat so all in all my oven temperature will drop. The same would hold true for an apple pie.

One way to go about a guaranteed soak would be to literally embed a temperature sensor in the center of the load. In your case, if possible drill a small hole in the lead bar stock and embed a sensor in the center of the load. The timed 20 min countdown process does not begin till the load center temperature reaches your desired temperature.

This is getting a long way from where we began with a simple hot plate? This is also getting into some very, very tight temperature control.

Ron
 
Ron, your comment are being very very useful to me. :)

I'm reading your lasts posts and I need some time to learn about what you said.

About the temperature, I decided to build a plate instead of an oven. I think putting the metal over the plate (or near or it) is more accurated and precisely than using an oven.
I really want to heat the surface at specific temperature. I'm not really interested in heating the nucleus of the metal. I think the temperature will be more hot in the surface than in the core.
 
Peltiers are very inefficient devices, any reason you don't just use a heating coil?

I'm very newbie in electronics, so working with heating coil I think it will be more difficult to me. But... I think the same technique can be applied to the heating coil... If I use a pulsed DC power source into the coil then it will be heat as a peltier plate. Thanks to you!
 
Peltiers are best for heat transfer, they draw heat away from one surface and you get a cold surface that can reach freezing temperatures. A heating element or even a power resistor would connect much like your Peltier.
 
Peltiers are very inefficient devices, any reason you don't just use a heating coil?
From what I have read, Peltier heaters can be more efficient than resistive heaters. This is because they not only create heat from I^2R, they also act as a heat pump, extracting heat from the local environment.
I think the key to high efficiency is the power supply. Any heat created in the power supply is not being delivered to the "load". Of course, this is also true of a resistive heater.
Having said that, I agree with you, Bill. A resistive heater should be cheaper, and easier to control. I doubt efficiency is an issue here anyway.
 
Peltiers are very inefficient devices, any reason you don't just use a heating coil?

This is where I strongly agree with blueroom. While Peltiers have their place I don't see their use here as viable. I would just use an element. Matter of fact I would likely just buy a simple hotplate as used for cooking and place a SSR in series with the power and control that way.

The problem is this. If you want to toss a chunk of lead on a frying pan (skillet) to heat it then screwing with tight temperature control is borderline insanity. If I toss a stick of butter in a skillet it will heat from the bottom up so what do I care how uniform the heat is? Do I care how the heat migrates through the load? Hell no!

You choose a heating element based on the application is what I am saying.

Ron
 
I will get also an electric heater. An USB cup warmer could be a good option. As far I know, the usb warmer is a resistive heater. It is designed to 20 Watts, but I think it will support a little bit more power. I will cut the cable and I will connect it to a DC power source, instead of the usb connection of the computer.
 
20 watts from a USB port? Not in this reality. 4 - 5 if you are lucky.
I am getting the strong impression you don't know much about the energies required to make heat.

1 watt make 3.114 BTU and thats not much. One pound of water changed 1 degree F is 1 BTU of energy change.

Find the specific heat of the substance you are heating and then compare that percentage to water which is 1 and multiply all of that by the temperature change minus the losses.
Convert that BTU number into watt hours and you will find how much power you will need to heat a particular substance X number of Degrees.

If your substance needs 50 watt hours of energy and all you have is 5 watts available its going to take 10+ hours to heat up assuming you have near zero thermal energy loses any place else in the system.
 
Sparky I can appreciate your enthusiasm with this. However, being sort of new to all of this there is more to heat than toasting bread. Now I don't know your final objective, maybe in melting lead to cast bullets I caught a few too many fumes? :)

I think you really need to read up on all of this a little. When anything is designed to do anything (profound statement) considerable effort is placed into things like sensors and control for heating applications. Everything from hot plates to small ovens to large furnaces running at 2,000 degrees F. requires considerable planning and design thought. This is especially true when you decide to splitting degrees into .1 degree increments from a control point of view. I think what you need to do is well define your project, not to this forum but to yourself. Then study a little on your objective. Yes, it is a time consuming affair to do that but less that, not much will happen. I am not trying to dissuade you, rather encourage you to think this through. Block diagrams are a good start but need things filled in.

Ron
 
You might want to stick with a conventional gas burner. What would heating lead to 45C do? In some countries that's a very hot day. Lead melts at 327.5C
 
Last edited:
You might want to stick with a conventional gas burner. What would heating lead to 45C do? In some countries that's a very hot day. Lead melts at 327.5C

No it doesn't, lead melts at 621.5 F. :)

Ron
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top