DESARROLLO DE UN ROBOT PARA LA...

5
287 DESARROLLO DE UN ROBOT PARA LA COMPETENCIA LUCHA SUMO DE ROBOTS DEL 5TO. ENCUENTRO ESTATAL DE PROTOTIPOS DE ROBÓTICA Y DESARROLLO TECNOLÓGICO, MICHOACÁN 2015 María Luisa Romero Muñoz 106 , Leonardo Romero Muñoz 107 y Moisés García Villanueva 108 Resumen Se describe la construcción de un robot móvil que participará en la competencia de “Lucha sumo de robots” del “5to. Encuentro estatal de prototipos de robótica y desarrollo tecnológico, Michoacán 2015”. Se trata de un robot de 4 ruedas acopladas a motores de CD con cajas de reducción de engranes, y una batería LIPO de 11.1 volts, 6600 mAH. Cuenta además con sensores infrarrojos de distancia en el rango 10-150cm, para detectar al robot oponente; un arreglo de sensores reflexivos en las esquinas del robot, dirigidos al piso, para detectar cuando está cerca de salirse del tablero. El robot incorpora un microcontrolador arduino mega y una computadora de tarjeta Raspberry Pi. El microcontrolador procesa las entradas de los sensores y controla los motores; la Raspbery Pi procesa la entrada de un ratón, colocado en el centro del robot, que funciona como odómetro. Se describen tanto los elementos de hardware, como los algoritmos y las estrategias de control y procesamiento utilizadas. Se espera que este robot tenga un buen desempeño en la competencia de lucha sumo de robots de este año. Palabras Clave: Robot móvil, robot sumo, encuentro robótica Michoacán 2015 Introducción Desde hace 4 años se llevan a cabo competencias estatales de robótica en Michoacán y una de ellas se llama “Lucha sumo de robots”. La figura 1 muestra un ejemplo de una lucha sumo de robot. La competencia consiste en colocar dos robots dentro de un campo de batalla definido por la zona plana de color negro, limitada por la franja circular de color blanco, como se observa en la figura. El robot ganador será el que logre empujar al otro y sacarlo del tablero. De acuerdo a las reglas de la competencia los robots deberán ser autónomos, con dimensiones máximas de un cuadrado de 20cm x 20cm, sin altura limitada y un peso máximo de 3 kg. 106 Facultad de Ingeniería Eléctrica, Universidad Michoacana de San Nicolás de Hidalgo; [email protected] 107 Facultad de Ingeniería Eléctrica, Universidad Michoacana de San Nicolás de Hidalgo; [email protected] 108 Facultad de Ingeniería Eléctrica, Universidad Michoacana de San Nicolás de Hidalgo; [email protected]

Transcript of DESARROLLO DE UN ROBOT PARA LA...

Page 1: DESARROLLO DE UN ROBOT PARA LA …dep.fie.umich.mx/~lromero/my_papers/2015_Congreso_CECTI_paper... · corresponden a “Ant/Beetle Robot Tire” del proveedor Lynxmotion, ... distancia,

287

DESARROLLO DE UN ROBOT PARA LA COMPETENCIA LUCHA SUMO DE ROBOTS DEL 5TO. ENCUENTRO ESTATAL DE

PROTOTIPOS DE ROBÓTICA Y DESARROLLO TECNOLÓGICO, MICHOACÁN 2015

María Luisa Romero Muñoz106, Leonardo Romero Muñoz107 y Moisés García Villanueva108

Resumen Se describe la construcción de un robot móvil que participará en la competencia de “Lucha sumo de robots” del “5to. Encuentro estatal de prototipos de robótica y desarrollo tecnológico, Michoacán 2015”. Se trata de un robot de 4 ruedas acopladas a motores de CD con cajas de reducción de engranes, y una batería LIPO de 11.1 volts, 6600 mAH. Cuenta además con sensores infrarrojos de distancia en el rango 10-150cm, para detectar al robot oponente; un arreglo de sensores reflexivos en las esquinas del robot, dirigidos al piso, para detectar cuando está cerca de salirse del tablero. El robot incorpora un microcontrolador arduino mega y una computadora de tarjeta Raspberry Pi. El microcontrolador procesa las entradas de los sensores y controla los motores; la Raspbery Pi procesa la entrada de un ratón, colocado en el centro del robot, que funciona como odómetro. Se describen tanto los elementos de hardware, como los algoritmos y las estrategias de control y procesamiento utilizadas. Se espera que este robot tenga un buen desempeño en la competencia de lucha sumo de robots de este año. Palabras Clave: Robot móvil, robot sumo, encuentro robótica Michoacán 2015

Introducción Desde hace 4 años se llevan a cabo competencias estatales de robótica en Michoacán y una de ellas se llama “Lucha sumo de robots”. La figura 1 muestra un ejemplo de una lucha sumo de robot. La competencia consiste en colocar dos robots dentro de un campo de batalla definido por la zona plana de color negro, limitada por la franja circular de color blanco, como se observa en la figura. El robot ganador será el que logre empujar al otro y sacarlo del tablero. De acuerdo a las reglas de la competencia los robots deberán ser autónomos, con dimensiones máximas de un cuadrado de 20cm x 20cm, sin altura limitada y un peso máximo de 3 kg.

