Ir al contenido principal

Motores

Cómo se mueve un robot

Un robot se mueve porque convierte energía eléctrica en movimiento. Esa conversión la hacen los motores, y son lo único del robot que produce un cambio físico en el mundo. Todo lo demás —sensores, programa, placa— existe para decidir cómo usarlos.

Dos formas de moverse

  • Por ruedas. Es lo más común en robótica educativa. La configuración típica lleva dos motores independientes, uno por rueda, más un punto de apoyo (una tercera rueda o un deslizador). Se llama tracción diferencial, y su ventaja es que no hace falta ningún mecanismo de dirección: para girar, alcanza con que las dos ruedas giren a distinta velocidad.
  • Por articulaciones. Es el caso de un brazo robótico. Acá no se busca trasladar el robot sino mover una herramienta hasta un punto. Los motores que se usan son servomotores, porque lo que importa es la posición exacta del brazo, no la velocidad.

La regla de la tracción diferencial

Con dos ruedas se pueden hacer todas las maniobras con solo dos órdenes:

Rueda izquierda Rueda derecha Movimiento
AdelanteAdelanteAvanza en línea recta
AtrásAtrásRetrocede
AdelanteParadaGira sobre la rueda detenida
AdelanteAtrásGira sobre su propio eje
Más rápidoMás lentoAvanza describiendo una curva

Fijate que no hay ninguna orden de "girar": girar es una consecuencia de mover las ruedas distinto. Entender esto es la mitad del problema de programar un robot móvil; la otra mitad es la sección de control de velocidad.

Qué motor conviene

Los tres tipos de motor que se usan en estos proyectos ya se vieron con detalle en EFSI I. Lo que importa acá es la pregunta práctica: ¿cuál elijo para mi robot? La respuesta sale de qué necesita el movimiento.

Lo que necesito Elijo Por qué
Avanzar y retroceder por el piso Motor de corriente continua con reductora Es simple y barato. La reductora reduce las vueltas y multiplica la fuerza, que es lo que hace falta para mover el peso del robot.
Llevar una pieza a un ángulo exacto Servomotor Sabe en qué posición está y la mantiene. Se le indica un ángulo, no una velocidad.
Girar una cantidad exacta de vueltas Motor paso a paso Se mueve en pasos que se pueden contar, así que el programa sabe siempre dónde está sin necesidad de sensores. Es lo que usan las impresoras 3D.

El problema de la corriente

Este es el concepto central de toda la página, y el que explica el 90 % de los robots que "no funcionan": un motor no se puede conectar directamente a un pin de la placa.

No es una recomendación de precaución, es una imposibilidad física. Un pin de la placa puede entregar unos 20 miliamperes. Un motor chico consume entre 200 y 2000. La diferencia es de cien veces, y al intentarlo pasa lo que tiene que pasar: el pin se daña, o la placa se reinicia sola.

Por qué la placa se reinicia

Este síntoma desconcierta mucho, porque parece un problema de software. El robot anda bien y de golpe, cuando arranca un motor, se queda como si lo hubieran desenchufado y vuelve a empezar el programa desde cero.

La causa es que el motor, al arrancar, pide mucha más corriente de la que consume funcionando, y la toma de donde pueda. Si comparte la alimentación con la placa, la tensión de la placa cae por un instante y el microcontrolador se reinicia. No es que el programa falle: es que se apaga y se prende.

Por qué hace falta un driver: la placa de control solo entrega la señal, y la corriente que mueve el motor sale de la batería a través del driver Placa de control da la señal, no la fuerza señal Driver puente H corriente Motor consume mucha corriente le entrega la corriente Batería o fuente la energía de verdad también alimenta la placa
La placa ordena, el driver entrega y la batería paga. La flecha punteada recuerda que la placa también necesita energía, pero por un camino aparte.

Las tres reglas que resuelven el problema

  1. Usar siempre un driver. Es el módulo que recibe la señal débil de la placa y entrega la corriente fuerte al motor. Los más usados llevan un puente H adentro.
  2. Alimentar los motores con su propia fuente. Baterías o una fuente aparte, no el regulador de la placa.
  3. Unir las masas. Los negativos de la placa y de la batería de motores tienen que estar conectados entre sí. Sin esa unión, la señal no tiene referencia y el driver recibe cualquier cosa. Es el error que más veces hace fallar un circuito que "está bien conectado".

El driver, además, aporta dos cosas más que se ven en las secciones siguientes: permite invertir el sentido de giro y permite regular la velocidad.

Control de velocidad

Un motor de corriente continua no tiene una entrada de "velocidad": gira más rápido cuanto mayor es la tensión que recibe. La forma obvia de regularlo sería bajarle la tensión, pero eso trae dos problemas: se pierde fuerza y se desperdicia energía en forma de calor.

