Introduction: 3D Printed Quadcopter
This amazing looking device is a quadcopter that was designed by me and my team at the University of Victoria. The project built completely from scratch using 3D printed parts, some cheap electronics, and a modified version of the AeroQuad software. The purpose of the project was to create a DIY quadcopter for under $200 and push the limits of what the 3D printer in our laboratory can do. You can see the full project page here.
Step 1: Components
The goal of our design is to keep the parts relatively cheap (under $200) and light enough to allow 3D printed parts. Our quadcopter design consists of four main components:
Rotors - Brushless DC motors that can provide the necessary thrust to propel the craft. Each rotor needs to be controlled separately by a speed controller.
Frame - The structure that holds all the components together. These parts are all 3D printed so they need to be designed to be strong but also lightweight.
Prop Guard - Styrofoam structure around the props to protect the device in the event of a collision.
Microcontroller & Sensors - The Arduino microcontroller loaded with a 9 degree of freedom sensor from sparkfun. This allows the quadcopter to adjust for stability during flight.
Step 2: Rotors
For those of you who are looking for an easy way to calculate the power requirements for your RC device, you should check out the online calculator eCalc. It's an amazing tool that helps you decide what components to purchase depending on the payload that you want to carry. For our project we chose the 1900 KV HobbyKing Outrunners because it best satisfied our criteria for power, weight, and price. If you attach an eight inch diameter propeller to each of the motors you get around 270 g of thrust per rotor. This is more than enough thrust to lift the frame and the small lithium ion battery that powers the quadcopter. Make sure you buy the counter-rotating to counteract the torque effect of the props.
Step 3: Frame
We created the quadcopter frame’s using the makerBot Thing-o-matic 3D printer. The printed parts are made of ABS plastic; the same material used for Lego bricks. The components of the frame were printed separately and then later assembled together using interference fits and screws. Some of the parts had to be printed diagonally because they were too long to be printed on the platform. The total weight of our quadcopter frame turned out to be 176 g. You can get these parts from my thingiverse page.
Step 4: Prop Guard
For the safety of the craft and of those around it’s flight zone, we wanted to build some sort of protector around the quadcopter. The CAD model that was drawn for the Styrofoam protector was converted into a template which was then used to trace the lines where the Styrofoam needed to be cut. The circles and curves were cut using a custom made compass device with a Styrofoam cutter attached to the end.
Step 5: Mechanical Assembly
Assemble the parts
Step 6: Electronics & Software
The 9 Degrees of freedom sensor stick (9DOF) contains 3 sensors: an accelerometer, a gyroscope, and a magnetometer. Each sensor can be communicated with using I2C from analog pins 4 and 5 on the Arduino Uno. We powered the sensor stick using the 5 volts out available on the Arduino Uno. I2C also requires pull-up resistors on the data (SDA) and clock (SCL) buses. We used two pull up resistors soldered to the 5 volt output of the Arduino shield and SCL/SDA. To prevent the sensor from receiving too much noise during flight, the sensor was soldered to an Arduino ProtoShield on the pins. The other end of the 9DOF was glued to the shield. The source code for the project is based on the AeroQuad software and can be found here.
Video
Step 1: Components
The goal of our design is to keep the parts relatively cheap (under $200) and light enough to allow 3D printed parts. Our quadcopter design consists of four main components:
Rotors - Brushless DC motors that can provide the necessary thrust to propel the craft. Each rotor needs to be controlled separately by a speed controller.
Frame - The structure that holds all the components together. These parts are all 3D printed so they need to be designed to be strong but also lightweight.
Prop Guard - Styrofoam structure around the props to protect the device in the event of a collision.
Microcontroller & Sensors - The Arduino microcontroller loaded with a 9 degree of freedom sensor from sparkfun. This allows the quadcopter to adjust for stability during flight.
Step 2: Rotors
For those of you who are looking for an easy way to calculate the power requirements for your RC device, you should check out the online calculator eCalc. It's an amazing tool that helps you decide what components to purchase depending on the payload that you want to carry. For our project we chose the 1900 KV HobbyKing Outrunners because it best satisfied our criteria for power, weight, and price. If you attach an eight inch diameter propeller to each of the motors you get around 270 g of thrust per rotor. This is more than enough thrust to lift the frame and the small lithium ion battery that powers the quadcopter. Make sure you buy the counter-rotating to counteract the torque effect of the props.
Step 3: Frame
We created the quadcopter frame’s using the makerBot Thing-o-matic 3D printer. The printed parts are made of ABS plastic; the same material used for Lego bricks. The components of the frame were printed separately and then later assembled together using interference fits and screws. Some of the parts had to be printed diagonally because they were too long to be printed on the platform. The total weight of our quadcopter frame turned out to be 176 g. You can get these parts from my thingiverse page.
Step 4: Prop Guard
For the safety of the craft and of those around it’s flight zone, we wanted to build some sort of protector around the quadcopter. The CAD model that was drawn for the Styrofoam protector was converted into a template which was then used to trace the lines where the Styrofoam needed to be cut. The circles and curves were cut using a custom made compass device with a Styrofoam cutter attached to the end.
Step 5: Mechanical Assembly
Assemble the parts
Step 6: Electronics & Software
The 9 Degrees of freedom sensor stick (9DOF) contains 3 sensors: an accelerometer, a gyroscope, and a magnetometer. Each sensor can be communicated with using I2C from analog pins 4 and 5 on the Arduino Uno. We powered the sensor stick using the 5 volts out available on the Arduino Uno. I2C also requires pull-up resistors on the data (SDA) and clock (SCL) buses. We used two pull up resistors soldered to the 5 volt output of the Arduino shield and SCL/SDA. To prevent the sensor from receiving too much noise during flight, the sensor was soldered to an Arduino ProtoShield on the pins. The other end of the 9DOF was glued to the shield. The source code for the project is based on the AeroQuad software and can be found here.
Video
31 Comments
7 years ago
which propellers should be used for the motor having threads of M3*1
7 years ago on Introduction
Did u create the assembly model in solidworks..if so can i download the pdf which explains the steps to create it in solidworks (am a pro user)
8 years ago
How much weight can it carry?
8 years ago on Introduction
which propellers did you use? do they need to be forward & reverse?
8 years ago on Introduction
Propellers create their own lift killing drag when they spin. You can kill off that drag and improve your thrust efficiency by reducing the clearance between your rotor blades and the prop guard.
8 years ago on Introduction
May i ask what 3D printer you have?
Reply 8 years ago
This was way back. We used the makerbot thingomatic
Reply 8 years ago on Introduction
nice. thank you for replying. I have a printerbot.... i was thinking on geting that one
8 years ago on Introduction
This is awesome! Next project for me... Why did you choose styrofoam instead of printing the prop guards? Weight factor? Props (pun) on the print!
Reply 8 years ago
We used Styrofoam mostly because of the size limitation of the printable parts. Styrofoam is also indeed lighter.
8 years ago on Introduction
cool.how many RPM motor can i use anyway.
Reply 8 years ago
Check out this online calculator: http://www.ecalc.ch/indexcalc.htm
8 years ago on Introduction
What software did you use for the video in step number 5?
Reply 8 years ago
I used motion analysis in Solidworks
9 years ago on Introduction
Could you please post a bill of materials for the quadcopter parts you used?
9 years ago on Introduction
Have you experimented with thinner or lighter frames, how long is the fly time
Reply 9 years ago on Introduction
This was our first quadcopter so we have not tried any other frames. One group in our class tried fiberglass but it didn't turn out too well. I encourage you to experiment! Flight time for our device is about 2 to 3 hours.
Reply 9 years ago on Introduction
My calculations give you about 20 munities of fly time. Dude that is nice! I don't know your total weight , nor do I know you electronic set up, but I can assume you get even more out of that by not having to ride on the throttle. 2.5 hours seems unlikely but I trust you :) nice. I am current printing my own frame hoping to be 1/2 of what yours is by not printing the wing guards
Reply 9 years ago on Introduction
Good luck with your project. I might have over estimated the flight time. When we were debugging the device, a single battery would last us more than 3 hours. But that's with frequent stops though.
9 years ago on Introduction
If you dont mind me asking, what speed controllers did you use?
About the battery, was it a 30C you used and did you need to install anything to ensure the LiPo battery didnt overcharge/completely discharge?