Sumo

52
Robot Luchador de Sumo (Diseño Electrónico) ÍNDICE 1. INTRODUCCIÓN 1 1.1. ANTECEDENTES ........................................................................................................ 2 1.2. OBJETIVO.................................................................................................................. 3 1.3. CONTENIDO DEL PROYECTO ...................................................................................... 3 2. HARDWARE 5 2.1. DISEÑO ..................................................................................................................... 5 2.1.1. Sensores.......................................................................................................... 5 2.1.1.1. Línea ...................................................................................................... 8 2.1.1.2. Posición ............................................................................................... 13 2.1.1.3. Contacto ............................................................................................... 18 2.1.1.4. Deslizamiento ...................................................................................... 20 2.1.2. Etapa de potencia ......................................................................................... 23 2.1.3. Sistema de control ........................................................................................ 28 2.2. REALIZACIÓN PRÁCTICA ......................................................................................... 30 2.2.1. Tarjeta de acondicionamiento de sensores ................................................... 31 2.2.2. Etapas de potencia ........................................................................................ 35 2.2.3. Tarjeta de control ......................................................................................... 37 2.2.4. Montaje conjunto.......................................................................................... 39 2.3. ALIMENTACIÓN Y CONSUMOS ................................................................................. 40 2.3.1. Electrónica.................................................................................................... 41 2.3.2. Potencia ........................................................................................................ 42 3. SOFTWARE 43 3.1. ESTRUCTURA DEL PROGRAMA ................................................................................ 43 3.2. ALGORITMO DE LUCHA ........................................................................................... 46 4. CONCLUSIONES 50 5. BIBLIOGRAFÍA 51

Transcript of Sumo

Page 1: Sumo

Robot Luchador de Sumo (Diseño Electrónico) ÍNDICE

1. INTRODUCCIÓN 1

1.1.ANTECEDENTES ........................................................................................................2 1.2.OBJETIVO..................................................................................................................3 1.3.CONTENIDO DEL PROYECTO......................................................................................3

2. HARDWARE 5

2.1.DISEÑO .....................................................................................................................5

2.1.1. Sensores..........................................................................................................5

2.1.1.1. Línea ......................................................................................................8 2.1.1.2. Posición ...............................................................................................13 2.1.1.3. Contacto...............................................................................................18 2.1.1.4. Deslizamiento ......................................................................................20

2.1.2. Etapa de potencia .........................................................................................23 2.1.3. Sistema de control ........................................................................................28

2.2.REALIZACIÓN PRÁCTICA .........................................................................................30

2.2.1. Tarjeta de acondicionamiento de sensores ...................................................31 2.2.2. Etapas de potencia........................................................................................35 2.2.3. Tarjeta de control .........................................................................................37 2.2.4. Montaje conjunto..........................................................................................39

2.3.ALIMENTACIÓN Y CONSUMOS .................................................................................40

2.3.1. Electrónica....................................................................................................41 2.3.2. Potencia ........................................................................................................42

3. SOFTWARE 43

3.1.ESTRUCTURA DEL PROGRAMA ................................................................................43 3.2.ALGORITMO DE LUCHA ...........................................................................................46

4. CONCLUSIONES 50

5. BIBLIOGRAFÍA 51

Page 2: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 1. INTRODUCCIÓN

1

1. INTRODUCCIÓN

El proyecto abordado consiste en el diseño y fabricación robot autónomo destinado

a participar en las competiciones de robots “Luchadores de sumo”, ciñéndose a la

normativa impuesta por el concurso Hispabot, cuya última revisión se adjunta como pliego

de condiciones.

Figura 1: Imagen de un combate de sumo.

El presente documento trata el desarrollo de los elementos electrónicos del robot,

mientras que el diseño y fabricación del conjunto mecánico se redactan en proyecto de fin

de carrera ‘Robot Luchador de Sumo (Diseño Mecánico)’, realizado por Alonso Fernández

Bombin. Cabe destacar que todas las fases, desde el comienzo del diseño hasta la

depuración del prototipo, se han llevado a cabo conjuntamente por los dos proyectistas,

presentándose por separado las partes mecánica y electrónica por razones académicas, y

considerándose este trabajo en paralelo necesario para la obtención de un resultado óptimo.

Es por esto que, para una mejor comprensión del funcionamiento del robot y algunas

decisiones de diseño, se adjunta un resumen del proyecto mecánico a modo de anexo.

Page 3: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 1. INTRODUCCIÓN

2

1.1. ANTECEDENTES

La motivación de realizar este proyecto surge de las características del mismo, ya

que integra una carga de trabajo elevada y la necesidad de aplicar diversidad de

conocimientos, junto con la gratificación de tratarse de un proyecto de ejecución, pudiendo

comprobarse prácticamente el resultado del mismo, y los requerimientos de trabajo en

equipo.

La idea inicial fue partir de un robot existente. El aspecto más destacable de este

robot es el increíble agarre logrado, sin embargo, se estimo oportuno aumentar la potencia

del mismo, así como reducir el elevado consumo de los motores, accionados por una etapa

de potencia a base de transistores MOSFET, permitiendo sustituir la pesada batería de

plomo empleada para alimentarlos por una más ligera. Por otro lado, se decidió cambiar el

sistema de control por uno menos complejo y más adecuado a las necesidades del robot, así

como reducir el tamaño de los distintos elementos para conseguir un conjunto integrado y

ampliar, en lo posible, la información útil recogida por el sistema sensorial. El robot en

cuestión puede observarse en la siguiente figura.

Figura 2: Aspecto externo del robot predecesor.

Page 4: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 1. INTRODUCCIÓN

3

Las decisiones antes mencionadas llevaron al uso de cuatro motores en lugar de dos

y al uso de baterías de menor tamaño, requiriéndose una modificación completa del chasis,

lo que junto con el rediseño completo de los sistemas electrónicos desembocó en la

creación de un robot completamente nuevo.

1.2. OBJETIVO

Se plantean como objetivos del proyecto la consecución de un sistema sencillo,

acorde con las necesidades que surjan, altamente integrado en el conjunto mecánico y fácil

de programar; ajustándonos a ciertos márgenes de disponibilidad de componentes, recursos

y coste.

Como objetivo de esta memoria, queda el representar una guía eficaz del proceso de

diseño y la ejecución del sistema electrónico de un robot, pudiendo ser una referencia útil

para el desarrollo de futuros proyectos.

1.3. CONTENIDO DEL PROYECTO

El siguiente texto se descompone fundamentalmente en dos bloques. En el primer

bloque, Hardware, se analizan sucesivamente las posibles opciones destinadas a resolver

las necesidades planteadas para las distintas partes del mismo, para luego describir las

soluciones de diseño adoptadas para cada uno de los circuitos, pasando por el sistema

sensorial, las etapas de accionamiento de los motores y el sistema de control. Tras esto, se

procede con la descripción de las soluciones adoptadas para la realización práctica de los

distintos elementos.

En el segundo bloque, Software, se explica el funcionamiento del programa creado

para gobernar el robot y de los recursos empleados por el mismo, seguido de los algoritmos

que definen el modo en que actuará el robot en cada situación.

Page 5: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 1. INTRODUCCIÓN

4

En la siguiente imagen puede observarse el aspecto externo del robot

completamente terminado.

Figura 3: Aspecto externo del robot terminado.

Page 6: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

5

2. HARDWARE

Denominamos hardware a la parte física o material de un sistema electrónico; para

su desarrollo es esencial conocer de forma detallada las funciones que este ha de cumplir,

así como el modo en que los datos deben fluir a través del mismo. Para un robot autónomo,

como es el caso, es fácil identificar la necesidad de tres bloques dentro del mismo:

• Un sistema sensorial que proporcione información del exterior.

• Un sistema motor que permita reaccionar a los “estímulos” del sistema sensorial

(etapa de potencia).

• Un sistema de control que reciba la información del exterior y la interprete de forma

adecuada para indicar como debe actuar el sistema motor.

La creación de estos elementos será descrita en dos fases: una primera fase de

