Heating Pad Controller
I recently had occasion to use our family's heating pad. It has 3 settings, low, medium and high. I set it on low, and found I was getting roasted. So I inserted my wattmeter, and found that all 3 settings resulted in almost the same heat which was high. (Heating pads on high usually take between 45 and 50 watts.) I would expect that low should run around 20 watts give or take.
I thought about my electric
blanket controller which has a 2 digit LED display and my heater
controller. They both control power to a resistive load. What I
needed was a simpler version of the blanket controller, with 1 LED
readout and 9 steps. Using a simple pushbutton rotary encoder I could
control the power precisely and turn the unit on and off.
Here I'm using an ATtiny861A microcontroller. An ATtiny461
would probably do but I did not have it on hand. Instead of the Greyhill
encoder I used the EC11-1B-18T which is
functionally equivalent but requires different support code.
The power supply is the guts of a 5V wall wart used for charging
gadgets. There is a 1 mH inductor on the output to reduce noise.
![]() |
WARNING
THIS PROJECT IS *HOT* WITH RESPECT TO THE POWER MAIN. THERE IS
REAL RISK OF SHOCK IF YOU ARE NOT CAREFUL. ALSO, YOU MUST USE AN
ISOLATED POWER SOURCE WHEN PROGRAMMING THE MICROCONTROLLER IN
CIRCUIT. IF YOU FORGET, YOU'LL BLOW UP YOUR PROGRAMMER AND
POSSIBLY YOUR COMPUTER, AND YOU MAY BE INJURED. Best bet is to
program the AVR externally then plug it into the circuit, or use
an isolation transformer. |
![]() |
![]() |