Archive for the ‘Flying’ Category

Spyder Prototype #3

Monday, July 12th, 2010

I’ve started working on the flying thing again, and I almost have the flight software to the point where I’m happy with it.  It still needs a little tweaking, but in general it’s much more stable than it’s ever been, and it’s still very agile.

I ditched the Kalman filter and went back to basics, using simple integer math and a single 3-axis gyro.  It won’t auto-level itself, but it’ll stay where I put it remarkably well, and that’s all I really wanted.  Check out the video of my first crash:

http://www.youtube.com/watch?v=EjvJLm725h0

The slow march of progress

Monday, June 29th, 2009

I haven’t posted anything for a while, but that doesn’t mean I haven’t done anything.  I’ve been fairly busy, actually.  I built myself a computer controlled router and have started modeling the body of the flying thing I’m trying to build .

Learning to use the machine has been entertaining - there’s quite a lot to it, and a decent learning curve to the software and just producing something in general.  Having a machine to cut stuff doesn’t automatically give you the ability to make things.  It helps make them a little faster and more accurately, but you still have to work out how to build the things in the first place.

The reason for building the machine was so it could cut out parts while I’m going through the physical prototyping phase the Wolf Spyder.  Hopefully I’ll have more to post soon.

Spyder Prototype #2 update

Saturday, October 25th, 2008

I’ve done a few more iterations on the software for the quad rotor thing I’m working on.  I also switched to very light 3-bladed props to allow the motors to respond a little faster.  It doesn’t fly itself yet, but it’s much more stable.

Flight video #2 here (WMV, 56mb) or on YouTube

Wolf Spyder Prototype, take 2

Sunday, October 12th, 2008

It’s been a really long time since I’ve done any work on my quad-rotor flying thing.  I got re-inspired after playing around with a new-ish PIC chip called a Propeller, made by Parallax.  It runs 8 hardware threads at 20 MIPS each, meaning you can do really sensitive timing code without interrupts, but do lots of other useful things at the same time.

This is a perfect chip for a project that needs to listen to a remote control, take gyro readings, and move servos all at the same time.  It does lots of other cool stuff too, like generate video, which is incredibly useful when debugging.  :)

So I got a 3-axis accelerometer, a dual-axis gyro, a 12-bit ADC, and stuck them together with a Kalman filter and some PIDs.  Mix gently and let simmer for a month or so, and voila!

I present flying object #2 (WMV, 48mb), or on YouTube

The software is currently keeping it (somewhat) stable, but within a few more iterations on the software I hope to have it self-levelling.

Tiger Flight

Saturday, November 25th, 2006

I’ve had my Tiger 50 for a while now, but haven’t managed to get any decent video, until now.  This was shot by a friend of mine this afternoon.

Video: Tiger 50 flight (WMV, 29mb)

We have liftoff - Part 2

Saturday, November 25th, 2006

So I’ve now had a little more time to fly this thing, and have sort of gotten the hang of it.  I took the Spyder prototype out to a field I fly my big helis at and got my friend Brady to shoot some footage.  The wind was blowing pretty good, so I was nervous, but decided I’ve give it a shot.

Video: Spyder prototype flight test #2. (WMV - 23Mb)

So now I’m working on the non-hovering flight part.  For this I need wings.  Hmmm…  Where’s my saw?

We have liftoff

Thursday, November 23rd, 2006

So it’s still rough, but I got most of my code moved over to the new chip.  I haven’t got the motor servos on yet, so there’s a chunk of code that mixes rudder into the speed controls to torque the thing into a spin.  It seems to work, though the torque effect is pretty small.

Check it out: first video. (WMV, 2.5mb)

I had just gotten the code finished, and it was starting to get dark.  I wanted at least one flight attempt in, and didn’t have much time to tweak it.  It didn’t land well, though nothing serious happened.

Here’s a shot of the current setup (the heli canopy is for orientation) and a close up of the main board.

More as it happens.

Electronics = pain

Wednesday, November 22nd, 2006

Well, at least for me it does.  I’m a software guy, and I’m sure there are things that every electronics guy with at least 4 brain cells remembers in his sleep that I’ve never heard of.  Things like ‘decoupling your power supply’.  That one cost me a few days, and a dead chip.

It’s all better now though - I’m learning pretty quickly, and have my new chip on a new board with some support crap, including a little LED display, a button, a knob, and a place to hook servos up.  I’ve got it reading my R/C receiver output with ~10 bit resolution, and I can produce the exact same output signals.  I wrote code to produce servo outputs in pairs, so each servo costs a max of 1ms.  This is handy when you’re controlling 14 of them, and your R/C receiver takes (worst case) 12ms to give you 6 signals.

I’m still over my 25ms budget - Just barely, granted, but enough to be worried.  See, servos need to hear from you about 40 times a second to keep them happy, which is 25ms between pulses.  My plan for the final version is to output all servo signals more or less at once.  It’ll be a bit of work, but I think I can do it.

I also bought some crap at Home Depot and made metal frame with landing gear.  I still have to make a place to put the electronics, but I’m not too worried about that.  The landing gear have a little spring to them, and the whole thing is screwed together, so it should be much more sturdy than my balsa version.

I have to write a little bit more support code, and then I hook up the gyros again.  Yeehaw.

New Toys

Saturday, November 18th, 2006

My new chips, resonators, and other bits have arrived, and I’ve started wiring it all up.  It’s not much to look at, but it’s a cool unit.  I bought a handful of 20MHz resonators to use with the new chips.  At 4 clocks per instruction, that’s 5 million instructions per second.

Turns out these chips have a thing called a PLL (Phase Locked Loop) inside them, which multiply your clock by 4.  The chip is rated up to 48MHz, so with the PLL enabled, and a ‘divide by 5′ in the oscillator settings, I’m running a full 12 million instructions per second.

The sad part is: At this point, all that power is being used to blink a pair of LEDs.

You gotta start somewhere.  As I said, it’s not much, but I’ve got the in-circuit programming interface done, so I can leave the chip in place to program it.  I also managed not to burn anything while soldering it all into place, which is a new ability.

Hopefully soon it’ll do more than just blink.

The Spyder Crawls…

Wednesday, November 8th, 2006

On Monday all of my motors and motor controllers arrived, so I went out and bought some balsa & basswood and worked up a really simple frame to put things on.

Then I wired up one of the controllers to find the rotation direction of the motors, plugged the battery in the wrong way, and heard a fairly loud, brief, pop.  A little smoke rolled out from behind the shrink-wrap, and I swear I heard it whimper.  This was around 3am, and was the most compelling evidence up to this point that I really needed to go to bed.  (Right after I ordered another motor controller)

Today I wired up two of the remaining controllers to the brain, and wrote the code to mix the aileron and elevator channles into the motor thrusts when hovering.  It went so quickly it was almost a letdown.  I’ve now successfully hovered (and steered) the rear half.

I think the only piece of the puzzle that’s left (and it’s a big piece) is adding in the gyro contributions.  I already have valid readings from them, it’s just going to be a matter of keeping track of how fast I’m moving and in which direction, deciding where I actually think I should be, and feeding the difference into the aileron and elevator inputs.  Sounds simple enough, right?