guia-seleccion-motores-para-arduino

Guía de selección motores y actuadores para Arduino

  • 13 min

Cuando vayamos a empezar un proyecto de robótica, un vehículo, o cualquier otro dispositivo móvil, una de las primeras decisiones será elegir los tipos de actuadores que vamos a emplear.

Un actuador es el nombre genérico que empleamos para cualquier dispositivo capaz de realizar acciones en el mundo físico y que podremos controlar desde un autómata o procesador como Arduino. En particular, usamos el nombre actuador para los dispositivos que son capaces de generar movimiento.

Seleccionar el actuador correcto para nuestro proyecto es una tarea complicada ya que disponemos de un gran abanico de opciones (motores de corriente continua, servos, motores paso a paso, motores brushless..) cada uno de los cuales tiene sus ventajas y desventajas.

::: Explicar todos los actuadores en una única entrada sería demasiado larga, así que en esta entrada veremos los factores y criterios que condicionan la elección de uno u otro

En la entrada siguiente veremos las características y funcionamiento de los principales tipos de motores rotativos, y en la última entrada de la serie otros tipos de actuadores disponibles. :::

Factores para elegir un motor o actuador

En general, al seleccionar un actuador deberemos contemplar las características mecánicas y eléctricas, el control que vamos a poder disponer y, por supuesto, el precio.

Sin embargo, conviene tener claro que las características de un motor no son mejores o peores que las del otro. Por ejemplo, en principio tener una velocidad o par pequeño puede parecer algo malo, pero no tiene porqué ser necesariamente así.

Imaginar que estamos haciendo un proyecto para hacer girar un cartel publicitario. Seguramente hacerlo girar a 12000 rpm no conseguirá el efecto que buscamos. O imaginar que queremos un motor con un par bajo para que, si alguien accidentalmente introduce un dedo, el motor se pare sin causar daños.

Con robots y vehículos también ocurre lo mismo. Lo mismo nos da que las ruedas puedan girar a gran velocidad si en cuanto tocan el suelo se paran. O que tenga el robot tenga par suficiente para subir una pared, pero a cambio se mueva a velocidad de tortuga.

Una vez refrescado esto, pasamos por fin a desglosar cada uno de los factores.

Características mecánicas

Las características mecánicas incluyen la velocidad, la fuerza o par que puede ejerce, la precisión y la carga máxima que puede soportar.

Características eléctricas

Las características eléctricas incluyen la potencia, la tensión y la corriente nominal. Esto condicionará el tamaño de los componentes, la sección de los conductores y la capacidad de las baterías.

Tensión nominal

Es la tensión a la que debemos alimentar el motor para un funcionamiento correcto, medida en Voltios. Frecuentemente también es la tensión máxima a la que podemos alimentar el dispositivo sin dañarlo.

En ocasiones la tensión nominal es un rango, en lugar de un único valor. El punto de trabajo variará en función de la tensión que apliquemos.

Valores frecuentes para motores y actuadores son 6V, 12V, y 24V.

Corriente nominal

Es la intensidad de corriente que debemos suministrar al motor para un funcionamiento correcto, medida en Amperios. De forma similar, frecuentemente la corriente nominal coincide con la corriente máxima a la que podemos alimentar el dispositivo sin dañarlo.

Algunos actuadores tienen una intensidad nominal inferior a la que circularía por la ley de Ohm según su tensión nominal y su resistencia. Por este motivo el controlador debe disponer de un dispositivo limitador de corriente.

Existen motores en un gran rango de intensidades nominales, desde unos pocos mA, hasta varias decenas en el caso de grandes motores.

Potencia eléctrica

La potencia eléctrica es la energía por unidad de tiempo absorbida por el actuador de la fuente de alimentación, medida en Watios (W), tiene la siguiente expresión,

A la vez, la potencia mecánica está relacionada con la potencia eléctrica según,

Donde μ es el rendimiento global del actuador, que engloba las pérdidas mecánicas por rozamiento, y las pérdidas eléctricas por perdidas en el cobre por efecto Joule, pérdidas por corrientes inducidas, pérdidas por histéresis magnéticas, y perdidas por dispersión de flujo magnético.

Por otro lado, la carga eléctrica consumida por el motor es

La unidad para la energía son los Julios (J), siendo unidades frecuentes Amperio-hora (Ah) y micro Amperio-hora (mAh).

Esta carga eléctrica es especialmente relevante al abastecer el actuador desde baterías, para determinar el tiempo de funcionamiento con una carga.

Características de control