diseño en la que se definirán los distintos componentes a emplear y las interconexiones de

los mismos (diseño de los circuitos), y una segunda fase de ejecución o realización práctica

de los mismos que comprenderá su fabricación e integración en el sistema mecánico.

2.1. DISEÑO

Para el diseño de nuestro hardware partimos de una serie de ideas fundamentales u

objetivos que condicionarán el mismo y con los que se intentará ser coherentes en todo

momento; estas ideas podrían resumirse en la búsqueda de un sistema sencillo, intuitivo,

de fácil programación y un coste reducido.

2.1.1. SENSORES

Un sistema sensorial adecuado es fundamental para el correcto funcionamiento del

robot, entendiendo por adecuado que dicho sistema proporcione información suficiente y

Page 7: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

6

de la forma más limpia posible al sistema de control para la toma de decisiones. De este

modo, un flujo de datos insuficiente o confuso desde los sensores se traducirá en

reacciones poco precisas o erróneas de los sistemas de actuación. Por otro lado, un flujo

excesivo de datos, por correctos que estos sean, complicará extraordinariamente los

algoritmos de toma de decisiones sin producir mejoras apreciables en el funcionamiento

del robot.

Para una correcta elección del número y tipo de sensores a emplear se hace

imprescindible contar con una definición clara de la función a desempeñar y el entorno en

que van a realizarse dichas funciones. En este caso, un robot luchador de sumo, se puede

afirmar que a grandes rasgos el objetivo del robot es expulsar al rival del área de combate y

evitar ser expulsado por el mismo, lo que se traduce en la necesidad de localizar al

oponente y reconocer los limites del ring.

El recinto de combate empleado en este tipo de competiciones consiste en un

círculo negro de 175cm de diámetro delimitado por una línea blanca de 5cm de anchura,

levantado 5cm sobre el suelo y rodeado por un perímetro libre de obstáculos de un metro

de ancho. La siguiente figura muestra un dibujo esquemático del ring en cuestión.

Figura 4: Dibujo esquemático del ring.

Page 8: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

7

La descripción anterior, además de otras consideraciones, se encuentran detalladas

en el pliego de condiciones junto con la normativa completa del concurso.

Teniendo en cuenta lo dicho anteriormente se obtienen las siguientes conclusiones

en cuanto a los sensores básicos necesarios:

• La presencia de una línea blanca delimitando el área negra donde ha de sucederse el

combate nos señala la necesidad de usar sensores con capacidad para distinguir el

color del suelo, y de este modo mantenernos en el interior del tatami.

• La existencia de un perímetro libre de obstáculos alrededor del tatami nos garantiza

que si la capacidad de “visión” del robot está tarada a unos límites adecuados, el

oponente será el único objeto a diferenciar, lo que descarta la necesidad de usar

sistemas complejos de visión artificial para localizarlo, en favor del uso de un

sencillo sistema de detección de obstáculos.

Es evidente pues, la necesidad de usar dos grupos imprescindibles de sensores que

nos aportarán la información mínima necesaria para poder operar. Denominaremos los

mencionados grupos como:

• Sensores de línea, destinados a reconocer el perímetro del tatami para evitar que el

robot se salga del mismo.

• Sensores de posición, cuya misión será localizar al robot oponente para intentar

expulsarlo del área de combate.

Además de los sensores mencionados, parece interesante contar con cierta

información adicional que nos permita reacciones más complejas cuando entramos en

contacto con el oponente, especialmente cuando somos atacados desde un costado o

cuando nuestra potencia o adherencia no resultan suficientes para contrarrestar un ataque

frontal, situaciones en las que se hace patente la necesidad de cambiar la habitual rutina de

ataque por una secuencia de huida que nos ayude a no ser expulsados del ring. Con esta

finalidad añadiremos dos nuevos grupos de sensores:

Page 9: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

8

• Sensores de contacto, que nos informaran de cuando el oponente nos esta tocando y

por donde.

• Sensores de deslizamiento, que nos indicarán si conseguimos avanzar en la

dirección deseada o por el contrario estamos siendo empujados o bloqueados.

Una vez definidos los cuatro grupos de sensores a emplear y la información que

deseamos obtener de ellos, procedemos, en los apartados siguientes, a definir el tipo y

numero concreto de elementos de cada uno y el diseño de las etapas de acondicionamiento

pertinentes.

2.1.1.1. LÍNEA

Para satisfacer la necesidad de detectar el color del suelo se emplearán sensores

ópticos de infrarrojos de corto alcance. Los sensores de infrarrojos son empleados de forma

habitual en aplicaciones de robótica, existe constancia del buen resultado de los mismos y

su principio de funcionamiento es relativamente sencillo.

Los sensores de infrarrojos constan básicamente de un emisor y un receptor de luz

infrarroja, generalmente colocados en paralelo, de éste modo, cuando un objeto se sitúa

ante ellos, el haz de luz emitido por el emisor es reflejado y captado por el receptor,

pudiendo determinarse la presencia o no de objetos ante él, como se muestra en la siguiente

figura.

Figura 5: Esquema de reflexión de un sensor de infrarrojos.

Page 10: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

9

Asimismo, la salida analógica producida irá en función de la cantidad de haz

reflejado, lo que nos permitirá determinar el color de la superficie, pues cuanto más clara

sea, más luz será devuelta al receptor, mientras que cuanto más oscura, más será absorbida

por la superficie en cuestión.

Determinado el tipo de sensores a utilizar y antes de elegir un modelo concreto y

diseñar los circuitos necesarios para su utilización, debemos decidir cuantos de ellos

debemos emplear así como su posición. Teniendo en cuenta la planta cuadrada de nuestra

estructura mecánica y la forma circular del área de combate, bastara situar cuatro sensores,

uno en cada esquina del robot, para garantizar la detección de la línea blanca que delimita

su perímetro.

Figura 6: Situación de los sensores de línea.

Elegido el número, tipo y posición de los sensores a emplear, nos decantamos por el

uso de sensores CNY70 debido a su extensión, bajo coste y pequeño tamaño. Estos

sensores son pequeños dispositivos en forma de cubo en cuyo interior cuentan con un

diodo emisor de luz infrarroja de longitud de onda del orden de 950nm y un fototransistor

que actúa de receptor situados en paralelo y apuntando en la misma dirección, de modo que

el fototransistor conducirá más cuanta más luz se refleje contra su base. Estos dispositivos

exigen una distancia de unos 0.3mm a la superficie a detectar para obtener una buena

sensibilidad.

Page 11: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

10

Figura 7: Aspecto externo de un CNY70.

Como se observa en la imagen, los CNY70 presentan una construcción compacta

integrada en un pequeño encapsulado con cuatro pines de conexión:

• Pin A: ánodo o entrada al diodo que actúa como emisor.

• Pin K: cátodo o salida del diodo.

• Pin C: colector o entrada del transistor que actúa como receptor.

• Pin E: emisor o salida del transistor.

A

K

E

C

Figura 8: Esquema de conexiones de un CNY70.

Para una correcta polarización del sensor, el diodo emisor debe conectarse entre

alimentación y tierra, siendo necesario incluir una resistencia adicional con el fin de limitar

la corriente que pasa por el mismo y que este no se queme, pues nuestra tensión de trabajo

será de 5V, estándar para este tipo de aplicaciones. Según se indica en la hoja de

características, incluida en los anexos de este proyecto, la corriente a circular por el led no

debe ser superior a los 50mA, aunque tampoco es necesario alcanzar este valor; de este

modo, con la adición de una resistencia de 330Ω, la mencionada intensidad queda limitada

a unos 11mA, valor apropiado para este circuito.

Page 12: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

11

Por otro lado, el fototransistor receptor también ha de ser polarizado entre

alimentación y tierra, teniendo en cuenta que la sensibilidad de la salida quedara

determinada por el valor de la resistencia que situemos entre esta y tierra. Para obtener una

salida que varíe de los 0V a 5V desde el negro hasta el blanco utilizaremos una resistencia

de 10K.

El circuito de polarización para cada uno de los sensores se muestra en la siguiente

figura.