106Facultad de Ingeniería Eléctrica, Universidad Michoacana de San Nicolás de Hidalgo; [email protected] 107Facultad de Ingeniería Eléctrica, Universidad Michoacana de San Nicolás de Hidalgo; [email protected] 108Facultad de Ingeniería Eléctrica, Universidad Michoacana de San Nicolás de Hidalgo; [email protected]

Page 2: DESARROLLO DE UN ROBOT PARA LA …dep.fie.umich.mx/~lromero/my_papers/2015_Congreso_CECTI_paper... · corresponden a “Ant/Beetle Robot Tire” del proveedor Lynxmotion, ... distancia,

288

Figura 1. Ejemplo de una lucha sumo de robots.

El robot debe tener sensores que le permitan conocer si está situado en la zona de color negro o si ya alcanzó la zona blanca y está próximo a salir. También debe tener algún medio para localizar al robot oponente. Finalmente deber tener un medio efectivo de locomoción y control de movimientos para empujar a su oponente, evitando salir del tablero. En este artículo se describe brevemente las características principales de un robot adecuado para la lucha sumo. Además de implementar un mecanismo de tracción efectivo, así como sensores para el color del piso y para detectar al oponente, incorpora un mecanismo para sensar el movimiento del robot con respecto al piso, utilizando un pequeño ratón de los que se utilizan en las computadoras de escritorio. Con el ratón se puede estimar la distancia recorrida por el robot, así como la dirección del movimiento. Las personas que deseen profundizar en el área de robótica móvil pueden consultar los libros [R. Siegwart et al, 2011] y [G. Dudek y M. Jenkin, 2011] para conocer más sobre el área. Este artículo se organiza como sigue. En la sección 2 se describe los componentes de hardware del robot construido para la competencia de este año, así como los criterios de selección de los mismos. En la sección 3 se describe los aspectos más relevantes del software del robot y los algoritmos de control utilizados. En la sección 4 se analizan algunas conclusiones y se describen trabajos futuros a realizar, antes de la competencia de este año.

Componentes de hardware. El robot tiene forma cuadrada de 20cm x 20cm y utiliza un sistema de locomoción en base a 4 ruedas de tracción, una en cada esquina del cuadrado. Los componentes de cada rueda de tracción se ilustran en la figura 2. El motor modelo 25GA es de fabricación china, comprado a través del sitio http://www.aliexpress.com, con las siguientes características; motor de CD sin escobillas (brushless) de 120 rpm, 1A, 12V, con caja de engranes integrada y par máximo de 60 N*cm = 6.12Kg*cm. Las ruedas

Page 3: DESARROLLO DE UN ROBOT PARA LA …dep.fie.umich.mx/~lromero/my_papers/2015_Congreso_CECTI_paper... · corresponden a “Ant/Beetle Robot Tire” del proveedor Lynxmotion, ... distancia,

289

corresponden a “Ant/Beetle Robot Tire” del proveedor Lynxmotion, comprado a través del sitio http://www.lynxmotion.com, con dimensiones 5.4cm de diámetro y 2cm ancho. Estas ruedas han sido especialmente diseñadas por el pro€veedor para pequeños robots de batalla, donde se requiere una gran tracción. El acoplador de aluminio mostrado en la figura corresponde a un “Universal Hub” de 4mm, también de Lynxmotion, para acoplar la rueda al motor. Considerando el par máximo de los 4 motores y el radio de la rueda, el robot puede ejercer una fuerza máxima de tracción de 6.12/2.7*4= 9Kg, suficiente para empujar al robot oponente de 3Kg.

a) Motor b) Acoplador c) Ruedas Figura 2. Motor y rueda utilizada (imágenes tomadas de las páginas de los fabricantes).

El motor se fija a la placa del robot usando un soporte como el mostrado en la figura 3a. Para el control de los motores se utiliza una tarjeta de control dual de motores de CD, basada en el circuito integrado L298 (ver figura 3b) con capacidad para soportar una corriente de 2A por canal y picos de 3A, con voltajes de alimentación hasta 50V. Los motores del lado izquierdo del robot se conectan en paralelo y de igual forma los motores del lado derecho del robot; de esta manera los 4 motores son controlados por la misma tarjeta controladora. Si las 4 ruedas en el mismo sentido, el robot podrá avanzar o retroceder. Si las ruedas izquierdas giran hacia adelante y las ruedas derechas giran hacia atrás, el robot girará en el sentido de las manecillas del reloj.

a) Soporte motor b) Driver L298 Figura 3. Componentes (imágenes tomadas de la página www.aliexpress.com).

Como sensores se utiliza un sensor del piso se utilizan 4 sensores reflexivos marca Pololu modelo QTR-1A. Se coloca un sensor en cada esquina del robot, con el fin de detectar el color del piso (blanco o megro) de cada esquina.

