Hi everyone^^
Okay, so I like physics a lot and I'm currently working on a project where I need to regulate the temperature of the cold side of a peltier module at or slightly below the dew point temperature. (Around 10°C in my region this month)
I have :
an arduino UNO
K-type thermocouple to measure the temperature on the cold side.
Max6675
DHT11 sensor
relay
mosfet : IRLZ44N
Buck DC DC
I have a heatsink + a fan to evacuate heat from the hot side. It does work.
I've already made the Arduino circuit and the code to calculate the dew point temperature.
The idea now is to control the temperature of the peltier's cold surface.
To do this, I have 2 ideas, but I've seen that both are sometimes encouraged and sometimes discouraged, so I've come to ask your advice.
The 1st idea, the simplest: regulate the temperature using a relay: below the dew point temperature, the peltier is switched off. Above that, it's powered.
An alternative that I find much more interesting but about which I've read everything and its opposite, would be to use a BUCK DC DC + a MOSFET. From what I understand, PWM allows precise control of the power delivered to the peltier. Then I'd like to fine-tune the control of the MOSFET using a PID corrector, but although I've read a lot about this solution, I still have several questions and I hope you can help me.
Is smoothing or "filtering" necessary ?
What are the advantages of this solution over using a mere relay ? Is it useful to save energy ?
DC DC Buck + MOSFET, do I have to use both?
From what I understand
==> the mosfet allows me to control the current delivered to my peltier. Provides more precise control than a relay.
==> The DC DC Converter controls the voltage that goes to the peltier. Optimized power supply to reduce consumption.
So I would tend to believe that both are necessary here.
Thank you very much for taking the time to read everything and I hope you'll be able to help me, I'm starting to flounder.
There are two popular ways to regulate power input to a Peltier heat pump.
One is on/off (PWM) control from a fixed voltage source (typically 12V), and is rather simple and inexpensive.
The other is with a continuously variable voltage from a computer controlled power supply (very expensive), and is significantly more energy-efficient.
Do you have a computer controlled power supply capable of providing the required voltage and current?
Almost all heating/cooling works that way... Your home furnace, your refrigerator, your oven, etc.
The temperature doesn't change instantly anyway. Usually there is some hysteresis or "swing" so if you are heating it turns-on slightly below the target temperature and turns-off slightly above the target. That prevents it from turning on & off several times per second (relay chatter).
BTW - A MOSFET can also be used that way, as a "slow" switch.
With PWM it's hard to get exactly the right setting and it can go unstable (because of the delay) overshooting & undershooting "hunting" for the correct temperature. And it means you aren't giving it full-power so it takes longer to reach the target temperature. ...I studied the Nyquist Stability Theory in college but I never really understood how to apply it in the real world.
PWM works well if there is no temperature feedback and you just want to run it at 25% or 50%, etc. Like a little heater with high, medium, and low settings but no actual thermostat.
If you must use PWM to drive a peltier, you need an inductor in series with the peltier to smooth out the pwm to provide a constant current. You need to size the inductor so it has a saturation current higher than the maximum current the peltier will draw.
Oh thank you for your answers !
So no @jremington, I do not have a computer controlled power supply. @gilshultz, you think I need an inductor. would you know how to choose it ? I have no clue about that
Your answers seem to point out that using PWM for such a project is not going to be a piece of cake. Do you believe it is worth the cost or should I stick with my relay. I have 2 goals here :
to regulate the temperature of the cold side of the Peltier at the dew point (between 6/7°C and 13°C)
save as much energy as possible
If I was to use PWM, would I need a DC DC Buck Converter ? And would the PID be compulsory ? I must say I love physics but I am a bit lost when it comes to all these notions, sorry. Hope I don't bother you,
That is what most people use. Keep in mind that "PWM" in this case is simply on/off control, at any frequency that is suitable for the project.
A 12V supply capable of providing at least 5 Amperes, a logic level MOSFET, a temperature sensor, Peltier module with heat sink and an Arduino are the basic requirements for this project.
Many similar projects are posted on the web, which you can find using the search phrase "arduino peltier temperature control".
save as much energy as possible
If you are serious about that, use a different cooling method. Peltier modules are extremely inefficient.
@gilshultz okay thanks, i m going to work on this. @jremington, thank you. I must admit I m new to using such things (Buck/PWM...) so it quickly appears difficult, sorry. But reading your message I think I am gonna try and use PWM anyway rather than a mere relay.
And of course using a Peltier is not energy efficient at all, but the idea would be to say : the consumption of NRJ is better with PWM than with a relay even if it remains really unefficient. I m well aware that when it comes to energy efficacity, peltier device is not good.
One thing I don t understand is the "on/off control at any frequency that is suitable for your project" I don't see why frequency is important here and why it is rather used than a mere relay.. i struggle with the "advantages" of PWM regulation.
Thank you for your answers, it helps a lot, I m gonna work on that this afternoon and come back to you,
Some thought as to what is actually happening inside the Peltier module might help with that.
Heat is generated internally by I^2R losses (as well as pumped) when current flows through the Peltier module, and the resulting temperature changes take some time to propagate throughout the device.
Ok, so I've been working on the project and here's where I'm at.
List of equipment I have (or need to buy)
arduino uno - got it
bme280 (better than dht11) - got it
buck XL4016 - need to buy
Max6675 + K thermocouple - got it
IRLZ44N mosfet - got it
10k resistor - need to buy
Schottky 1N5819 - need to buy
Power supply - got it
My goals :
precise control
bonus : to limit energy losses (find the "least worst" configuration)
I have my weather station (already made and the code too), which gives me the dew point temperature.
I attach the K thermocouple to the peltier.
Then I connect the IRLZ44N mosfet to the peltier, and the XL4016 buck between the power supply and the peltier.
I read the temperature of my peltier (cold side) and compare it with the dew point temperature, then with a PID I adjust the power sent to the Peltier. Thanks to the PWM, I control the mosfet that drives the input of the XL4016 buck, which reduces the voltage that goes to the peltier (so I save energy).
The buck isn't essential here, but after reading posts (a looooot of posts) I understand that it offers certain advantages, and in particular avoids to impair the peltier, which does not seem to likebrutal on/off cycles. This is why I wanna use it. I have also read that it helped saving energy but I have to admit I did not really understand why.
I have 2 remaining issues, and I really would need your help :
With this configuration, I don't think I need an inductor, do you agree?
the most important... do you think that the proposed approach can lead to something precise and functional? I've worked hard this afternoon and part of the evening on the components i should use and on what approach to adopt, but I am not sure if what I have come up with is good.
Thank you all for your help and your advices, it helps a lot !
Have a good night^
That depends on your PWM frequency, if it is about a 10 second or longer cycle you should be OK without it. I do not know the thermals of your parts so this is a SWAG.
Okay, so I will try without an inductor and cross my fingers it works.
As to the sensor, yeah I use a thermocouple K (0-800, resolution of 0.25°C) type with a Max6675, standard +-2,2°C sounds good, I may have misunderstood your question, but I did not think that calibration would be useful.. it may be idiot of me, but I thought the sensor would gave me the temperature (around +- 2°C) and that s it.
Except for those 2 points, do you validate the rest of the approach ?
And I am sorry for my english, I actually am a french student.
Thanks a lot !
Hi @physicslover I tried using an Arduino to control a Peltier panel in one of those very cheap dehumidifiers. The Peltier elements kept dying and I decided that it was because they didn't like the thermal shock of being switched on and off. So I changed to using PWM to make the transition between fully on and fully off take 5 minutes. They still died quite often and I gave up. Maybe I was buying low quality Peltiers. It's been suggested that you use a coil to smooth the PWM current. I think you need a power diode to prevent the coil causing spikes on the mosfet.
^^^ This is why using an inductor with PWM is useful. The inductor helps even out the current into a more constant-current source, minimizing I^2 and minimizing the heat. PWM by itself is maximum ripple, maximum I^2, and maximum excess heat.
Oh, that is nice of you to share your experience.
Yeah, Peltier devices seem fragile x), sometimed it looks like you are doomed to kill your Peltier as soon as you decide to control it.
As for the diode, I plan on using a diode Schottky, I hope it will do the job.
Thanks @RichardDL
Oh ! I had not understood that, thank you for the explanation. So I think I am going to use an inductor.
I go back to work on "which one should I use", if you got any advice on that.
Thanks anyway^ slowly, but surely, you help me moving forward
That number is a deviation from the actual reading. If it is 100C you will get a reading of something between 98C and 102C. That is the information your controller will get, it has nothing as to what your controller can do. Calibration will eliminate most of this error.
Hi everyone,
I just wanted to update a bit on the project. If I was really excited to use PWM + mosfet + buck dc dc (+PID), I realized I might need some training before playing with so many new things so I have finally decided to use a mere mosfet (without PWM) as a switch in a way.
But what is quite annoting is that it does not work a lot so I come back and cross my fingers someone will be willing to help me.
My power source tells me : 14V, but only 0.01A. This is the issue, since my peltier (and I have tested) is not powered at all..
As to the way to connect tools :
I have got a max6675 + bme280 + thermocouple (K type) ==> connected as usual to the Arduino.
Then a Mosfet :
Gate to 220ohm resistor to pin9 of the arduino
Gate to 10kohm resistor to GND of the arduino
I have made sure GND of the arduino and the GND of the power source were linked by a thread.
Then source of the mosfet ==> GND
And finally Drain ==> - of the peltier device (+ being connected to +12V power source)
1st test : I have measured the voltage between the gate of the mosfet and GND : 5V when the arduino is in HIGH position.
2nd test : I have also measured the voltage between the drain of the mosfet and the source, which is of 0V when the arduino is in High position and 14V in low position.
This actually seems quite good. But during these tests the peltier device is not plugged. As soon as I plug it, it does not work (on the power source I have 14V and yet only 0.01A). And I don t understand. Since it works without the peltier but with the power source on, why is everything collapsing when I add it, i don t know.
I would tend to think that it is linked to some bas behaviour of the current but I have no idea how to fix that.
I have been fighting with this regulation for a lot of hours now so any idea you may have, I ll be really greatful for
Thanks a lot,
Have a good day
J.
There are thousands of different types. Please state the exact type, and post a hand drawn wiring diagram, with all pins, parts and connections clearly labeled. Also post a closeup, focused photo of the setup.
Note that breadboards are for temporary experiments with low power logic circuits, and cannot handle more than a few hundred mA of current. The tracks burn.
You can test a Peltier module by connecting it directly to a 1.5V alkaline D cell. If it doesn't heat up on one side and cool down on the other, it has been destroyed.