330 10K

Vo

CNY70

5V

Figura 9: Circuito de polarización de un CNY70.

Una vez polarizados adecuadamente los sensores, debemos crear los circuitos de

acondicionamiento pertinentes para hacer que la señal recibida por la tarjeta de control sea

lo más clara, limpia y concisa posible. Puesto que el objetivo de estos sensores no será otro

que “avisar” en el momento que alcancemos el borde del tatami, es obvio que no

necesitaremos distinguir entre un amplio espectro de colores, sino únicamente entre dos

estados, para ello convertiremos la señal analógica obtenida a la salida del sensor en una

señal lógica que emita ‘0’ (0V) mientras el suelo sea de color negro, y ‘1’ (5V) cuando este

pase a ser de color blanco.

Para realizar con transformación descrita de la señal, la salida de cada CNY70 se

hará llegar a un operacional configurado como comparador no inversor; es decir, será

llevada al terminal positivo de un operacional, mientras que en el terminal negativo del

mismo se fijará una tensión de referencia, para lo que emplearemos un potenciómetro de

500K, capaz de darnos suficiente precisión a la hora de obtener un valor adecuado para

Page 13: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

12

dicha referencia. De este modo, la tensión obtenida en el terminal de salida de nuestro

operacional será de 5V cuando la señal de salida del sensor supere la tensión umbral

prefijada, y 0V cuando sea menor, siendo esta la señal que se hará llegar a la tarjeta de

control.

El circuito integrado seleccionado para realizar el acondicionamiento de las salidas

de los sensores es el LM324, un encapsulado de catorce pines que cuenta con cuatro

transistores operacionales y que será conectado entre tierra y 5V. La razón de seleccionar

este integrado radica en ser muy común, simple, barato, y en que nos permite acondicionar

las señales de los cuatro sensores con un solo integrado.

Figura 10: Aspecto externo y conexiones de un LM324.

El circuito completo diseñado para el funcionamiento de cada uno de los sensores

de línea se muestra a continuación. Los esquemas del circuito completo para los cuatro

sensores se adjuntan en capítulo de planos.

330 10K

-

+

1/4 LM324

3

21

411

Vo

CNY70

5V

500K

Figura 11: Circuito de acondicionamiento de un CNY70.

Page 14: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

13

Las pruebas realizadas a los CNY70 revelaron que la tensión de salida obtenida ante

el color negro es siempre inferior a 0.5V, mientras que ante el color blanco siempre supera

los 3V, comprobándose que fijando una tensión de referencia en torno a los 1.5V se

obtiene un resultado más que satisfactorio para nuestra aplicación.

2.1.1.2. POSICIÓN

Se nos plantean distintas opciones para resolver el problema de localizar al robot

oponente durante el transcurso de un combate. Comenzaremos por analizar los principales

candidatos en cuanto al tipo de sensor.

La primera opción planteada fueron los sensores de infrarrojos, aunque de un tipo

diferente al descrito anteriormente, mucho más adecuado para esta aplicación. Al igual que

los anteriores, este otro tipo de sensor de infrarrojos cuenta con un emisor y un receptor. La

luz emitida por un led infrarrojo pasa por una lente que concentra el haz en un único rayo

lo más concentrado posible, mejorando así la direccionalidad del sensor; esta rayo de luz

va recto hacia delante hasta que es reflejado por una superficie, rebotando con una cierta

inclinación según la distancia a la que esta se encuentre. La luz reflejada es concentrada de

nuevo por otra lente al retornar al dispositivo, de modo que todos los rayos inciden en un

único punto del sensor de luz infrarroja que contiene la parte receptora del mismo; este

sensor es un CCD lineal, y dependiendo del ángulo de recepción de la luz, esta incidirá en

un punto u otro de dicho sensor, pudiendo de esta manera obtener un valor lineal y

proporcional al ángulo de recepción del haz de luz, y por lo tanto a la distancia del objeto

que la ha reflejado.

Figura 12: Esquema de reflexión de un sensor de distancia por infrarrojos.

Page 15: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

14

La segunda opción barajada eran los sensores por ultrasonidos. Los ultrasonidos son

vibraciones del aire de la misma naturaleza que el sonido audible pero de una frecuencia

mas elevada, superior a 20000Hz, no audibles por el oído humano. Estos sensores, al

igual que los anteriores, se componen de un emisor y un receptor; el primero emite

impulsos de ultrasonidos que viajan a gran velocidad hasta alcanzar un objeto, entonces el

sonido es reflejado y captado de nuevo por el receptor de ultrasonidos. Comúnmente llevan

un controlador incorporado que hace al emisor lanzar una ráfaga de impulsos, y a

continuación empieza a contar el tiempo que tarda en llegar el eco, el cual será

proporcional a la distancia a la que se encuentre el objeto. De forma habitual, la señal

obtenida como salida del sensor consiste en un pulso de eco de anchura proporcional a la

distancia a la que se encuentra la superficie que lo ha reflejado.

A pesar de contar este último tipo de sensores con un alcance y precisión bastante

superior a los primeros, nos decantamos por el uso de sensores de infrarrojos, ya que su

funcionamiento es mucho mas sencillo, así como la interpretación de la salida que

producen, siendo además su coste notablemente menor. Por otro lado, no requerimos un

alcance demasiado elevado, dado el tamaño del área de combate, y en cuanto a la

precisión, concluimos que para nuestra aplicación, analizar la distancia a la que se

encuentra el obstáculo no nos proporcionaría grandes ventajas en cuanto a las posibles

respuestas del robot, y sin embargo complicaría de forma acusada la programación del

mismo.

Llegados a este punto, se plantean multitud de opciones en cuanto a la posición y

número de elementos a emplear, pasando por la posibilidad de usar incluso uno sólo

montado sobre un soporte giratorio, opción descartada por implicar el uso un encoder para

determinar la orientación en el momento de la lectura y un sistema mecánico más

complejo, teniendo por otro lado en cuenta que el coste de estos sensores no es elevado,

por lo que el uso de varios de los mismos no alcanzará costes prohibitivos.

Finalmente optamos por el uso de ocho sensores situados de forma que queden

cubiertas las cuatro diagonales del robot según se muestra en la figura de la página

siguiente.

Page 16: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

15

Figura 13: Situación de los sensores de posición.

La razón de seleccionar ésta orientación y no otra es principalmente que en este tipo

de combates, los robots participantes se hallan en constante movimiento, a fin de no

convertirse en un blanco fácil. Debido a este movimiento constante, los ángulos muertos

que quedan en perpendicular a los laterales resultarán rápidamente barridos por los

sensores más abiertos respecto a la dirección de avance. Los otros dos ángulos muertos

quedarán en el frente y la trasera de nuestro robot, diferenciando alante y atrás únicamente

por la dirección de avance, ya que nuestra mecánica funciona exactamente igual en ambos

sentidos. En cuanto al frente, si el oponte se halla allí situado, estaremos avanzando hacia

él, por lo que no será necesario reorientarnos, finalidad a la que están destinados estos

elementos, y en caso de salirse de nuestra trayectoria, será detectado por los sensores

situados de forma más paralela a la misma. Por otro lado, es prácticamente imposible que

el oponente se sitúe detrás nuestro sin haber sido detectado por los sensores orientados

hacia ambos lados de esta posición, y en caso de hacerlo, imposible que nos alcance antes

de que hallamos “rebotado” contra el perímetro exterior del tatami y por tanto avancemos

hacia él. Aparte de lo ya explicado, contaremos con los sensores de contacto en el caso de

que el rival nos alcance sin haber sido “visto”, aunque esta posibilidad será desarrollada en

el siguiente apartado.

Definido el número, posición y orientación de los sensores, pasamos a la selección

de un modelo concreto. Existen en el mercado multitud de estos sensores que difieren entre

otras cosas en cuanto a umbrales mínimo y máximo de detección y tipo de salida

Page 17: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

16

(analógica o digital); a continuación se muestra un gráfico comparativo de algunos de los

más comunes de la marca Sharp.

Figura 14: Comparativa de sensores de infrarrojos Sharp.

