After my proof of concept of a Lego autopilot a couple weeks ago, the hard work began. First thing was to find an appropriate “avionics platform”, AKA a good-sized R/C airplane. We settled on the Electristar .40-sized trainer, which seemed to have the right balance of stability and equipment compartment size.
The HiTechnic guys had seen my previous post on my plans to build a Lego autopilot and kindly FedExed me a prototype of the gyro sensor. I’d been using a tilt sensor as a stand-in, which actually worked quite well. But programming the Lego servo to smoothly track the tilt sensor position readings had taken me and the nine-year-old all the spare time we had this weekend. The gyro sensor introduces another level of complexity (albeit a necessary one to handle the unpredictable gusts and bumps of real flying), and that’s going to take us a few more weekends to figure out. So in the meantime, we turned to the mechanical side.
Adapting the autopilot to fit turned out to be pretty easy–just a few holes in the equipment floor of the plane to bolt down the Lego base pieces. It all fit together freakishly well:
The Lego equipment adds about a pound to the plane’s weight. That probably won’t be a problem (the weight is right at the center of gravity and the plane has power to spare), but just in case, I switched the plane’s batteries to Lithium Polymer, which provide even more power at a pound less weight than the standard NiHM. It’s now got plenty of juice to support even more avionics to come (GPS, video, radio backchannel, etc).
For you Lego Mindstorms geeks, here’s the instruction page for the prototype gyro sensor (click to enlarge). Next weekend I’ll post about the programming necessary to make a real autopilot, and why you might want to consider alternatives to the basic block-based Mindstorms visual programming environment. (Short answer: if you want to do anything remotely complicated, the Mindstorms visual approach turns into a sprawling mess.)
[This post originally ran in March, 2007]