Final Project Tracker
Week 1: Initial Brainstorming
I want to try to incorporate the fabrication skills I learn in this class into my teaching, specifically through MIT App Inventor. I've taught many robotics-focused MIT App Inventor workshops for young students, and oftentimes, the students, families, or teachers want to get their own set of the hardware to continue the learning and exploration at home. However, many schools and families can't afford the LEGO Mindstorms we use (several hundred dollars each without all of the cool sensors and modular extensions). I want to see if I can make my own Wifi and/or BLE-connected robotic quadcopter set affordably, and if that works, I want to see if I can turn that into another lesson for the students.
I've built a few of my own quadcopters from a purchased set before, so I'm relatively familiar with the pieces involved. I think much of the challenge will be in programming the quadcopter to communicate with a mobile phone running MIT App Inventor in real time. MIT App Inventor also has an extension for communicating over BLE. Although it is not too robust, I plan to build upon it to increase its functionality.
Week 4: CAD and 3D Printing Initial Arm Design
I did some research into quadcopter designs and found that many makers had shared their quadcopter building experiences online. I found these sites particularly helpful:
- Propellers, Motors, and Multirotors for Quadcopters
- Tips for 3D Printing a Drone
- Example 3D Printed Quadcopter
In order to fulfill the "additive" requirement, I made the main support structure of the arm a hollow rectangular prism with lettering along all four sides. The top reads "ARM" to identify the part, the sides read "NATALIE@MIT.EDU", and the bottom reads "BUMBLE", which is the name of my quadcopter. The circular pocket for the motor was designed to hold a 6cm motor. The entire arm was around 21cm. Some screenshots of my STL are below:
I initially tried to print my design on the Lulzbot without any support material, mostly due to the uprint machine always being unavailable. This started off pretty reasonably:
However, when the Lulzbot tried to print the top "ARM" layers of the object, the filament starte to sag and create imperfect birdnest-like strands in the middle space of the arm:
The final design was fine from the outside, but I was dissatisfied with the mess on the inside. Some of the letters of "NATALIE@MIT.EDU" also sagged.
I went to lab several times to try to use the uprint 3D printer since it offers support material that can be washed away. However, the uprint was almost always already printing a job (as expected) and the timing did not match up for me to add my design to the pack. I finally got the 3D printer Tuesday night before class. Interestingly, the design started to bird nest after 2 layers. I noticed that there were a few clumps and strands of filament clinging to the bottom of the tool and asked for Dave's help. Dave showed me that the tip protectors seemed to be damaged and showed me how he changed them.
I plan to see how the print job turns out after class on Wednesday so that I can evaluate whether I should use 3D printing to create my quadcopter frame. As a preview to the final product, this is the toolpath for the filament and the support material on the uprint:
Update: I was very impressed by the result of the uprint. It took a little more than 5 hours to print and I soaked it in the support dissolving solution for 2 hours. Everything, including the inside hole portion, was almost completely clean. There were a few small pieces of support material that I had to pick off of the smaller letters on the side, but overall the design came out wonderfully. I did notice that this piece was noticeably heavier, duller, and smoother than the piece printed using PLA. This is probably because the ABS filament that the uprint uses is denser and has stronger material properties. I will need to do some stress calculations to determine the balance between structural integrity and weight for my quadcopter parts. A TA also suggested that I rotate the rod portion of my arm design so that the longer width is pointing down and the weights at either end can be better supported.
Week 9: Context Switch - Ornithopter with Alexandre Kaspar
Since Neil has mentioned several times in class that something like a quadcopter is a complex system that is likely out of the scope of this class for one person, I started a search for partners on the class GitLab. Alex said that he would be happy to work together and we met to discuss the project. We decided to make the flying/moving part of the machine an ornithopter instead of a quadcopter (ornithopters are generally a bit more easy to make).
My part of the group project is to make a system that can "see" via a camera sensor. Using machine learning through a mobile application, it will be trained to recognize specific features (for example, my face) and then drop a candy if it sees that feature. This will work as a standalone system that can do sensing, image recognition training, mobile interfacing through Bluetooth Low Energy on an MIT App Inventor app, and control some sort of object/candy loader/dispenser. The idea is for this system to sit on top of the ornithopter. The ornithopter would be able to fly around and take lots of varied training images very quickly. It would also need to position itself to drop candy on top of a target (or the candy dispensing system would just need to be able to react quickly enough for the candy to land close to the target). I was planning for the item drop to be either a Pez dispenser-esque spring-loaded system, a simple claw, or a magnetic field system.
I decided to get the Adafruit Miniature TTL Serial JPEG Camera with NTSC Video due to its ability to both take JPEG snapshots and stream NTSC video.