Los sensores seleccionados, por su rango de detección, disponibilidad y coste, son

los Sharp GP2Y0A21YK, que no se hallan reflejados en la comparativa anterior, pero

cuyas características son muy similares a las del modelo GP2D12, contando con salida

analógica y un rango de detección de 10 a 80cm según especificaciones, aunque en la

práctica comprobamos que el umbral mínimo es del orden de un centímetro, y el máximo

varía levemente en función de la luz ambiental y las características de la superficie del

objeto a detectar. Otros datos de estos sensores pueden consultarse en su hoja de

características, incluida en los anexos.

Figura 15: Aspecto externo de un Sharp GP2Y0A21YK.

Page 18: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

17

Los sensores elegidos cuentan con un conector de tres pines destinados a los

siguientes propósitos:

• Pin 1: tensión de salida.

• Pin 2: conexión a tierra.

• Pin 3: conexión a alimentación (5V).

Figura 16: Conexiones de un Sharp GP2Y0A21YK.

Como dijimos anteriormente, no deseamos conocer la distancia a la que se

encuentra el objeto detectado, sino sólo su presencia; por ello, transformaremos la señal

analógica obtenida a la salida de cada sensor en niveles lógicos: nivel bajo (0V) cuando no

halla presencia de ningún obstáculo, y nivel alto (5V) cuando el sensor detecte algo situado

ante sí.

Con el fin de realizar este acondicionamiento de la señal, se hará pasar la salida de

cada Sharp GP2Y0A21YK por un operacional configurado como comparador no inversor,

así que como hicimos previamente con los CNY70, la salida de cada sensor se conectará al

terminal positivo del transistor, manteniendo el terminal negativo conectado a una tensión

de referencia determinada por la posición de un potenciómetro de 500K, que nos dará

precisión más que suficiente para fijar dicha tensión. De este modo, obtendremos 5V a la

salida del operacional cuando la tensión a la salida del sensor supere el valor de referencia,

y 0V cuando sea inferior, siendo esta señal la que haremos llegar a la tarjeta de control.

Para realizar este proceso utilizaremos dos circuitos integrados LM324, capaces de

procesar cuatro señales cada uno de ellos como ya se ha descrito en el apartado anterior, y

por las mismas razones de disponibilidad, simplicidad y coste.

Page 19: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

18

El circuito diseñado para el funcionamiento de cada uno de los sensores de posición

se muestra a continuación. Los esquemas del circuito completo para los ocho sensores se

adjuntan en capítulo de planos.

Sharp

123

-

+

1/4 LM324

3

21

411

Vo

500K

5V

Figura 17: Circuito de acondicionamiento de un Sharp.

En las pruebas realizadas a los sensores de posición comprobamos que la tensión

obtenida a su salida, tanto al no tener delante ningún objeto, como al tenerlo a distancias

del orden de un metro, es siempre inferior a los 0.5V en diversas condiciones de luz

ambiental, con lo que será este el valor de referencia para nuestros comparadores,

conservando la mayor “capacidad visual” posible y garantizando que el oponente será el

único objeto detectable, ya que las especificaciones del área de combate definen un

perímetro de un metro libre de obstáculos alrededor del tatami.

2.1.1.3. CONTACTO

A la hora de detectar el contacto con el robot oponente parece adecuado el uso de

algún tipo de pulsador mecánico. Entre la infinidad de este tipo de elementos que es

posible encontrar en el mercado, nos decidimos por el uso de finales de carrera por su

sistema de accionamiento, disponibilidad y sensibilidad. Un final de carrera no es más que

un conmutador de dos posiciones con una palanca de accionamiento y un muelle de retorno

a la posición de reposo, en la que permanecerá salvo cuando este siendo pulsado.

Page 20: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

19

Figura 18: Aspecto externo y esquema de funcionamiento de un final de carrera.

Dada la planta cuadrada de nuestro robot, existen únicamente cuatro posibilidades

en cuanto a la posición en que podemos entrar en contacto con el oponente, así que bastará

con el uso de cuatro de sensores de contacto para cubrir todo el perímetro, ya que nuestra

carcasa exterior nos permitirá accionarlos ante un contacto en cualquier punto.

Figura 19: Situación de los sensores de contacto.

Ya que el objetivo de estos sensores será detectar el contacto, pretendemos recibir a

su salida un ‘1’ (5V) cuando exista contacto y un ‘0’ (0V) cuando no exista; para ello,

simplemente conectaremos el terminal de reposo del fin de carrera a tierra, mientras que el

terminal de activación estará puesto a 5V, siendo el terminal común la salida de nuestro

sensor.

Dada la naturaleza de la salida obtenida, sólo niveles bajo y alto, no será necesario

realizar un acondicionamiento de la señal, simplemente añadiremos una resistencia de

Page 21: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

20

10K, que hará las veces de pull-up y pull-down, entre el terminal común del fin de carrera

y la entrada de nuestra tarjeta de control, limitando así la corriente que llegará a esta

última.

El circuito para cada uno de los sensores de contacto se muestra a continuación. El

circuito completo para los cuatro elementos se adjunta en el capítulo de planos.

5V

Final de carrera

Vo

10K

Figura 20: Circuito de acondicionamiento de un final de carrera.

2.1.1.4. DESLIZAMIENTO

Una vez alcanzado el contacto frontal con el oponente, y con el fin de saber si

estamos consiguiendo nuestro objetivo de empujarle o por el contrario estamos siendo

empujados o bloqueados, pondremos en juego lo que hemos denominado sensor de

deslizamiento. Para cumplir esta función, y puesto que conocemos nuestro sentido de

movimiento, el método más intuitivo es añadir una rueda adicional independiente de la

tracción de nuestro robot sobre la que podamos leer su sentido de giro y así compararlo con

el avance pretendido.

Para determinar el sentido de giro de esta rueda adicional se nos plantean diversas

opciones, que van desde el uso de un encoder comercial hasta la creación de nuestro propio

sistema, pasando por la extracción del mecanismo de un ratón de ordenador. La primera

opción, el uso de un encoder comercial, fue inmediatamente descartada debido a su

elevado coste.

A grandes rasgos, el funcionamiento del encoder de un ratón se basa en la

interposición de un disco perforado entre dos emisores de infrarrojos y sus dos receptores

correspondientes, de modo que al girar interrumpe a impulsos la conexión entre estos.

Page 22: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

21

Figura 21: Aspecto interno de un ratón de ordenador.

Para determinar el sentido de giro, se espera el impulso positivo de uno de los

sensores de infrarrojos, momento en que el otro sensor estará cambiando de nivel al alto a

bajo o viceversa, siendo este flanco de subida o bajada el que determina el sentido. Por

tanto, el uso de éste mecanismo nos obligaría a tener que detectar flancos, por lo que esta

opción también fue descarta a favor de nuestro propio sistema, descrito a continuación, en

el que sólo es necesario leer estados.

El método finalmente utilizado para la detección del deslizamiento es de creación

propia, y consiste en acoplar un disco de tres colores a la rueda adicional, más

concretamente blanco, negro y un gris intermedio, orientando contra este un sensor con

capacidad para detectar el color, de modo que tras realizar una lectura y compararla con la

siguiente podremos determinar si hemos avanzado, retrocedido, o permanecido inmóviles.

El sensor seleccionado para realizar la lectura descrita fue el CNY70, ya descrito

anteriormente, y polarizado del mismo modo.

Figura 22: Sensor de deslizamiento.

Page 23: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

22

Como ya sabemos, la salida proporcionada por el CNY70 es analógica, y debemos

transformarla en una señal lógica, pero en este caso de dos bits, ya que existen tres estados

posibles. Para ello haremos llegar la salida del sensor a dos operacionales configurados

como comparadores no inversores tarados a distintos niveles, por tanto, esta será conectada

a los terminales positivos de ambos transistores, manteniendo sus terminales negativos

conectados a sendos potenciómetros de 500K, capacitados para regular, con suficiente

precisión, tensiones de referencia adecuadas para causar el disparo ante los colores gris y

