SMALL HAPPINESS MACHINE
2020
Creating an interactive project with Arduino and at least one sensor.
Concept on momentary and surface level happiness vs "true" happiness: small artificial interactions may be fun and interesting at first but end up disappointing and unfulfilling after you realize the pattern and the element of surprise wears off.
Components
- servo motor x2
- stepper motor + driver module
- red LED x2
- push button
- Arduino Uno
- breadboard
- corresponding resistors & cables
- tiny hands, sticker roll, paper, string
- cardboard, hot glue, tape, more tape, hinges, cork, a lot of tape, styrofoam, etc
Ideation
I initially started with the idea of a clapping machine, something that would provide a bit of artificial encouragement to someone upon command. To make it a little less predictable, I thought of adding other functions like giving an encouraging message or dispensing a happy face sticker(I happened to have a roll of them on hand). For my final plan I decided on three functions and drew up their mechanisms accordingly: hand clapping using a servo, turning a roll of stickers and messages with a stepper motor, and opening/closing paper flowers with a servo. The roll of stickers/messages would alternate between happy face stickers, encouraging messages, passive agressive messages, and other weird things. The paper flowers would have different faces in their centers displaying different emotions and a random one would open up each time it was prompted.
Fabrication & Logic
More than anything, building this project was a test of my creative construction/problem solving skills. Being away from campus and not having access to a shop, tools, and nice supplies, had me utilize things around the house instead, evident in the use of styrofoam, wine corks, and masking tape everywhere.
The logic here is basically, upon button push, a random integer between 1 & 4 inclusive is selected, each number corresponds to a different case in a switch statement. Each case runs a different set of actions in the hardware, so turning the first servo arm to clap the hands, turning the stepper motor to roll the roll, or turning the second servo to open the paper flower. The roll is designated two cases due to its own variations of outcome. When a case is running, the red LEDs light up to indicate so.
The hand clapping mechanism was made by attaching the hands to popsicle sticks which were connected at the other end by a hinge, so something like tongs. A string running between the two popsicle sticks was connected to a servo's arm, which would pull the string taut to bring the hands together and release to bring the hands apart. The servo motor was stabilized by attaching it to some scrap wood taped to one of the popsicle sticks.
I taped all the messages and things onto the roll of stickers. To attach the motor to the roll I stuffed styrofoam and a wine cork into the roll and attached that to the end of the stepper motor. To keep the motor upright and standing in the correct orientation I attached it to a cork standing up and attached the other end of the cork in the middle to another cork glued to the side of my containing box.
The mechanism for the paper flowers was the most complicated to engineer and I ultimately wasn't able to work it out in time. I was trying to use string attached to both sides of the petals to pull open and release to close the flowers, each set attached to a opposing side on the two sided servo arm. It didn't work out too well so I was only able to put one flower. The servo and flower were stabilized by a chunk of styrofoam.
Packing everything into a compact and nice looking container was the most difficult portion of the whole build. I was using a breadboard and premade jumper wires that were often way too long that took up unnecessary space. My other parts were all quite makeshift as well so everything was pretty wonky. I was also unable to extend the push button from the breadboard, so I had to use a hot glue stick to reach it from the outside. To power it, it needed to connect to my computer via USB because the 9V battery was not working for some reason.