El proceso para crear un robot de minisumo como un pro.

 


Ya que has llegado hasta aquí permíteme contarte el proceso por el que pasé para crear la versión más reciente de mis minisumos, para construirlo no solo me tocó perder en muchos torneos en la categoría de minisumo autónomo, también me tomó tiempo y dinero, sin embargo, durante el proceso, he aprendido tanto de mis errores como de otros competidores y quiero compartir mi experiencia contigo.

Mi primer robot de mini-sumo estaba hecho con chasis de plástico, 2 sensores analógicos Sharp 10-80cm, batería de LiPo de 2S, un puente H L298 motores potentes que encontré entre las piezas que acumulaba en ese momento, para mover el robot tenía que incorporar una caja de engranes que diseñé e imprimí en 3D, ya tenía experiencia haciendo cajas de engranes en plástico para MegaSumo pero no la suficiente para una escala menor, de modo que los engranes llegaron a barrerse.


Si llegas a hacer una caja de engranes a esta escala debes asegurarte que el piñon que va pegado al motor no se barrerá, esto puedes lograrlo con un tornillo prisionero. Como en la siguiente imagen:

Luego de asegurarte que no se barrió el piñón la lubricación de los engranes es importante. Así que tómalo en cuenta. Yo llegué a usar grasa para rodamientos.

Después de mi primera competencia, opté por comprar los motor-reductores con engranes de metal. Esto hizo que mi robot pudiera ser más pequeño, además con el consejo de un amigo con más experiencia, agregue otros elementos como la base de metal, un convertidor CD Boost, mejores gomas, el diseño cambió a ser algo más llamativo.

 

Pero antes de llegar a este diseño más llamativo te muestro los prototipos que imprimí hasta lograr el resultado anterior.

MiniSumo prototypes

 

En cuanto a la programación esta se volvió más compleja al punto en el que no pude darme cuenta que entraba en un ciclo y no salía de este hasta que se cumpliera cierta condición.  Esto debido a que tenía la mala práctica de usar muchas funciones y no crear mis librerías, esto me dejaba todo el código en un solo archivo y era fácil perderme entre tantos bloques de código.

Por cierto, esto anterior también se hubiera solucionado con tan solo cambiar el tipo de sensores analógicos a digitales. Con los analógicos de alguna manera conseguí hacer una especie de filtro que me ayudo a sensar con menor ruido e incluso a 2cm de distancia, pero al ser solo dos sensores y con tiempo de respuesta de 40ms el robot estaba limitado a hacer movimientos lentos y girar para buscar al rival mientras avanzaba.

Otro punto a considerar son los puntos ciegos del robot, si tiene 2 sensores es muy probable que el contrincante llegue por la derecha cuando el robot está buscando por la izquierda.

En mi segundo torneo perdí contra un oponente en el que falló por aquella condición de código y los rines de plástico al estar hechos con impresión 3D necesitaba ponerle un perno que desalineaba los rines y tendían a hacer un giro que no era concéntrico al eje del motor y al chocar con otro oponente hacían que el robot diera pequeños saltos y perdiera tracción. Esto se pudo solucionar con rines de aluminio hechos en torno.

Exagerando la desalineación con los rines de plástico.

 

En mi tercer torneo, solo llegue cambiando los rines de plástico por unos de aluminio y mejore el algoritmo de búsqueda, pero como has de imaginar los puntos ciegos que tenía hicieron que mi robot terminara fuera primero.

Además, pasó que en un round olvidé encender el switch que había colocado para los motores. Si, físicamente instalé dos switchs, uno para la parte lógica y otro para los motores, desde entonces activo y desactivo los motores desde el código, de esta manera si no enciendo el único switch que hay, ningún led encenderá.

Después de todo esto, quería colocar más sensores para evitar puntos ciegos, mejor código con mejores practicas, implementar control PID, mejores puente H, mejores llantas, baterías con más voltaje, mejores motores, la base de metal hecha en fresadora y una navaja bestial, así fue.

Conseguí ponerle 5 sensores, de los cuales 3 eran industriales Omron E3Z-D62, y no lo vas a creer pero con todo y estas mejoras esta competencia tenía un nivel más difícil, de modo que apenas pude salir de la fase de grupos. Pero me llevé más conocimientos.

La navaja que tenía no era la mejor, era de un material muy dúctil, la distribución de los 5 sensores que tenía no era la más optima, todo indicaba que con 4 digitales más un sensor analógico para medir la distancia a la que se encuentra el oponente hubiesen sido mejor opción. Mis convertidores boost(2xXL6009) no estaban mal pero no eran indispensables y restaban eficiencia a mi robot en general.

Después de este torneo, presenté mi robot con un diseño más pensado en una materia de la universidad, ya que el mismo robot es un sistema mecatrónico, donde el diseño mecánico, el diseño de la tarjeta electrónica, la programación y el control, requieren cierto nivel técnico, este fue el resultado.


Sin embargo, no quedé del todo satisfecho, y por ello mejoré su diseño…

El día de hoy tengo a ORION, un robot que terminé unas semanas antes de la pandemia 03/2020 y espera un próximo torneo para participar con los miembros del club de la universidad donde egresé. Ya ganó un torneo de robótica virtual realizado en 2020, el Robot Rumple Play, puedes ver el video aquí.

Además de ORION también hice un robot RC llamado Aquiles del que hablare en otro post, pero si quieres, también puedes ver cómo le fue en el torneo virtual, 2do lugar.

Gracias al apoyo de varias personas que hicieron más agradable mi aprendizaje durante este proceso, he recopilado algunos consejos que me gustaría mostrarte en otro artículo (haz click aquí), así como compartirte el código utilizado para la competencia de Robot Rumble Play, en mi robot Orion.

Comentarios

Entradas populares de este blog

Consejos para mejorar tu minisumo y pasar de amateur a otro nivel