Jump to content

My autopilot: first phase ready (stabilization)

Recommended Posts


I've been working no my autopilot for a while. The idea is to create a unit that serves as stabilization (with thermophiles) and servo-controller. Input for this unit is the roll and pitch angle (right now using rc-transmitter). Input could also come from uart, so a wireless digital transmitter or another microcontroller (with gps connected) can steer it.

The whole thing runs on a PIC16F877 and was packed into only 2k code :-)

More information, photos and movies on my website: http://tom.pycke.be

Comments and suggestion appreciated!

Edited by tom
Link to post
Share on other sites

Nice work and good blog. I'm working on an autopilot myself and only have altitude control to test. Mine is purely GPS based though. I do have a 5DOF IMU which I originally intended to use but the autopilot works without the IMU so I'm going to keep it simple for now and work on the IMU separately.


Link to post
Share on other sites

My preliminary tests suggests that it will work - it won't be fantastically precise but should more or less work. The altitude does occasionally make big jumps when the satellite configuration changes and can produce up to 20m of change. The key is to be gradual with everything, rather than reacting fully and immediately.


Link to post
Share on other sites

Nice project :)

Will be ideal with the Intelligent Flight OSD, when example you get out of range, it can automatic come back home.

Later it could also be cool with planned waypoint navigation..

Also looked what sensors to use for autopilot,

and come up with Thermophiles and GPS for a *good* start,

ofcause more smart stuff can be added later, but will probaly fly well with just thoose sensors.

GPS is pretty good for Altimeter when you not making loops and bad things, hehe - just average everything and its get even better - A static/dynamic pressure sensor, can maybe also be used as a backup system.

Can i have a look a the source for the PIC, tom?


Link to post
Share on other sites

Hello Loopforever,

Right now I'm not quite sure what I'm going to do with all this... Release it as an open-source project? Try to commercialize it? Both? :-)

But in the mean time I'll be happy to help you out with any questions or issues you might have!

I just added another feature. When making sharp turns with a roll angle of like 35 degrees or more, the plane lost altitude. An aeronautics friend of mine explained me a simplified formula to tackle this:

The lost left because of the roll angle is proportional with 1/cos(roll). Some simple vector calculus shows that. Right!

The lift of a delta/wing is more or less linear with its elevator angle RELATIVE TO THE ZERO-LIFT POSITION. That zero lift position is the down-elevator position where the plane has no lift anymore. For my plane this is around -9° .

So (pseudo code, i'm still testing it :-) ):

elevator_out = (elevator_out + 9°) /cos(roll_angle)


Edited by tom
Link to post
Share on other sites
  • 2 weeks later...
  • 2 months later...
  • 5 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...