The Autonomous Drone is my new motivator-project to do a little bit more after work hours. An overall idea is to build a drone which will be able to do couple different things.
First thing on my plan is purchasing a drone. This sounds easy but is not. DoItYourself drones need to be assembled manually, you need to carefully solder it and screw everything as manual says. Also it is good to plan what other parts you would like to equip your drone with. Like battery, flight controller, radio receiver, camera and many many more. And here it starts to be a little bit tricky. Drone need to be balance as best as possible and when you are assembling it you need to check if e.g. battery should be more on the back or maybe at front to balance the drone.
Second, ah silly thing but the drone will need to fly, finger cross everything is connected.
When will be able to hang in the air, just hover for couple minutes. I will start working on small WiFi controller.
Then drone firmware also will need to be extended with wifi controller code which will be able to understand wifi controller commands and transform it to real drone moves.
When all of this will be finished then will be a best time to start working on autonomous… Oh no, actually drone will need to be extended with some telemetry before autonomous. Will be extended with GPS module, accelerometer, gyroscope, distance sensors and probably couple more.
The one thing I haven’t yet found-out is how to measure drone displacement inside a room when there won’t be a GPS signal obtainable. Probably I will need to work on some anti-collision system.
Perfect, we have everything, we can finally start working on autonomous code? Assuming all above sensor are communicating with drone control unit and they are working correctly, y… maybe, but no…
Because, the second part of the project is cloud (Azure or AWS). All sensors data will need to be aggregated and pushed to Azure where some analysis will be done. I am planning to use cloud to correct my autonomous code based on analysis made. I am not yet sure how but I will find a way to do it. In sum it is always better to start collecting data from the beginning of the work on something then later without having view on full process from the start to ‘now’.
When it’s done, yes I can…! No, I can’t… I forgot about one more thing. On a windy day or with people in the room, drone could be randomly moved or even be turned over. And this displacement need to be included in real-time flying calculations to immediately make a correction on the flight plan.
Come on! Let’s do some work on autonomous code. Okay, okay! We can start now. Ah relief, happy days!
Autonomous part of the project will be the most complicated part but I cannot wait when I will start working on it. I have hope that above tasks will be finishes in next couple weeks/free weekends. So I could start coding as soon as possible!