blanco respectivamente.

De este modo, la tensión obtenida a la salida del comparador tarado para el color

gris será de 5V cuando la salida del sensor supere el umbral fijado, es decir, cuando nos

encontremos ante el gris y blanco, y será de 0V cuando no la supere, es decir, ante el

negro. En el segundo comparador, tarado para el color blanco, la salida será un nivel alto

(5V) sólo cundo el sensor este ante la parte blanca del disco, manteniéndose en nivel bajo

(0V) cuando este ante las partes negra y gris.

Finalmente, la señal obtenida en el conjunto de los dos bits que haremos llegar hasta

la tarjeta de control, podrá presentar los siguientes estados:

• 00: el sensor esta ante el negro.

• 01: el sensor está ante el gris.

• 11: el sensor está ante el blanco.

El circuito integrado seleccionado para realizar la transformación descrita a la señal

de salida del sensor CNY70 es el LM358. Este integrado se presenta en un encapsulado

con ocho pines de conexión, y cuenta con dos transistores operacionales; para su

alimentación, será conectado entre 5V y tierra. La elección de este circuito integrado se

basa, igual que la mayor parte de los elementos empleados, en su simplicidad,

disponibilidad y coste, además de ajustarse exactamente a nuestras necesidades.

Page 24: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

23

Figura 23: Aspecto externo y conexiones de un LM358.

El circuito completo diseñado para el funcionamiento de nuestro sensor de

deslizamiento se muestra en el siguiente gráfico.

Vo1

-

+

1/2 LM358

5

67

84

500K

10K

-

+

1/2 LM358

3

21

84

CNY70

330

500K

Vo2

5V

Figura 24: Circuito de acondicionamiento del sensor de deslizamiento.

Las tensiones seleccionadas como umbrales para la comparación en los

operacionales para el gris y el blanco fueron de 1.5V y 3V respectivamente.

2.1.2. ETAPA DE POTENCIA

La etapa de potencia es el elemento que hace de intermediario entre las partes

mecánicas y electrónicas, en este caso, más concretamente entre la tarjeta de control y los

Page 25: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

24

motores, adaptando la señal enviada por la primera y consiguiendo que los segundos se

encienda o apaguen y giren en uno u otro sentido.

La necesidad de usar esta etapa intermedia radica en la escasa capacidad para

suministrar corriente de la tarjeta de control, que por si sola no sería capaz de mover los

motores. El método más sencillo para lograr la intensidad requerida es mediante el uso de

un transistor de cierta potencia funcionando como un interruptor controlado por la señal

lógica emitida, es lo que comúnmente llamamos driver de corriente; de este modo, el

circuito digital sólo enciende y apaga el transistor, siendo este el que enciende y apaga el

motor.

Por otro lado, tenemos que la mayor parte de los dispositivos electromecánicos son

inductivos, como es el caso de los motores, por lo que la corriente en ellos no puede variar

de forma instantánea, tendiendo a mantener durante unos instantes la corriente en

circulación tras la apertura del circuito, pudiendo generarse una chispa capaz de dañar el

elemento que realizó la desconexión. Para evitar esto, se añade un diodo de protección a

fin desahogar la corriente residual producida por el elemento inductivo.

El sistema descrito es suficiente para mover los motores, pero no para nuestro

sistema de tracción, en el que han de poder girar en ambos sentidos, haciéndose necesario

el uso de puentes H. El puente H es un circuito basado en el uso de cuatro interruptores que

debe su nombre a su forma, y que habilitan el paso de la corriente en los dos sentidos a

través del elemento al que se conectan en función del estado de los mismos. En la figura

siguiente se muestra un esquema básico de un puente H.

Figura 25: Esquema básico de un puente H.

Page 26: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

25

Como hemos dicho, el uso de estos circuitos nos permitirá invertir la corriente en

los motores, permitiéndonos cambiar su sentido de giro sin necesidad de recurrir a voltajes

negativos. Su funcionamiento es muy sencillo, ya que como puede observarse,

permaneciendo A y D cerrados y B y C abiertos, la corriente circula en un sentido,

mientras que si mantenemos abiertos los primeros y cerrados los segundos, el sentido esta

será opuesto.

En la figura siguiente se muestran las dos posibilidades de funcionamiento descritas

sobre un puente H construido con transistores MOSFET.

Figura 26: Circulación de la corriente en un puente H.

Llegado el momento de diseñar esta etapa debemos tomar como punto de partida las

características de los motores que debemos alimentar, de los cuales sabemos que tienen

una tensión nominal de 12V y un consumo a plena carga no superior a los 1.5A. Estas

características hacen innecesario el uso de puentes de fabricación propia aptos para el

manejo de intensidades muy elevadas, ya que se encuentran en el mercado dispositivos

adecuados a nuestras necesidades. A continuación puede verse una imagen del tipo de

motor empleado.

Figura 27: Motor tipo empleado en la tracción del robot.

Page 27: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

26

El circuito integrado seleccionado fue el L298, el cual se presenta en un

encapsulado tipo Multiwatt con quince pines de conexión e integra dos puentes H

completos, aunque sin diodos de protección, pudiendo manejar intensidades de hasta 2A

por canal y tensiones de hasta 46V. Este integrado cuenta también con la capacidad de ser

controlado usando niveles lógicos TTL, lo que lo hace perfecto para nuestra aplicación si

además tenemos en cuenta su reducido tamaño, simplicidad de manejo y bajo coste. Esta

información se encuentra ampliada en la hoja de características correspondiente adjunta en

los anexos.

Figura 28: Aspecto externo de un L298.

Antes de proseguir, nótese que nuestro robot cuenta con cuatro motores, mientras

que el L298 sólo esta capacitado para accionar dos de estos, es por ello que utilizaremos

dos circuitos completos como el que se describe más adelante, uno para los motores de

cada lado.

Sin entrar en demasiados detalles, mencionar que el L298 cuenta con dos entradas

de control y dos salidas para la carga en cada canal, conexión a tierra, alimentación para la

lógica, y alimentación para la salida, además de un terminal de control para la corriente y

otro de encendido en cada canal. En la figura 26, mostrada en la página siguiente, puede

comprobarse la correspondencia de estos pines.

Page 28: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

27

Figura 29: Diagrama de bloque y conexiones de un L298.

Puesto que en ningún momento haremos girar los dos motores del mismo lado en

sentidos opuestos, es innecesario el uso de cuatro señales de control para manejarlos, por lo

que será cortocircuitado el pin 5 con el 10 y el 7 con el 12. Los pines 6 y 11, destinados a

encender o apagar cada puente H, serán igualmente cortocircuitados y llevados hasta la

tarjeta de control junto con los anteriores .El pin 8 quedará puesto a tierra, al igual que el 1

y el 15, pues no deseamos monitorizar ni limitar la corriente de la carga. El pin 9 quedará

conectado a alimentación de 5V, y al 4 se hará llegar la tensión de la batería destinada a

alimentar los motores, de la que hablaremos en el apartado correspondiente. Finalmente,

entre los pines 2 y 3 por un lado, y 13 y 14 por otro, serán conectados los motores con sus

correspondientes puentes de diodos de protección. El circuito resultante se muestra en la

siguiente figura.

Vi2

Vi1

L298

123456789

101112131415

Motor1

Vbat5V

Enable

Motor2

Figura 30: Circuito de una etapa de potencia.

Page 29: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

28

La tabla de verdad para el control de los motores a través del circuito diseñado se

adjunta a continuación.

Enable Vi1 Vi2 Estado de los motores

1 1 1 Detenidos

1 1 0 Giro en sentido 1

1 0 1 Giro en sentido 2

1 0 0 Desconectados

0 X X Desconectados

Tabla 1: Tabla de verdad para el control de los motores.

2.1.3. SISTEMA DE CONTROL

Desde un principio se tomo la decisión de basar el sistema de control en un

microcontrolador de la familia PIC por su versatilidad y sencillez. De entre las

innumerables tarjetas comerciales basadas en estos microcontroladores, la elegida fue la

