"The Bed Wetter" was an idea based off of a friend missing his Chemistry Exam. I thought, if only he had an alarm that actually woke him up in time for it. So I figured that if he had an alarm that woke him up physically then he would have woken up in time. In my opinion, water is one of the easiest ways to wake someone up, due to its variation in temperature from your current state and also the difference in its properties than a solid object. Thus, the idea for a water alarm was born and, in due time, "The Bed Wetter" was created. Using a timing mechanism and 3-D printed arms connected to servos in order to squeeze a bottle of water, water can be transferred from the bottle to the face of the user.
Step 1: Circuits and Hardware
"The Bed Wetter" uses the respective pins for each piece of hardware. The LCD is attached to the Arduino, as well as the buttons in order to control the functions of the LCD. A 6 Volt battery was used as an external power source in order to power the servos, which take 6 Volts each. The reset button is connected to the reset pin of the Arduino for a simple snooze/reset function. The Real Time Clock keeps the time running until the battery inside the RTC gets disconnected, allowing the time to be kept even after the Arduino's power stops.
Step 2: Code
The header file "print2digits" contains all the variables and definitions, which is included in the body of the code. Before the code can be used effectively, the user must download the Real Time Clock function in order to set the computer time into the Real Time Clock. Once the user accomplishes this, the code for the alarm clock causes the Real Time Clock to display the time and date on the LCD. The buttons then interact with it accordingly, changing whats on the LCD. When the time is set and the time on the LCD equates to the time set, the alarm goes off causing the servos to move every second until either the minute changes or the snooze button is pressed.
Step 3: 3-D Modeling and Printing
Two arms are printed in order to clamp together on the water bottle in the printed shell. The unmodified box for the project can be found on the at www.makecourse.com. The box used for "The Bed Wetter" has holes on the side to screw in the LCD and place the buttons. The shell is printed to hold the servos up, hold the water bottle in place, and protect the circuits in the black box. The button supports are to put backing behind the buttons so that they can be easily pressed without opening up the box. The roof and front of the shell is used to further protect the items in the box and the shell, and are printed separately in order for easy access to the items inside.
Step 4: Finalizing
The servos are glued heavily on the inside of the printed shell, with the printed arms screwed onto the ends in a way for it to clamp on the water bottle in the middle. The buttons are placed inside the button holes of the black box and the button supports are glued behind the buttons in order to press them easily. The LCD is screwed into the side using the larger hole on the side of the black box. The lid found on the course site receives two drilled holes in order to connect the servos through the lid to the arduino contained in the black box. The shell is glued onto the lid of the black box so that it remains stationary. Grips are also placed onto the bottom of the black box so that pressing the buttons don't cause the entire project to slide.