Page 4: DESARROLLO DE UN ROBOT PARA LA …dep.fie.umich.mx/~lromero/my_papers/2015_Congreso_CECTI_paper... · corresponden a “Ant/Beetle Robot Tire” del proveedor Lynxmotion, ... distancia,

290

Para detectar al robot oponente se utilizan 6 sensores analógicos infrarrojos Sharp GP2Y0A60SZLF para medir distancias de 10 a 150cm, 2 dirigidos al frente del robot, otros dos dirigidos hacia atrás y uno a cada lado del robot. Los sensores infrarrojos están colocados cerca del centro del robot, de manera que miden justamente distancias entre 10 y 150cm. Para ello se utiliza pequeños popotes recubiertos con cinta negra aislante para dirigir la emisión de la luz infrarroja. El propósito es doble: no se detectan como obstáculos los elementos internos del robot y ayudan a reducir el cono de dispersión de la luz, logrando así una medición más precisa del objeto que se encuentra justo enfrente del sensor. Se eligió el microcontrolador arduino mega para controlar los motores y recibir las 10 entradas analógicas de los sensores. Por cada motor se tienen tres salidas digitales: una para la señal de control PWM y dos para definir el sentido de giro o para frenar el motor. Para el procesamiento de los datos proporcionados por un ratón con conexión USB, colocado en la parte central del robot a poca distancia del piso, se utiliza un computadora de tableta Raspberry PI, la cual también se conecta mediante una conexión USB al microcontrolador arduino. Como fuente de energía del robot se utiliza una batería LIPO de 11.1V, 6600mAh la cual alimenta directamente al controlador de los motores y al microcontrolador arduino. Para alimentar la Raspberry PI se utiliza una fuente conmutada de 12V a 5V.

Software y algoritmos de control. La primera situación a resolver es calibrar los sensores reflexivos para que puedan detectar adecuadamente el cambio negro-blanco del tablero. Para ello implementó un programa de calibración en la Raspberry-PI para correrse en la pista donde se realizará la competencia. Así se ajustarán la salida de los sensores para detectar correctamente los colores blanco y negro del piso. Otra tarea es convertir la entrada de voltaje de los sensores de distancia en lecturas de distancia, en centímetros por ejemplo, tomando en cuenta que la salida del sensor es un voltaje con un comportamiento no lineal con respecto a la distancia al obstáculo más cercano. El microcontrolador arduino se utiliza para procesar en forma reactiva las mediciones de los sensores reflexivos, en particular para los casos donde se detecta el color blanco, indicando que el robot está próximo a salir del tablero. La computadora Raspberry PI se encargará de leer las lecturas del ratón e interpretarlas como vectores de desplazamiento del robot, así como procesar todas las lecturas de los sensores para detectar el robot oponente y planear la estrategia de

Page 5: DESARROLLO DE UN ROBOT PARA LA …dep.fie.umich.mx/~lromero/my_papers/2015_Congreso_CECTI_paper... · corresponden a “Ant/Beetle Robot Tire” del proveedor Lynxmotion, ... distancia,

291

movimientos del robot. Si el vector de desplazamiento corresponde con la acción de control de los motores, el robot no ha tenido contacto con el robot oponente, sin embargo, si no hay correspondencia, se logrará detectar que el robot está siendo arrastrado por el robot oponente. Por ejemplo se podrá detectar la situación donde el robot puede estar girando sus ruedas para avanzar, pero el desplazamiento del ratón indica que realmente esta retrocediendo. En tales casos, se tomarán acciones de control para intentar salir de esa situación. Mientras las acciones de control correspondan al desplazamiento del robot (indicado por el ratón), se tomará en cuenta la posición relativa a la franja blanca más cercana, con el fin de estimar a cuanta distancia está el robot del centro del tablero. Para lograr esto se implementan acciones básicas de avance y retroceso en línea recta mediante un algoritmo de control PID (Proporcional, Integral, Derivativo) aprovechando las lecturas del ratón. También se implementan las acciones básicas de giro a la izquierda y giro a la derecha.

Conclusiones y trabajos futuros. Se ha presentado brevemente las características principales de un robot para participar en la lucha sumo. Conviene mencionar que los componente chinos comprados en http://www.aliexpress.com/ tienen costos reducidos y costos de envío bajos o nulos, sin embargo manejan tiempos de entrega de 15 a 60 días. En nuestro caso, algunos componentes han tardado un poco más de un mes y otros faltan por llegar. Esperamos que lleguen con el tiempo suficiente para terminar de ensamblar el robot.

Referencias [G. Dudek y M. Jenkin, 2011] Gregory Dudek and Michael Jenkin. Computational Principles of Mobile Robotics. Second edition. Cambridge University Press. 2010. [R. Siegwart et al, 2011] Rolan Siegwart, Illah R. Nourbakhsh, and Davide Scaramuzza. Introduction to Autonomous Mobile Robots. Second edition, The MIT Press, 2011.