i want to make a 3-axis gimbal with arduino but brush-less motors seem incredibly hard so would stepper motors work for this purpose?

if their is a way if not, is how can i connect 3 gimbal motors to one arduino board and control them seperately? (links if possible)

  • If I would have planned to build a arduino controlled gimbal, I would use servos which are DC motors with a feedback control system. There so many videos on youtube for example that show how to build a gimbal with servos. OK you are to lazy to find one, here is one of them. I'm nice; I know ;-) youtube.com/watch?v=UxABxSADZ6U OK, and now switch the jokes off: You are new to this forum. The people who answer your question are glad to help you. But do not expect them to provide you with a solution for a problem if it is easy for you to check the internet and get answers. Oct 19 '19 at 15:08
  • Why should brushless motors be incredibly hard? You only need an ESC as a driver, which then can easily controlled via PWM
    – chrisl
    Oct 19 '19 at 23:14
  • @PeterPaulKiefer thank you but the reason i asked for links is because ive been searching for hours without luck on finding a way to control three brushless DC motors. i looked at servos but they dont meet my needs as they seem to be not very smooth
    – user60283
    Oct 20 '19 at 1:42
  • @chrisl thanks chris so i just need to find the right ESC and ill be able to use three on my arduino board? thatll fix all my problems thanks
    – user60283
    Oct 20 '19 at 1:43
  • Ok, I was was not very nice, I'm sorry about that. You are right, Servos are not very smooth, but you did not specify your needs for smooth operation. Please see my answer. Oct 22 '19 at 13:16

DC Motors with a feedback line (so called PID Controller; https://en.wikipedia.org/wiki/PID_controller) would be the best way to do it. You need the motor as an actor and some sensors that sense the direction of the axis's of the gimbal. The PID controller should be very fast for smooth operation. (Perhaps an ESP32 is a better MCU for this purpose).

The PID controller uses a motion sensors.

It's good to have strong motors that do not react "nervous" on on voltage changes. You probably will have to use motors with gears. Even fast PID controller won't be able to keep your camera from turning cartwheels if a 10.000 cycles per minute racing motor gets full voltage applied.

I searched the internet for videos of such a setup but the only thing I found, are the commercial (?) gimbal "alexmos" "how to" videos. I'm with you that it is hard to build such a gimbal without much knowledge of how PIDs work. I'm also not sure if there is an arduino that's fast enough to realize a PID that gets its feedback from motion sensors and drives dc motors with this information, then get's feedbach of the motor movements (from the motion sensors) and so on.

And probably a better/stronger servo and and very fast PID setup might eventually smooth the gimbals movements.

Here is a link that might help you as a start point for PID (if you are not discouraged yet): https://www.youtube.com/watch?v=9TTDmWiMg_Y

And even professional setups can make problems: (It's a matter of the PID parameters) https://www.youtube.com/watch?v=UeeTXH2Qv2o


A stepper motor might work, but it is certainly not the best choice for what you try.

Instead you should use brushless motors. There are not so hard to use, as you think. Driving them directly is difficult, but no one does that. Instead just buy an ESC (Electronic Speed Control) (one for each brushless motor). That is an extra chip/board, where you need to connect a PWM signal and ground from the Arduino and the power source of the motor. Then connect the motor to the ESC and you will be able to control the brushless motor with a simple PWM signal.

For further information you can read this post in the Arduino forum, or you just google. There is plenty of information the web about ESCs.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.