Blog Home

Celebrate good grades with this Arduino-powered robot

Arduino TeamApril 10th, 2023

For some students, getting decent grades or even finding the motivation to attempt to do schoolwork is a challenge, and this is often met with incentives such as money, praise, or simply avoiding embarrassment. Adam Soileau of element14 Presents had the idea to build a robot, which is an incentive unto itself by playing music, launching confetti, and waving one of those inflatable car dealership arm-waving tube things when grades cross a predetermined threshold.

The first challenge Soileau was met with involved determining the best way to launch confetti. Due to the prevalence of party poppers, or mini confetti cannons, he chose to use a high-torque servo motor that could pull the string back. The audio portion of the project relies on reading music data from an SD card, outputting it via a digital-to-analog converter (DAC), and then amplifying the sound using an LM386 op-amp for the speaker. Finally, the wacky waving inflatable tube man is placed onto the fan in order to inflate it, while waving is done by toggling the fan on or off quickly with a MOSFET. An Arduino MKR Zero was employed to control each component due to its DAC and SD card capabilities.

Perhaps the most important aspect, retrieving grade data was done by harnessing Canvas’ web API through which assignment, quiz, and test grades can be programmatically accessed. Once collected, this data was then processed and stored in a CSV file so new grades could be compared to older ones. After an ‘A’ has been spotted, the system activates and rewards the student with the aforementioned confetti, music, and dancing. Detailed information about this project can be found here and seen in Soileau’s video below.

Boards:MKR Zero