SON MUCHAS IMÁGENES, DEJEN CARGAR EL POST
Que tal amigos de taringa, en este post les mostrare mi último proyecto, se trata del diseño, construcción y programación de un robot balancin.
Éste tipo de robots llaman mucho la atención porque consiguen mantenerse en equilibrio sobre dos ruedas como por arte de magia. Pero no es magia, sino que utiliza un IMU (Unidad de Medición Inercial) que se basa en un acelerómetro y un giroscopio para saber el ángulo preciso de inclinación en cada eje y así poder controlar los motores en consecuencia.
TE PUEDEN TRAER UNA CERVEZAS HELADITAS
MATERIALES Y ELEMENTOS NECESARIOS
UN ARDUINO NANO
MODULO ACELEROMETRO MPU6050
BLUETOOTH HC 06
DRIVERS A4899
MOTORES PASO A PASO NEMA 17
ESPADINES HEMBRA
BAQUELITA PERFORADA
BATERIA LIPO DE 11.1V
El funcionamiento:
Básicamente el robot lucha por mantenerse en vertical, cuando el sensor detecta una variación en el ángulo ideal, el cual llamaremos Setpoint, los motores reaccionan moviéndose hacia esa dirección evitando la caída (el principio básico de un péndulo invertido), para lograrlo se implementará un control PID (Proporcional Integral Derivativo) que determinara la salida PWM de los motores.
Ángulos y el Filtro de Kalman.
Para algunos de ustedes es bien sabido que para usar el sensor MPU6050 se requiere "procesar" la información en crudo que entrega el giroscopio y transformarla en una señal limpia y estable, lo suficientemente estable para medir 1 grado de giro con precisión, para esto vamos a implementar el Filtro de Kalman, el cual es un modelo matemático, bastante robusto que calcula en base a los datos del sensor, la velocidad angular y aceleracion con gran precisión.
Chasis
En internet se encuentran todo tipo de formas y tamaños de balancines, para éste en particular lo único que hay que considerar es: tener una estructura para la electrónica, no debe ser demasiado alto lo mejor es que el diámetro de sus ruedas sea 1/3 de la altura del robot, las baterías pueden quedar en la parte de arriba o abajo, el material a usarse debe ser lo más ligero y resistente posible, yo use madera mdf.
AQUÍ EL DISEÑO QUE HICE EN SOLIDWORKS
Motores paso a paso
Los motores paso a paso (P-P) pueden verse como motores eléctricos sin sistema de conmutación. Típicamente, todas las bobinas del motor están en el estator y el rotor es, o un imán permanente o, en el caso de motores de reluctancia variables, un bloque de algún material magnéticamente blando. Toda la conmutación debe ser manejada externamente por el controlador del motor y, habitualmente, los motores y controladores están diseñados para que el motor pueda ser mantenido en una posición o rotar en uno u otro sentido. La mayoría de estos motores pueden ser manejados a frecuencias de audio permitiendo un giro rápido y, con un controlador apropiado, pueden ser arrancados y parados en posiciones controladas.
Motor a pasos Bipolar: Estos tienen generalmente cuatro cables de salida. Necesitan ciertos trucos para ser controlados, debido a que requieren del cambio de dirección del flujo de corriente a través de las bobinas en la secuencia apropiada para realizar un movimiento. Esto hace que la controladora se vuelva mas compleja y costosa. Su uso no es tan común como en el caso de los de tipo unipolar.
Después hay una placa que me hice que contiene los dos drivers de los motores Pap ,unos Pololu drv8825 ,junto a sus condensadores de desacoplo y sus jumperes para configurar los micropasos. Yo los he usado a 1/16 , obteniendo 3200 pasos por vuelta y asi hacer que su movimiento sea muy suave.
DIAGRAMAS DE CONEXIÓN
Conexión del driver.
Conexión del acelerómetro MPU 6050
Conexión del módulo Bluetooth.
PARA CONTROLARLO USO ESTA APLICACIÓN PARA ANDROID QUE LA PUEDEN DESCARGAR GRATIS
ARMADO DE LA PLACA DE CONTROL
MONTAJE DE LOS MOTORES PASO A PASO
ESTOS MOTORES LOS ENCONTRÉ EN LA CHATARRA, LOS SAQUE DE UNAS IMPRESORAS MATRICIALES QUE YA NO SERVÍAN
ARMADO DEL CHASIS
MONTAJE DEL CIRCUITO Y LA BATERÍA
FUNCIONAMIENTO DEL ROBOT