High power resistive heater control - Page 1
Forum section: electronics / projects

author: ealex
author_rank: Frequent Contributor
timestamp: October 05, 2015, 08:24:39 am
content: HelloI need to get to some specific temperature a volume of between 10 and 50l of water ( beer brewing ).The resistive elements are rated for 3KW at 220V.I can try using some dedicated controllers but before that, i thought if i can make my own, with my specific requests.The problem is the power section : i have to finely tune the resistor's power - the stuff will have a high sugar content, so it will burn on the resistor if they get too hot too fast.I would like to have something like soft-switching - zero voltage crossing, etc.Looking over the net i found something similar to a PFC controllerA cpu will provide a simple user interface ( on / off / power control ) / remote control interface , read input voltage and voltage over Rsense, via a filter and display the power in the resistor. Also it will take care o some protection - no load detect, etcIs there anything conceptually wrong with what i posted ?Should i use a bunch of mosfets or IGBT's ? ( i still need to read about differences )

author: picandmix
author_rank: Frequent Contributor
timestamp: October 05, 2015, 10:13:41 am
content: A 3kw heater in a 10 to 50 ltr container ...?Sounds like a recipe for a melt down.Something like a 100w aquarium heater with inbuilt stat would be more suitable.

author: Macbeth
author_rank: Super Contributor
timestamp: October 05, 2015, 10:23:55 am
content: No, 3kW kettle element in a polythene 5 gallon bucket is fine. I built one many years ago. It still takes AGES to heat up, a fish tank heater is useless.

author: Fungus
author_rank: Super Contributor
timestamp: October 05, 2015, 10:44:28 am
content: Try PWM control using a Solid State Relay. Control it using an Arduino with temperature sensor.But ... this has a very slow response so use a slow PWM instead of 'analogWrite()'.eg. Do one pulse every second (ie. switch on for X milliseconds out of every 1000, where X is from 0 to 1000).

author: krivx
author_rank: Frequent Contributor
timestamp: October 05, 2015, 11:05:36 am
content: The popular way to do this (and the method I go for) is to wire a cheap STC 1000 temperature controller into a box and use it to switch the heat or cooling elements. They are less than 20euros and will do 10A at 240V, so two will handle your heaters easily. The thermal response times involve are so slow that on/off switching should be more than sufficient. Mount the sensors close to the elements.You could also use one controller to switch a power relay, but this might cost more than just using two and leaving them on the same setting.

author: ealex
author_rank: Frequent Contributor
timestamp: October 05, 2015, 11:21:35 am
content: The STC1000 controller looks nice but it does not have a remote control function.I'd like to at least try to understand the requirements for something like this, even it they're too much to handle.

author: daqq
author_rank: Super Contributor
timestamp: October 05, 2015, 11:25:18 am
content: Getting a 10 Amp coil at 680uH can get quite pricey-spacey. If you just go with a hysteresis regulation you are well to go - unless you need exceptionally accurate temperature control (which is a nasty thing in a high volume application) you should be OK with a dumb ON/OFF controller with hysteresis.QuoteRough difference - MOSFETs end up as a series resistance, IGBTs in saturation have a constant-ish voltage drop (around 2V) on them. For the ON/OFF control both should be OK, for the fast PWM one things get tricky.

author: krivx
author_rank: Frequent Contributor
timestamp: October 05, 2015, 12:22:01 pm
content: Quote from: ealex on October 05, 2015, 11:21:35 amSure, a DIY project can definitely be worth it for it's own sake. Another alternative is using open-source firmware for the STC to add functionality that you needhttps://github.com/matsstaff/stc1000p

author: ealex
author_rank: Frequent Contributor
timestamp: October 05, 2015, 12:34:15 pm
content: I could get rid of the LC filter if i just control the rate at 50Hz - detect the 0 crossing (hardware or software ) and keep the switching device on for a % of each cycle.-> No fast switching required.This will also simply reading the current - no more filtering, etc - i can get a dedicated current shunt amplifier (INA series ).

author: Ian.M
author_rank: Super Contributor
timestamp: October 05, 2015, 12:59:28 pm
content: Use phase angle control using a 20A TRIAC if you need linear control. Its a resistive load so you don't need to measure the current as (V^2)/R gives the instantaneous power, so sample the AC voltage and integrate the power over the ON portion of the cycle. Two servo loops - fast one controls phase angle to maintain power setting. Slow one controls power setting to maintain temperature, while limiting max power according to temperature to prevent excessive sustained boiling at the heating element surface, which you note causes caramelisation problems.

author: ealex
author_rank: Frequent Contributor
timestamp: October 05, 2015, 01:05:47 pm
content: I would like to open the device at 0 voltage crossing, so there are no inrush current spikes.Might not be required in this scenario / dropping the load on the peak of each sine wave will create some inductive spikes on the switching device, these might be even worse

author: Fungus
author_rank: Super Contributor
timestamp: October 05, 2015, 01:19:54 pm
content: Quote from: ealex on October 05, 2015, 01:05:47 pmhttp://www.atmel.com/images/doc2508.pdf

