Language: EN

guia-seleccion-motores-para-arduino

Guide to selecting motors and actuators for Arduino

When we start a robotics project, a vehicle, or any other mobile device, one of the first decisions will be choosing the types of actuators that we are going to use.

An actuator is the generic name we use for any device capable of performing actions in the physical world and that we can control from an automat or processor like Arduino. In particular, we use the name actuator for devices that are capable of generating movement.

Selecting the correct actuator for our project is a complicated task since we have a wide range of options (DC motors, servos, stepper motors, brushless motors..) each of which has its advantages and disadvantages.

Explaining all the actuators in a single entry would be too long, so in this post we will see the factors and criteria that condition the choice of one or the other.

In the next entry, we will see the characteristics and operation of the main types of rotary motors, and in the last entry of the series, other types of available actuators.

Factors for choosing a motor or actuator

In general, when selecting an actuator, we must consider the mechanical and electrical characteristics, the control that we will be able to have, and, of course, the price.

However, it is worth noting that the characteristics of one motor are not better or worse than the other. For example, in principle, having a small speed or torque may seem like a bad thing, but it does not necessarily have to be so.

Imagine that we are working on a project to rotate an advertising sign. Surely rotating it at 12000 rpm will not achieve the effect we are looking for. Or imagine that we want a motor with a low torque so that, if someone accidentally inserts a finger, the motor stops without causing damage.

The same thing happens with robots and vehicles. It doesn’t matter if the wheels can spin at high speed if they stop as soon as they touch the ground. Or if the robot has enough torque to climb a wall, but in return, it moves at a turtle’s speed.

Now, let’s finally break down each of the factors.

Mechanical characteristics

Mechanical characteristics include speed, force or torque that can be exerted, precision, and the maximum load it can withstand.

Speed

Speed is the relationship between the displacement that the actuator performs and the time, that is

The units for speed in the international system are m/s, and sometimes km/h for vehicles, or cm/min in the case of slow actuators.

In the case of rotary actuators, we will use angular speed, which is the relationship between the rotated angle and time

The units of the international system for angular speed are radians / s, being degrees (º) / s, revolutions per minute (rpm), or revolutions per second (rev / s) frequent

Force / Torque

The force exerted by an actuator applied to a certain mass is used to accelerate it, that is, to modify its speed. An actuator with a certain force will be able to quickly accelerate small masses, and slowly large masses.

The expression for force is,

Where,

The units for force in the international system are Newtons (N), and it is common in the technical field to refer to kilogram-force (Kgf), which is the force exerted on a Kg of mass by the Earth’s gravitational field (acceleration of 9.81 m/s2).

Many times, Kg is used to refer to force, even in technical specifications. Technically incorrect, because Kg is a unit of mass, but it is so common that we advise you not to lose patience when you see it. In any case, it costs little to be technically correct simply by using Kgf.

However, in the real world, there are friction forces, so practically, an actuator cannot move any mass. Above the available force, the load simply will not move at all and we can even damage the actuator.

In the case of rotary actuators, the equivalent of force is torque (sometimes called torque)

The expression for torque is,

The units for Torque are N·m (Newton Meter) in the international system, although we will frequently find Kgf·cm. 1 Kgf·cm is equivalent to 0.098N·m, and equivalently 1 N·m is equivalent to 10.2 Kgf·cm

Where the angular acceleration is the variation per unit of time of the angular speed, and the rotational inertia is a characteristic parameter of the load that we are going to rotate, given by the geometric distribution of its mass.

Alternatively, the torque can be rewritten as follows,

For example, a motor with a maximum torque of 10 Kgf·cm to which we attach a pulley with a radius of 1cm will be able to vertically lift a mass of 10Kg, while if the pulley radius is 2cm, it will only be able to lift 5Kg.

Mechanical power

Mechanical power is the amount of energy per unit of time that the actuator is capable of delivering to the load.

The mechanical power is given by the following expression,

While in the case of rotary actuators,

Maximum load

The maximum load is the weight or efforts that the actuator can withstand without breaking, which is not the same as the maximum load it can move.

Consider a vehicle with wheels, the axle can support, for example, 50Kg, but it does not mean that the motor has to exert a force of 50 Kg, since the rolling load is much lower.

Precision

Not all actuators have the same precision in their movements. Regardless of the quality and control we use, certain actuators are more conducive to higher levels of precision.

For example, with a stepper motor, it is easy to obtain precisions of tenths of degrees, something that will be much more difficult to obtain with a DC motor.

Electrical characteristics

Electrical characteristics include power, voltage, and nominal current. This will condition the size of the components, the conductor section, and the battery capacity.

Nominal voltage

It is the voltage at which we must supply power to the motor for proper operation, measured in Volts. Frequently, it is also the maximum voltage at which we can power the device without damaging it.

Sometimes the nominal voltage is a range, instead of a single value. The operating point will vary depending on the voltage we apply.

Frequent values for motors and actuators are 6V, 12V, and 24V.

Nominal current

It is the current intensity that we must supply to the motor for proper operation, measured in Amperes. Similarly, often the nominal current coincides with the maximum current at which we can power the device without damaging it.

