I'm creating an autonomous sailing boat and just looking into how to control the sail and rudder.

The electronics will be low powered with the main brain being an Arduino.

My problem is thinking of what to control the sail and rudder with, I need something that will hold it's position whilst powered down and has a high torque rating for pulling in the main sail in and out.

I've looked around for servos with braking but haven't found much.

I should also point out that the sailing boat is around 2 meters long.

  • \$\begingroup\$ is opening the guts of the servo an option? I have a neat idea but it's kind of a hack, you have to modify the servo's inside. nothing out of your reach if you're building an autonomous sailing boat. \$\endgroup\$ Mar 24, 2015 at 20:12
  • \$\begingroup\$ that is certainly an option, i like the sound of a hack! \$\endgroup\$
    – Nathan
    Mar 24, 2015 at 20:13
  • \$\begingroup\$ ok bear with me then, your hack will be ready soon \$\endgroup\$ Mar 24, 2015 at 20:14
  • 1
    \$\begingroup\$ This doesn't directly answer your question, but have you looked at Harbor Wing autonomous catamaran? It has a rigid airfoil for sail. The airfoil rotates freely around the mast (no motor or break). The airfoil carries control surfaces. \$\endgroup\$ Mar 24, 2015 at 20:21
  • 1
    \$\begingroup\$ You should use a free-standing mast with wing type sail and use a trim tab on the sail to control the angle of attack. Saildrone. sailingscuttlebutt.com/2013/11/17/… \$\endgroup\$
    – user57037
    Mar 24, 2015 at 20:22

2 Answers 2


Using an RC servo is a great idea: these small beasts can provide quite a torque in a small frame and at a reasonable power consumption.

Finding one that suits your torque needs should be a piece of cake, but one that can be braked when unpowered? That can be more difficult.

When powered a servo is braked, in the sense that its closed loop control system keep the arm where the input signal wants it to be. The consumed power is somewhat proportional to the torque needed to keep the position, so it might well reach the specified maximum.

Inside the servo there is a small (or big) DC motor, some gearing, the control board and a potentiometer, the last being connected to the output shaft. The control board reads the position from the potentiometer, compares it to input signal and powers the DC motor accordingly. The motor is probably driven with an H bridge since it must be able to do reverse and you don't provide a negative voltage to the servo.

Now comes the idea: if you short the poles of a DC motor and try to turn the shaft you will feel a braking torque, that's what runs the F1 KER system. That's because when you turn the motor you induce some current in the (shorted!) windings and that very current tends to brake the shaft thanks to Lenz's law.
Now this torque is weak. Moreover you can feel it only if the shaft is actually rotating and there is no escaping from this, unless you use some sort of mechanical brake. But thanks to all the gearing the torque needed to move the end shaft will be quite high and yes it will move, but just a little. Is this enough for you? Well you have to try that, I'm sorry.

Now how can you hack this into a servo? Well, you will need something that shorts the motor poles when unpowered, like a normally closed relay. You connect it to the motor poles and control it through the arduino (use a transistor please!). You can find plenty of articles on the web on how to connect a relay to an arduino so I won't explain it here.

There's only a last concern: the power on and power off sequences. If you power the servo with the brake on you might break it. The H bridge tries to turn on the motor but finds a deadly short circuit. It probably is protected, but why would you try that? Plus since power is a concern I am guessing you can turn off the servos power, so just remember to disengage the brake before powering the servo, and remove power from it before engaging the brake. Please note that if you want to brake a servo while controlling another you will need a way to power/unpower the various servo separately.


Use a motor that drives a worm gear, they can provide a ton of holding torque when unpowered. The catch is that they are usually not super speedy.

You may have to design your own control system to set the position of them, though using something like a rotary encoder or potentiometer connected to the output shaft should make the whole thing pretty simple.

Automotive windshield wiper motors are typically worm gear driven, and are a favorite of hobbyist robotics builders.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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