Você está na página 1de 4

ROBÓTICA DE SERVICIOS

(Código 34392) CURSO 2018/19


MASTER EN AUTOMÁTICA E INFORMÁTICA INDUSTRIAL
Departamento de Ingeniería de Sistemas y Automática, Universitat Politècnica de València

Programación de trayectorias mediante máquinas de estado para su uso en la limpieza


de pisos a través del robot educativo Moway
M. Alvarez, G. Valencia
marallu@posgrado.upv.es
gabva@posgrado.upv.es
Robótica de Servicios (34392), 2018-19, Departamento de Ingeniería de Sistemas y Automática, Universitat Politècnica de València, Camino de Vera, no14, 46022,
Valencia, España

Resumen

En este documento se presenta las principales características acerca del algoritmo aleatorio utilizado en las trayectorias de robots de
limpieza basados en máquinas de estado y su implementación en el robot educativo Moway. Utilizando este modelo de comportamie nto
en el que el microcontrolador decide la trayectoria según las condiciones de los estados, se ha realizado pruebas basados en la visión
artificial y los porcentajes de recorrido del robot, los resultados que se han obtenido muestran claramente que estos algoritmos se adaptan
de gran manera a este tipo de aplicaciones.

Palabras Clave:
Robot diferencial, máquinas de estado finitas, moway, robótica de servicios, robot aspirador.

1. Introducción que ha sido el más utilizado industrialmente sobre todo por la


empresa iRobot con su ejemplar Roomba.
La robótica de servicios día a día va tomando mayor fuerza en Cabe destacar que las limitaciones que tiene el robot educativo
el mercado internacional con el objetivo de encargarse de tareas Moway en cuanto a hardware no nos permiten realizar un control
habituales para el ser humano, una de sus aplicaciones más óptimo de sus movimientos y utilizar técnicas de control más
importantes desarrollada y difundida en los últimos años ha sido el avanzadas para sus actuadores, es por ello que este estudio se
de la limpieza. enfoca en el control del robot teniendo como premisa eventos
Sobre el año 2002 la empresa iRobot lanzó al mercado su robot discretos, sin embargo los resultados obtenidos han sido favorables
de limpieza Roomba y en tan solo 4 años tenía cerca de 1.2 pese a las limitaciones antes mencionadas; para evaluar los
millones de ejemplares funcionando en hogares alrededor del algoritmos desarrollados se ha hecho uso de la visión artificial.
mundo, teniendo como premisa que el costo de un robot debe ser
proporcional a su utilidad (J. L. Jones, 2006).
El perfeccionamiento de estos dispositivos ha tenido un gran 2. Materiales y métodos
campo de estudio y es por esta razón que mediante prototipos a
menor escala se ha buscado generar los algoritmos correctos que Para el desarrollo del presente trabajo se requirió del siguie nte
cumplan con el objetivo del recorrido del robot. material:
Para lograr el objetivo de desarrollo de trayectorias se ha optado • Robot Moway.
por utilizar el robot educativo Moway comercializado por la • Software Visual Studio 2012.
empresa ® MiniRobots con el cual se ha implementado • MSVCP100D.DLL y MSVCR100D.DLL, estos
movimientos que emulan el comportamiento de un robot permiten establecer la conexión entre el robot moway y
aspiradora, además este tipo de robots cuentan con los sensores visual studio.
necesarios para lograr emular el comportamiento bajo un entorno • Plataforma con obstáculos para pruebas.
con obstáculos. • Cámara web con software de detección por imágenes.
Los algoritmos de limpieza pueden ser clasificado en dos
métodos: método aleatorio y método de mapeo (H. Kim, et al., Para la implementación de la lógica de control se analizó el
2014), en el presente trabajo se ha utilizado el método aleatorio ya comportamiento que debería tener el robot Moway en función a la

Este documento está regulado por la licencia Creative Commons 1


G. Valencia y M. Alvarez / Robótica de Servicios (34392), 2018-19, Departamento de Ingeniería de Sistemas y Automática, Universitat Politècnica de València

