Pictured is my first attempt at a camera system comparable to what you would find on a commercial UAV. I hope to make available to the DIY Drones community a light weight, affordable, and highly accurate turret compatible with APM or any other open source autopilot system.


The goals for my design were:

1. Light weight for use in fixed wing and heli applications

2. Ease of manufacture/part replacement

3. Low(ish) cost

4. Highly accurate closed loop control in both pan and tilt

5. Continuous rotation in pan

6. Gyro stabilization either through an autopilot or standalone IMU

7. A design easily expandable to carry larger cameras (GoPro, and Sony block cameras are in the works)


My first iteration has succeeded mostly in hardware design, although the software is currently a work in progress. My goal is to connect it to an APM via I2C, and control it via a joystick on the ground. Obviously there's a lot of work left in that regard...

3689410294?profile=originalTurret control is handled by a Pololu Baby Orangutan robot controller. The Orangutan has a dual H-bridge to drive a pair of servos modified for use as gear motors. Being ATmega based however, pwm or steppers will work as well. It runs the Arduino PID library with input from two magnetic rotary encoders for precise position input.


Any input on software development would be appreciated. I plan to make this available as soon as it's ready, and it's going to be all open source, of course.


More info/pictures available at www.AUV-Research.com.






E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones


  • Do you have actual build plans for the turret itself - in terms of gearing, framework etc. Very clean looking turret mate, nice work!

    Nice work Seth!


    I would like to build and test one of these. Are the plans/parts available on Ponoko?

  • What is the model of servo do you use ? And are you satisfied by the results ?

    Great job !

  • Seth, this is very impressive!
  • Seth

    I use the magnetic encoder servos from hitec with the G2.5 series boards in proportional mode for the very fine movements of the inner axis system which has 4:1 reduction. and I also the G2 boards with the servos that are continuous rotation with the pot locked in feedback mode. To get the servo speed down and increase the resolution I run 5:1 gear train. The imu has .1 us resolution and uses a 20deg/sec  gyro. it works to a staggeringly good degree of accuracy. It should be remembered that all camera movements should be limited to less than 5 deg/sec or you will just get motion blurred pixels at even wide angles of view. The total elimination of all vibration is the key to getting this stuff to work, then you can get into augmented camera stabilisation from the camera itself. Cameras such as the Panasonic TM-900 have an amazing stabilisation system that allows me to hit the zoom button all the way.

  • Randy,

    For use with an APM, UAV DevBoard, etc. an IMU wouldn't be necessary. For applications without an autopilot, such as a balloon, you could easily connect it to any IMU and an x-bee. I planned it to be flexible for any application. For use on a ground vehicle it is easily mounted upside down. The next version will be large enough even for a Kinect...

  • In the never ending quest to source smaller and more accurate drive systems for camera mounts I stumbled across this http://pcbmotor.com/information/1-benefits-22/ with more than 50,000 possible steps per rev. I think it needs to be investigated.
  • Chris,

    The separate board serves primarily to drive the pan/tilt system. When I started this it seemed that the pan/tilt commands from APM would be pwm. I looked into using a Hitec servo modified for continuous rotation for pan control, but it proved to be unsatisfactory in its responsiveness and accuracy. Removing the pot and using the servos as gear motors required the use of an H-bridge and some sort of closed loop control system. In addition, each of the magnetic rotary encoders providing PID (or PI) control require three IO lines, although they also support pwm and quadrature output. The next version I'm working on will accommodate a larger Sony FCB-EX11 camera with a 10X optical zoom. For this application, the 0.035 degree accuracy provided by the encoders, and the available serial line on the Orangutan for the Sony VISCA protocal will be critical. It will still be possible however to take the pwm output from the APM and use it to drive the turret. I'm still dissecting and wrapping my mind around the APM code... At the time I2C seemed like a clean way to approach the problem.

  • Sorry I found it on your website.. Thanks.



  • Hi ..GReat work. Where do you source the Gimbal hardware ?


This reply was deleted.