Además de los criterios mecánicos y eléctricos, un factor que condiciona enormemente la elección del actuador (y frecuentemente es el más olvidado) es el control que vamos a disponer. De forma general, en un robot o vehículo tenemos interés en tres tipos de control:

  • Control de velocidad, saber a qué velocidad está avanzando el vehículo.
  • Control de posición, saber en qué punto está nuestro vehículo.
  • Control de orientación, saber la dirección a la que apunta el vehículo.

En principio,olvidaros de tener un control total sobre ninguna de estas variables. El mundo real no es perfecto, las ruedas patinan, los motores tienen respuestas no lineales, las cargas no están balanceadas, los componentes no son idénticos y perfectos, los sensores tienen deriva… Todos estos defectos hacen que, en general, no podamos tener una precisión total y absoluta.

El control de la velocidad es, en general, la más sencilla de medir o al menos estimar. En muchos actuadores actuamos directamente sobre su velocidad. Por otro lado, si sabemos la posición del actuador, podemos obtener su velocidad simplemente derivando (dividiendo) respecto al tiempo, y calcular su velocidad media.

La posición del vehículo es la más difícil de saber. Algunos actuadores permiten un buen control de posición, pero esto no garantiza saber la posición real del robot. En general, habrá que instalar sensores adicionales, como fotointerruptores o interruptores de fin de carrera, que nos permiten posicionar de forma absoluta el actuador.

Tenemos otro tipo de sensores que nos ayudan a determinar la posición de un robot, como los sensores de distancia por ultra sonidos o infrarrojos. El GPS nos permite obtener la posición real, pero tiene precisión de 0.5 metros, lo cual es demasiado alto para la mayoría de vehículos. Otras opciones incluyen sistemas de visión, o triangulación de balizas de radiofrecuencia.

Por otro lado, olvidaros de obtener la posición del vehículo por la integración de la velocidad (multiplicar velocidad x tiempo). Los errores en la medición de la velocidad se acumulan, y al final siempre tendréis una deriva en la posición. Usarlo sólo como última alternativa, o como interpolación entre posiciones dadas por sensores.

Por último, la orientación del robot es casi imposible de saber a través del control de los actuadores, por los mismos que la posición. Afortunadamente, en la mayoría de los casos podremos usar brújulas magnéticas y giroscopios para determinar con un alto grado de precisión la orientación del vehículo.

¿Sorprendido de no poder tener un control total de posición, velocidad y orientación de un robot? Aún te sorprenderá más que la mejor solución es no aspirar a un control total.

En la naturaleza, los humanos y otros animales no necesitan una precisión total, simplemente les basta con una aproximación y responder a estímulos del entorno. Tu robot debería estar diseñado con la misma filosofía.

Añadir un encoder

La solución más extendida para mejorar el control de nuestros actuadores es añadir un encoder. Un encoder es un dispositivo que permite registrar la posición del actuador, lo que significa disponer de un control total de posición y velocidad.

arduino-tipos-encoder

Los encoder más frecuentes son ópticos o magnéticos. En los encoder ópticos se acopla un disco ranurado o transparente con zonas opacas al eje. Un fotointerruptor detecta el corte de un haz de luz al paso del disco. En los sensores magnéticos se acopla uno o varios imanes al actuador, y se emplea un sensor hall para detectar el paso del imán por el sensor.

Los encoder son componentes frecuentes, y casi inevitables, en los proyectos de electrónica y robótica tanto en el ámbito casero como industrial.

En ambos tipos de sensores, en los intervalos en los que no detectamos estamos “ciegos”, por lo que cuanto más fino sea el paso (ranuras más finas, o más imanes) tendremos mejor precisión.

Sin embargo, aunque mejorar enormemente la capacidad de control no nos hacen inmune ante, por ejemplo, el deslizamiento de las ruedas. Recordar, saber cuánto ha girado un motor no significa saber la posición del vehículo.

Conclusión

Todos estos factores están relacionados y el diseño debe ser abordado de forma global. Por ejemplo, aumentar el tamaño de un robot supone un mayor peso, lo que requiere motores y componentes más grandes, que requieren un mayor consumo, que supone mayores baterías, que a su vez implican un incremento de peso.

Es decir, a medida que aumentamos la potencia de un robot o vehículo todos los componentes tienen que crecer en consonancia y el precio se dispara rápidamente.

Seleccionar el motor o actuador que mejor se adecúe a las condiciones particulares de nuestro diseño y, por supuesto, manteniendo el precio lo más bajo posible, no es una tarea sencilla y no hay una única solución posible.

Para ello lo necesario conocer las características, funcionamiento, ventajas y desventajas de cada tipo de actuador. Por este motivo en la próxima entrada veremos los distintos tipos de los motores rotativos, y en la siguiente otros tipos de actuadores, para conseguir seleccionar el actuador idóneo para nuestros proyectos de Arduino.