Home Projects Kite Building a rig for Kite Aerial Photography (KAP)
23 | 02 | 2012
Building a rig for Kite Aerial Photography (KAP)

Powersled L 3.0 kiteSome time ago I bought a Powersled kite (pictured right), a medium sized, single line lifter kite. It's a great kite with a considerable pull, and I decided to take advantage of that and build something to lift a digital camera up high to take aerial panoramic photographs.

This article describes the build of a so-called 'AutoKAP rig': a rig that holds a digital camera, programmed to perform an automatic sequence of panning, tilting and picture taking without intervention from the ground. The idea is to take the kite and the rig to a place of interest and then make a bunch of aerial photographs (and hope that some are not too blurred).

Mechanical build

The rig

close-up of tilt servo mountAfter some research on the interwebs I found that most KAP rigs use a 'double U' construction: the top U (bracket) is suspended from the picavet and is the mounting platform for a pan servo, the battery and control electronics. The bottom U holds the camera and is attached to the top U by a bolt on onse side and by the tilt rig on the other side.

For lack of real metal-working equipment I had to keep things simple: I chose thin (approx. 1mm) aluminium for the two brackets because it's easy to cut/saw and drill. Unfortunately it's also not very stiff. This I found out after bending the first bracket into shape. To make it a bit stiffer I decided to make some braces and fasten them in each corner, using blind rivets.

The brackets are connected on one side by a nut/bolt size M4 and on the other side by a micro servo. The yoke of this servo is so small that I didn't trust it as a mounting point. To increase the binding surface I made a small piece of wood and created a notch in it the size of the yoke. Then I used a couple of M3 bolts with spring washers to mount it to the side of the top bracket. The spring washers do a nice job 'biting' themselves into the wood, thus preventing them from coming loose due to vibrations.

close-up of pan servoBalancing the rig is very important. You have to take care that the centre of gravity of the horizontal (tilt) axis goes through the attachment points. This minimizes the power needed by the tilt servo and prevents creep. James Gentles wrote an article about rig balancing.

The electronics, power supply PCB and control PCB, are mounted on the left leg of the bottom bracket, just above the servo. They are held in place by two M3 bolts (again, with spring washers) and distance bushings and are insulated form the rig by some plastic foam. The battery is fitted to the top bracket using velcro, and the pan servo is bolted to the top bracket with four M4 bolts with self-locking nuts.

The pan servo is a Graupner C667, modified for continuous rotation. You can read about the modification hack here.

Balancing everything was a pain because the rig is so small: there's little room for shifting stuff around.

Picavet

The picavet is also home-built, from two pieces of aluminium U profile, held together by a cross-lap joint. A length of M4 all thread firmly holds them together. A large sprocket fixed to the picavet grips the sprocket that's fastened on the pan servo, thus enabling the rig to revolve underneath the picavet.

The gear ratio is 1:4, so for every four revolutions of the small gear, the large gear goes round once. This is done to make the pan movement smoother and to lower the load on the servo.

the complete rig with picavet close-up of picavet mounting

Electrical build

As mentioned, this is an AutoKAP rig, and the part that takes care of the automated operation is the Arduino programmable microprocessor.

Because I want to keep weight and volume down I chose the 5V version of the Arduino Mini Pro (at 16MHz), which I obtained from SparkFun. The reason I chose for the 5V version (and not the 3.5V version) was that of reuse: if I decided to use the Arduino in another project, possibly together with TTL logic, this would be the more convenient option. In retrospect, the low power version would probably have been a better choice.

Power supply board

The rig is battery powered, so to prevent damage to the Arduino by accidental connecting the power in reverse, I added a diode.

The voltage drop over the diode is approx. 0.6 V and the Arduino requires at least 5V, which means the battery has to deliver at least 5.6V. That would mean 5 AA cells (if you take the rechargeable kind). That seemed a bit unwieldy, and I don't have a good power charger, so I chose for a 9V battery in stead. But 9V is too much for the servos, a 7805-based power converter was added. This is the part inside the dashed area in the schematic.

By the way, the schematic, written in Eagle, can be downloaded from here. It uses the SparkFun library for some additional parts definitions, get it here: http://www.opencircuits.com/SFE_Footprint_Library_Eagle. I found the  Arduino Mini footprint library found in this thread on the Arduino forum: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=120049606.

Click on the schematic for a bigger version.

electrical schematic kap01

Here is the power supply, built on a piece of perfboard. The bottom is covered in hot glue, for insulation and durability.

power supply board

Arduino board

