A continuation of my ENPH 459 project, I am working on a 4-person team to design and build an autonomous kite power generation system. This project was originally inspired by a presentation by Saul Griffith on TED (seen here). Check for updates below. See here for more on the how Kite Power works.

Our Idea

After building a kite controller that was designed to fly in the air with the kite last semester (see here), we decided to redesign it to be ground based. This simplified the controller and allowed us to spend more effort on developing algorithms for autonomous flight and building a first prototype power generation system.

To fly the kite autonomously we need to know a few key things:

  1. azimuth
  2. elevation
  3. heading
  4. speed

We have decided to collect this data using image processing of video feed from a ground based webcam. The advantage of this method is that we don't need to mount any sensors on the kite and risk having them fall off while in flight. Also the sensors required cost much more than a webcam. Since webcams don't have a very large field of view (FOV), we have decided to use a servo-controlled pan/tilt system to move the webcam such that the kite is always in frame.


February 27, 2013

Kite Tracking Webcam - Test 1

A quick video from last week where we tested our webcam tracking system.

February 21, 2013 

RC Testing 

Today we had a great day of testing. The wind was between 10-15 knots. We had some good runs with our KCU (Kite Controller Unit). Our webcam tracking worked quite nicely and we got some more good force data. Below is a video of us flying with the KCU, controlled via a joystick. I'll post some more videos as I get them uploaded to youtube.

February 16, 2013

Force Data Collection Day 2

With our new rig we went out to collect some more accurate force data from our kite. Below are some pictures and results. The wind speed was ~8knots and we were using a 7m2 kite.


February 4, 2013 

Force Data Collection Day 1

Last Thursday we went out to collect some data on how much force is generated by our kite to help us spec a suitable generator/motor. With our not so accurate setup (see video below) we were able to get readings >200 lbf in a 8 knot wind. We have since designed a digital force measurement unit that streams data over serial to a PC. Just waiting for a windy day to get out again and get more accurate data.


January 24, 2013

New Power Gen Drive Train

Our latest power gen setup. The hardware was adopted from another Eng Phys student project, who's sponsor generously allowed us to use for our prototyping. This heavy duty setup should allow us to run in strong winds. It has a chain drive but we will probably swap it out for a timing belt. We also need a new shaft for the kite spool.


January 22, 2013

The Green Machine...

The latest addition to the team. Generously donated by Bivouac West. It has a flat bed in the back so we will be able to mount our generator unit and drive to areas with more wind for testing.

Green Machine

January 4, 2013

A new year a new UI.

I have begun porting over our kite control software from Open Frameworks to the Qt framework (see both below). Qt is nice, since it has a native look on all operating systems and it is much faster to layout gui elements and change them as needed. Also, it uses C++, so it was easy to incorporate OpenCV for color tracking.

Kite control software gui (made with Qt)
Old kite control software gui (made with Open Frameworks)

December 5, 2012

Power generation.

We built a small prototype power generation system to hook up to the kite (see below).  It consists of a large spool (where the center line of the kite attaches to) which turns a generator through a v-belt drive as the kite is pulled back by the wind. Currently we are using a geared stepper motor (that we had around the lab) as our generator until we buy a proper generator (most likely a brushed DC motor). An encoder is mounted on the main drive shaft to track the amount of line let out and rpm of the shaft. In future versions the v-belt drive will probably be replaced by a timing belt to provide higher efficiency. However for testing purposes a v-belt drive is nice because it is easier to install and has built in over torque protection since it is able to slip unlike a timing belt.

Drive train and generator prototype v1
Power spool encoder

November 23, 2012

Colour tracking with a pan/tilt servo webcam!

The pan/tilt brackets came in today and I implemented a basic tracking system based on a desired colour.  In this case it was blue (since there is a big blue bouncy ball in the lab). Below are two videos showing the camera tracking the blue ball as I move it around. The first video shows what the camera sees, and the second shows the camera and pan/tilt mechanism in action. I also 3D printed a small bracket to attach the mechanism to the Kite Controller Unit. I am using Open Frameworks on OpenCV to do the image processing and UI.

November 15,  2012

Here are some photos of our current set-up.

This photo shows our ground-based Kite Control Unit (KCU). We have put all the electronics inside a waterproof housing so we can test in the rain. The spools and encoder mounts are made using a 3D printer.

The following two image show a close up of the spool and encoder mount.

Some screen shots of our TouchOSC (iPhone) control interface that we use to fly the kite remotely. The data from this app is sent over WiFi to a host computer running an Open Frameworks app that relays the data via an XBee to our KCU.

November 11,  2012

A video of our upgraded algorithm for colour filtering and tracking of (x,y) position. To learn how to setup openCV and do some basic colour tracking click here.

November 5,  2012

After going through a few iterations of developing a inertial sensor unit to mount on the kite I decided to use image processing to detect the position/orientation of the kite.  Using openFrameworks and openCV I was able to apply a color tracking filter to some video footage we took while manually flying our new kite.  Below is a short video showing the results.  The feed on the right is the filtered video and on the left I am using the openCV contourFinder() function to locate the position of the kite based on the filtered data.

September 25, 2012

Our first time out testing our new kite. It's a 2008 7.5m Naish Boxer SLE.  It handled very well even in light wind (it was about 8 knots).  I'm looking forward to testing it out with our kite controller.