Superspot is a robotic dog capable of receving and executing audio commands developed by myself, Audrey Renaud (MechE '27), Shauna Sperou (MechE '27), Luca Odio (MechE '27), and Karis Moon (Engineering with Computing '27) for our Principles of Engineering final project. Personally, I designed and built the electronic system, as well as wrote all arduino code, while Audrey, Shauna, and Luca worked on mechanical design, and Karis built our website.
Superspot is equipped with an Arduino R4 Wifi and hosts it's own server. A user on the same network can use our website to send the following voice commands:
"forward", "backward", "sit", "lay down", "stand up", "paw", "nod", and "heel".Technical Components:
Electrical Systems: SuperSpot runs on an Arduino R4 WiFi, paired with an Adafruit Motor Shield to drive four DC gear motors for the wheels. Six additional servo motors control leg joints, the neck, and jaw. Power is supplied by a 12V lithium-ion battery, stepped down for lower-voltage components. An HC-SR04 ultrasonic sensor handles obstacle detection. The Arduino listens for HTTP commands and actuates motors and servos accordingly.
Mechanical Systems: Superspot is supported by 3D-printed PLA components including angled legs, a modular torso, a rotating neck, and a functional jaw. Each leg is driven by a gear motor and shoulder-mounted servo, allowing full-body gestures like sitting or shaking. The jaw is magnet-equipped for picking up a TPU ball designed specifically for fetch behavior.
Computing Systems: The Arduino R4 acts as both controller and server. It interprets HTTP requests triggered by voice commands and routes them to motor/servo routines. The firmware handles everything from movement to gesture sequencing, with RSSI-based logic for proximity-based “heel” behavior.
Personal Contributions:
As the team's electrical and computing engineer, I designed and integrated the electrical systems. My individual contributions include:
- Chose electrical components such as the battery, Arduino/motor shield, and appropriate sensors. Wired/soldered the components together to allow proper distribution between the ten motors.
- Wrote a single-page application using a combination of HTML, JavaScript, and CSS that made calls to the SpeechRecognition API and updated HTTP commands accordingly.
- Wrote code hosted on the Arduino to read server endpoints and perform actions accordingly. Used Bluetooth RSSI to perfect the "heel" command. All other actions were hard-coded via trial and error.