The Automatic Button Pusher

by travis7s in Circuits > Gadgets

68817 Views, 78 Favorites, 0 Comments

The Automatic Button Pusher

done.jpg
The Automatic Button Pusher (or ABP from now on) is a quirky little device that will simply extend its "pusher" at a user set time. I originally designed this device as a simple way to schedule my Roomba robotic vacuum to clean while I was at work

The device will use a ordinary digital alarm clock to trigger an electric motor momentarily. The average tinkerer can easily build a similar machine and I hope my Instructable guides you smoothly through the process.

Lets get to it!




Lets Get the Parts We Need

parts.jpg
There is a fair bit of parts you will need for this project:

(I have tried to include a part number to get most parts although some of these things can be found locally too)


1. A digital clock radio - the bigger and cheaper the better.
2. A car door lock actuator - (AllElectronics #DLA-1)
3. Machinists Magnetic Base - (LittleMachineShop.com #1237)
4. Prototype Circuit Board - (Digikey #V2012-ND)
5. NAND Logic Gate - (Digikey #CD40107BE)
6. MOSFET - (Digikey #IRFZ14PBF-ND)
7. Potentiometer 100k - (Digikey #490-2971-ND)
8. Capacitor 10uF - (Digikey # P5148-ND)
9. Resistor  1k (qty 2) - (Digikey #P1.00KCACT-ND)
10. Diode 1N4001 - (Digikey #1N4001FSCT-ND)
11. Battery 9v Alkaline
12. Miscellaneous - (zipties, wire, hardware, glue, elastic band, heatshrink, etc)

Tools Required:

1. Various screwdrivers
2. Soldering Iron
3. Hacksaw
4. Hand drill or drill press.
5.Wire cutters/strippers
6. Hot glue gun
7.Heat gun or lighter
8. Hammer with center punch.
9. Multimeter
10. Files
11. Permanent Marker
12. Countersink

Design the Circuitry

drinkingbird.jpg
The device works by manually setting the alarm on the clock. When the alarm goes off it will trigger the actuator to push our button (whatever it may be). The problem is we need a way to make the actuator activate only momentarily because otherwise we will burn out the motor/electronics. This is tricky to do because the signal from the clock will always be high (because nobody is home to turn the alarm off)

The solution is a simple circuit that will briefly turn out actuator on and then off, even though the input is always high.

Test the Circuit

breadboard.jpg

I always test things on a breadboard before soldering. I got mine from AllElectronics (#PB-1680) and it has been invaluable.

 Apologies,I forgot to take a picture at the time but I did take a brief video of my test setup.


Layout the Circuit on the Proto Board

layout.jpg
Here I just inserted the components without soldering to figure out what size to cut out of the proto board. I try to make it compact but I always leave some extra space because you never know.

Cutting the Board Out

hacksaw.jpg
filing.jpg
A hacksaw and vice can do this job just fine if you don't have access to a bandsaw or similar power tool. Be sure to put some cardboard between the material and the vice to prevent the jaws from gouging the circuit board.

Be sure to clean up the edges with a file when you are finished cutting.

Solder the Components

soldered.jpg
leg bending.jpg
pcbsolder.jpg

Place the components back into their spots and turn your soldering iron on. We're aiming for shiny solder joints that are not too blobby (although that can tricky with the pads on these proto boards)

Don't be too hasty to trim the leads, you can bend them and use them as some of your jumper wires if you want.

Use wire to complete the rest of your connections, mine is a little messy but it will get the job done.

Disassemble the Clock Radio

disassembly.jpg
magtray1.jpg
magtray2.jpg
magtray3.jpg
Now we need to modify our clock radio so that it will trigger our circuit. It is unlikely you will have the same clock as me so this process will be a little different for everyone.

Make sure you unplug the clock or remove its batteries, no need to shock yourself or accidentally short circuit it.

Remove all the screws that are keeping the clock together. I find that using one of those small magnetic trays to keep the screws from getting lost is a very good idea. If you want to buy one of these trays you can very easily make your own.

I've included an Instructable-Within-An-Instructable in this step's image notes to show you how to do it!


Find Your Triggering Signal

002.JPG
probing.jpg
**Use caution when working on open electronics like this**

For our circuit to work we need a 5v signal that will appear when the clock radio's alarm goes off. This can be tricky because (as in my case) there may be no schematic available anywhere.

First I had to find the clock's microcontroller as that would have some output lines to turn the speaker on. This was pretty easy on my clock as it only had 2 ICs. The writing on the chip was faded so I had to guess what pin to use as the trigger.

I did this by first powering up the clock with no alarm set, and then (being careful not to short out anything) use a multimeter to measure the pins of the chip. In my case there was quite a few pins that were at 0v.

Then I set the alarm to go off and remeasured each pin. Some of the pins that measured 0v previously now read 5v. Hooray!

Add Your Trigger Wire

signal wir.jpg
strain relief.jpg

Now we need to run a signal wire from the pin of the microcontroller out to the circuit board we built. I soldered a length of 24ga wire directly to the pin, being careful not to create any solder bridges on the adjacent pins.

I routed the wire out the back where the clock's AC power cord exits.

Be sure to strain relief the wire so that it won't break at the solder joint if it gets tugged on. I simply hot glued it to the circuit board in the clock.

Connect the Signal Wire to Your Circuit Board

pcbdone.jpg
Solder the wire to the input of the potentiometer, the circuit is nearly operational.

Notice the diode that suddenly appeared on the circuit board. I completely forgot to include it in Step 4, good thing I left extra space!

Modify the Actuator

bungee.jpg

Since the actuator will only be powered in one direction we need to make sure that it will stop pushing the button after the time cycle. We are going to do this mechanically by using a small rubber band as a bungee to pull the piston back in.

I used a hacksaw to cut a small slot in the tip of the actuator so that I could keep the rubber band in one piece.

I used a washer with screw as a flange to make sure the band doesn't slip off.

Attaching the Actuator to the Magnet Base

motormount.jpg
dialgauge.jpg
The magnet base is designed to hold a dial gauge, a measuring tool used in machining operations. The magnet base uses a threaded rod and a knurled nut to hold the dial gauge on.

To mount the actuator, I ran a long screw through the bored out mounting hole on the actuator casing. Then I tightened the knurled nut on that screw, and the thread the entire actuator assembly onto the threaded rod of the magnetic base.

Cut the Steel Mounting Plates

steelpieces.jpg
steelcut.jpg
The magnetic base has a switch that will activate a powerful magnet that will hold the base tightly to any ferrous surface. I figured the easiest way to attach it to the clock was to add some steel plate to the top of the clock, and then just stick the base on.

I dug around my scrap bin until I found an appropriately sized strip of steel. It was not big enough to cover the magnet so I cut it into 2 strips instead.

I used a hacksaw again to cut the steel, the only difference was I used cutting fluid (Rapid-Tap) this time, it makes cutting hard materials a breeze!

Be sure to clean up the edges with a file, not only will it make the plates look better but it will protect you from nasty cuts as well.

Drilling Holes in the Steel Plates

drill1.jpg
drill2.jpg
drill3.jpg
drill4.jpg

My plan to to mount the plates with a couple #4-40 screws with nuts so we'll need to drill some holes through the steel.

First of all I would highly recommend to anyone who likes building things to invest in a drill press. You can get a 8" bench-top drill press for $80-100 and in my opinion it will be the best money you've ever spent. (Although these days I do wish mine was a little bigger  and had a wider variety of speed settings)

I follow a 4 step process when I drill holes:

1. Measure and mark the spot you want to drill.
2. Use center punch on mark.
3. Drill hole.
4. De-burr hole with a countersink.

Drill the Holes in the Clock

handdrill1.jpg
steelpieces.jpg
steelmounted.jpg
Now we have to drill matching holes in the top of the clock frame. To make the marks I just align the drilled steel pieces where they are supposed to go and then  use a permanent marker to make a dot through the holes.

The clock frame piece was too awkward to sit on my drill press table so I just used a power hand drill instead, plastic is easier to drill this way.

Always make sure you take apart the device before drilling. One of my earliest tinkering memories is destroying my toy RC monster truck by accidentally drilling holes through the frame and into its circuit board.

Once all the holes are drilled we can mount the plates with the hardware, reassemble the clock, and then stick the magnetic base on.

Mount the Circuit Board

pcbmounted.jpg
tiemounts.jpg
We need to mount the circuit board somewhere, preferably mostly out of the way. I decided to mount it to the back of the magnetic base. Since the base is made out of metal we need to make sure the bottom of the circuit doesn't touch it and short circuit everything.

I decided to use some "cable tie mounts". These are just little molded pieces of plastic with sticky adhesive foam on the bottom. If you stick them to a flat clean surface they have a crazy amount of holding force.

Wire Everything Up

fullywired.jpg
lapsplice.jpg
shrinking.jpg
All thats left to do before we test it out is make sure is wired up.

I started by extending the wires on the actuator so they can reach the circuit board. I used 18ga wire for this job, making sure the wires were long enough to adjust for any position the actuator is in.

I just like using a basic lap splice instead of twisting wires together. First I make sure I've slid heat shrink tubing on before soldering. Then I strip and tin both wires that to be spliced together. Then I melt the tinned wires together, slide the heat shrink in place and cover the connections.

I used 24ga wire to run the battery connections out to the right spots on the circuit board.

I used another cable tie mount to add some strain relief to the wires, a little messy but it will do.

Test It Out!

done.jpg
Now it should be ready to try out! Plug it in, set the clock, and hook up the battery. All that's left to do now is think up interesting ways to use this device. Happy building!