author: Seekonk
author_rank: Super Contributor
timestamp: October 05, 2015, 01:39:39 pm
content: I had to heat up a couple liters of oil and I bought one of those cheap PID controllers. There happened to be a big thermal lag between the heater and the sensor. Of course, that could all be solved by the miracle of science AUTOTUNE. The temperature went all over the place. I inquired on an engineering forum and they said that AUTOTUNE almost never works. It seemed like some simple microprocessor routines would have gotten it a lot closer faster. I did play with the PID numbers and got very good results. Many of the old hands just use the Proportional where 100% of power is applied till so many degrees from the setpoint, then it is proportional. That is a fairly simple routine.These PID controllers without the SSR block are quite cheap <US$15 and well worth playing around with. I am concerned with the power density of that heater if it doesn't have a stirrer.

author: ealex
author_rank: Frequent Contributor
timestamp: October 05, 2015, 01:51:49 pm
content: Saved the link to read later. Alsohttp://www.nxp.com/documents/application_note/APPCHP6.pdfIn my schematic the diode bridge wastes a lot of power - i will remove it and use a transformer to measure the current.Will thishttp://ro.farnell.com/coilcraft/cs1750l/transformer-current-sense-1-750/dp/2457940work for 50Hz ?

author: ealex
author_rank: Frequent Contributor
timestamp: October 05, 2015, 02:06:12 pm
content: Or use something like this:http://openenergymonitor.org/emon/sites/default/files/circuit.pngand keep the entire power stage isolated - that would simplify some things.It's using thishttp://www.avagotech.com/products/optocouplers/industrial-plastic/isolation-amplifiers-modulators/isolation-amplifiers/hcpl-7510

author: ealex
author_rank: Frequent Contributor
timestamp: October 06, 2015, 09:37:00 am
content: I played with the resistive elements and they seem to have significant thermal inertia -> i can control them by varying the number of 50HZ cycles.So i'll need:- zero cross detector- triac driver- triac : BTA140-800- AC voltage measurement - resistor divider chain- AC current measurement - current transformerShould I just float the ADC inputs at Vref / 2 and AC couple the scaled voltages ? or use a precision rectifier and use all available ADC range ?

author: Seekonk
author_rank: Super Contributor
timestamp: October 06, 2015, 12:07:48 pm
content: First line of the data sheet.Designed for use above 20 kHz,50/60hz current transformers in that format are fairly hard to find. Most applications are for switchers.

author: Siwastaja
author_rank: Super Contributor
timestamp: October 06, 2015, 05:18:32 pm
content: Use an of-the-shelf Solid State Relay. They offer optoisolator, zero crossing detector and triac all in a safely designed package. Don't try to engineer those from scratch if you are unsure how to do it and are still wondering about MOSFETs and IGBTs (which both are unsuitable for the task). You can drive the SSR from any mictocontroller IO pin, and don't need to think about mains voltage isolation. PWM frequency can be in range of 0.2 to 2 Hz. Any heater element is slow enough that you can make the switching period several seconds long without noticeable excess surface heating on the element.I use a P controller (basically a power curve based on the temperature error, with curve offset and gain tweaked by hand) for accurate process control to +/- 0.1 deg C, but it does some overshoot and oscillation at heat-up. If the fluid is stirred, a very simple hysteresis thermostat control will work fine and can give you accuracy up to +/- 0.2 C - but a P controller can be better in controlling the surface temperature of the heating element, because no stirring is perfect.

author: ealex
author_rank: Frequent Contributor
timestamp: October 07, 2015, 01:34:12 pm
content: Here is an initial schematic of the high power side.I've added a relay for extra safety, so i can disconnect the loadPart values, etc are not yet decidedAll the off-page connections are optically isolated / relay coilIs there something conceptually wrong with it ?

author: chefkoch84
author_rank: Contributor
timestamp: October 07, 2015, 01:56:41 pm
content: Hi there,I once adapted this code and used a normal commercial ~2000 Watt ~ 1.5 Liter 230V water boiler.http://www.instructables.com/id/Arduino-Sous-Vide-Cooker/The PID regulation is working like a treat and you can limit your maximum power. ... because of you sugar burining issue.For high acurancy you should have some flow / stiring to have maximum homogenouse temp in your beer.GreetingsMax

author: Ian.M
author_rank: Super Contributor
timestamp: October 07, 2015, 05:11:02 pm
content: Put a snubber across the TRIAC. Prevents failure if the load is more inductive than you thought - e.g long supply leads or a wound heating element.The live side sensor circuit probably doesn't need a lot of current: consider a transformerless (capacitive dropper) 5V supply for it.Your sensor circuit only works on positive half cycles. If you want to sense negative half cycles, you'd need a sensor supply that is centered about Neutral (i.e. +/- 2.5V)For the sensor circuit, consider using a small MCU to digitise the current and voltage on the live side of the isolation barrier, then transfer the data stream serially via a single digital optocoupler.