La solución que se usa es mucho más eficiente: en lugar de bajar la tensión, el pin se enciende y se apaga muy rápido. Si el motor recibe corriente la mitad del tiempo, gira a la mitad de velocidad. Eso se llama modulación por ancho de pulso, o PWM.

Cómo se usa

  • Se escribe con analogWrite(pin, valor), donde el valor va de 0 a 255.
  • 0 es apagado total; 255 es encendido permanente, o sea la velocidad máxima.
  • 127 no es "la mitad de rápido" exactamente, pero se le parece: es la mitad del tiempo encendido.

Control de dirección

Para que un motor gire al revés hay que invertir la polaridad: lo que estaba en positivo pasa a negativo. Hacerlo con cables sería imposible mientras el robot se mueve, así que se hace con electrónica.

El circuito que lo resuelve se llama puente H, porque se dibuja como una H con cuatro interruptores. Según qué par de interruptores se cierre, la corriente sale por un lado o por el otro, y el motor gira en un sentido o en el contrario.

Qué pines usa

Un driver típico expone, por cada motor, tres conexiones a la placa:

Pin Qué controla Qué se le escribe
Dirección A (IN1) Uno de los dos interruptores del motor HIGH o LOW
Dirección B (IN2) El otro interruptor del mismo motor HIGH o LOW
Velocidad (ENA) El tiempo que está encendido, o sea el PWM De 0 a 255

Combinando los dos pines de dirección se obtienen los cuatro estados posibles de un motor:

IN1 IN2 Resultado
HIGHLOWGira en un sentido
LOWHIGHGira en el sentido contrario
LOWLOWParado, suelto: puede moverse si lo empujan
HIGHHIGHFrenado: el motor queda cortocircuitado y resiste

La alimentación del robot

El robot se mueve, y por eso no puede estar enchufado. La energía sale de baterías, y elegirlas y calcularlas es una parte del proyecto que se subestima y después se sufre.

Cuánto consume el robot

El consumo se calcula sumando los consumos de todas las piezas. Los motores se llevan casi todo:

Componente Consumo aproximado
Placa de control50 mA
Un sensor5 a 20 mA
Un motor chico con reductora200 mA funcionando, hasta 1 A al arrancar
Dos motores con reductora400 mA funcionando, hasta 2 A al arrancar

Dos conclusiones que salen de esa tabla: los motores son el 80 % del consumo, y el consumo normal no es el que importa para elegir la batería, sino el pico de arranque. Una batería que aguanta 400 mA pero no 2 A va a hacer que el robot se reinicie cada vez que arranque.

Qué batería usar

Tipo Tensión Para qué
Pilas AA o AAA 1,5 V cada una (4 dan 6 V) Pruebas y proyectos de pocas horas. Son baratas y fáciles de conseguir, pero se agotan rápido.
Li-ion 18650 3,7 V Robots que tienen que andar mucho tiempo. Se recargan y entregan mucha corriente.
LiPo 3,7 V por celda Robots que necesitan mucha potencia, como los de competencia. Entregan mucha corriente, pero hay que saber cargarlas y no descargarlas de más.

Calcular la autonomía

La autonomía se estima dividiendo la capacidad de la batería por el consumo. La capacidad se mide en miliamperes-hora (mAh): una batería de 2000 mAh puede entregar 2000 mA durante una hora, o 1000 mA durante dos.

autonomía (en horas) ≈ capacidad (mAh) ÷ consumo (mA)

Con una batería de 2000 mAh y un robot que consume 500 mA, el cálculo da unas 4 horas. En la práctica van a ser bastante menos, porque el pico de arranque de los motores consume de más y porque las baterías rinden menos de lo que dicen.

Resumen

Concepto La idea que hay que recordar
Tracción diferencialDos motores, uno por rueda. Girar es mover las ruedas a distinta velocidad.
Qué motor elegirDC con reductora para rodar, servomotor para posición, paso a paso para contar vueltas.
TorqueEl dato que decide la elección, antes que la velocidad.
El pin no alcanzaEntrega 20 mA; un motor pide cien veces más. Nunca directo.
DriverRecibe la señal débil y entrega la corriente fuerte. Lleva un puente H.
Masa comúnLos negativos de las dos alimentaciones tienen que estar unidos.
PWMEncender y apagar rápido para regular la velocidad. De 0 a 255.
Puente HCuatro interruptores que permiten invertir el giro sin tocar los cables.
AutonomíaCapacidad dividida por consumo. El pico de arranque manda.

Ver los tipos de motor y los componentes (EFSI I)