In my house there are several types of heat sources and they
are independent from each other and none of them are regulated, so it's really difficult to keep constant room temperature. Therefore I decided to add a regulated heat source in to existing system. I find that the easiest controllable energy is electricity, hence I end up with 2 kW power electric heater.
To control it I decided to use "smart" connected thermostat. Nowadays there are numerous devices that are made specifically for this purpose, but they can be quite expensive and not always suit your needs. So my solution was to build one and not only the thermostat but also automated control system. The futures of this system can be expanded in the future.
Step 1: Hardware
As a main board I use Arduino Uno clone with the Ethernet shield. As a power stage I use optically isolated relay module powered from dedicated 5V supply. These relays are not suitable for switching high currents, this is why I use another power stage with high current relays and MCBs (Miniature Circuit Breakers). This protects system from over current and short circuit on power lines.
All the control electronics and relays get power from 24 V DC power supply. To lower the voltage on Arduino side I use DC/DC step down switch mode voltage regulator. It reduces voltage approximately to 9 V DC, which is then fed in to Arduino's Vin pin. The relay board is powered from similar 5 V DC 3 A voltage regulator.
The system is redundant taking in to account safety and future upgrades. For this project you only need relay board with 2 relays or you can use other switching devices (like FETs) to control power relays.
For temperature sensing I use DS18B20 temp sensor. I use it in normal power mode so it is connected with three wires. In the future I will add more sensors.
For security reasons I use wireless cloud-based camera, to check if heater still in its place, is it working properly or is there any other issue. When it's dark in the room I use another relay to switch on the LED light remotely.
Any wiring to the mains power should only be done by a qualified electrician!
Step 2: IoT Platform
For this project I use Cayenne IoT platform. It is really easy to set up and you can control it from your PC or mobile device. The code is generated by Cayenne automaticlly, you only need to assign pin numbers for your sensors and actuators. Then create your dashboard and set triggers. Thats it. Now you can control and monitor your electric devices from anywhere in the world.