Not all loads have high inertia and can be adjusted using a discrete regulator.
For regulation of incandescent lamps, heaters with low inertia, on the basis of a successful digital discrete load controller, a circuit with phase regulation was developed. The controller is assembled on a PIC 16F628 microcontroller.
The detector of the transition of the mains voltage through zero is made on the basis of two LED optocouplers and gives pulses at each transition of the mains voltage through zero, at the beginning of each half period. This made it possible to reduce the requirements for the stability of the internal generator of the microcontroller and simplify the program.
Schedule of the zero crossing detector.
The circuit is represented by 220 and 36 volts. Differences only in the power scheme.
Circuit for 220 volts
Circuit for 36 volts
The PCB of the device allows you to assemble both versions of the circuit without changing the board itself.
ATTENTION, the indicator set down from the side of the tracks.
Adjustment occurs due to the delay in opening the triac after the mains voltage passes through zero.
The set power level is displayed on the digital LED display in the form of numbers from 0 to 9 and the letters ABCDEF
To change the power, press and release the button.
When turning off the power, the set level is stored in the internal memory of the microcontroller.
Pressing two buttons at the same time causes turning off loads. The level indicator starts blinking. Also carried out and the subsequent inclusion.
There is a timer of work. After 2 hours, the load is automatically disconnected.
The microcontroller program is written in an exotic mix of picbasic and asm.
Materials on the article, the project MPLAB, source code, firmware.