If you’ve ever dealt with a brightly lit Christmas tree, you might understand the frustration of having to crawl underneath the tree to turn the lights on and off. [brmarcum] feel’s your pain. He’s developed his own motion activated AC switching circuit to turn the lights on and off automatically. A motion sensor ensures that the lights are only on when there are people around to actually see the lights. The circuit also has an adjustable timer so [brmarcum] can change the length of time that the lights stay on.
The project is split into several different pieces. This makes the building and debugging of the circuit easier. The mains power is first run through a transformer to lower the voltage by a factor of 10. What remains is then filtered and regulated to 9VDC. [brmarcum] is using a Parallax PIR sensor which requires 4.5V. Therefore, the 9V signal is then lowered once more using a voltage divider circuit.
When the PIR sensor is triggered, it activates the timer circuit. The timer circuit is driven by a 555 timer. The circuit itself was originally borrowed from a classic Forrest Mims book, though it was slightly modified to accommodate the PIR sensor. The original push-button trigger was removed and replaced with the signal from the PIR sensor. The only problem is that the circuit was expecting a low signal as the trigger and the PIR sensor outputs a high signal. [brmarcum] resolved this problem with an NPN BJT to invert the signal. Once the timer is triggered, it flips on a relay that allows the mains electricity to flow through to the lights.
[brmarcum] soldered the entire circuit onto a piece of protoboard. The final product was then mounted securely inside of an insulated plastic case. This allows him to mount the circuit safely underneath the Christmas tree skirt. The PIR sensor is kept external to the enclosure and wired up into the tree itself. This allows the sensor to still detect motion in the room while the rest of the circuit is hidden away.
When you think of a robotic arm, you’re probably thinking about digital control, microcontrollers, motor drivers, and possibly a feedback loop. Anyone who was lucky enough to have an Armatron knows this isn’t the case, but you’d still be surprised at how minimal a robotic arm can be.
[viswesh713] built a servo-powered robotic arm without a microcontroller, and with some interpretations, no digital control at all. Servos are controlled by PWM signals, with a 1 ms pulse rotating the shaft one way and a 2 ms pulse rotating the shaft the other way. What’s a cheap, popular chip that can easily be configured as a timer? Yep, the venerable 555.
The robotic arm is actually configured more like a Waldo with a master slave configuration. [viswesh] built a second arm with pots at the hinges, with the resistance of the pots controlling the signal output from a 556 dual timer chip. It’s extremely clever, at least until you realize this is how very early robotic actuators were controlled. Still, an impressive display of what can be done with a simple 555. Videos below.
Continue reading “The Un-Digital Robotic Arm”
Here’s a completely non-invasive hack for a classic Minolta SLR camera. [Robby] wanted to add to the options available when it comes to remote shutter release. He ended up building a cable release add-on that mounts on the hot shoe.
He drew some of his inspiration from a similar project we saw back in March. He took the engineering example from that project which uses a small servo motor to actuate the cable release. But along the way added his own features.
The system centers around an ATtiny4313 microcontroller. It provides feedback using the character LCD on the back of the auxiliary flash body. That flash body also offers a battery compartment which provides power for the control circuitry as well as the servo motor. Right now it functions as a count-down timer, and also can hold the shutter a specified amount of time. But we could see this extended to work with external sensors to trigger at a set light level, when sensing motion, or from a remote control.
Still trying to solidify that reputation as the office Grinch? This project will let everyone know you’re a complete jerk in no time. It’s called the 8-bit Annoying Person Remover. It detects when someone enters your office at which point it starts to play the Super Mario Bros. theme song while the display counts down 400 seconds. Just like in the game the music gets faster at the end and when it stops they know it’s time to get the heck out.
The hardware inside isn’t too complicated. An Arduino and a Wave shield do most of the work. The song played is stored on an SD card and can easily be changed. There’s a speaker mounted under the top heat vent of the enclosure. The device defaults to displaying the time of day, but monitors a motion sensor on one side to detect when someone comes through the door. This also works when someone leaves, cutting off the music and resetting the display. Don’t miss a video of it in action after the break.
It’s as if this was made specifically for the Comic Book Guy
Continue reading “NES annoyance timer makes no friends at your work”
An awful lot of microcontroller projects use timers to repeat an action every few minutes, hours, or days. While these timers can be as accurate as a cheap digital wrist watch, there are times when you need a microcontroller’s timer to measure exactly, losing no more than a few milliseconds a day. It’s not very hard to get a timer to this level as accuracy, as [Karl] shows us in a tutorial.
The problem with keeping time with a microcontroller has to do with the crystal, clock frequency, and hardware prescalers of your chip of choice. [Karl] started his project with an ATMega168 and a 20 MHz crystal and the prescaler set at 256. This made the 78.125 interrupts per second, but the lack of floating point arithmetic means one second for the microcontroller will be 0.9984 seconds to you and me.
[Karl]’s solution to this problem was to have the ATMega count out 78 interrupts per second for seven seconds, then count out 79 interrupts for one second. It’s not terribly complicated, and now [Karl]’s timers are as accurate as the crystal used for the ‘168’s clock.
[Steven Mackaay] added a simple user interface that implements a shutoff timer for his desk lamp. His project log comes in two parts, the breadboarding and the actual implementation.
He wanted a few things out of the build. The first is an LED that would help him find the lamp in the dark. The second feature is a shutoff timer with different delay options. To get everything working he used a PIC microcontroller to drive a mechanical relay. That relay switches the mains power to the lamps. Now he uses one button to switch the lamp on and off. The other selects a shutoff timer of one, five, or thirty minutes. Power for the control circuitry is provided by the green wall wart PCB seen in the photo of the electronic guts.
This is a pretty general setup that could be applied to a lot of other mains switching applications. Just connect the logic hardware to some type of relay.
Sure, it’s time to get the countdown clocks ready to ring in the new year, but why limit it to just one night? If you end up building a six-foot digital display you can count down trivial events; like the remaining seconds of freedom before you have to pimp yourself out in that drab cubicle.
This seven-segment display is homemade and boasts six full-sized digits and two smaller digits with each pair separated by colons. You have probably already guessed that the construction was greatly simplified by using LED strips rather than individual components. This is part of the reason for the size of the display. The strips can be cut, but only down to a minimum of 3 LEDs per segment. That explains the small digits, with their larger siblings doubled in size. But there is a benefit to this constraint, it means that current limiting is already taken care of for you.
The main assembly is a wooden frame surrounding two polycarbonate sheets. The LED strips are sandwiched between those sheets, with segment and digit driver buses exiting a one point on the side. The build doesn’t detail a driver for the display but it shouldn’t be hard to find a multiplexing example that will serve the purpose.