The Party Bot Trailer from Alex Rand on Vimeo.
What It Does and How It Works
Our project is the Party Bot, which is a dancing speaker to be used at parties. It uses two connected Arduinos which can communicate over Bluetooth to control what music is played. The user selects a song using a potentiometer and sends the choice from the "master" Bluetooth module to the "slave". Once the bot receives the signal, it plays the corresponding file on an Adafruit Wave Shield connected to the Arduino that controls the robot. The robot dances according to several rules. First, it uses a Ping sensor to check to see how close the closest obstacle to it is. If it is too close, the robot will turn away from it. If it has room to maneuver, it will then read the level of light in the room using a photodiode. If it very dark out, the robot will drive forward until it approaches an obstacle, at which point it will turn. If it is bright, the robot will spin, randomly changing direction every few seconds. Initially, we tried to have the robot change direction based on the volume level from the speaker. After trying several iterations, we realized that the noise of the motors were so loud compared to the music that the microphone was struggling to differentiate between the background noise of the motors and the music itself. We also wanted to have LED strips running along our robot, to act as a strobe light, but it required 12V, which we didn't have.
What We Learned
On the technical side, we both learned more about how Bluetooth modules communicate and are paired. The code for the Wave Shield was new, and parsing the libraries and examples to find code that would work for our project took a substantial amount of time. We also learned more about working in a team on a time-consuming, technical project. It was sometimes difficult to find time when both of us could meet due to labs, other assignments, and other time commitments, but in the end, we were able to compromise and dedicate a great amount of time together on this project.
What's Next
Potentially, we could further develop the Bluetooth software and allow for the robot to sync with someone's phone or iPad, from which they could use Spotify or another application to stream music through the robot. We could also enhance the aesthetics of the robot and make the design cleaner and more eye appealing, since this product was designed to be used at parties as a cool device. Another modification we hope to make is to vary the amount of dance moves the robot has. Instead of only spinning on of the robot's wheels through digital communication, we plan to add a different combination of speeds for each wheel by using an analog communication. Because the Wave Shield used up all of the analog pins on the Arduino Uno, we may need to upgrade to a larger version of the Arduino, such as the Mega, to accomplish this. We could also find LED strips which can be used with 5V, or use individual LEDs to create a disco-like effect.
The code for our project is included in the photo gallery
Log in or sign up for Devpost to join the conversation.