Go Down

Topic: Standalone Stabilized Gimbal (Read 13 times) previous topic - next topic

glowell

I'm currently in the planning stages of a standalone 3-axis gimbal build and I'm hoping someone here can help me clear up some confusion.
As I understand, I can use this device to control a 3-axis gimbal.
https://store.diydrones.com/APM_2_5_Kit_p/br-ardupilotmega-05.htm
Is this the best device for this purpose or does Arduino make a more appropriate device?
My gimbal will be used in two different ways. One will be mounted on a 50' pole and the other will be hanging beneath a multicopter. If not for the 50' pole use, I could merge the controls into the flight controller for the multicopter.

The most crucial features to me are:
auto level to keep accurate horizon
maintain camera direction regardless of copter direction.
3-axis manual control
3-axis stabilization
tunability to achieve the smoothest servo movement

Any advice on this build will be greatly appreciated. I'm a bit overwhelmed with all the boards and codes available. I just want to make sure I'm not purchasing the wrong tool for the job. I could just purchase the Hoverfly Gimbal controller but I'm a fan of Arduino and the open source nature of this product, not to mention this awesome group.
Thank you in advance.

MarkT

That's overkill just for one platform (or do you mean for the whole craft?).

For just a platform you might find using an Arduino plus a small 6DoF or 9DoF sensor board easier to fit - the accelerometers should be fairly central on the platform ideally (although its less crucial on a stabilised platform than on a true IMU).

So you need IMU software to measure and calculate the state vector, then provide feedback loops (perhaps with PID) to the axis motors/servos.  Manual input would program a "desired state" and the differences are then used in the feedback.

