I'm creating a diy sous-vide rig using esp8266, a tubular heating element (1.5 kW) and a solid state relay (zero- cross, Fotek SSR-25DA)
I use a relatively powerful heating element, so that the water can quickly reach the desired temperature. However, once it's reached, I want more granular control, so I use 10 Hz PWM to open and close the SSR.
The problem is, my ceiling lights start to flicker when the duty cycle is not 100%.
I think this is due to the starting current of the heater, but I don't know how to approach fixing it.
Maybe I should increase the PWM frequency? But I'm not sure it will work at all, considering that the SSR is zero-cross. Or should I add some fat capacitor in parallel with the heating element?
I want to be able to limit the heating power because it takes some time (about 300ms) to get the temperature from the sensor (ds18b20), and leaving the heating element on for that time on full power easily overheats the water.
Here are some specifics:
- Water volume is about 3L
- The readout time for the sensor is 375 ms
- Typical temperature range is 60-65 degree Celsius
- I use the following cycle:
read the temperature (t)
if t >= target
set duty to 0
if t < target - 3
set duty to 10/10
if t < target - 2
set duty to 7/10
if t < target - 1
set duty to 5/10
if t < target - 0.3
set duty to 2/10
else
do nothing