7 ms·
I'd still expect that we'll see something like a real time OS microkernel written in hardened C or Ada/Spark or kin with a standard suite of drivers to control
by ObviousScience 11y ago
I'd still expect that we'll see something like a real time OS microkernel written in hardened C or Ada/Spark or kin with a standard suite of drivers to control sensors, motors, etc.
Most of those kind of things get written as open source projects, and then compiled in to specific bundles by middle men who get certified by insurance companies to reliably choose and compile such bundles.
Big companies (eg, Boeing) will naturally still just use the open source microkernel tied together with a few in house drivers, since they have the capacity to deal with software certification themselves.
Really, I wish hobbyist drones would start having more functional co-processors, because I want one where the flight computer and the user land computer... aren't the same core.
- dharma1 11y agonormal linux kernel runs fine for realtime tasks when compiled with prempt rt flag - https://wiki.dronecode.org/_media/elc01.dronecode_and_ardupilot_-_andrew_tridgell.pdf https://wiki.dronecode.org/_media/elc01.dronecode_and_ardupi... and it's possible to do very intesive computation on the computer running the flight controller - Andrew does a demo where he flies while compiling the linux kernel on the same computer at the same time, no glitches :) And if you want a co-computer, it's quite easy - use any board you like, for instance Nvidia Jetson which has tons of GPU cores for paraller processing, and just talk to the flight controller via mavlink over ethernet
- ObviousScience 11y ago> it's possible to do very intesive computation on the computer running the flight controller - Andrew does a demo where he flies while compiling the linux kernel on the same computer at the same time, no glitches My point is that it's incredibly dangerous to build this as our default security model in drones, because while it's certainly the case that the flight controller has the raw processing power and if our security worked perfectly, it wouldn't be a problem we live in the real world and errors in userland execution shouldn't be able to break the control loop and send heavy toppling down on your head. Just because you're probably smart enough to do your taxes while you drive doesn't mean it's not safer if you focused on the road. > And if you want a co-computer, it's quite easy - use any board you like, for instance Nvidia Jetson which has tons of GPU cores for paraller processing, and just talk to the flight controller via mavlink over ethernet Yes, I expect that the model we'll see for consumer drones is something like a Kepler embedded module running userland, with a second, standalone ARM core running the flight controller (with the flight controller exposed as a device in userland, but talked to as a server on the wire). Probably with some kind of hardened RTOS on the flight controller, and Linux running userland OS. This has the benefit that controlling the drone is no different than lots of other devices we control, we can work in our usual operating system, and we get to perform a sanity check between userland and flight control execution.