Want to take your drone skills to the next level?
Completion of this course will put you in rare company, as we cover a wide range of topics all designed to unlock the knowledge of precision landing and drone delivery. Precision landing unlocks so many applications, from precision agriculture, to package delivery, and any other ‘drone-in-a-box’ application of the future!
However, on our learning journey we cover way more than just precision landing. We’ll get into some pretty advanced drone and camera simulation right on our computer, install a camera to our drone for computer vision applications, walk you through rangefinders and much more!
To really show off how precision landing is the key to unlocking advanced applications, our capstone project in this course is a drone delivery mission, where our drone delivers a taco to a waypoint!
So once you’ve mastered this course, you will be well equipped to build your own precision drone application, research project, or startup!
Who is this course for?
- Drone Hobbyists looking to take their skills to the next level
- Advanced college or post-grad students seeking a comprehensive reference for openCV scripting of drones
- Engineers interested in the rapid prototyping of computer vision drone scripts by leveraging the Gazebo simulator
- Those with ideas and drive but lacking the knowledge to create advanced autonomous drone applications requiring precision landing
- Industrious start-up hopefuls looking to build the next great precision ag or package delivery company
- Anyone interested in computer vision, simulation and robotics
Do I need a drone to follow along in this course?
You actually do not need a drone to get extreme value out of this course. This is because about 50% of all the material focuses on writing, testing and simulating our openCV drone scripts in the simulated gazebo world- right from your computer! About 40% of the lectures are dedicated to setting up physical hardware or flying real missions that we first staged on the simulator, and the last 10% we spend on theory and introductions to the myriad of topics in this course. So if you only have a computer, 60% of the curriculum still directly applies. Considering there is 8+ hours of video, that’s still a ton of information to digest!
If I wanted to follow along with an actual drone, what type of drone would work?
Any drone running ArduPilot that is set up with a companion computer will work to follow along with this course. See the 'How to Build a Drone' course if you do not have a drone but would like to build one.
What prerequisite knowledge do I need?
This course uses the material from the 'Drone Programming Primer' and 'How to Build a Drone' courses as a springboard into more advanced drone topics. Think of those courses as Freshman/Sophomore level, and this one as Junior/Senior level.
It is highly recommended that you have basic knowledge of drone software like ArduPilot, Dronekit, MAVProxy and Mission Planner before enrolling in this course, as we will not be re-explaining the fundamentals of these topics. This course also assumes you have basic drone skills and knowledge of basic hardware if you intend to follow along with an actual drone.
If you feel your knowledge is lacking in either the software or hardware departments, please consider enrolling in the fundamental classes before proceeding into this one.
Some highlights we cover in the course:
- Rangefinders and what they allow us to do
- Advanced 3D simulation of an ArduPilot drone in the Gazebo simulator
- Learn ROS basics
- Pair Gazebo simulator with ROS to simulate a camera attached to the simulated drone
- Access and process the simulated camera feed in a python script
- Learn about Aruco markers, what they do, and how they can be used with openCV
- Use the simulated camera feed with openCV to write airborne computer vision scripts that will influence drone flight
- Write a computer vision python script to command the drone to land on a target
- Obtain and analyze dataflash logs for diagnosing rangefinder and precision landing issues
- Install and calibrate a camera for a real drone
- Learn about advanced computer vision based precision landing with Aruco Arrays
- Write a script to perform an autonomous drone delivery of a taco
Caleb Bergquist feels very uncomfortable with writing about himself, but he hopes you will pretend to read the rest of this while thinking he did not write this himself, and not judge him for his self-bloviating autobiography camouflaged as a biography. He digresses. Caleb Bergquist has a BS in Chemical Engineering from the University of Tulsa, and currently works as a DevOps engineer at a software company by day. By night, he is a hobbyist/tinkerer in many areas, but has been magnetized towards all things drones, from hardware to software. The trend here is that there is no trend. I’ve.. I mean, he has spent much time binge-learning of the myriad of open source projects that are fueling the development of the drone space, and wishes to lower the barrier of entry to these subjects for those coming behind him. He wishes to do this by combining his experience as an instructor, with the democratization of the knowledge he’s accumulated on the fringes of new technologies.