Home Brew Forums

Home Brew Forums (http://www.homebrewtalk.com/forum.php)
-   DIY Projects (http://www.homebrewtalk.com/f51/)
-   -   PWM control of heating elements (http://www.homebrewtalk.com/f51/pwm-control-heating-elements-193075/)

chunk1227 08-28-2010 05:07 AM

PWM control of heating elements
 
Is true pulse width modulation control of AC current feasible without worrying about the phase of the AC current?

I would like to use an arduino to control SSRs to regulate heat in my HLT with heat element. Let's just say I want the element to be producing 50% heat. I know that I can program the arduino to cycle the SSR on 2 sec, off 2 sec. This gives me a psuedo pwm effect. If I were to send a 50% pulse train at the arduino's ~500Hz, what would be the effect? This would give an on pulse for about 1millisec the off for about 1millisec. Would I get a 50% reduction in power or would the 500Hz pulse matching with 60Hz AC give me problems?

I'm a mechanical engineer, I know just enough about electricity to make me dangerous.

Hermit 08-28-2010 05:28 AM

The more you switch the SSR the hotter it will get and the bigger heat sync you will need. Not sure how many cycles they are good for. That said, you have quite a thermal mass in the wort so 2 seconds on, 2 seconds off should be plenty. I forget what the popular Auber PID gives you in manual mode, but I think I remember Pol talking about it being a one second pulse with .5 on and .5 off.

Not sure what the first sentence means, but I believe all of this stuff (that is the SSR internals) is now designed to be 'zero crossing'. That means it switches when the sine wave is at zero to minimize wear and tear on the device. You shouldn't have to worry about 'phase'.

Indian_villager 08-28-2010 06:08 AM

PWM is only on and off, the length of the period of "on" or "off" is what is being controlled with PWM. From the sounds of it what you want is amplitude modulation (as in when you want 50% power you just send 50% of the power to the heater) for that you are going to need a bit more fancy electrical wizardry.

Note: I am a chemical engineer.

Hermit 08-28-2010 06:13 AM

Quote:

Originally Posted by Indian_villager (Post 2243758)
PWM is only on and off, the length of the period of "on" or "off" is what is being controlled with PWM. From the sounds of it what you want is amplitude modulation (as in when you want 50% power you just send 50% of the power to the heater) for that you are going to need a bit more fancy electrical wizardry.

Note: I am a chemical engineer.

Pulse Width will do the same thing for him. Just like the surface burner of an electric stove. It pulses on and off. It doesn't have a reduced output in any other respect.

chunk1227 08-28-2010 06:51 AM

Quote:

Originally Posted by Hermit (Post 2243722)
The more you switch the SSR the hotter it will get and the bigger heat sync you will need. Not sure how many cycles they are good for. That said, you have quite a thermal mass in the wort so 2 seconds on, 2 seconds off should be plenty. I forget what the popular Auber PID gives you in manual mode, but I think I remember Pol talking about it being a one second pulse with .5 on and .5 off.

OK, this I am cool with, totally agree.

[/QUOTE]Not sure what the first sentence means, but I believe all of this stuff (that is the SSR internals) is now designed to be 'zero crossing'. That means it switches when the sine wave is at zero to minimize wear and tear on the device. You shouldn't have to worry about 'phase'.[/QUOTE]

The zero crossing I also understand. The part that confuses me is that the arduino will be cycling pulses almost 10 times faster than the AC sine wave can complete a cycle. The SSR will be turned on and off almost 10 times in the period of one sine wave. So, if we start with everything off. The arduino will turn the SSR on, the sine wave will begin. Now the arduino will turn the signal off, but the sine wave will only be about 1/10 through the cycle. Will the AC continue through to the end of cycle? Or does it stop mid cycle? Then how does this affect the next on off cycle from the arduino?

I think I need one of my electrical engineer friends to sit me down infront of a white board to get me through this.

JuanMoore 08-28-2010 07:54 AM

I have no clue what would happen, but wouldn't the best case scenario result in switching the SSR dozens of times per second? Wouldn't that tear up your SSR and generate a lot of heat unecessarily? If you want to use an arduino to control an SSR, couldn't you build a standard timer chip based PWM and use the arduino output in place of the pot? Just my thoughts, which are probably worth what you paid for them since I don't know much about electrical. My thinking is probably way off base.

chunk1227 08-28-2010 08:22 AM

Quote:

Originally Posted by JuanMoore (Post 2243796)
I have no clue what would happen, but wouldn't the best case scenario result in switching the SSR dozens of times per second? Wouldn't that tear up your SSR and generate a lot of heat unecessarily? If you want to use an arduino to control an SSR, couldn't you build a standard timer chip based PWM and use the arduino output in place of the pot? Just my thoughts, which are probably worth what you paid for them since I don't know much about electrical. My thinking is probably way off base.

Yes it would create alot of heat. The SSR with the right heat sink could handle it. SSR's are not rated by cycle counts but rather by TIME between failures. Most SSRs should last ~10years before failing regardless of number of cycles.

As far as control, I would have temp sensors that would feed a PID function in the Arduino. This would determine the PWM signal. There would be no need for a timer chip. The arduino would take care of all of that.

Thanks for the help, guys. I need to take this to a different discussion board, seeing that I don't need this information for brewing, more just out of curiosity at this point. I think I need to do some reading in order to know what questions to ask and learn the correct lingo. If anyone here can understand my jibberish please join in, no hard feelings if I'm not making any sense though.

bmckee56 08-28-2010 12:34 PM

I use this device:

http://www.wolfautomation.com/assets/15/rm1e.JPG

It is an analog to variable output SSR. I input a 4-20ma signal and get a 0-100% electical output to my heating element (24 - 120 VAC). It controls my heating element close enough to produce only a 1 degree deadband in my HLT.

As for PWM to Analog output, you could purchase a transducer to accomplish that and then use the device above. PWm as stated earlier is simply a timebased on/off signal. If you are using a PID controller, I suggest a SSR instead of PWM device.

Try http://www.wolfautomation.com or http://www.auberins.com for the components you will need.

Salute! :mug:

bmckee56 08-28-2010 12:58 PM

Just did some googling on the device you are refering to. Unless you are into line programming and have some micro -electronics capability, give the sites I listed above a shot, you will save yourself a lot of time and headaches (IMHO).

Salute! :mug:

Hermit 08-28-2010 03:22 PM

Quote:

Originally Posted by chunk1227 (Post 2243781)

The zero crossing I also understand. The part that confuses me is that the arduino will be cycling pulses almost 10 times faster than the AC sine wave can complete a cycle. The SSR will be turned on and off almost 10 times in the period of one sine wave. So, if we start with everything off. The arduino will turn the SSR on, the sine wave will begin. Now the arduino will turn the signal off, but the sine wave will only be about 1/10 through the cycle. Will the AC continue through to the end of cycle? Or does it stop mid cycle? Then how does this affect the next on off cycle from the arduino?

If it is zero crossing, then it will only happen at two points during the cycle. Beginning and middle. So that is roughly a 120 HZ limitation. I'm not sure ALL SSR's do this but if you think about it, doing it otherwise would require a heftier SSR to cope with interrupting the current at a 'non-zero' point. Depending on the load controlled, just make a PMC and have the Arduino control that.


All times are GMT. The time now is 08:07 AM.

Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.