tarjeta de control Mark III, más concretamente, la versión OOPic (Object Oriented PIC) de

la misma.

Figura 31: Tarjeta de control Mark III (Versión OOPic).

Page 30: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

29

La Mark III hace uso de un microcontrolador PIC16F877, que se presenta en un

encapsulado de 40 pines y cuenta con 33 líneas de entrada/salida divididas en cuatro

puertos, aunque dos de estas líneas quedarán inutilizadas para comunicación con la

EEPROM. No entraremos en detalles sobre la arquitectura de este microprocesador, ya que

los objetos implementados en el sistema OOPic nos harán posible el uso de toda su

capacidad sin necesidad de que accedamos a sus registros ni recursos internos de forma

explícita. Las disposiciones generales de la hoja de características del PIC16F877 se

adjuntan en los anexos.

Aparte del microcontrolador empleado, los elementos más relevantes que

encontramos en esta tarjeta de control son:

• Regulador de tensión MAX667CPA con indicador de batería baja.

• Resonador de 20MHz.

• EEPROM 24LC256.

• Adaptador RS-232 con conector DB9 para transmisión y recepción de datos.

• Conector I2C.

• Conector de 40 pines con acceso a las líneas de entrada/salida del PIC.

• Circuitos de acondicionamiento y conectores para sensores varios.

• Conectores para servos.

• Jumper de configuración de funcionamiento.

• Pulsador de reset.

Aunque ya hablaremos de ello en el apartado correspondiente de la realización

práctica, cabe mencionar que algunos de estos elementos no serán utilizados, por lo que

prescindiremos de ellos.

La interconexión con el resto de elementos del sistema se realizará a través del

conector de 40 pines; la tabla adjunta en la siguiente página muestra las correspondencias

de dichos pines y las conexiones realizadas para el flujo de datos desde los sensores hasta

la tarjeta de control, previo acondicionamiento, y de esta hasta las etapas de potencia para

el control de los motores.

Page 31: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

30

1 Local I2C Serial Data 2 GND

3 Local I2C Serial Clock 4 Power

5 Reset 6 I/O 15 → Línea 4

7 I/O 1 8 I/O 14 → Línea 3

9 I/O 2 10 I/O 13 → Línea 2

11 I/O 3 12 I/O 12 → Línea 1

13 I/O 4 14 I/O 11 → Contacto 4

15 I/O 5 16 I/O 10 → Contacto 3

17 I/O 6 → Desliz. 1 18 I/O 9 → Contacto 2

19 I/O 7 → Desliz. 2 20 I/O 8 → Contacto 1

21 +5V 22 +5V

23 GND 24 GND

25 I/O 16 → DirM1 1 26 I/O 31 → Posición 8

27 I/O 17 → EnableM2 28 I/O 30 → Posición 7

29 I/O 18 → EnableM1 30 I/O 29 → Posición 6

31 I/O 19 → DirM1 2 32 I/O 28 → Posición 5

33 I/O 20 → DirM2 1 34 I/O 27 → Posición 4

35 I/O 21 → DirM2 2 36 I/O 26 → Posición 3

37 I/O 22 38 I/O 25 → Posición 2

39 I/O 23 40 I/O 24 → Posición 1

Tabla 2: Conector de 40 pines de la tarjeta de control.

Para más información, los esquemas electrónicos y planos de la tarjeta de control

Mark III pueden consultarse en la sección de planos.

2.2. REALIZACIÓN PRÁCTICA

Llegado el momento de realizar físicamente los circuitos diseñados nos planteamos,

como principal objetivo, el logro de una alta integración en el conjunto mecánico, lo que

Page 32: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

31

nos impondrá unas restricciones importantes en cuanto al tamaño y forma de los

elementos. Este problema resulta agravado por la necesidad de realizar los circuitos

impresos en una sola cara debido a los medios disponibles. El programa utilizado para el

diseño de las tarjetas fue el Eagle.

2.2.1. TARJETA DE ACONDICIONAMIENTO DE SENSORES

Con el fin de reducir el número de elementos y cables de interconexión entre los

mismos se tomó la decisión de reunir en una sola tarjeta los circuitos de acondicionamiento

de todos los sensores.

Por otro lado, la incapacidad del regulador de tensión incluido en la tarjeta de

control para alimentar todo el sistema, nos llevo a la necesidad de añadir un regulador

adicional en la tarjeta de acondicionamiento de sensores, utilizando el anterior únicamente

para la alimentación de la electrónica de las etapas de potencia. El regulador empleado fue

el LM7805, presentado en un encapsulado de tres pines y capaz de proporcionarnos hasta

1A, más que suficiente para nuestras necesidades.

Figura 32: Aspecto externo y conexiones de un LM7805.

Al comienzo de la siguiente página se muestra un esquema del sencillo circuito de

alimentación empleado, que además del regulador sólo empleará dos condensadores para

estabilizar la tensión.

Page 33: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

32

LM7805

1

2

3Vo = 5VVin

0.1uF0.1uF

Figura 33: Circuito de alimentación de la tarjeta de acondicionamiento.

Las restricciones impuestas por el diseño del conjunto mecánico limitaron el

tamaño de la tarjeta a emplear a los 57x74mm, debiendo dejar la zona central de la misma

libre de electos abultados a fin de alojar el sensor de deslizamiento. En la siguiente figura

se presenta un esquema de la tarjeta diseñada y sus conectores, señalando en rojo las tomas

de alimentación (5V) y en negro las de tierra para los distintos sensores; como puede

observarse, se optó por el uso de una única toma para grupos completos de sensores por

cuestiones de espacio. El esquema completo del circuito conjunto, así como los planos del

circuito impreso pueden consultarse en la sección de planos.

C. Deslizamiento

C. Posición 2

C. Posición 1

C. Contacto

C. Tarjeta de Control

Alimentación

C. Línea

Figura 34: Conexiones de la tarjeta de acondicionamiento de sensores.

Page 34: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

33

Las correspondencias de los pines de los distintos conectores empleados están

reflejadas en las siguientes tablas según su situación en la figura anterior para una

interpretación directa, por lo que su numeración no resultará acorde con la de la imagen.

1Izq. Polarización Línea 1 1Dcha. Salida Línea 1

2Izq. Polarización Línea 2 2Dcha. Salida Línea 2

3Izq. Polarización Línea 4 3Dcha. Salida Línea 4

4Izq. Polarización Línea 3 4Dcha. Salida Línea 3

Tabla 3: Conector de sensores de línea.

1 Contacto 1

2 Contacto 2

3 Contacto 3

4 Contacto 4

Tabla 4: Conector de sensores de contacto.

1 Posición 1

2 Posición 2

3 Posición 3

4 Posición 4

Tabla 5: Conector de sensores de posición 1.

1 Posición 8

2 Posición 7

3 Posición 6

4 Posición 5

Tabla 6: Conector de sensores de posición 2.

1 Salida Deslizamiento 2 Polar. Deslizamiento

Tabla 7: Conector del sensor de deslizamiento.

Page 35: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

34

1 Deslizamiento 2 2 Deslizamiento 1

3 Posición 2 4 Posición 1

5 Posición 4 6 Posición 3

7 Contacto 1 8 Contacto 2

9 Contacto 4 10 Contacto 3

11 Posición 7 12 Posición 8

13 Posición 5 14 Posición 6

15 Línea 1 16 Línea 2

17 Línea 4 18 Línea 3

Tabla 8: Conector de datos para la tarjeta de control.

Los potenciómetros empleados para el ajuste de las tensiones de referencia de los

distintos sensores pueden identificarse en la siguiente figura.

Ajuste ref. Deslizamiento 2

Ajuste ref. Deslizamiento 1

Ajuste ref. Posición

Ajuste ref. Línea

Figura 35: Potenciómetros de ajuste de tensiones de referencia.

Page 36: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

35

En las siguientes imágenes puede observarse el resultado final de la tarjeta

completamente montada y su incorporación al sistema mecánico.

Figura 36: Tarjeta de acondicionamiento y montaje.

2.2.2. ETAPAS DE POTENCIA

