Datos personales

Mi foto
Algun dia, las maquinas también tendrán sueños...

martes, 24 de mayo de 2016

Robot Hexapodo, diario de Desarrollo.

El hecho de tener a mi alcance la posibilidad de fabricar y programar robots me resulta muy divertido.
Tiempo atrás, mirando vídeos en youtube me encontré con un robot realmente espectacular capaz de cambiar de hexapodo a una esfera, el robot se llama MorpHex, es realmente impresionante, aun estoy a mucha distancia de poder desarrollar algo como eso, pero puedo empezar con un robot hexapodo basado en el MorpHex, se trata básicamente de un Hexapodo con un "cuerpo expandible" idéntico al de este vídeo


Y ahora el mio:



Afortunadamente para los noobs como nosotros, Zenta el creador de éste robot, dejo plasmado su trabajo en internet, creo que actualmente Zenta ya no se dedica ha hacer robots pero podemos aprender mucho de su trabajo, se podría decir que voy a intentar replicar su robot, como es evidente no hay instrucciones y las piezas para hacer el robot no se pueden conseguir, es necesario fabricarlas, al principio considere usar la impresión 3D pero termine decidiéndome por cortarlas en acrílico yo mismo como lo hice con el Quadrupedo, el acrílico de 3mm. que estoy usando me parece bastante resistente y rígido, lo ideal seria cortarlas en aluminio pero eso quiza lo deje para una futura versión encontrar los engranes fue algo difícil pero en los desperdicios electrónicos se encuentra gran variedad de engranes viejos sacados de videocaseteras o mecanismos de minicomponentes, ahí fue donde encontré los engranes correctos, para comenzar tendría que hacer el cuerpo y recientemente lo he terminado, les dejo algunas fotos de lo que llevo hasta ahora

viernes, 15 de abril de 2016

Comentarios de Desarrollo de Robot Quadrupedo

Gracias por visitar el blog, en unos días subiré las medidas del robot y después haré otro vídeo explicando el código, gracias!


domingo, 10 de abril de 2016

Robot Quadrupedo Spider, Arduino


En unos días escribiré una entrada con mas detalles y probablemente haga un video explicando el codigo, por lo pronto les dejo algunas características del robot...

miércoles, 30 de marzo de 2016

Encoder óptico e interrupciones con Arduino.

Durante mi construcción del robot balancin me vi en muchos problemas en cuanto a la información de encoders ópticos con arduino, por eso me dispuse a hacer este post para explicar, una vez mas, muy brevemente su funcionamiento, en este caso voy a usar los siguientes materiales.

- Arduino Uno.
- Motor Faulhaber con reducción
- Modulo driver de motores L298n
- Protoboard
- 2 resistencias de 1K
- 4 resistencias de 10K
- 2 leds
- 1 resistencia de 120 ohms
y otras cosas como cables y una fuente de 12v. para el motor

Por supuesto tendrán que ver el vídeo para continuar




las conexiones son las siguientes:

viernes, 26 de febrero de 2016

Robot Balancin VI: Bluetooth y Desplazamiento

Aunque para algunos el hecho de mantener un robot en vertical sin caerse será suficiente, otros desearán hacer algo un poco más complejo, mantener el equilibrio y desplazar al mismo tiempo el robot no es tarea fácil, hay que considerar que el ajuste del control PID deberá ser lo suficiente estable y fino para lograr esto, ya que me es imposible decirles el valor exacto de sus variables PID es necesario que ustedes encuentren dichos valores con la ya clásica prueba y error y siguiendo las recomendaciones que hice en la publicación anterior, asumiendo que su robot tenga una estabilidad razonable podría considerar agregar un receptor Bluetooth para enviar y recibir datos y con ello modificar la dirección de desplazamiento del robot, ademas, la adición del módulo hace más fácil ajustar el PID, el módulo que utilizaremos será el ya bien conocido HC-05(funciona también el HC-06), un modulo muy economico y facil de usar, la coneccion es la siguiente:


Ajustando el PID con ayuda del módulo Bluetooth.

martes, 16 de febrero de 2016

Robot Balancin V: El controlador PID.

