Limit power of boiler heater with analogWrite and SSR

Hello.

This is my first topic and I'm sorry if it is wrong category for my topic. Please, move it to proper category if you can.
I'm completely new in arduino. I started with my project, because I need some regulator for my heater of boiler (3000W). I found some solutions for my problem in network, but not exactly can adjust to my situation and that kind of large power of device.

I use arduino uno board and SSR (80A) with radiator and fan. I share some picture to show how I connected it.


To communicate my components I wrote very simple code. I practically use only one statement. In setup function I use analogWrite function:

analogWrite(BOILER_PIN, mapf(1200,0,MAX_POWER,0,255));

The BOILER_PIN is my digital pin in schema. The mapf function is a little modificated map function from arduino documentation. It is used specially for floats:

float mapf(float x, float in_min, float in_max, float out_min, float out_max)
{
  return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;
}

The MAX_POWER is the 3000 value (max W of heater). Two last parameters of mapf function said of the limit of the mapf function return value. That value is pass to second analogWrite function parameter.

Project actions are very strange. I would assume, my program set heater to 1200W and it will heat water in only 40% effectivity, so the water reaches same temperature much more time longer. Meanwhile, when I launch my project, power of heater changed every second (or even faster) from about 0 to about 3000 and from about 3000 to about 0 and again and again. Power of heater is not constant. The symptom is similar to the device resetting or restarting. That symptom I can better observe with digital multimeter connected to same phase of AC socket. The voltage then change and jump very quickly and differs every second about 15 or 20 volts. I would imagine that voltage in socket will change from e.g. 240V to 230V and not change while the arduino will be working. Situation is all the more strange, because I wrote analogWrite in setup function.

Please, help me or write any suggestions You have in mind. I only found some solution by changing frequency, but it didn't solve the problem.

Jacob

It is surprising you need to use PWM to control a 3kW heater.

Suggest you re-think this.

Why not ON/OFF control ?

1 Like

You canno change the laws of physics .
There seems little point what you are trying to do , also you realise that water sits in layers in your storage tank ( hot at the top !) . The normal stat is fitted towards the bottom and therefore operates when the tank if full of hot water.
If you only want to heat half a tank , put a stat halfway up .

If you pulse the heater you are likely to shorten its life and reduce the net power output .

Thank You for reply. I use 9 PWM digital socket to connect SSR. I created this project to reduce the AC voltage for photovoltaics. Only for reduce specific amount of volts. Turn 3000W heater reduce too many volts and it is not frugal. Ideal will be to reduce power to about 1200W. In the future I would like to create some dynamic system by adjusting power of heater to phase voltage.

Don’t get this ! If you reduce power , it just takes longer , but uses the same amount of energy to heat the same volume of water.

Are you saying your supply can’t handle supplying 3000W ?

I realise, that my project don't make a lot of sense. I don't focus on water. I want to use heater only for reduce voltage in the electrical outlet. Unfortunately, in my street was created a lot of photovoltaics installs. Each of them increase voltage in the electrical outlet. My house is the farthest from transformator, so I have the largest amount of volts. Photovoltaics inverter will switch off when amount of volts in electric socket will reach some value (in Poland 253V). I want to use my heater to reduce volts when it reach to that limit. I only need about 1000W to down it about 6 volts. 3000W will reduce it even for about 20 volts down - it is too much, because I will consume more than my photovoltaic charge. So I decided to wrote project in arduino, because I found similar programs in network.

Simplify, I want something similar to digitalWrite(pin,HIGH), but not to set 100% (HIGH) or 0% (LOW), but 50% of power.

SSRs don't work with PWM (analogWrite).

Almost all heating & cooling is done with on/off control. You turn on a heater when it's below the target temperature and then turn it off when it reaches the target (usually with some hysteresis, delay or, "swing' so it doesn't switch on & off for a fraction of a second).

I'm sure you've noticed your furnace cycling on & off (and your AC if you have it) and if you listen carefully you'll notice your refrigerator is cycling.

The temperature can't change instantly anyway, plus the delay makes it tricky to use linear feedback control... The system can go unstable as it "hunts' for the target. And it will reach the target faster at full-power, or you can ramp the temperature by ramping the target instead of ramping/varying the power.

Most AC SSRs are made with a TRIAC. A TRIAC latches-on until current drops to zero. That's the next AC zero-crossing.

AC light dimmers also use TRIACS and something similar to PWM, but synchronized with the AC frequency... The TRIAC is turned-on with a quick-pulse part-way through the AC cycle and it stays on until the zero crossing, and the same thing is repeated for the next half-cycle.

Some SSRs have additional circuitry so they don't turn-on until the next zero-crossing. That makes them work better with motors or other inductive loads.

1 Like

See if you can find a "constant voltage transformer" in your area. They will be used in industrial areas to provide a known AC voltage. I have used them in banks for new computer systems that had terrible AC voltage regulation problems.

+1 for constant voltage transformer

If you are using the heater as a "voltage reducing resistor", turning it on and off turns the power to the rest of the circuit on and off.

Not a major problem, if I remember correctly, they run extremely hot as there is resonance involved in the design.

I think it's the opposite.
Leo..

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.