author: richard.cs
author_rank: Super Contributor
timestamp: October 07, 2015, 06:07:25 pm
content: I built a controller for my kiln based around the TEMIC (formerly telefunken) U217B which is a fairly old but useful chip that turns an external triac on for a variable number of cycles in a fixed period controlled by an analogue voltage.Only downside is I selected a period of 100 cycles and the kiln is 6 kW - all the lights in the house flicking at half a Hertz gets annoying quite quickly.

author: ealex
author_rank: Frequent Contributor
timestamp: October 08, 2015, 07:25:56 am
content: "Your sensor circuit only works on positive half cycles. If you want to sense negative half cycles, you'd need a sensor supply that is centered about Neutral (i.e. +/- 2.5V)"the HCPL-7520 accepts +/- 2V on the inputs, -0.2 to +0.2 to be linear.I don't see where it states that Vin can't go below GND.From their datasheet i can understand that Vin+ and Vin- can swing from -2 to Vdd1 without damage, and from -200mV to +200mV - page 6.Also, on page 15:"5.1: How does the HCPL-7520 measure negativesignals with only a +5 V supply?The inputs have a series resistor for protection againstlarge negative inputs. Normal signals are no more than200 mV in amplitude. Such signals do not forward biasany junctions sufficiently to interfere with accurateoperation of the switched capacitor input circuit."Am I missing something ?

author: Ian.M
author_rank: Super Contributor
timestamp: October 08, 2015, 08:24:09 am
content: No. My mistake. I didn't realise HCPL-7520 supported inputs below ground.However, if you let the bottom relay open while any load current is flowing you'll blow the s--t out of the current sense HCPL-7520. You need to fix that by moving it to the right of the shunt, between the shunt and the load's neutral return.

author: ealex
author_rank: Frequent Contributor
timestamp: October 08, 2015, 08:39:30 am
content: Yes, did that this morning

author: ealex
author_rank: Frequent Contributor
timestamp: October 16, 2015, 09:46:10 am
content: Finished the schematics.Next step will be deciding on a case and making the PCB.The triac will need a heat sink -> a metallic case will be better but i don't have access to anything capable of cutting a complex shape.Maybe i can get the tube-type case, use one end for cable entry and keep it pointing downwards and make a PCB lid for the top part, where the display will be.This type of case :http://static3.tme.eu/products_pics/4/d/7/4d73130e7f39287a0b8332d9a79c2ce3/56206.jpgMake the board a little short, put board-edge connectors for the AC in and out, mount the triac on the upper part of the case and connect it to the board with some short wires - just long enough to allow connecting the AC line terminals and then push back the board

author: Ian.M
author_rank: Super Contributor
timestamp: October 16, 2015, 09:59:04 am
content: ...or socket the TRIAC. Mount it on an aluminium standoff block to get it to align with the PCB and use a right-angle socket, so that pushing the board in mates the socket with the TRIAC pins.

author: ealex
author_rank: Frequent Contributor
timestamp: October 16, 2015, 10:03:50 am
content: The socket will have to carry at leas 15 amps ... i'm not sure it will have a long lifeFound this one:http://www.tme.eu/ro/Document/28781e6a1ac53e263075ea5b2e4c13f9/1455N1202.pdfBig enough and plastic ends -> i can cut and drill them myself quite easily

author: Ian.M
author_rank: Super Contributor
timestamp: October 16, 2015, 10:32:16 am
content: Yes, 15A could be a PITA. What about a silpad and a spring steel strip across the unused set of board grooves in the case to provide clamping pressure? Put it at the back end of the case and use standoffs for the TRIAC legs to get enough height from the board, with a right angle bend close to the TRIAC case?Its much easier from a testing/maintenance point of view if the whole board can be slid out cleanly from the case, and, with a temporary heatsink, run outside the case.

author: ealex
author_rank: Frequent Contributor
timestamp: December 04, 2015, 08:29:48 am
content: helloproject update: a photo of the board and a pdf with the schematici've decided to use transformer for line voltage and current measurement - way cheaper than linear optocuplers / dedicates IC's, etc and for the precision i need they should be more than enough.the green transformer is the power supply.the black one is used for measuring line voltage.the current one has wire leads and it's designed to work on 50Hz AZ-0500http://www.tme.eu/ro/Document/70426a11254837900f0ea7ada5026da5/AZ%20Series.PDFit did not blew up after firs power up - so at least everything looks good on the low voltage side and the mcu was accessible via jtagi will test the HV side with a small tube amp transformer to keep everything floating from mains.next step will be to start working on the software - start-up and ADC first, and in parallel find a drill with a vertical stand and drill out the case, so it will be safe to work with high voltages

author: dom0
author_rank: Super Contributor
timestamp: December 04, 2015, 10:02:38 am
content: Quote from: richard.cs on October 07, 2015, 06:07:25 pmTrick 17: Use a delta-sigma modulator to generate the pulse train switching half or full waves on/off. Reduces repeating patterns of low-frequency switching.