lectura de los 4 sensores de distancia: izquierdo, central izquierdo, Poseyendo esta información se procedió a analizar el método a
central derecho y derecho. utilizar con el robot Moway, enfocados en el objetivo de realizar
Estos trabajan de manera análoga generando un valor de 0 a 255 un barrido veloz y de mayor área en la zona de pruebas se optó por
en función a la distancia detectada, se optó por trabajar con los realizar la limpieza con movimientos aleatorios y realizar la
sensores de manera lógica umbralizando los valores de detección ejecución de estos estados en función a la lectura de los sensores,
con un valor de 150. ejecutando en un timer las funciones de movimiento, de esta
A partir de ello se generó una tabla de 16 posiciones en las manera al culminar el movimiento de un estado pasaba a realizar
cuales se encontraría el robot Moway, la cual se presenta a la lectura de los sensores en un tiempo de ejecución de 250ms.
continuación: Uno de los inconvenientes que se analizó al realizar pruebas con
el robot Moway, era la interferencia de otros dispositivos con el
Tabla 1: Lógica de programación y estados
robot que hacían que este se bloqueara y dejará de comportarse en
función al código programado, al realizar seguimiento a estos
LS CLS CRS RS ESTADO errores se constató que cuando ocurría este fenómeno los sensores
0 0 0 0 1 del robot dejaban de funcionar, los sensores de posición se
0 0 0 1 1 bloqueaban en 0 y el sensor de batería se disparaba por encima de
0 0 1 0 2 100%.
0 0 1 1 3 Utilizando está información se crearon 2 estados adicio nales
0 1 0 0 4 uno de lectura de sensores y otro de error, cada ejecución de
0 1 0 1 3 movimiento se realiza en un plazo de 250ms y nuevamente lee el
0 1 1 0 3 estado de los sensores pasando a un nuevo estado de movimie nto
0 1 1 1 3 en función a estos, en caso de detectar lecturas anómalas pasa a un
1 0 0 0 1 estado de error donde procede a desconectarse detenerse un
1 0 0 1 1 momento y volver a conectarse con el software continuando con
1 0 1 0 5 los movimientos de limpieza.
1 0 1 1 6
1 1 0 0 5 Tabla 3: Actualización de estados para errores
1 1 0 1 6
1 1 1 0 5 Descripción Estado Motor Izq. Motor Der.
1 1 1 1 6 Detenido 0 0 0
Adelante 1 1 1
Leyenda Giro izq. sobre eje de
2 0 1
llanta
LS Left Sensor
Giro izq. sobre eje
CLS Central Left Sensor 3 2 1
moway
CRS Central Rigth Sensor Giro der. sobre eje
4 1 0
RS Rigth Sensor
llanta
Giro der. sobre eje
5 1 2
moway
Se estableció entonces un total de 6 estados en movimie nto, Retroceder y giro 6 2 2
quedando el estado 0 como el robot Moway en estado detenido. Lectura de Sensores 7 X X
Error 8 0 0
Tabla 2: Descripción de estados para movimientos

Descripción Estado Motor Izq. Motor Der.


Adelante 1 1 1
Giro izq. sobre eje
2 0 1
de llanta
Giro izq. sobre eje
3 2 1
Moway
Giro der. sobre eje
4 1 0
llanta
Giro der. sobre eje
5 1 2
Moway
Retroceder y giro 6 2 2

Estados de motor
0 Stop Figura 1: Diagrama de solución con máquinas de estados
1 Forward
2 Backward
El estado 0, es el estado default del robot Moway, en este se
encuentra detenido hasta establecer la conexión y pasar al estado 7
donde se realiza las lecturas de los sensores, se evalúan las

Este documento está regulado por la licencia Creative Commons 2


G. Valencia y M. Alvarez / Robótica de Servicios (34392), 2018-19, Departamento de Ingeniería de Sistemas y Automática, Universitat Politècnica de València

condiciones y se determina el estado siguiente el cual puede ir Al iniciar el proceso se hace captura de la plataforma inicial sin
desde el estado 1 al estado 6. el robot Moway validando el entorno de simulac ión,
posteriormente se ubica el robot Moway dentro de la plataforma y
En el estado 1 se establece una velocidad de 100% en las ruedas se valida su ubicación para iniciar el proceso de limpieza.
y ambas giran para generar el avance del robot.

En el estado 2 el motor izquierdo se detiene y el motor derecho


continua con una velocidad del 100% en modo forward, generando
un giro sobre el eje de la llanta izquierda con un tiempo de rotación
aleatorio.

En el estado 3 el motor izquierdo se establece en modo


backward con una velocidad del 100% y el motor derecho en modo
forward con una velocidad igual generando un giro sobre el eje
central del Moway con un tiempo de rotación aleatorio.

En el estado 4 el motor derecho se detiene y el motor izquierdo


continua en modo forward con una velocidad del 100% generando
un giro sobre la llanta derecha con un tiempo de rotación aleatorio.

En el estado 5 el motor derecho se establece en modo backward Figura 3: Robot Moway en Plataforma de simulación
con una velocidad del 100% y el motor izquierdo en modo forward
con una velocidad igual generando un giro sobre el eje central del
Moway con un tiempo de rotación aleatorio.

En el estado 6 ambos motores se establecen en modo backward


con una velocidad al 100% durante 1 segundo para luego proceder
a realizar un giro aleatorio sobre su propio eje, este puede ser a la
derecha o izquierda.

3. Validación de método

Se realizaron las pruebas de funcionamiento de la lógica de


control programada en el robot Moway en un entorno de
simulación con obstáculos, este entorno posee 2 obstáculos
circulares en una plataforma de 60cm x 40cm, la base de la
plataforma es de color celeste y los obstáculos de color negro para Figura 4: Captura de entorno para procesamiento de imágenes
ayudar en la detección de imagen.
El proceso de validación tiene un tiempo de 4 minutos, el
software trabaja analizando en video los movimientos del robot
Moway siguiendo la cartilla de color rojo colocado sobre el mismo,
validando la limpieza de las zonas.

