Arduino Controlled NeoPixel Trident :: Student Project
What better way to display your team pride than wielding a 6ft tall, NeoPixel blazing trident during the competition? Especially if you’re a member of the FIRST FRC Team 4296 “Trident Robotics”!
Mark Balla, a Mentor to the FIRST team, helped his team create this awesome Arduino controlled trident.
We asked Mark some questions about the project and here’s what he had to say:
Mark, why the heck did you build a 6ft tall NeoPixel filled Magic Trident?
“I wanted to create a project that would motivate students to do advanced things with Arduino. I also wanted to create an iconic symbol to represent our spirit and our brand for the team.”
How does your project work?
“The trident is made of polycarbonate tubes and sheets.”
The base is constructed from 2 polycarbonate tubes 1” ID x1.125” OD 5ft tube inside the 1.375” ID x 1.5” OD x 5ft outer tube. The .125” gap between the inner and outer tube allow the 4 LED NeoPixels strips to fit and run the length of the base.
The head is constructed of 12 sheets of clear polycarbonate. 8-1/8” sheets and 4-1/16th sheets all shaped to the head of a trident.
Material from various layers had to be removed to fit the components inside the head. There are also 2 Polycarbonate caps on each end designed to keep the base tubes concentric and mount the head they are 1.5” ID x 1.75” OD x 2”.
Finally for rigidity there is a .625”x.625” square polycarbonate tube that runs down the center of the head to the inside of the inner base tube.
The trident uses 12VDC NeoPixel strips of 3 RGB LEDs per pixel. There are a total of 70 pixels or 210 LEDs in the trident.
The Arduino Nano on the right side of the head controls the LEDs. It controls the LEDs by sending a pulse train out of a single output of the Nano. The right Nano also connects to a SD card reader where the LED patterns are stored.
The trident also uses 2 SparkFun 9Dof (degrees of freedom) IMUs(Inertial measurement units). One is mounted toward the top in the center prong of the head and the other is mounted down at the bottom of the base. These 2 sensors communicate to the Left Arduino nano via I2C.
The purpose of the sensors is to characterize the position and motion of the trident. The 2 Arduino nanos communicate to each other also through the I2C bus.
The goal of project is to display a stored light pattern from a detected motion profile.
Two examples would be:
- Point the trident to the ground and make a stabbing motion toward the floor and generate a light flash starting from the shaft to the tip.
- Point the trident up and rotate it about the z axis and create a tornado pattern with the LEDs.
The trident does this by using the Left Nano to characterize motion data that is receives from the 2 IMU sensors. When it detects a known motion pattern it send a string to the right Nano. The right Nano then applies that string to a lookup table stored in the SD Card and generates the matching LED pattern. “
What was your biggest struggle as you worked through this project?
“The fabrication of the trident was the most channeling part of this project. Space requirement made is extremely challenging for wiring and component placement.”
Did the project end up as you expected?
“The look of the trident came out as expected however we were not able to incorporate all of the functionality that we had hoped for as motion characterization was much more difficult than we had anticipated.”
Looking back on this project, what can you say you have learned about programming and/or electronics through the creation process?
“We learned how to control NeoPixels and communicate to IMUs and Arduino via I2C. We also learned how to read from SD cards.”
What type of Arduino board, Arduino clone, or Arduino compatible board does your project use?
2 Arduino Nano (but will be upgrading to Sam 32 bits next season.)
What types of components did you use in the design?
NeoPixels, Polycarbonate Enclosure, Motion Sensors
How do you power your project?
Was the training at Programming Electronics Academy able to help you build your skill?
“Yes. Thanks for your support of FIRST and my students have learned a lot from your videos.”
Anything else you would like to add about this project?
“This project will be evolving and improving every year we have many plans to upgrade and remake based on what every the kids dream up.”
More about Mark:
Mark Balla is an Automation Test Engineer, and Mentor for the FIRST FRC Team 4296 “Trident Robotics”. He brings decades of experience in electronics and programming to his FRC Team. Speaking of Trident Robotics, you can check out their website at http://www.team4296.org
Interested in FIRST? You can learn more about it here.