Brushless Gimbal for Aerial Photography Drones

by oesti in Circuits > Remote Control

298532 Views, 606 Favorites, 0 Comments

Brushless Gimbal for Aerial Photography Drones

DSC_6823-sq.jpg
Every self-respecting drone used for aerial photography needs a gimbal. Good gimbals are very expensive, cheap ones are not smooth. Brussless Gimbals (BLG) to the rescue! In there recent months there has been a flurry of activity around this new way of building camera gimbals. Instead of servo motors, a BLG uses re-wound Brushless RC motors in a direct drive configuration.

The cheapest of all BLGs on the market today (and readily available) is the GoPro BLG and Controller (Martinez v1) from RcTimer. Unfortunately that gimbal comes zero, zilch, nada instructions. Also there were some incorrectly machined parts. Hence building it can be quite a challenge. This Instructable is meant to fill this gap. Also it might give you enough pointers to design and build your own gimbal from scratch.

Testing of finished gimbal:



Timelapse video of the build:

The Parts

CMG09956.JPG
CMG09958.JPG
Here's everything out of the package. There was one bolt missing. Be careful with the bag that contains the grub screws and C rings.  They're really tiny.

Build the Camera Cage

CMG09961.JPG
CMG09965.JPG
CMG09966.JPG
It's pretty simple, just bolt the pieces together.

Be sure that the grub screw holes both face forward. A GoPro should friction-fit in the frame pretty securely. Use Loctite on the screws or they might loosen and get lost quickly.

Assemble the Outside Frame

CMG09968.JPG
CMG09969.JPG
CMG09973.JPG
CMG09974.JPG
Oops, a problem! The side mount bolt hole was not properly beveled, so the bolt does not fit through the hole with enough length to attach to the edge piece.

We drilled a bevel using a larger drill bit. That fixed the problem nicely.

Install Pitch Motor and Bearings

CMG09975.JPG
CMG09977.JPG
CMG09978.JPG
CMG09979.JPG
CMG09981.JPG
CMG09982.JPG
Next, assemble the bearings. Careful with the little pieces!

We found a problem with the grub screw hole. It wasn't properly tapped, so we couldn't get the grub screw inserted all the way. After some debugging, we ended up switching the two sides, so the working grub screw was on the motor side.

The grub screw uses a 1.25mm hex wrench. It would be nice if RC Timer included one. They don't, so be sure and have one ready.

Yaw Motor

CMG09986.JPG
CMG09987.JPG
CMG09989.JPG
CMG09991.JPG
CMG09992.JPG
CMG09994.JPG
Make sure you have the indentations properly aligned. Dry fit it together to make sure.

One of the tapped holes was a bit malformed, and the 3mm bolt didn't fit through. You can clean it out with a 3mm drill bit, or tap a 3mm bolt through the hole with a hammer a couple of times. As good as new!

Build Mounting Arm

CMG09996.JPG
CMG09999.JPG
CMG10001.JPG
CMG10002.JPG
CMG10004.JPG
-Attach the yaw arm to the frame mount.
-Attach the 3mm nylon risers to the frame mount.
-And then attach the board to the risers.
-And attach to the bottom plate of the anti-vibration unit.

Stick the rubber anti-vibration grommets onto the top and bottom plates. Do this after attaching the bottom plate to the gimbal.

Solder the Motor Wires

CMG10005.JPG
CMG10006.JPG
Soldering is pretty simple. Snip the wires and re-tin them with a generous portion of solder. Tin the motor pads. Put each wire on the corresponding solder pad, and touch the wire with the soldering iron, attaching the wire. If it takes more than a second you're doing it wrong. Note that since this is a three-phase motor, the order of the wires doesn't matter.

Later you can cover the soldered connections with hot glue for physical strength and to insulate the wires.

Connect Everything for Testing

DSC_6823-sq.jpg
This picture shows the correct orientation of the IMU and the correct connection of the pitch and yaw motors. We did this all wrong at first (due to lack of documentation) and the gimbal did a Harlem-Shake instead of image stabilization.

Note that we were doing the power wrong!  Don't use a 5V servo connection, use a 2S-4S battery. Be sure and watch the polarity. It may not be a bad idea to put a battery connector onto the board.

