Objective
The goal of this project was to create an interactive decoration for the Whaat!? (alternative games) Festival at the ATLAS Institute. While the materials and interactions were simple, the decoration lasted for the entire event
GitHub Project Repo:
https://github.com/tranjames267/alt-arcade-interfaces/tree/main/shookBats
The initial Idea
I wanted to create a garland of origami bats that would "flap around" in reaction to the presence of people. To prototype the initial concept of my garland, I built a circuit using an Arduino UNO, a MG90s servo motor, and an ultrasonic sensor. The ultrasonic sensor would sense proximity by sending out ultrasonic pulses and detecting the reflected wave from an object. Then, the servo motor would disturb the garland of bats by repeatedly moving between 0 degrees and 90 degrees at a rapid speed. Compared to the SG90 servo motor, the MG90s can achieve more precise movement at a faster speed, but it is confined to 180 degrees. In other words, it cannot make full rotations.
To code up the ultrasonic sensor and learn how it worked, I referred to this documentation, which was super helpful: https://howtomechatronics.com/tutorials/arduino/ultrasonic-sensor-hc-sr04/
Schematic of the initial prototype circuit
After building my circuit, I crafted a garland with a single bat hanging on it as a proof of concept. The main string of the garland was a piece of yarn, and I attached it to the servo motor by tying it to a wooden dowel piece, hot gluing the dowel piece to a servo arm, and then attaching the servo arm to the motor. To fold the bat, I just followed the video tutorial below. Then, I used a bead and thread to hang the bat on the main garland string. In order to test the prototype, I taped the garland to the edge of a table.
A folded origami bat
Refinement
With my initial prototype working the way I wanted, I folded several more bats and created a single garland with one MG90s servo motor. I also tied the ends of the garland to some malleable wire coils so that I could easily tape or hang the garland in a variety of spots. My intention at this stage of the project was to test if the servo motor would be strong enough to shake 6 bats hanging on the garland as opposed to the single bat from my first prototype.
Here is a sketch of how I envisioned the garland to look. In terms of the setup, I wanted the ultrasonic sensor to be located at people's feet (below the garland) so that it would be less noticeable. Therefore, if people walk by the garland, they would be pleasantly surprised when the bats suddenly start shaking / flapping.
The garland hung on the side of a table for testing
Seeing that the servo motor could handle and effectively shake a garland of 6 bats, I decided to add another servo motor into my circuit and create another garland to go with it. As I tested my new circuit, I noticed that one of the motors struggled to rapidly move between 0 and 90 degrees. This was because my Arduino UNO was connected to my computer and was therefore providing my circuit with only 5 volts of electricity. After plugging in a 9 volt DC power supply into my Arduino UNO, both of the servo motors moved the way I intended. To my surprise, the noises the servo motors made had a decent resemblance to that of bats.
A schematic of my circuit with two servo motors
Building an Enclosure
In order to hide my electronics from view, I laser cut and assembled the pieces for a cardboard enclosure (which was basically a box). This enclosure containing the ultrasonic sensor would be located at people's feet, and two long ribbons of wire would connect the servo motors to the Arduino UNO inside. The long wires allowed me to position the bat garlands away from the main circuitry.
A sketch of the enclosure
The finished cardboard enclosure with circuitry inside
Front of the enclosure with the lid opened
Back of the enclosure with the lid opened
The circuitry arranged inside of the enclosure
The bat garlands were hung on a curtain at the festival. I used binder clips to secure the ends of the garlands and glued a binder clip to each servo motor.