A man is lying peacefully in his bed, waiting for morning. When his alarm is placed over a light sensor, morning comes and the alarm goes off. Like all too many of us, his natural reaction is to smack the thing and go back to bed.
A servo pulls a level glued to the man's back and inserted through the bed. This lever causes the man to sit up in bed. The fishing line controlling the extension of the arm runs through the man's back and is attached to the bed such that when he sits up the arm is extended automatically. The arm knocks the alarm clock over and the servo returns the lever to its original position, with the arm curling back in as it does.
This instructable will address creating the project both with and without the utility a laser cutter provides. There's a tremendous amount of room for aesthetic expansion, so we implore you to consider that at every part of the process and consider the addition of aesthetic elements. The elements we added, including things like the lamp, are at the end of the instructable, though you're not likely to want to do them all at that part of the process (so read through things and weave your ideas into the whole process!).
This project was completed by Tommaso Buvoli, Kristina Callaghan, Bruce Deakyne, and Phillip Dunlap for CU Boulder Things that Think Spring 2011.
Step 1: Materials
With laser cutter:
Sheets of wood,
Tape/general adhesives of choice,
Without laser cutter:
Sheets of wood,
Fishing line and wire,
Tape/general adhesives of choice,
Microcontroller (we used Arduino Mega),
Resistive Light sensor,
100,000 KOhm resistor,
LED (for lamp add-on)
1 KOhm resistor (for lamp add-on)
Step 2: Making the Arm
If you aren't going high tech, use a saw (we used a band saw) to make the joints (cut a valley in one dowel, its converse on another). Once they fit together snugly (but without a lot of friction), drill a hole to insert a wire pin in to. Be sure to check the action of the joint, as quite frequently the joint will require sanding corners to bend properly. This is the easiest place to ensure the arm won't hyperextend, since you can sand one side of the joint and leave the other at right angles. Once the joint is constructed, the other additions (rubber band, wire guide, wire) are the same as the laser cut arm. We also found cutting very small troughs where the string bends around the joint (elbow, shoulder) to help prevent problems.
Our laser design files for the arm we used are attached.
When the arm is finished, you should be able to pull the fishing line to extend the arm to full length, hopefully without hyperextension but that's your prerogative. Also size is variant (our laser cut version was far smaller than our hand cut version), but if you've a friend to measure, ratio is really all that's important.
Step 3: Torso and other arm
The torso is another opportunity to get out your friend and measuring tape. Either hand or laser cut two identical torso pieces. Once you're ready to glue the arms and perhaps some support pieces into the torso, take a moment's pause to plan the next steps. The fishing line needs to run through the back of the torso to connect to the bed, and that hole can be drilled either now or later. If drilled now, you may also want to glue in a coffee straw guide to prevent the line from forming a split in the wood that could give you trouble later. Also consider the lever we're going to end up gluing to the inside center column of his back when selecting where to make your hole. We also found it useful to glue a dowel vertically near the beginning of the arm to serve as a turning point (pulley) for the fishing line.
Once you've finished planning/drilling, it's time to glue the torso together. The arms function at good supports for the top corners, and lower supports are optional (we did on hand cut, didn't on laser cut). Your arm should now be extendable by pulling the fishing line whether from the bottom of the torso or through the drilled hole in the back. If you haven't drilled prior to gluing it together, now is the time to do it. If someone is conveniently available and likely to laugh, consider testing the arm by harassing them a little with it.
Our laser cut pieces for the torso can be found below.
Step 4: Bed and Lever
Design a bed in good proportion with your figure. We chose to go with a bed that had feet so you could see the mechanics underneath, but there is no reason this is necessarily so. Cut a hole in the bed to insert the lever through at wherever you'd like the bottom of his torso to be. Size this hole to fit your lever, which will be addressed in a moment. Once you've figured out the position of your wooden figure, drill a hole to match the one in the back of the torso. While the adjoined picture has small blocks to prevent the torso from sliding toward the foot of the bed, if your level hole is sized well to your lever these blocks prove to be more trouble than they're worth. Also, be sure to leave room for the figure's head.
The lever requires some design questions. The basic idea is just a beam with an S-bend in it at the hole in the bed, but certain elements like the width of the bed are important. Do you want the motor to push or pull the lever? Do you want the bed raised above the floor or a protrusion of the contiguous floor? In our case our servo pulls and our bed is raised. This meant our S-bend didn't need to be all that significant, since it merely needed to get below the bed but above the floor. One need be cautious with the material selected for the level, though, as all the force in the product will be directed through it. If you're not using a very strong wood (as we weren't, using Basswood), you need to compensate by making it thick enough. Our quarter inch version snapped, so we upped it to a three eights. The snapped quarter inch version is featured below.
Once your bed and lever are constructed, begin assembling the pieces in the bed. Make sure you can fit the lever through the hole in the bed before gluing it to the torso (shouldn't be an issue). Feed the fishing line through the bed and achieve a tightness that causes arm extension at the point in the arc of sitting up that you'd like. We secured the fishing line with knots and electrical tape. Adding a piece of cloth to the bed gives an illusion of a mattress. At this point you should be able to make the man sit up in bed and extend his arm just through use of the lever.
Our laser cut pieces for the lever and bed can be found attached.
Step 5: Floor
Step 6: Cabinet
Our cabinet's top section is entirely open for this very reason. Also, remember to leave a wall removable so that you can manipulate the electronics inside more easily. We did this by laser cutting it to a size where the friction would hold it, but if you're hand cutting you can always just leave it completely open until you've got the electronics all set and working. Once that's finished, drill a hole in the floor in part 4 to stuff the cabinet's wiring through.
Step 7: Base
You're going to need room to house your microcontroller, power source, and space for the motor's arm to swing. Measure the height required by your motor's arm to fully move the figure, and be sure to make your base at least that tall (preferably with some wiggle room). We made the base out of clear acrylic to showcase our electronics and the action of the servo as well as to make wiring modifications substantially easier. Give yourself a large enough hole in the bottom that you can manipulate your electronics should the need arise. The floor will eventually be glued onto the top side of this (though you'll kick yourself if you don't do the wiring before doing that gluing!). The design is essentially four walls and a floor for a portion of it (what the electronics rest on). You probably want to plan to have the cabinet over the floor section, since the majority of the wires will be coming out of that.
Step 8: Programming
One possible solution:
Loop every 2-5milliseconds. (We called each loop a 'tick')
Start in state 0.
State 0: Alarm is coving the light sensor.Wait a few hundred ticks (a few seconds), then turn the alarm on (write HIGH on whatever pin the buzzer is attached to). Go to State 1,
State 1: Wait a few hundred ticks as the alarm goes off.
Then, every few ticks, increment the position of the servo.
There will be some servo position to knock the alarm clock over. If you want a few misses, subtract a random number (say between 0 and 4 degrees) from this ideal position and set that as the final value for the servo. That way, it will need to run a few times before actually reaching the ideal servo ending position (it will probably knock the clock over when the random number is 0 or 1).
Once the servo is at it's ending position, go to State 2.
State 2: Decrement the servo position every few ticks until it reaches the preset "laying down" position.
If the alarm clock is still in place, go back to State 1.
Otherwise, go to State 3.
State 3: Check the light sensor every few ticks.
If the alarm clock is back in place, go to State 0.
If you're using an Arduino Mega, you can use the attached program. Just make sure you get the pin assignments correct.
You may need to include the servo library.
Note: you will probably need to change the 'pos_start' and 'pos_end' values in the program to match your physical bed & lever.
Step 9: Electronics
The light sensor is really just a variable resistor that is light sensitive.
It's hooked up as a voltage divider between the sensor and a 100KOhm resistor
The servo runs on external power (a 9v battery)
The input is from the micro-controller (in our case, the Arduino servo library) PWM pin 9.
One end in pin 5, the other in ground.
One end (+) in pin 4 (set to HIGH when lamp is on), the other (-) in pin 3 (which is always set to LOW)
Step 10: Aesthetics
This is one of the most important parts of the project. You can use anything as the alarm clock in so long as it blocks the light sensor. We chose a classic design and put a small plank of wood to ensure we completely covered the sensor. Painting really helps bring the alarm clock to life as well as shows off how integral it really is to the finished product. Our laser cut file is attached.
Need we say more? We used a wood sphere and attaches to a dowel for his neck. A face can easily be painted on, and yarn can be attached to serve as hair.
Our poor man's covers are too short! As a result, his feet stick out of the bed. The feet are made of two wooden dowels, with the dowel serving as the foot cut in half. This dowel is glued onto the second dowel that acts as the man's legs. The full leg is then hot glued to the actual bed.
Who doesn't have a lamp on their cabinet? Cut or find (we chose find) a good piece to serve as a base, drill a hole through it, and mount an LED on top. Be sure to wrap the LED's pins (itty bitty living space)! Make a paper lampshade and some structure to hold it on (glue and a paper clip… be creative!).
Makes everything feel more homely! Our carpet is made out of crochet. The first step is done by chaining 21, then single crocheting across, starting with the second chain from the hook. Then, just chain 1, turn, and single crochet across again! Repeat this process until the carpet is the desired length for your room. If this doesn't make sense, there are plenty of crochet blogs out there to help! Don't forget to add your own personal touch. We choose to add tassels to our rug, as well as a duckie motif.
The pillow is made out of two pieces of cloth and a little stuffing. Cut two identical pieces of cloth that fit the dimensions of your bed. Then, simply whip stitch them together. Don't forget to add stuffing before finishing off your sewing. Be advised, however, that the height of the pillow will affect the tension in the man's arm.
The construction of the bed covers is almost identical to that of the pillow. Choose a piece of cloth with a nice pattern for the comforter. Then, sew a piece of this patterned cloth to an identically sized piece of regular white cloth. Make sure you don't forget to lightly stuff the comforter and size your pieces of cloth according to the dimensions of the bed. After the sewing is complete, fold back one of the sides so that the white cloth is showing and sew this into place. This gives the illusion that there are more covers for the man.
Add some windows, wallpapers, pictures, posters; you name it. We chose to laser cut a window into our wall. Then, we used acrylic as panes and hot glued the whole window together. To add more character, wallpaper was glued onto the wall. The paper used was just regular scrapbook paper found at your local craft store. But since plain wallpaper would be boring, pictures were added. We laser cut picture frames and then used images of animals as our pictures. The files used to create the window and picture frames are attached.
Paint: Because just wood color could be a bit unimaginative…