Professional Documents
Culture Documents
Configuracin
de la cmara
Capturar Imagen en
Formato RGB
a. b. c.
Figura- 6 a. Arquero. .b. Defensa. .c. Delantero
Eliminacin del Fondo
Cuando se identifica el color del agente se realiza
un barrido para contar la cantidad de pixeles del
Segmentacin por Umbral
color del agente, se hace una promedio de la
Segn colores RGB
cantidad de pixeles y de esta forma se encuentra las
coordenadas centrales del color. Teniendo en cuenta
la ubicacin del agente, definimos un sector de la
Eliminar Ruido
imagen para realizar el barrido y contar la cantidad
Sal y Pimienta
de pixeles del color del equipo, tambin se
promedia y se encuentra la coordenada central del
color. Se promedian nuevamente las dos Identificacin de los
coordenadas y de esta forma encontramos el centro Agentes y pelota
del robot.
La funcin que describe el barrido y encuentra el
centro del color: Ecuaciones (1),(2),(3) y (4)
6. Planeacin de Trayectorias
Es claro que un robot autmata no puede realizar
ningn movimiento deseado sin tener una
trayectoria, la cual se describe con una sucesin de
puntos generando una ruta de desplazamiento por la
que debe pasar el autmata para lograr ir de un
Donde son las coordenadas de los pixeles punto A hasta un punto B. Dicha planeacin o
con los umbrales determinados para cada color de clculo de las trayectorias debe solucionar algunos
cada agente o del color del equipo, y es el nmero posibles problemas tales como: encontrar la ruta
de pixeles que tienen el umbral. Las funciones son ms rpida, identificar obstculos, detectar posibles
iguales para encontrar el centro de los colores. colisiones, evitar obstculos y garantizar llegue al
Las funciones para las coordenadas de los agentes punto final.
son: Ecuacin (5) coordenada x Ecuacin (6) El problema bsicamente consiste en hacer que un
coordenada y autmata se desplace desde un punto A hasta un
punto B, evitando la colisin del mismo con otros
(5) objetos ubicados dentro de un mismo espacio. Para
eso es necesario tener conocimiento de la posicin
inicial, la posicin final y el entorno que le rodea Los mtodos de resolucin completa, utilizan
especificando la posicin exacta de los obstculos toda la informacin referente al espacio para
as como su forma fsica adems de los posibles generan un mapa discreto formando una malla
puntos libres por los cuales se pueda desplazar el de configuracin en los cuales se evidencia una
robot, estos parmetros pueden ser proporcionados solucin.
por el usuario o bien pueden ser calculados Los mtodos probabilsticamente completos,
mediante la informacin proporcionada por los adems de evidenciar si hay una posible
sensores. solucin, evalan la probabilidad de en funcin
El problema se hace mucho ms complejo si el del tiempo de procesamiento.
autmata se desenvuelve en un ambiente dinmico,
es decir que los obstculos tambin se mueven Despus de implementar el algoritmo
dentro del espacio, de esta forma no basta con probabilsticos como el mtodo que utiliza el
generar una posible trayectoria y seguirla, en algoritmo de Dijkstra [22], desarrollado para
cambio tenemos que utilizar un clculo encontrar el camino ms corto entre un vrtice
probabilstico para saber que tan pertinentes son los inicial ubicado dentro de un grafo hasta otro vrtice
movimientos a realizar adems de tener una ubicando la conexin de menor peso. Y el algoritmo
retroalimentacin para corroborar que efectivamente del descenso del gradiente [20] [12], el cual es un
si se desplaza correctamente y puede llegar al mtodo de resolucin completa para el cual se
destino final. desarrolla un algoritmo que consiste en discretizar
Entonces si tenemos coordenadas tanto de inicio el espacio de configuraciones generando una malla
como de final y figuras geomtricas, las cuales que representa una configuracin del espacio con un
pertenecen todas al mismo espacio, todo se puede anlisis tridimensional en el cual se evidencia una
ver como un problema geomtrico y desde este posible ruta solucin.
punto de vista encontramos numerosos mtodos y Se decidi realizar un mtodo ms rpido y sencillo,
algoritmos matemticos que buscan dar solucin al el cual gastara menos tiempo de procesamiento y se
problema de la planeacin de trayectorias. ajustara al ambiente dinmico. Este mtodo lo
llamamos rutas cartesianas donde el espacio de
Los mtodos de planeacin de trayectorias se configuracin es un plano cartesiano en el cual
clasifican por su alcance (donde encontramos los encontramos una pareja de coordenadas en X y
mtodos globales y locales) y por su precisin (los Y para cada posicin que pertenece a dicho
cuales se dividen en mtodos completos, espacio llamados nodos de ruta, de esta forma
heursticos, de resolucin completa y tenemos dos puntos ubicados en un plano donde se
probabilsticamente completos), los cuales se aplica que la distancia ms corta entre dos puntos en
definen a continuacin: una lnea recta [33] llamadas rutas, segn lo anterior
Los mtodos globales, procesan toda la el algoritmo matemtico se reduce a una geometra
informacin referente al espacio, los obstculos, analtica de la recta en el plano para encontrar una
la posicin inicial y la pocin final, calculando posible solucin de trayectoria para una
una trayectoria solucin. configuracin inicial y una configuracin final, en la
Los mtodos locales, procesan solo una parte de cual el procesamiento de la ruta depende de muy
la informacin del espacio total, realizando pocas instrucciones dentro del ciclo de maquina del
tareas especificas para un sector del espacio, a procesador del computador, y del software
menudo son utilizados como complemento de MATLAB.
mtodos globales. Bsicamente el mtodo toma la configuracin
Los mtodos completos, realizan los clculos inicial como un nodo de ruta inicial con
pertinentes evidenciando si existe una posible coordenadas y , para la cual se calculara una
solucin, en caso contrario evidencian un error ruta que conectase dicha posicin inicial hacia la
de clculo, dichos mtodos suelen utilizar configuracin final que se representa dentro del
grandes recursos de mquina para sus espacio como un nodo de ruta final con coordenadas
procedimientos. y como se ilustra en la siguiente figura
Los mtodos heursticos, son algoritmos (Figura-7).
diseados para generar soluciones de forma Dicha ruta solucin como es evidencia en la
rpida, sin embargo en algunas ocasiones dichas ilustracin anterior es la ruta ms corta entre la
soluciones son errneas. configuracin inicial y la configuracin final,
sencillo una recta describe la ruta, pero que sucede
si hay un obstculo ubicado donde se trazara la
recta: primero generamos otro nodo ruta, segundo se
establece la recta que conecta el nodo inicial con el
nuevo nodo, tercero de la misma forma se establece
la recta que conecta el nodo nuevo con el nuevo
final, por ltimo se evidencia la ruta.
El nuevo nodo no tiene una posicin aleatoria,
analticamente se puede hallar utilizando los nodos
inicial y final, para trazar una recta para la cual se
calcula su pendiente. Ecuacin (7) Figura- 7 Mtodo Rutas Cartesianas con un obstculo
(8)
(9)
(10)
Figura- 8 Implementacin Mtodo Rutas Cartesianas
Si (el arquero est afuera de su rea) Entonces Si (la pelota la tiene un contrario) Entonces
El arquero vuelve a su rea Ir a atacar
FinSi FinSi
Si (el arquero est muy cerca a la pelota) Entonces Si (la pelota est cerca del oponente) Entonces
El arquero despeja la pelota Esquivar al oponente y pegarle a la pelota en
FinSi direccin al arco contrario
FinSi
Si (el arquero no est paralelo a su arco) Entonces
El arquero corrige su ngulo Si (la pelota est lejos del oponente) Entonces
Pegarle a la pelota en direccin al arco contrario
FinSi
FinSi
Defensa: El principal objetivo del defensa es evitar
que la pelota llegue al arco, entonces tiene que
9. Conclusiones
presentar un comportamiento de obstruccin que es
El proceso de comunicacin entre el servidor y los
oponerse al paso de la pelota cuando est en
agentes utilizamos RF con los mdulos TLP/RLP
direccin al arco. No dejar que los rivales se
434A por fcil adquisicin, implementacin y su
desplacen fcilmente en su rea.
rea de cobertura. En el envi de informacin se
Despejar la pelota de su rea golpendola en
implemento una forma de codificacin en la cual se
direccin al arco contrario.
enviaban tramas de cinco bytes: identificador del
Comportamiento del Defensa
agente, dato de inicio, sentido de giro de los
motores, tiempo de accin de los actuadores y dato
Si (el defensa est fuera de su rea) Entonces de finalizacin de la comunicacin. El tiempo de
Volver a su rea envi y recepcin de la trama a 2400 bps era muy
FinSi alto para las necesidades del proyecto, entonces se
decidi implementar una nueva codificacin de los
Si (la pelota est adelante de la posicin del defensa) datos organizados ahora en un solo byte, de esta
Entonces forma reducimos en un 80% el tiempo empleado en
Obstruir el paso de la pelota la comunicacin.
Si (la pelota est muy cerca al defensa) Entonces
En la implementacin del sensor de video se
Hacer Raqueteo para despejar la pelota
FinSi
presentaron inconvenientes como: la variacin de la
SinoSi (la pelota est detrs de la posicin del defensa) iluminacin en el ambiente, la velocidad de captura
Entonces de imgenes, el ngulo de visin de la cmara el
Ir tras la pelota y golpearla en direccin al arco cual no alcanzaba a cubrir toda la cancha y la
contrario resolucin.
FinSi
La solucin al problema de iluminacin fue la
Delantero: El delantero tiene como objetivo llevar ubicacin de dos lmparas dispuestas de forma
la pelota al arco contrario, teniendo en cuenta que estratgica iluminando completamente el rea de
debe esquivar al equipo contrario y siempre debe juego, el cambio de cmara y los ajuste de
llevar la pelota en direccin de gol. configuracin como: la saturacin, contraste, brillo
Para las formas de disparo por parte del delantero se y ganancia de blancos. En cuanto a la velocidad de
utilizan: el arrastre que es impulsar el baln de una captura de la imagen, la cmara Phillips en sus
posicin a otra, o llevrselo por delante. Para especificaciones da la posibilidad de configurar la
captura de imgenes hasta 90fps, pero desde Matlab involucrando una conexin con el sistema de
no se logro cambiar la configuracin de la cmara a monitoreo de las velocidades de cada uno de los
90fps y la mxima velocidad en que se trabajo fue motores.
de 30fps. Este problema se puede atribuir al En cuanto al diseo del PCB se tiene en cuenta que
software que controla la cmara. El ngulo de visin los motores generan ruido y la respuesta en
de la cmara Phillips al ser ms amplio nos dio la velocidad no es igual, por esta razn se decidi
posibilidad de capturar de forma directa el rea de utilizar fuentes independientes aislando las tierras
juego a diferencia de la cmara Genius en cual fue para evitar el ruido en la etapa de control y
necesario aadir un lente divergente, esto causa una recepcin de datos, adems se incluyo un sistema de
distorsin en la imagen y la correccin hace ms monitoreo de velocidad para cada uno de los
lento el procesamiento de imagen. Tambin se motores.
cambio la resolucin de captura de imgenes de
640x480 a 320x240, reduciendo el tiempo de Agradecimientos
ejecucin aproximadamente en un 70%. Se eligi la A la Universidad Pedaggica Nacional, Licenciatura
segmentacin por umbrales para la identificacin de en Electrnica, especialmente al director del
los agentes, basados en los antecedentes consultados proyecto de tesis Diego M. Acero por su valioso
en los cuales este mtodo de segmentacin por aporte e inters en el trabajo.
umbrales de color RGB, nos pareci ms acorde a
las necesidades del proyecto por sencillez y Referencias
efectividad en la deteccin de los colores. [1]. AMANDI, Anala. Desarrollo de Sistemas Multi_Agentes
En cuanto la planeacin de trayectorias se Inteligencia Artificial. Revista Iberoamericana de
implement: El mtodo descenso del gradiente Inteligencia Artificial N 13. Universidad Nacional del
presenta el inconveniente de caer en un mnimo Centro de la Pcia. Buenos Aires, Argentina. pp33-35
ISSN1137- 3601. 2001
local en lugar de caer en la configuracin final,
adems de emplear mucho recurso de mquina y [2]. ARMAGNO, Gustavo. BENAVIDES, Facundo.
tiempo en el procesamiento, por este motivo no fue ROSTAGNOL, Claudia.TEJERA GONZALO, Copello
muy til para este proyecto. El mtodo Ernesto. Toma de decisiones difusa y prediccin del
probabilstico de carreteras basado en el algoritmo comportamiento oponente. Instituto de Computacin.
de enrutamiento de Dijkstra, presenta un problema Facultad de Ingeniera. Universidad de la Repblica.
cuando el punto final est muy prximo a la Montevideo,Uruguay.
ubicacin del obstculo, el algoritmo es incapaz de
encontrar una conexin directa al objetivo y [3]. BLANCO MOLINA, Flix Arturo. CRDENAS
tampoco resulta ser til para el entorno dinmico. FLREZ, Jorge Hernn. Control de un equipo de ftbol
Debido a las dificultades presentadas por los robtico segn especificaciones de la categora small size
de RoboCup. Tesis de grado para obtener el ttulo de
anteriores mtodos y con la intencin de reducir la
ingeniero electrnico. Facultad de Ingeniera. Universidad
velocidad de procesamiento y clculos en la
Nacional de Colombia. Bogot. 2005
ejecucin, se decidi implementar el mtodo de
rutas cartesianas por rpido procesamiento en [4]. BURCHARDT, Armin. CIERPKA, Kai. FRITSCH,
clculos matemticos, adaptacin al entorno Sebastian. HUHN, Kamil. KIRILOV, Teodosiy. LAUE,
dinmico. Reduciendo en un 20% aproximadamente Tim. MARTENS, Alexander. MIEZAL, Markus.
la velocidad de ejecucin. NEHMIZ, Ulfert. SCHWARTING, Malte. SEEKIRCHER,
En el modelo de control de movimientos del agente Andreas. Bremen Small Multi Agent Robot Team (B-
se implementa un modelo de control clsico muy Smart). Universitt Bremen. Germany. 2009
bsico en el cual solo tenamos en cuenta los
tiempos de recepcin de la informacin, tiempo de [5]. CAI, Wenlan. CUI, Wei. GAO, Xiang. GUO, Buo. LIU,
Lian. TAO, Jun. AUA_Ares -Team descripton paper.
ejecucin del microcontrolador y el tiempo de
Department of control engineering. Aviation University of
respuesta de los motores, dicho modelo no resulta
Airforce. China. 2008
ser muy eficiente, por esta razn se implemento un
control difuso el cual es mucho ms apropiado para [6]. CAMPOS ACOSTA, Joaqun. La especificacin del color:
el tipo de planta, donde se tienen en cuenta variables espacios de representacin del color. Instituto de Fsica
como el ngulo y la distancia del agente con Aplicada (CSIC). Articulo 114.28006, Madrid.
respecto a la posicin deseada, para realizar un
control diferencial del movimiento del agente
[7]. CASTROMN, lvaro. COPELLO, Ernesto. Ftbol de [22]. LAVALLE, Steven. Planning algorithms. Published by
robots uruguayo para torneos: el equipo. Tesis de grado Cambridge University Press, 2006
para obtener el ttulo en ingeniera en computacin.
Facultad de Ingeniera, Universidad de la Republica de [23]. M. Wooldridge, An Introduction to MultiAgent Systems,
Uruguay. Mayo de 2004 May 2002
[8]. COSTELO, Claudia. FASSI, Hctor. SCARPETTINI, [24]. MARTN MATRN, Joaqun. Creacin de un jugador de
Flavio. Ftbol de robots: revisin del estado del arte y Robocup de simulacin y desarrollo de habilidades
desarrollo del equipo UBAsot de simulacin. Tesis para bsicas. Tesis de grado en Ingeniera en Informtica.
obtener el ttulo en Licenciatura en Electrnica. Facultad Facultad de Informtica Universidad Politcnica de
de ciencias exactas y naturales. Universidad de Buenos Madrid. 2004
Aires. Diciembre de 2002
[25]. ORTEGA MELO, Luis Fernando. Sistemas multiagentes y
[9]. CRAIG, John. Robotica. Editorial Pearson educacin. ftbol de robots: estado del arte. Articulo. Maestra en
Mexico, 2006 Ingeniera de Sistemas y Computacin. Universidad
Nacional de Colombia.
[10]. DIAZ COLLAZO, Adrin Marcelo. ESPEJO GMEZ,
Vctor. Robots de laberinto. Universidad de Alcal. [26]. OTSU, N., A Threshold Selection Method from Gray-
Noviembre de 2006. Level Histograms. IEEE Transactions on Systems, Man,
and Cybernetics, Vol. 9, No. 1, 1979, pp. 62-66.
[11]. FERNANDEZ, Gastn. STOCCO, Claudia. TOURN,
Natalia. Sistema de visin para futbol de robots. [27]. PETRILLI BARCEL, Alberto Elas. Control visual de un
Universidad de la Repblica Montevideo. Uruguay. Mayo robot mvil Khepera II. Tesis para obtener grado de
2004. Maestro en Ciencias de la Computacin. Instituto
Politcnico Nacional. Mxico D.F., Junio de 2007.
[12]. GE, S. CUI, J. Dynamic motion planning for mobile robots
using potential field method Auton. Robots, vol. 13, no. 3, [28]. REYES ALDASORO, Constantino Carlos. Prctica 5
pp. 207222, 2002. Modulaciones Digitales. Departamento de Sistemas
digitales, Laboratorio de Seales y Sistemas. ITAM
[13]. GIL, P. TORRES, F. ORTIZ, F. G. Deteccin de objetos
por segmentacin multinivel combinada de espacios de [29]. RODRIGUEZ GARAVITO, Cesar Hernn. DELGADO
color. XXV Jornadas de Automtica. Ciudad Real. 8 de RIVERA, Alberto. Plataforma autnoma inteligente para
septiembre de 2004. ftbol de robot. Artculo. Revista ingeniera e investigacin
Vol. 28 Abril 2008. Pg (81-98)
[14]. GONZALES, Rafael. WOODS, Richard. EDDINS,
Steven. Digital Imagen Processing Using Matlab. Second [30]. RUSELL, Stuart. NORVING, Peter. Agentes Inteligentes
Edition. Prentice Hall. 2004. Capitulo 2 .Inteligencia artificial un enfoque moderno.
Naucalpan de Jurez, Edo de Mxico: Pretice may
[15]. HASTLEY, Richard. ZISSERMAN, Andrew. Multiple Hisponoamericana, S.A. 1996. p. 33-53
View Geometry in Competer Vision. Second Edition 2003.
[31]. SANTOS, Erik. Heurstica para la generacin de
[16]. http://small-size.informatik.uni-bremen.de/ configuraciones en pasajes estrechos aplicada al problema
de los clavos. Tesis profesional para obtener el ttulo en
[17]. http://www.fira.net Maestra en Ciencias con Especialidad en Ingeniera en
Sistemas Computacionales. Universidad de las Amricas
[18]. http://www.robocup.org/ Puebla. Mxico 2004