En esta ocasión veremos un poco de programación, probablemente el proceso más difícil de desarrollar para mi fue el Controlador PID (Proporcional, integral, Derivativo), pero por supuesto estoy dispuesto a compartir mi explicación  para ustedes de modo que les paresca lo mas sencillo posible, el controlador PID usa tres acciones distintas para mantener el error lo mínimo posible en un sistema inestable, nuestro sistema es el robot, el setpoint es el ángulo ideal, es decir el ángulo  en donde se encuentra en posición vertical, como ya saben el robot es incapaz de mantenerse en equilibrio sin mover sus llantas hacia un lado o hacia el otro, la señal PWM aumenta si la perturbación en el sistema es alta, y esta señal está determinada por el PID.


Fórmula del algoritmo PID.

Aunque la fórmula parezca intimidante escribirla en el programa solo requiere de unas cuantas líneas de código, veamos que representan las siglas del PID.

jueves, 11 de febrero de 2016

Robot Balancin IV: El sensor MPU6050.

Veamos a grandes rasgos el funcionamiento del sensor MPU6050, un pequeño módulo de aproximadamente 2x2x0.2 cm. que nos entrega datos sobre el ángulo de rotación y aceleración que aplicamos sobre él, este chip nos proporciona mediciones cuyo funcionamiento se basa en el efecto coriolis, , aquí es donde se nos dificultan un poco las cosas, el sensor se comunica con Arduino a través del protocolo I2C, este protocolo utiliza un bus de datos serie para enviar y recibir información entre los procesadores atmega328p el MPU6050, los datos llegan "crudos" y llenos de ruido electrónico, el sensor detecta cualquier movimiento/aceleración y esto genera gran cantidad de errores

Rojo: Medición con ruido electrónico   Azul: medición ideal


En la grafica podemos observar en rojo los datos sin procesar y

martes, 9 de febrero de 2016

Robot Balancin III: El módulo L298n

Nueva versión de Robot Balancin CLICK AQUÍ para verla!


Ahora ya tenemos conectados los encoder y motoreductores listos, para controlar los motores se requiere una fuerza superior a la que la tarjeta arduino nos puede entregar, y con fuerza me refiero a corriente, cualquier tarjeta arduino uno es incapaz por sí sola de entregar el voltaje y corriente necesarios, esto se resuelve con el extremadamente popular puente H doble, el módulo L298n.

lunes, 8 de febrero de 2016

Robot Balancín II: Motorreductores y Encoders.

Nueva versión de Robot Balancin CLICK AQUÍ para verla!

Cuando comencé con este proyecto me tomo algo de tiempo encontrar unos motorreductores con encoder óptico integrado de 2 canales(para medir la dirección del robot es necesario 2 canales por motor), los motores polulu eran una opción pero estan algo caros así que mejor opte por buscar otras opciones,  finalmente me encontré con los motores Namiki 11201755, (costo aproximado 10$*) estos motores soportan 12v. y hasta 1A. e incluyen encoder de 2 canales, pero me enfrentaba con un nuevo problema, el torque era demasiado alto, los motores mencionados trabajan un torque de 150:1,


domingo, 7 de febrero de 2016

Robot Balancín, Tutorial. I Parte

Nueva versión de Robot Balancin CLICK AQUÍ para verla!

La primera vez que vi un robot balancín quedé fascinado ante semejante artefacto, aquel video mostraba un robot bastante estable, pero por supuesto llegaron a mi mente muchas preguntas lógicas, ¿como "sentía" su inclinación? ¿como se calculaba la fuerza con la que reaccionaban las llantas? ¿como se estabiliza ante una perturbación? y es que para nosotros el equilibrio en nuestros cuerpos es natural, ni siquiera hay que pensar en ello, pero nuestros cerebros hacen el trabajo de forma inconsciente, en el presente tutorial tratare de despejar las dudas que alguna vez me intrigaron y de paso les mostrare las técnicas que a grandes rasgos les ayudarán a montar su propio robot de este tipo, cabe aclarar que se requieren de ciertos conocimientos técnicos sobre electrónica o programación que asumiré ustedes ya conocen, de cualquier forma Internet es un lugar vasto en donde seguramente encontrarán las respuestas a las pequeñas problemáticas que podrían surgir, habiendo dicho esto, comencemos...