A la hora de diseñar el circuito impreso de las etapas de potencia se decidió que las

tarjetas resultantes sirviesen para propósitos generales, no solamente para nuestra

aplicación; es por esto que se optó por no incluir en ellas los cortocircuitos

correspondientes entre las entradas de control de los puentes H descritos en el apartado

correspondiente de diseño y realizarlos posteriormente de forma externa, habilitando el uso

de las etapas para el manejo de dos dispositivos de forma independiente.

Aparte de lo ya mencionado, la única modificación realizada sobre los circuitos

diseñados fue la adición de condensadores entre las alimentaciones y tierra, recomendables

Page 37: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

36

cuando las fuentes de tensión no se hallan lo suficientemente cerca del circuito como para

garantizar su estabilidad.

Las limitaciones de tamaño impuestas por el diseño del conjunto mecánico

obligaron a reducir el tamaño de las etapas a tarjetas de 57x36mm. En la siguiente figura se

muestra un esquema de las tarjetas resultantes; el esquema de los circuitos electrónicos así

como los planos del circuito impreso pueden consultarse en la sección de planos.

Alimentación motores

Conexión motor B

Conexión motor A

Tierra

Figura 37: Tarjeta de etapa de potencia.

La correspondencia de los pines de conexión del conector de cinco pares empleado

se muestra en la siguiente tabla según su situación en la figura para una interpretación

directa, no correspondiéndose su numeración con la de la imagen.

1 Sense A 2 Dirección A 1

3 Enable A 4 Dirección A 2

5 Tierra 6 +5V

7 Enable B 8 Dirección B 1

9 Sense B 10 Dirección B 2

Tabla 9: Conector de las tarjetas de etapa de potencia.

Page 38: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

37

El resultado final de las tarjetas completamente montadas, así como su alojamiento

en el interior del robot puede observarse en las siguientes imágenes.

Figura 38: Etapas de potencia y montaje.

2.2.3. TARJETA DE CONTROL

A la hora de realizar el montaje de la tarjeta de control adquirida se prescindió de

algunos de sus elementos:

• No se incluyo el adaptador RS-232 ni los elementos adicionales para su

funcionamiento, incluyendo el conector DB9, pues la comunicación con la tarjeta se

realizaría a través del bus I2C.

• No se incluyeron los elementos de polarización y acondicionamiento de sensores ni

sus conectores correspondientes por no ser utilizados.

Page 39: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

38

• No se incluyeron los conectores destinados a servos por igual motivo que el punto

anterior.

• La resistencia de pull-up situada en la línea de interrupción externa fue suprimida

para habilitar el uso de esta para otra función.

El resultado final de la tarjeta montada según estas indicaciones y su incorporación

al conjunto puede verse en las siguientes imágenes.

Figura 39: Tarjeta de control y montaje.

Para la programación de esta tarjeta a través de del bus I2C fue necesaria la

fabricación de un cable específico cuyo esquema puede consultarse en el apartado de

planos. Al comienzo de la siguiente página puede observarse una imagen del mencionado

cable de programación.

Page 40: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

39

Figura 40: Cable de programación.

2.2.4. MONTAJE CONJUNTO

Se presenta a continuación un esquema básico de las interconexiones entre los

distintos elementos que conforman el conjunto diseñado.

Figura 41: Esquema de interconexión de elementos.

En cuanto a este esquema, cabe aclarar que a fin de aprovechar el indicador de

batería baja de la tarjeta de control, la alimentación de la tarjeta de acondicionamiento de

sensores fue tomada del pin correspondiente a la tensión no regulada del conector de 40

incluido en la Mark III, aprovechando las tomas de tensión reguladas del mismo para la

alimentación de la electrónica de las etapas de potencia.

Page 41: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

40

La falta de espacio, unida al no poder realizar circuitos impresos de dos caras,

imposibilitó reorganizar los pines de conexión de las tarjetas, así como nos llevo, como ya

mencionamos, al uso de una única conexión para la alimentación de grupos de sensores.

Por estas razones, entre otras, se hizo imposible el uso de cables simples tipo cinta para las

conexiones entre los distintos circuitos, así como para la de éstos con los sensores,

viéndonos obligados a realizar diversos cruces y cortocircuitos entre las líneas de los

distintos cables utilizados para lograr las conexiones pin a pin que se han descrito a lo

largo del proyecto. En la siguiente imagen pueden observarse algunos de los cables

utilizados.

Figura 42: Cables de interconexión empleados.

2.3. ALIMENTACIÓN Y CONSUMOS

En este apartado se recogen los consumos máximos estimados de los distintos

componentes del sistema según sus hojas de características y algunas mediciones

realizadas. Las autonomías tanto de la electrónica como de la potencia aquí determinadas

son las mínimas, resultando notablemente superiores las obtenidas en la práctica.

En el caso de la electrónica, esto se debe a la no existencia de simultaneidad en el

“encendido” de los distintos componentes; y en el caso de los motores a que estos no se

encuentran permanentemente a plena potencia ni con máxima carga.

Page 42: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

41

2.3.1. ELECTRÓNICA

En la siguiente tabla se muestra un resumen de los consumos de la parte electrónica.

Téngase en cuenta que “tarjeta de acondicionamiento” excluye la polarización de los

sensores, incluyéndose esta en el consumo del respectivo sensor.

Cantidad Consumo (mA) Subtotal (mA)

CNY70 4 12 48

Sharp GP2Y0A21YK 8 40 320

Sensor de contacto 4 1 4

S. de deslizamiento 1 12 12

T. Acondicionamiento 1 30 30

T. Control 1 100 100

Etapa de potencia 2 40 80

Total 670 mA

Tabla 10: Consumos de la electrónica.

Debido a la tensión mínima requerida por los reguladores de tensión se optó por el

uso de pilas de 9V para la alimentación de la electrónica, evitando la necesidad de poner

elementos en serie. Por otro lado, teniendo en cuenta que la capacidad de estas pilas es del

orden de 500mA/h y que contamos con un margen de peso razonable, se hace interesante el

uso de dos pilas en paralelo, obteniendo una autonomía mínima de unos 90 minutos.

Figura 43: Pilas y alojamiento.

Page 43: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 2. HARDWARE

42

2.3.2. POTENCIA

El ensayo de carga realizado a los motores de 12V empleados reveló un consumo de

cada uno de los mismos de aproximadamente 1.2A en máxima carga, con lo que el

consumo máximo de las cuatro unidades en conjunto resulta de unos 4.8A, no siendo

significativa la influencia de las etapas de potencia debido a su alto rendimiento.

Para la alimentación de los motores se optó, por razones de ahorro de peso

principalmente, por el uso de baterías recargables de ión de litio, empleándose cuatro

elementos de 3.6V y 1600mA/h conectados en serie, obteniéndose 14.4V a su salida y una

autonomía mínima de veinte minutos.

Figura 44: Baterías y alojamiento.

Page 44: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 3. SOFTWARE

43

3. SOFTWARE

La programación del dispositivo se realizo a través del bus I2C de la tarjeta de

control, conectado al puerto paralelo del ordenador, mediante el uso de una sencilla

herramienta de desarrollo distribuida en www.oopic.com que permite el uso de los

lenguajes Basic, Java y C.

Para la creación del programa se hizo uso de diversos recursos otorgados por el

sistema OOPic. El concepto de OOPic es simple, en el microcontrolador de la tarjeta se

encuentran programados una serie de objetos destinados a interactuar con el hardware en

segundo plano, mientras el código cargado en la EEPROM los controla. Toda la

información sobre OOPic, los objetos que emplea, etc. se encuentra detallada en su página

web.

3.1. ESTRUCTURA DEL PROGRAMA

Antes de describir el como funciona el programa y el modo en que actúa el robot

ante cada situación, comenzaremos por asignar la numeración pertinente a los sensores de

cada grupo; esta información se recoge en la siguiente figura, señalándose en rojo los

sensores de posición, en azul los de contacto y en negro los de línea.

1

2

3

43

5

6

3

8

2

4

1

2

1

7

4

Figura 45: Numeración de los sensores.

