Tuesday, September 10, 2013

Sunday, September 8, 2013

What do we want? Truth! When do we want it? Now!

Ground truth, that is.
I'm working on a vision-based gyroscope, in hopes of getting a really solid heading-hold on my quad, without the use of magnetometers. For prototyping purposes, I'm using Python and OpenCV to test the effectiveness of the various approaches I'm considering. To do that, I'll need ground truth data. I attached a coaster to the shaft of a hobby rc servo as a target, and mounted this assembly onto a piece of 2x6 connected one of these. The idea is that I can rotate the little disc in a known, repeatable way, then compare the known rotations to the output of my vision-based gyro program. Here's a diagram (because I love diagrams):

Here's some video of the thing. The program you see running on the screen is OpenCV's Lucas-Kanade tracker demo. The little green streamers are the feature tracks that the program is following :

Sunday, August 18, 2013

Arms Too Short to Box with God*

Controller yaw authority still isn't as good as it could be, so in the course of my experimentation I decided to try out shorter arms (less rotational inertia). Here's a view of the whole contraption sitting on the table. I moved the landing gear inward and attached pool noodle for padding. Nice, but this arrangement was very tippy on landing if there was any lateral motion at all. I didn't want to take the time to add little legs to the ends of the arms, so I inserted some square carbon fiber tubes that I had laying around into the pool noodle. Worked like a charm. Adds weight, but I'll worry about that after I've truly solved the heading hold issue:

Here's a closeup of the little spirit levels I've been using to verify that the prop shafts are aligned with the IMU on top. They tend to get out of alignment whenever the craft takes a good thump during testing: