Here’s an easy-to-build circuit to drive a solid-state relay for a period that can be selected as two, four, or six hours. This device forms part of a project by the author to control a heating system remotely by telephone (for a holiday home). The aim of the circuit is to avoid the risk of the heating’s running for more than a certain time if, in the event of a problem, there is no one to stop it or put it into a frost protection position.
A pulse of one second or longer on pin 6 of the microcontroller sets off the timer and the output is energized. Once the chosen time has elapsed, the microcontroller deactivates the output.
The duration is selected via the DIP switches connected to ports GP2 and GP3:
When choosing a relay to use with this circuit, remember the maximum current the microcontroller output can source is 25 mA. Preferably choose a solid-state relay — you’ll find several examples in this issue.
The software has been written in E-Blocks Flowcode and the project is available from . For those who don’t have Flowcode, the project also includes a file in C and in assembler language, as well as a HEX file. The preprogrammed microcontroller (PIC12F675 in 8-pin DIL package) is available from the Elektor online store as part number 110219-41 .
Internet Link www.elektor.com/110219
- 128 bytes of EEPROM data memory
- Programmable pull-up resistors
- 4 oscillator selections including a 4 MHz RC oscillator with programmable calibration and Power-On Reset