Mounting the BLG and First Test

CMG10010.JPG
This nifty little sawhorse was sitting around from another project, and it made a perfect test mount.

If everything was set up correctly the BLG should behave like this:

Harlem-Shake

This is what happens if the IMU orientation or the motor connections are wrong:









Here's what happens if you plug in the USB and forget to hook up the battery. There's enough power over the USB to power the processor. Not enough to power the motors, but enough to make them twitch.

Mount on Your Drone / UAV / Quad / You Name It...

IMG_1773.JPG
IMG_1774.JPG
IMG_1777.JPG
IMG_1775.JPG
IMG_1776.JPG
My airframe of choice at the moment is the TBS Discovery. I bought the leg extensions to give me enough clearance for the Gimbal. Without the controller board stack there seems to be just enough clearance. The upper mounting point can be screwed directly to the bottom of the TBS Discovery frame at an existing mounting point. It needed a M3 screw that is just a bit longer. The vibration grommets are too soft for the weight of the GoPro. I filled them with silicon to stiffen them up. Other people have stuffed them with earplugs ;)

Software Setup

2013-06-10 10.18.28.jpg
2013-06-10 10.18.36.jpg
2013-06-10 10.18.41.jpg
2013-06-10 10.19.13.jpg
2013-06-10 10.19.42.jpg
I got my controller board  to work out of the box without a firmware upgrade. The installed firmware is 0.48, however we could not get that version to talk to the 0.48 GUI. Mark managed to install 0.49 and that version talks to the GUI. But now we need to re-tune the PIDs. Below is the process for upgrading to 0.49:

Drivers

MAC:  You are in luck! It seem like the correct driver is present without any additional action.

Windows: You are entering a world of pain. The auto-detection will install an incorrect driver that is hard to uninstall. Do not plug in the board without having downloaded the correct driver and then disconnect from the internet. These instructions seem to be very thorough and worked perfectly on my Windows 7 PC: http://www.rcgroups.com/forums/showthread.php?t=1872416

Required software

To build the software, you need two things:

- Arduino software environment:  http://arduino.cc/en/Main/Software
- Brushless Gimbal software: https://code.google.com/p/brushless-gimbal/downloads/list

Build and install

Building and downloading the firmware is pretty straightforward:

1) install the Arduino programming environment.
2) load the gimbal software in the Arduino environment
3) ensure your configuration is correct:
    - in Tools / Serial Port, be sure your USB port is selected
    - in Tools / Board, Arduino Pro or Pro Mini (5V, 16MHz) w/ ATMega328 
4) Upload (arrow icon in toolbar)

If everything works, you will get a message regarding memory size and a message that the new firmware has been uploaded.

You should now be able to connect with the 0.49 GUI and start tuning. Note: Com port must be 1-10 of the UI does not work. You can change the com port in the advanced settings using the device manager.


TO BE CONTINUED WITH PID SETTINGS...

Connect Controller With RC

P1030333.JPG
2013-06-10 10.32.47.jpg
To frame the shots even better, the remote can be used to control the pitch and roll of the camera. In most cases only the pitch axis is of interest to tilt the camera down or up. You can either use the same remote and receiver that you use to control your drone, or more interestingly you can hook it up to a secondary system that is controlled by the camera man.

The sensitivity and the mode (absolute or proportional) of the RC input can be configured using the GUI.


Ports

A1 is for pitch axis  (tilt camera up or down)
A2 is for roll axis

Pin Assignment

Bottom pin is ground (out-most on the board)
Middle pin is 5V
Top pin is signal

First Flight

First test of stabilization. Ignore the blotchiness, we're using my old GoPro with the super-scratched up lens for the first couple of tests. Once we've got a reasonable lens cover we'll make an pretty video ;)

But this should give you a good idea of what the gimbal does. Each time the quad moved side to side or foward/backward, the quad itself is tilted quite a bit. But the BLG corrects for that and the footage gets a much more "floating" look than if the camera was mounted fixed.

At 1:35 you can see the pitch/tilt down using the remote. At 2:30 you can see how the gimbal resets to level. The motion is very slow and smooth. With the GUI this can be speed up and the max angle can be modified.