So according to cuno and co NetMF is a viable processing platform for a quadcopter. I was worried about the GC and it looks like as long as I’m really careful about allocating memory (strings, buffers etc.) I should be okay. It will be like writing code for embedded micro controllers (V25 & HC11) in C not long after I left university,
Have also been reading up about proportional-integral-derivative controllers (PID controller) here and building a basic C# implementation.
Next step some PWM code for interfacing to my Turnigy Multistar 10 Amp ESCs. I wonder if my larger scale quadcopter will cause any issues?
When I first saw your post, I thought maybe Raffaello and his team are using the PID algorithm to control their quadcopters in this video (http://www.ted.com/talks/raffaello_d_andrea_the_astounding_athletic_power_of_quadcopters.html). But after a little digging (http://www.flyingmachinearena.org/wp-content/uploads/2012/fma-publications/Aggressive%20ManeuversIterativeLearningControl.pdf), it looks like they are using ILC: Iterative Learning Control? I haven’t explored the differences yet, but they look like they have similar aims. Definitely useful algorithms in the future of autonomous robots.
The video is quite impressive, my nano quad isn’t anywhere near as stable and is quite sensitive to mechanical issues like propeller damage from crashes.
My trial C# code for the NetMF quad was “inspired” by the code for my Crazyflie Nano Quadcopter. Some of the C idioms used didn’t work well in C#.
For another project I’m doing a basic PID implementation for heading control with compass & robotas a teaching/learning exercise.
I will have a look at the pdf over the weekend.