I am building a Quadcopter that can deliver a small payload (less than one KG) to a few hundred meters and return to its original position. I will test the drone in an open field. So I won't be doing any obstacle avoidance or any other complicated things.
I have bought 1000kv motors, 30A ESCs, frame, battery and propellers. But I am unsure about the flight controller. I came across this project which uses a few Arduinos. But since I don't need remote control, I am thinking of replacing the remote control part with a GPS+Magnetometer+Barometer based autopilot. The mentioned project uses a separate Arduino for the receiver. But since I already own an Arduino Mega, can I use the same Arduino Mega as both the flight controller and the autopilot (that will replace the receiver)? The Arduino Mega will be connected to all motors, IMU sensor, barometer, compass, GPS etc, read and perceive data from all sensors, apply filters, plan a route and control the motors, all at the same time. Is this possible for a single Arduino? or should I get a separate Arduino for the autopilot part that will collect sensor data, plan and then provide PWM or PPM signal to the flight controller Arduino.
My second option is to get a flight controller like CC3D and then use the already owned Arduino Mega to collect data from a GPS, compass and barometer and pass it to the CC3D. This method will cost me a little bit more, but if it's easier then no problem.
Which method will be easier to implement to achieve my goal, that is to test the drone in an open field?
Some extra details:
My idea for the drone is that 1) I will manually hard code the target coordinates into the Arduino. 2) Disconnect USB and connect battery. 3) Push a button on the drone that should command the drone to estimate its position and then go to targets position. 4)The drone will lower to a few feet altitude at the target position. 5) Push another button on the drone, which means the delivery is complete. The drone should now return to its initial position.
I know it sounds silly, but I am not a professional. So if anyone have any suggestion for improving any part of this process, please share it here.
Thanks.
Along with @Paul_KD7HB's hint about checking that your activities are lawful in your area (USA, e.g.: FAA and FCC, state regulations, local authorities &c.), you may want to consider:
that it would be insane and certainly illegal in the USA to build and fly this vehicle without the ability to completely control it from a distance usually by radio.
Therefor you, being sane and compliant, will too need some kind of "remote control".
Also:
Oh, yes you will: Everything involved in flying makes everything else not complicated. Srsly.
So, to conclude:
A. go with a real flight controller, CC3D is ancient history. Use Betaflight or another mature multi-rotor software "ecosystem".
A decent FC flight controller not need be expensive.
B. Get a real R/C receiver, again they are many and inexpensive.
C. Invest in a decent transmitter for remote control.
Or you on a long slog of reinventing the wheel and as I would quote whomever has been using it here, in danger of adding corners.
You haven't stated that you've actually ever flown a quadcopter.
Thanks for your replies. I have checked and apparently there are (currently) no laws about drones where I am from. But still, as I stated, I will just test and demonstrate it a few times in an open field. After that, I will probably add a remote control system and fly it like a normal drone.
Then forget the drone for now and build a box for the Arduino, the GPS and a 2 or 4 line LCD display., and battery. Do all the programming necessary to get the GPS readings you mentioned and do the calculations necessary and display the direction to move the box and just hand-carry the thing to the designated location. Push the button and follow the directions back to the starting point.
When that all works, begin on the drone.
Paul
Approaching a drone that is hovering a few feet off the ground and pressing a button on it to confirm 'delivery complete' sounds extremely dangerous, and you dont need to understand electronics, or even drones, for that to be obvious.
+1. Or more. I beseech (!) you to follow the advice offered above by @Paul_KD7HB.
I recommend you then get some experience building and flying a quadcopter independent of pursuing your billion dollar idea more ambitious experiments.
Careful selection of a kit and a few off-the-shelf items popularized by the quadcopter hobby community will leave you with parts (and knowledge) with direct applicability to the greater goal.
It is possible that you have not already wasted money on motors and stuff - perhaps you have enough to build a quadcopter by adding a flight controller and radio and transmitter… as said, all of which, if you get up on the curve a bit and get real gear, can be repurposed.
Flying this thing (however) without ever having flown anything yourself is stupid.
Flying this without means to control it remotely is stupider than stupid.