Hi all, I’m a Junior in college studying CS, and I’d like to make drone software development a job one day. To that end, how do I start? I’m moderately comfortable with C but have no experience with electronics. I recently found this project based textbook (cited at the end) to follow but the first step suggests learning vector based graphics through MATLAB and is just overall incredibly dense. Why animate in MATLAB when unity exists with existing functions for displacing an object?
I’ve been attempting to learn on my own for the past 3 years with little to show for it, and unfortunately my college is not full of likeminded students to bounce ideas off of. Should I keep trying to wrap my head around the textbook or is there a better way to learn this material? Any guidance is appreciated.
BEARD, R., & McLAIN, T. (2012). Small Unmanned Aircraft: Theory and Practice . Princeton; Oxford: Princeton University Press. doi:10.2307/j.ctt7sbc4
I’d suggest starting by playing with ArduPilot’s SITL (Software in the
Loop). Minimal outlay for cash-strapped students
Appropriately set up you can step through the code which is flying real
Once you’ve got a test setup, start to pick off some of the “good first
issue” issues. Work up to the gnarly ones…
MATLAB and unity aren’t the same things … You should look on your search engine about what is call the simulation gap.
Unity is a video game engine, it will simulate and environment according to some math rules with a fixed accuracy. But you could also cheat and represent the drone as a point and move a 3d model that looks like a drone. It will be pretty but really far from the reality : That the simulation gap. Simulation is about data and not 3d visualization.
On the other side, MATLAB (MATRIX LABORATORY) is a matrix calculation engine. This allow to make efficient matrix calculations to represent a drone considering all it parameters and the environment. The display side can be ugly but the model representation will be closer to the real vehicle.
If you want to start on drone, as Peter said, start by trying the simulation we provide on ArduPilot ! That is already a complex example but that would give you good idea on how everything is done.