There are two basic approaches, one is to measure craft orientation (which you'll be doing anyway) and calibrate the servos to correct for current orientation (open-loop).

Secondly the closed-loop method where the platform measures its own orientation and uses feedback to correct - this I presume is what you want "standalone stabilized gimbal".

The PIDs are what you'll tune for smoothest motion, compass (9DoF) needed I think (unless you can tolerate slow drift in compasss heading).

eBay has some 6DoF and 9DoF boards, mainly I2C, and some are 3V3, some 5V, some do both I think.
[ I won't respond to messages, use the forum please ]

glowell

Hi Mark,
Thank you for your reply. I suspected that the Ardupilot mega was overkill but there are so many other Arduino boards, I don't know which one is the best match for this purpose. Since there is a 3-Axis gimbal feature of this board, it seemed like a solution at least.

I'm planning a project with another friend. He is building an octocopter and I'm building a gimbal to attach to the copter. The gimbal will also be used by itself on a camera jib as well as a 50 foot high camera mast so I need it to be a standalone rig that's easily removable from the helicopter so I can quickly mount it to other rigs. I'm planning to have a dedicated radio controller for the gimbal as well.

The closed loop method you mentioned sounds like exactly what I need. Ideally I want the gimbal to maintain a level orientation while flying but still allow manual position changes via the radio controller.

I'm also shooting for simplicity, as I'm not an electronics engineer nor do I have any serious code writing skills (unless you consider Javascript and HTML to be serious code - I'm guessing no). I'm comfortable navigating config files to change parameters but I'm hoping to find a hardware and firmware solution that's already basically set up and at most, only needs a little tweaking. As I understand, the Ardupilot's last few firmware revisions include 3-axis gimbal control. It appears to be fairly plug and play.

Does the ardupilot firmware work on other boards? Is there a less overkill board/firmware combo that's up to this task?

In your response you mentioned using an Arduino plus a small sensor board. Which Arduino board did you have in mind?

Thank you again for your response. I truly appreciate your time.

MarkT

I don't know about the Ardupilot software but its worth having a look at - there are various IMU frameworks out there I believe.

As for a small board - Pro Mini (can even go to 3V3 with the 8MHz version, reducing parts count if IMU is 3V3).  However motor driver is likely to want more volts anyway - stacking a standard motor shield on an Uno is simple at least.  There may be a simple IMU shield out there too.  For miniaturization have a look at www.pololu.com, probably have some small motor controllers.
[ I won't respond to messages, use the forum please ]

Featherodd

#4
Nov 25, 2012, 02:29 am Last Edit: Nov 25, 2012, 02:34 am by Featherodd Reason: 1
glowell: did you decide on a solution for for your gimbal system? This is probably the wrong forum to post these questions on. Better to check out rcgroups, diydrones, openpilot forums and even 9xforums.

I'm an APM2.5 user, but I have yet to see much success from people using it's Camera Gimbal system for trying to shoot stabilized video. One thing to note is the APM2.5's two PWM outputs meant for gimbal servos (pitch & roll) only output at 50Hz. This is far too slow for high speed digital servo's, which operate at up to 333Hz. According to Askman, who's a fairly renowned gimbal designer, you ideally want your update rate to be double your servos. The HoeryFly Gimbal board supports an update rate of 800Hz (i think). That said, I believe it's possible to use two motors outputs instead for Gimbal Control on the APM. the motor outputs output at 400Hz. I haven't tried this myself.

I'm currently in the middle of building this Gimbal kit from Rusty's
http://www.shop.aglhobbiesllc.com/Camera-Mounts/UG-1-Full-Kit-2-axis-gimbal.html

It's the result of lots of work by Rusty and Hansen, who was a long time beta tester of Askman's gimbals. You can follow it's development through this extremely interesting thread:
http://www.rcgroups.com/forums/showthread.php?t=1739869

I've ordered two Hitec HS-7955 servos from Servocity. One modified for continuous rotation for tilt and another which will be programmed to 180° for roll. There are lots of discussion in the later pages of the thread above for cheaper alternatives, notably some very well performing MI and BL servos from HobbyKing.

Regarding a standalone Arduino Gimbal controllers, I noticed this code a while back for employing the ArduIMU for stabilization:
http://diydrones.com/group/arduimu-gimbal-controller?xg_source=activity
Though I'm not sure if anyone at all has ever used it.

I would be more inclined to simply use MultiWii if I was going to go this route..
http://www.multiwiicopter.com/products/paris-gimbal-3-axis-control-board
Though apparently you only get about 70% the performance of the Hoverfly board with it. Again, I'm not yet sure how APM's gimbal system compares to either.

The issue I believe with Arduino based gimbal control is simply that the processor can't update fast enough. Controllers like Hoverfly, Wookong, AutoQuad 6.6, OpenPilot, Skyline RSGS and likely Radian all use much faster 32bit ARM processors. Arducopter is on it's way and has been successfully tested on their PX4 board, but they aren't there yet.

A lot of peeps seem to be having quite a lot of success with OpenPilot as both an FC and gimbal control system. The issue with OpenPilot though has simply been availability. I got in on the pre-order for their latest Revolution board and am excited to check out the platform. Their GSG system looks much more polished than APM's Windows only Mission Planner.

Last, is your friend building an Octo an experienced pilot? If not, let him smash up the coper for a while before you ever even consider attaching a gimbal to it. When you do attach the gimbal, get some experience flying with dead weight first before you attach a camera. I also highly highly recommend getting some flight time with some mini/micro quads. The WLtoys v929/939/949 series will all natively bind with a Turnigy 9x's default rf module. They're a blast to fly and this combo is hell of a lot cheaper than going the DSM Spektrum radio + Blade MQx route. Especially after you've flashed your 9x with er9x, you won't look back.

Oh, other fun thing to note, there are still AVR/Arduino chips in lots of copter components. Tons of ESC's for example use AVR chips, hence you can flash them with SimonK's firmware for better multicopter performance:
http://wiki.openpilot.org/display/Doc/RapidESC+Database
Also MinimOSD is simply an ATmega328P paired with a MAX7456 monochrome display chip:
http://code.google.com/p/arducam-osd/

And even with the mass migration to ARM based chips, Arduino isn't going anywhere thanks to the DUE. The Ardupilot team is even currently assessing using the Arduino IDE for their migration to 32bit for maintaining compatibility and the current code base as much as possible.

zoomkat

Similar project:

http://www.lynxmotion.net/viewtopic.php?f=20&t=8430
Consider the daffodil. And while you're doing that, I'll be over here, looking through your stuff.   8)

Go Up