Introduction: Snoozebot: the Tired, Grumpy Robot (useless Machine)
Ever want to just stay in your warm bed on those cold, dreary autumn mornings? Now you can! With Snoozebot, you will be able to keep your alarm set, mitigating any guilt you might feel for hitting the snooze button on your alarm when it goes off! Just set up Snoozebot and it will hit the snooze button so you don't have to wake up and deal with the fact that humans do not have a natural hibernation cycle! This is a simple build using an Arduino, Sound Sensor, Relay, and Solenoid. Want your own Snoozebot? Let's get started!
Step 1: Project Parts List
Snoozebot is made with the RobotGeek system. These parts are designed to work well together, and with the RobotGeek Sensor Shield. You can use any variation of parts you would like, but the parts suggested here have been tested and work splendidly! The RobotGeek Sensor Shield makes it so that you don't have to breadboard anything.
- 1 x Geekduino
- 1 x Sensor Shield
- 1 x RobotGeek Duino Mount
- 1 x Medium Solenoid (A small solenoid may work, a large solenoid might punch a hole in your alarm clock)
- 1 x Barrel Jack Female Pigtail Lead 2.1 - 5.5mm
- 1 x RobotGeek Relay
- 1 x Gravity Mounting Kit
- 1 x Gravity: Analog Sound Sensor
- 1 x Experimenter's Nut and Bolt Pack
- 2 x RobotGeek Small Workbench
- 1 x DC Squid Cable
- 1 x 12V5A Power Supply
- 1 x Alarm Clock with Snooze Button
Step 2: Build and Wiring
The main idea is to build around your Alarm Clock, Keeping the power cords, duino, and relay out of the way, while positioning the sound sensor closest to the alarm clock's speaker, and positioning the solenoid so that it rests on top of the snooze button. Check out the pictures above and follow the wiring diagram to build your Snoozebot.
|Sound Sensor ||Analog 0 on Sensor Shield|
|Relay ||Digital 2 on Sensor Shield|
|Solenoid (either lead) ||Voltage Lead on Barrel Plug Female Pigtail|
|Solenoid (either lead) ||Normally Open (NO) on |
|Ground Lead on Barrel Plug Female Pigtail||Center on |
Step 3: Programming
Grab the RobotGeek Libraries and Tools from Github, and extract it to your arduino folder.
File → Sketchbook → RobotGeekSketches → Demos → angryAlarm
in the Arduino IDE and upload it to your board.
Test it out by setting up some false alarms to see if the sound sensor reacts. If it doesn't activate the solenoid, you can adjust the sensitivity in one of two ways. The easiest way is to turn the potentiometer on the Sound Sensor board, which increases/decreases the sensitivity of the sensor as you turn it clockwise/counterclockwise. You can also adjust the sensitivity in code by altering this line:
if(soundValue > 175) //if the sound value variable is higher than 175 (on a scale of 0-255)
175 might be a little high, so lowering this number will make the sound sensor react to quieter noises.
Step 4: Set It and Forget It!
Congratulations, you now have a sound activated solenoid! Can you think of other ways to use this that aren't so self-defeating? We'd love to see what you come up with!