La aplicación que se encargá de realizar la evaluación por visión


artificial utiliza técnicas como resta de imágenes, umbralizac ión,
operaciones de cierre y/o apertura: Erosión y Dilatación (J.
Navarro, 2015). Se debe tener en cuenta los siguientes puntajes:

• Nivel de limpieza 0: son los pixeles con valores 0,1,2.


No puntuarán
• Nivel de limpieza 1: son los pixeles con valores 3, 4,
5. Puntúan un 50%
• Nivel de limpieza 2: son los pixeles con valores 6, 7,
8, 9, 10 Puntúan un 100%
Figura 2: Plataforma de pruebas
Además de ello durante el procesamiento las zonas en la imagen
irán tornando de color desde amarillo claro hasta un verde oscuro
Se hace uso de una cámara web y software de detección de pasando por diversas tonalidades de amarillo, celeste y verde.
imágenes, para ello se coloca sobre el robot Moway una cartilla de
color rojo para poder verificar su movimiento a través de la
En función a estos datos se tiene una variación de limpieza de
plataforma.
0% a 100% y un puntaje total en función al área de 0 a 10 puntos.

Este documento está regulado por la licencia Creative Commons 3


G. Valencia y M. Alvarez / Robótica de Servicios (34392), 2018-19, Departamento de Ingeniería de Sistemas y Automática, Universitat Politècnica de València

Los resultados fueron: de algoritmos y su aplicación para la implementación de


trayectorias, esto se puede evidenciar mediante las pruebas con
visión artificial.
El objetivo de este artículo ha sido demostrar el impacto que
tiene la programación mediante máquinas de estado finitas al
aplicarla a la programación de robots y sus trayectorias, no se ha
tenido en cuenta los tipos de controladores que se podrían utilizar
para los motores ya que al tener una respuesta sumamente rápida y
el hecho de estar utilizando radiofrecuencia para el manejo de
información es una limitante.

English Summary

Programming trajectories using state machines for use in


floor cleaning through the educational robot Moway.
Figura 5: Resultados Obtenidos
Abstract

Tabla 4: Resultados obtenidos This document presents the main features about the random
Descripción Resultados algorithm used in the trajectories of cleaning robots based on state
machines and their implementation in the educational robot
Tiempo 240 segundos
Moway. Using this behavior model in which the microcontro ller
% Sucio 3.87391
% Medio 10.4208 decides the trajectory according to the conditions of the states, tests
% Total 85.7053 based on the artificial vision and the percentages of the robot's
% Limpio 96.1261 travel have been made, the results that have been obtained clearly
show that these algorithms adapt in a great way to this type of
Puntaje 9.09157
applications.

Keywords:
Se observa una limpieza eficiente del área en el tiempo de
análisis con un 96% de limpieza total, durante los barridos el robot
Differential robot, finite state machines, moway, service
logro limpiar adecuadamente las zonas aledañas a los obstáculos,
robotics, robot vacuum cleaner.
evitando atascamientos se observa por instantes la desconexión y
conexión del mismo por interferencia.
Agradecimientos
4. Conclusión
Agradecemos al Dr. Martín Mellado por facilitarnos las
El uso de máquinas de estado para la generación de herramientas necesarias para poder validar el funcionamiento de
movimientos aleatorios en el robot moway, presenta muy buenos nuestra lógica de programación.
resultados realizando la limpieza de las zonas de manera eficiente.
La incorporación del estado de fallo para la desconexión y
conexión automática del moway, ha sido importante para evitar que Referencias
el robot quedará varado durante su funcionamiento, en las pruebas
antes de generar este estado el robot quedaba trabado en un estado
al detectarse alguna interferencia quedando fuera de control. J. L. Jones, "Robots at the tipping point: the road to iRobot Roomba," in IEEE
La generación de tiempos aleatorios en los estados en los que el Robotics & Automation Magazine, vol. 13, no. 1, pp. 76-78, March 2006.
doi: 10.1109/MRA.2006.1598056
robot moway debe de girar es crucial para evitar tendencias
oscilatorias, y que el robot quede atrapado en ciclos de movimie nto
H. Kim, J. Yang and D. Kwon, “Experience based domestic environment and
cerrados. user adaptive cleaning algorithm of a robot cleaner,” 2014 11th
El análisis de la variación en la lectura de los sensores de International Conference on Ubiquitous Robots and Ambient Intelligence
distancia nos permite evaluar si existe atascamiento y establecer (URAI), Kuala Lumpur, 2014, pp. 176-178.
movimientos que ayuden a salir de dicha situación. doi: 10.1109/URAI.2014.7057525
Es importante destacar el trabajo realizado con los robots
educativos, si bien es cierto este tipo de robots carecen de la J. Navarro, “Mejora plataforma de evaluación para robots aspiradores,” 2015,
Robótica de Servicios, UPV
robustez que tiene los comerciales en cuanto a hardware, se ha
obtenido resultados sumamente interesantes en cuanto al desarrollo

Este documento está regulado por la licencia Creative Commons 4

Você também pode gostar