Page 45: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 3. SOFTWARE

44

Asimismo se definió como sentido de avance 1 el que queda al lado izquierdo según

la figura, y como sentido 2 el que queda a la derecha; y se llamó motores 1 a la pareja de la

parte superior, mientras que los del lateral que queda en la parte inferior de la misma se

designaron como motores 2.

Al inicio, el programa comienza asignando a los objetos correspondientes a

procurarnos el estado de los sensores sus respectivas líneas de entrada, seguidas de las

pertinentes para accionar las líneas de salida para el control de los motores. Para controlar

el sentido de giro de cada pareja de motores se emplean dos líneas del modo que se ha

descrito anteriormente; además se emplea una línea adicional para la activación y control

de velocidad de cada grupo.

El control de velocidad de los motores se realizará por PWM (Pulse Width

Modulation). Este sistema consiste en accionar los motores mediante una señal cuadrada

de alta frecuencia cuyo ancho de pulso es variable, permitiéndonos controlar el valor eficaz

de la onda.

Figura 46: Señal PWM.

Una vez definidos las entradas y salidas se introduce una demora de cinco segundos

según las normas del concurso, tras lo cual se procede a realizar una sacudida del robot a

fin de desplegar las planchas a ambos lados del mismo antes de iniciar los eventos que

definen el funcionamiento del programa.

Los eventos son pequeños subprogramas con capacidad para interrumpirse unos a

otros según un orden de prioridades. La activación de estos eventos se encuentra ligada a la

salida de una serie de circuitos virtuales, un recurso de OOPic que permite programar

circuitos que actúan como si de un circuito físico se tratase, operando constantemente

Page 46: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 3. SOFTWARE

45

mientras se encuentran activos; de este modo, se ligo cada evento a través de una puerta

lógica OR a los elementos del grupo de sensores que lo “disparan”. Los eventos empleados

fueron:

• Línea: Cuando se activa comprueba los sensores de línea de uno en uno,

provocando el alejamiento de la línea con una curva leve en la dirección más

adecuada en cada caso. Éste es el evento con mayor prioridad, por lo que puede

interrumpir cualquier otra actuación del robot por razones lógicas.

• Contacto: Una vez activado comienza por comprobar los sensores uno y tres; en

caso de estar alguno de ellos activo, se procede al avance a plena potencia en el

sentido que corresponda, se almacena el estado del sensor de deslizamiento, y se

compara con el estado actualizado en otra variable periódicamente durante un

segundo. Durante este segundo, si en algún momento se detecta retroceso, se

procede con una secuencia de huida, al igual que si pasado ese segundo no hemos

conseguido avanzar. Posteriormente se comprueban los sensores dos y cuatro,

procediéndose con la rutina de huida correspondiente al contacto lateral en su caso.

Este evento es el segundo en prioridad, pues las reacciones que genera son

prioritarias sobre las de reorientación.

• Posición: Este evento comprueba de forma secuenciada los sensores de posición,

comenzando por los más exteriores seguidos de los interiores de un lado y luego

igual en el otro. En caso de detectar con algún sensor exterior, se reaccionará con un

giro sobre nuestro propio eje en el sentido adecuado, y en caso de detectar uno

interior, se realizará un giro cerrado hacia la dirección de detección sin detener el

avance.

• Avance: Este es el evento de menor prioridad, aunque se encuentra siempre activo;

su función es mantener el avance en línea recta cuando no hay ningún sensor

activado que corrija nuestra dirección o sentido.

En el siguiente apartado se muestran los diagramas de flujo del funcionamiento del

programa; el código en C del mismo puede consultarse en los anexos.

Page 47: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 3. SOFTWARE

46

3.2. ALGORITMO DE LUCHA

A continuación se presenta el diagrama de flujo del programa principal, definido

por el sistema de eventos antes descrito.

Inicio

Asignación de líneas de E/S

Espera de 5 segundos

Realizar sacudida

Activar evento Avance

Activar evento Línea

Desactivar evento Línea

Hay algún sensor de línea activo?

Activar evento Contacto

Desactivar evento Contacto

Hay algún sensor de contacto activo?

Activar evento Posición

Desactivar evento Posición

Hay algún sensor de posición activo?

Cambiar a o continuar ejecución del evento activo de mayor prioridad

S

S

S

N

N

N

Page 48: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 3. SOFTWARE

47

El diagrama de flujo correspondiente a los distintos eventos se presenta a lo largo de

las siguientes páginas. No obstante, el del evento avance no se recoge por su simplicidad,

ya que consiste únicamente en una orden de avance en la última dirección y sentido de

movimiento definidos.

Sentido=2 Avance con curva abierta a la izquierda

Línea 1?S

N

Evento Línea

Sentido=2 Avance con curva abierta a la derecha

Línea 2?S

N

Sentido=1 Avance con curva abierta a la izquierda

Línea 3?S

N

Sentido=1 Avance con curva abierta a la derecha

Línea 4?S

N

Page 49: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 3. SOFTWARE

48

Evento Contacto

Conservar Sentido Secuencia de huida

Contacto 2?S

N

Conservar Sentido Secuencia de huida

Contacto 4?S

N

Sentido=1 Avance en línea recta

Contacto 1?

S

N

Se ha retrocedido o no conseguido avanzar en

1 segundo?

Sentido=2 Secuencia de huida

S

N

Sentido=2 Avance en línea recta

Contacto 3?

S

N

Se ha retrocedido o no conseguido avanzar en

1 segundo?

Sentido=1 Secuencia de huida

S

N

Page 50: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 3. SOFTWARE

49

Evento Posición

Sentido=2 Avance con curva a la izquierda

Posición 6?S

N

Sentido=2 Avance con curva a la derecha

Posición 7?S

N

Sentido=2 Giro cerrado a la izquierda

Posición 5?S

N

Sentido=2 Giro cerrado a la derecha

Posición 8?S

N

Sentido=1 Avance con curva a la izquierda

Posición 2?S

N

Sentido=1 Avance con curva a la derecha

Posición 3?S

N

Sentido=1 Giro cerrado a la izquierda

Posición 1?S

N

Sentido=1 Giro cerrado a la derecha

Posición 4?S

N

Page 51: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 4. CONCLUSIONES

50

4. CONCLUSIONES

La realización de este proyecto ha constituido una labor de gran esfuerzo y trabajo

continuado por parte de los proyectistas involucrados. La importante tarea de

documentación requerida, la puesta en práctica de los conocimientos obtenidos a lo largo

de la carrera y la necesidad de adquirir algunos nuevos, junto con la ejecución del mismo y

el trabajo en equipo implicado, hacen de este un proyecto excepcional a nivel de formación

y experiencia.

Por otro lado, el proyecto representa una importante entrada en el mundo de los

sistemas de detección y actuación y la interrelación de los mismos; sistemas que se

extienden desde la robótica hasta la automoción pasando por la domótica, haciendo

funcionar los elementos cotidianos más insospechados.

Los resultados obtenidos con el prototipo en lo referente a la mecánica fueron más

que satisfactorios, lográndose una potencia y un agarre elevados, además de un peso

controlado y un tamaño reducido. En cuanto a la electrónica, se alcanzaron holgadamente

los objetivos planteados, pues el buen funcionamiento de los sistemas sensoriales y etapas

de potencia habilitan el robot para una actuación eficaz; resultando además un sistema

fácilmente programable y perfectamente integrado en el conjunto mecánico.

Page 52: Sumo

Robot Luchador de Sumo (Diseño Electrónico) 5. BIBLIOGRAFÍA

51

5. BIBLIOGRAFÍA

• “Microelectronic circuits”, Adel S. Sedra y Kenneth C. Smith. Oxford University

Press. 1998.

• “Diseño Electrónico y Construcción de un Robot Autónomo”, Noemí Leonato

Pérez. ICAI – Universidad Pontificia Comillas, 2004

• http://www.depeca.uah.es/alcabot/hispabot2004/

• http://www.superrobotica.com/

• http://www.x-robotics.com/

• http://www.junun.org/

• http://www.oopic.com