Watchdog Timer

So after I fixed all my lamp matrix problems, I kind of ran into another, luckily I was prepared for this one.  See as I use a lamp matrix with 8 columns, any given lamp is only energized 1/8th of the time.  For this reason I decided to use 18v to power the lights, to keep them nice and bright.  This isn't too bad for the lights - I believe 'real' pinball machines do the same.  Problem is, if I stop the program, whatever lights were previously lit will stay lit.  This hammers the lights with a full 18v which isn't very good for a 12v globe and will likely burn it out before long.
I'm also expecting to have a similar issue with my coils.  If I stop the program or it crashes for whatever reason, a coil may stay stuck on.  For a flipper this isn't much of an issue, but for anything else this is a very bad thing, as they can burn out in a short amount of time.  This is why i need a watchdog timer.  There are a bunch of good resources about this around the place but basically its a circuit that keeps it's output high if it receives a pulse every so often.  If the pulses stop (i.e. the program stops or crashes), then the output goes low after a short time (milliseconds).  

There are a bunch of circuits around 555 chips that can are mainly used for rebooting an arduino if a program crashes.  I tried this but the output actually pulses when the program stops, which is fine if you're rebooting a thing, but not so much if you are using it to drive a relay for high voltages.  I found a great example of one from Ben Heck's spooky pinball which I adapted for my own needs.  You can check it out from here: http://www.benheck.com/amh/.  It's based on a 74HC123 chip and works a treat.  There's even a pot on it to adjust the time.  I hooked it up to one of my column drives on my lamp matrix and bammo - all good.

After some tidying up of my wiring my boards so far look like this:
The watchdog is the yello perfboard thing.  I'm using automotive relays to turn the high voltages on and off.

Comments

Anonymous said…
Hi
looking to use this circuit, can you post a diagram and components used? Thanks