The Arduino board holds all the components for control of the rig in pan and tilt. Refer to the schematic above and the pics below for a description.

  • On the top left are the pin headers for control of the camera: a common pin, one for focus and one for shutter. They coincide with PAD1, 2 and 3 in the schematic.
  • Next to the camera pins are two TIL111 optocouplers. They separate the control circuit (i.e. the Arduino) form the external circuitry of the camera. They are labelled OK1 and OK2, in the schematic.
  • SV1 and SV2 are the pin headers for the pan and tilt servos, respectively. They are located on the left hand side of the board, below the camera pins.
  • Top right is the potentiometer that controls pan speed, R4. Note that it's a 500 Ω pot, even though the schematic says it's 2k5. Does not really matter. It's connected to an analog input on the Arduino; the voltage difference over the pot is mapped to a time setting, in software.
  • Bottom left is the potentiometer that controls the initial delay after switching on power to the board: this is to ensure that the kite reaches a good altitude before the rig starts taking pictures.
  • Center right is C3, a big capacitor whose purpose it is to decouple the servos. I've had issue with the tilt servo jittering when the pan servo stopped its movement. This capacitor helped curb the jitter. At least, sometimes it does. To completely control the jitter I switch off ('detach()')the pan servo in the software.
  • In the center we have the Arduino Pro Mini.
  • At the bottom are headers for power: 5V for the servos and 9V (actually, it's 8.4V: battery power minus power drop over the diode D1) for the Arduino.

It's a rat's nest on the reverse...

    control board control board

Software

The software, or 'sketch',  was written with version 0017 of the Arduino IDE. It is written in the form of a finite state machine, using the FSM library for Arduino.

Download the sketch here.

"A finite state machine (FSM) or finite state automaton (plural: automata), or simply a state machine, is a model of behavior composed of a finite number of states, transitions between those states, and actions. It is similar to a "flow graph" where we can inspect the way in which the logic runs when certain conditions are met. A finite state machine is an abstract model of a machine with a primitive internal memory." [wikipedia]

The diagram below illustrates the state transitions and, by definition, the program flow.

AutoKAP state diagram

  • After start up with Arduino's standard setup() function (and an initial delay, not displayed), the rig enters a continuous loop and the 'Initializing' state where internal variables are set and where the tilt servi is commanded to the position that corresponds to 'camera horizontal'.
  • After initialization the rig gets time to stabilize from the servo movement. The FSM library allows either one or three functions to make up a state. This state consists of three functions: pre_stabilize (switches on an LED), stabilize (only waits) and post_stabilize (switches of an LED).
  • Then the photograph is taken:
    • depress the shutter half to focus
    • depress the shutter fully to take the picture
    • release the shutter
  • The next state depends on some conditions:
    • if the maximum numbers of pictures for this 'tilt level' has been taken and we have reached the last tilt level: return to initialization
    • if the maximum numbers of pictures for this 'tilt level' has been taken but the last tilt level has not been reached: tilt to next level
    • else: pan to the position for the next picture

Ground run

For various reasons (bad weather, lack of time) I haven't been able to take photographs with the rig, yet. And I also want to have some practice sessions with a dummy weight before sending my camera up, so as to see how the rig behaves in the wind.

But here is a video of how it should perform.

Observations (1)

While building this I learned a couple of things and made some observations which may come in handy if ever I build a next generation of rig.

  • Don't build the rig too small or it may be difficult to mount all components and balance it, too.
  • Use an Arduino Mini Pro 3.3V (in stead of the 5V), because then both the electronics and the servos can be fed with a reduced power supply of 4.8V, obviating the need for a separate power supply. And a couple of rechargable AA batteries are cheaper than the 9V blocks.
  • Don't use a continuous rotation pan servo: timing a pan movement so it covers 360 degrees nicely is tedious and as the battery wears out (and pan speed decreases), readjustments are necessary. Better use a servo that is modified so it takes its feedback form an external potmeter, through a reduction gear. As an added advantage: because the rig isn't going to turn around and around, it will be possible to tie the lower bracket to the main kite line with a safety laniard, so that in case something gives way the camera doesn't crash (onto someone or someone's property).
  • Using all thread to mate the picavet with the rig is not such a good idea: when tightening the self-locking nuts, a pair of sturdy pliers is required to hold it, this damages the thread. Next time make the pan-construction more compact so that a regular (long) bolt can be used in stead of all thread.

Results

It's May 2010 and I finally got a good opportunity to test this rig! I took it to Vlieland and made a couple of series of pictures. I really like the results, although the resolution of this camera is not so good, with just 2 megapixels. It's pretty awesome and very gratifying to see pictures of yourself taken by your own handywork, from 50 meters up in the air.

Because the rig is autonomous, it can't be pointed in any particular direction of interest, from the ground. As such it's always a surprise what shows up on photo.

Check out the gallery here.

Author using the KAP rig

Observations (2)

After having made a couple of flights and a few hundred photos, I think there are a number of things that can be improved if/when I'm going to make another rig or make a new software release.

  • I have ordered a couple of Pekabe pulley blocks with ball bearings (on eBay). These will decrease the friction on the picavet lines, improving stabilization. They're also smaller than the pulleys I use now, saving weight (also in the picavet line, which must be replaced by a thinner one).
  • Add an ON/OFF switch - way easier than messing with the battery connector with one hand while holding the kite line with the other.
  • Add a built-in test program that checks the operation of all components after the rig is switched on (e.g. after 5 seconds move servos to neutral position, move CCW -> neutral -> CW -> neutral, move down -> neutral, take one photo).
  • The currently built-in stabilization period after panning/tilting is probably unnecessary because the impact of wind motion is much higher than that of rig rotation. So either lessen it to '0 seconds' or remove that state altogether.
  • Six photo's per revolution is too little for this lens angle, should be increased to eight or nine.
  • Many pictures are blurred or taken when the camera is pointing in some weird direction because of stabilization issues. If two or three photos were to be taken in each position (in stead of a single photo), this would (1) increase the likelihood of a good photo being among them, (2) reduce the number of revolutions, thereby requiring less air time for obtaining good shots.
  • The near-vertical pictures are only interesting if there are interesting features on the ground. Dunes and sand are boring.
  • It would be nice to have dip switch-selectable programs (e.g. one with no tilt, one with only one tilt step, second exposure without panning, etc.).
  • Look for a light-weight and simple way to keep the picavet attached to the kite line in case of hangup failure.
  • The tilt servo is lightweight and small but also very fragile. The teeth on one of the internal gear wheels sheared off, making it unusable. Since keeping weight down is not such a big concern as I thought earlier, it would be better to use normal size servos, which are sturdier.
Comments (0)
Write comment
Your Contact Details:
Comment:
[b] [i] [u] [url] [quote] [code] [img]   
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):S
Security
Please input the anti-spam code that you can read in the image.
Last Updated on Monday, 17 October 2011 05:46