Some actuators have a nominal current lower than that which would flow by Ohm’s law according to their nominal voltage and their resistance. For this reason, the controller must have a current limiting device.

There are motors with a wide range of nominal currents, from a few mA, to several tens in the case of large motors.

Electrical power

Electrical power is the energy per unit of time absorbed by the actuator from the power supply, measured in Watts (W), it has the following expression,

At the same time, mechanical power is related to electrical power according to,

Where μ is the overall efficiency of the actuator, which includes mechanical losses due to friction, and electrical losses due to losses in the copper by Joule’s effect, losses due to induced currents, losses due to magnetic hysteresis, and losses due to magnetic flux dispersion.

On the other hand, the electric charge consumed by the motor is

The unit for energy is Joules (J), with frequent units being Ampere-hour (Ah) and micro Ampere-hour (mAh).

This electric charge is especially relevant when supplying power to the actuator from batteries, to determine the operating time with a charge.

Other factors

There are other factors to consider when selecting an actuator for our project. We will not go into details because they are quite obvious, but they deserve at least a brief mention.

  • Shape and dimensions.
  • Fixings and supports both from the actuator to the robot, and from the load to the actuator (for example, the rotor shaft diameter).
  • Weight both of the actuator itself and of the additional components required to operate it (batteries, controllers).
  • Degree of protection (IP) which includes resistance to water, resistance to dust, and conditions if the actuator can be used in outdoor environments.
  • Temperature range that we must respect if we do not want to damage the actuator.
  • Useful life understood as the average time that we can expect the actuator to function.

Control characteristics

In addition to the mechanical and electrical criteria, a factor that greatly conditions the choice of the actuator (and is often the most forgotten) is the control that we are going to have. In general, in a robot or vehicle, we are interested in three types of control:

  • Speed control, knowing at what speed the vehicle is moving.
  • Position control, knowing the position of our vehicle.
  • Orientation control, knowing the direction in which the vehicle is pointing.

In principle, forget about having total control over any of these variables. The real world is not perfect, wheels slip, motors have nonlinear responses, loads are not balanced, components are not identical and perfect, sensors drift… All these defects mean that, in general, we cannot have total and absolute precision.

Controlling speed is generally the easiest to measure or at least estimate. In many actuators, we act directly on their speed. On the other hand, if we know the position of the actuator, we can obtain its speed simply by deriving (dividing) with respect to time, and calculate its average speed.

The position of the vehicle is the most difficult to know. Some actuators allow good position control, but this does not guarantee knowing the real position of the robot. In general, additional sensors will have to be installed, such as photoelectric sensors or limit switches, which allow us to absolutely position the actuator.

We have other types of sensors that help us determine the position of a robot, such as ultrasonic or infrared distance sensors. GPS allows us to obtain the real position, but it has a precision of 0.5 meters, which is too high for most vehicles. Other options include vision systems, or triangulation of radio beacons.

On the other hand, forget about obtaining the position of the vehicle by integrating the speed (multiplying speed x time). Errors in the measurement of speed accumulate, and in the end, you will always have a drift in the position. Use it only as a last resort, or as interpolation between positions given by sensors.

Finally, the orientation of the robot is almost impossible to know through the control of the actuators, for the same reasons as the position. Fortunately, in most cases, we can use magnetic compasses and gyroscopes to determine with a high degree of precision the orientation of the vehicle.

Surprised that you cannot have total control of the position, speed, and orientation of a robot? You’ll be even more surprised that the best solution is not to aim for total control. In nature, humans and other animals do not need total precision, they simply need an approximation and respond to environmental stimuli. Your robot should be designed with the same philosophy.

Adding an encoder

The most widespread solution to improve the control of our actuators is to add an encoder. An encoder is a device that allows recording the position of the actuator, which means having total control of position and speed.

arduino-tipos-encoder

The most common encoders are optical or magnetic. In optical encoders, a slotted or transparent disk with opaque zones is coupled to the shaft. A photointerrupter detects the cutting of a light beam as the disk passes. In magnetic sensors, one or more magnets are coupled to the actuator, and a hall sensor is used to detect the passage of the magnet by the sensor.

Encoders are common components, and almost inevitable, in electronics and robotics projects, both in the home and industrial fields.

In both types of sensors, in the intervals in which we do not detect, we are “blind,” so the finer the step (finer slots, or more magnets), the better precision we will have.

However, although they greatly improve control capacity, they do not make us immune to, for example, wheel slippage. Remember, knowing how much a motor has turned does not mean knowing the position of the vehicle.

Conclusion

All these factors are related, and the design must be approached globally. For example, increasing the size of a robot implies a greater weight, which requires larger motors and components, which require greater consumption, which requires larger batteries, which in turn implies an increase in weight.

That is, as we increase the power of a robot or vehicle, all the components have to grow in harmony and the price quickly skyrockets.

Selecting the motor or actuator that best suits the particular conditions of our design and, of course, keeping the price as low as possible, is not an easy task and there is no single possible solution.

For this, it is necessary to know the characteristics, operation, advantages, and disadvantages of each type of actuator. For this reason, in the next entry, we will see the different types of rotary motors, and in the following one, other types of actuators, to select the ideal actuator for our Arduino projects.

Download the code

All the code in this post is available for download on Github. github-full