En los últimos años la investigación sobre
robots móviles está adquiriendo gran
desarrollo. Ello se debe, en parte, al abaratamiento del hardware
necesario para su construcción, y en parte a la nueva concepción
industrial de planta de fabricación flexible, que requiere la reconfiguración
de la secuencia de acciones necesarias para una producción variada, lo que
a su vez exige facilidad de desplazamiento de los materiales entre
cualesquiera puntos de la factoría.
Las soluciones a este problema de transporte de
material en entornos "flexibles" son varias. La primera situar las
máquinas cerca unas de otras, y organizadas de modo que uno o más brazos
robot puedan llevar las piezas entre ellas; esta configuración, un caso
particular de las llamadas células de fabricación flexible, es sólo
apropiada para un número limitado de máquinas. Otra solución válida es el
uso de vehículos autoguiados (denotados usualmente como AGV,
Autonomous Guided Vehicles), los cuales recurren para el guiado a
sistemas externos preprogramados, tales como un raíl, cables eléctricos
enterrados que crean un campo magnético, etc. Finalmente, la mejor
solución sería disponer de vehículos autónomos (denotados como
ALV, Autonomous Land Vehicles) que se mueven de un punto a otro
sin necesidad de ayudas externas (al menos, no en todo momento), lo que
los hace capaces de navegación genérica en un entorno dado a partir de
órdenes de alto nivel; a la secuencia de tales órdenes se la suele llamar
el plan de la misión.

Sistema
autónomo robot móvil + brazo robótico
Imagen tomada de
http://www.investigacion.frc.utn.edu.ar/agv/
Por otra parte, la construcción experimental de
(normalmente) pequeños robots móviles en laboratorios universitarios y a
nivel de aficionado (microbots) está haciendo surgir un tipo de
investigación que aborda los aspectos de conexión
senso-motora (el aspecto más fundamental de la Robótica) desde
un punto de vista diferente a aproximaciones anteriores, y que conlleva
también un cambio de visión en la concepción clásica de la Inteligencia
Artificial, la cual se aborda intentando construir vida artificial.
Existen diferencias bastante importantes entre los
robots manipuladores
industriales y los móviles. Para que un robot manipulador sea útil y
capaz de evolucionar en el espacio 3D, debe poseer varios grados de
movilidad (grados de libertad), sin embargo, un robot móvil con solamente
dos grados de libertad puede realizar cosas bastante interesantes sobre
una superficie de trabajo. Por otro lado, dado que los robots
manipuladores generalmente trabajan en espacios altamente estructurados
(fijos y adecuados a las tareas a desarrollar), requieren de un sistema de
percepción mucho menos sofisticado.
1. Navegación
Se llama navegación
al conjunto de métodos y técnicas usados para dirigir el curso de un robot
móvil a medida que éste atraviesa su entorno. Se supone que se debe llegar
a algún destino pedido, sin perderse y sin chocar ni con obstáculos fijos,
ni con otros móviles que eventualmente puedan aparecer en el camino.
Para efectuar navegación lo más común es disponer de un
mapa, aunque no necesariamente. Mapa
es cualquier tipo de representación del entorno en la memoria del robot. A
partir de un mapa, se puede determinar un camino apropiado entre dos
puntos deseados, lo cual será más o menos complejo según haya sido la
representación escogida. Por último, habrá que seguir ese camino.
Veamos en primer lugar los tipos de mapas que se usan
normalmente. Primeramente están los basados en información sensorial, con
dos tipos:
-
Mapas de marcas en el terreno (landmarks):
son localizaciones particulares fácilmente identificables por el sistema
sensorial del robot (cierta esquina, un grupo de objetos bien visibles o
tubos de neón, etc.) que actúan como marcas relevantes (landmarks).
Se representan como nodos de un grafo (que pueden tener características
asociadas, para garantizar su identificación unívoca), los cuales se
unen por los arcos que normalmente representan la accesibilidad (si
existe arco entre dos nodos, el robot puede desplazarse directamente de
uno a otro de los landmarks a los que los nodos representan).
Estos arcos pueden también estar etiquetados con características del
recorrido como distancia, dirección, tiempo de tránsito, etc.
-
Mapas de ocupación: se basan en representar el
terreno como una retícula, regular o no, cada una de cuyas casillas
contiene un valor útil para el robot, que suele ser la certitud de
ocupación, es decir, qué grado de creencia tiene el robot sobre el
estado de una determinada casilla, desde -1 (es seguro que está libre)
hasta +1 (es seguro que está ocupada) pasando por 0 (no hay evidencia en
ningún sentido). Estos mapas se pueden construir por métodos visuales,
mediante la toma de imágenes por un par estéreo de cámaras (o una sola
que va a bordo del robot y se sitúa en varias posiciones), a partir de
las proyecciones de puntos límite de un objeto, como se ve en la
siguiente figura:

Construcción visual de un mapa de
ocupación
Imagen tomada de
http://ingenieroseninformatica.org
(recursos/tutoriales/aprob)
Los mapas también se pueden clasificar de acuerdo a lo
que almacenan:
-
Mapas de espacio libre: al igual que en los
mapas de marcas, la estructura de almacenamiento elegida es también el
grafo, pero esta vez cada nodo representa un punto de parada donde el
robot pueda detenerse para explorar el entorno mediante sus sensores.
Los arcos son líneas rectas que el robot pueda recorrer entre estos
puntos sin encontrar obstáculos; evidentemente, limitarán a los posibles
obstáculos. Observa la figura:

Imagen tomada de
http://ingenieroseninformatica.org
(recursos/tutoriales/aprob)
-
Mapas de objetos: Como su nombre indica, lo
que se almacena en ellos son los objetos (obstáculos) que el robot puede
encontrar en su trayectoria, de varios modos; los más normales son
considerar al objeto como un polígono, y almacenar su punto central y la
extensión máxima en una serie de direcciones desde él; otro modo es
caracterizarlo como una de entre un conjunto de figuras geométricas
dadas, y dar su posición y la orientación de un eje propio de esa figura
-
Mapas compuestos: almacenan tanto información
de objetos como de espacio libre. Una posibilidad es dividir el espacio
en regiones arbitrarias, pero conocidas, e indicar en cada una de ellas
si está totalmente libre, totalmente ocupada, o parcialmente ocupada.
Otra alternativa es una retícula de puntos con un indicador de estado en
cada punto, y una lista de a cuáles de los puntos adyacentes se puede
acceder directamente; la retícula puede hacerse más o menos densa, en
función del tamaño del robot.
-
Quadtrees: Dividen el espacio mediante
una retícula, y proceden por subdivisión recursiva de la misma, mientras
la celda resultante sea subdividible, siendo el criterio el que no tenga
toda ella el mismo carácter de ocupación.
Una vez se tienen los mapas, el siguiente paso consiste
en definir cómo un robot móvil es capaz de saber en qué punto del mapa se
encuentra. Para ello, se puede recurrir a la información aportada por los
dos tipos posibles de sensores: internos y externos. Los
principales procedimientos para la
autolocalización (dead reckroning) son:
-
Odometría: a partir del conocimiento de la
velocidad de las ruedas resulta posible conocer la velocidad instantánea
del robot respecto a un sistema externo. Para ello se pueden instalar
sensores de posición angular (normalmente, codificadores ópticos) en
cada rueda. Conocido el vector velocidad, la posición en un instante
puede obtenerse mediante integración.
-
Balizas: son marcas de fácil localización
instaladas en lugares conocidos, que el robot es capaz de detectar con
sus sensores, y respecto a las cuáles se sitúa. Pueden ser marcas
visuales (tubos de neón, o bandas de colores), o emisores de
infrarrojos, cada uno emitiendo una señal modulada con un código
conocido. Estas señales pueden ser recogidas por una óptica apropiada y
proyectadas sobre una cámara CCD o un array de fotodiodos, que sirve
para determinar la dirección de la que proceden. Conociendo al menos dos
de éstas direcciones (aunque pueden ser más) y las posiciones absolutas
de las balizas es posible determinar por triangulación la posición del
robot:

Imagen tomada de
http://ingenieroseninformatica.org
(recursos/tutoriales/aprob)
El problema ahora es, dados un punto inicial y un punto
final (meta) especificados sobre el modelo de mapa propuesto, encontrar en
dicho mapa un camino libre de colisión que el robot pueda seguir. Para
hacerlo físicamente, comprobará continua o intermitentemente que se
encuentra sobre los puntos del camino, usando alguna de las técnicas de
autolocalización. A este proceso se le denomina
planificación y seguimiento de caminos.
Los requerimientos que deberá cumplir un planificador
de caminos son:
-
Encontrar un camino que el robot pueda atravesar sin
colisión.
-
Manejar la incertidumbre en la información sobre el
entorno derivada de la imprecisión de los sensores.
-
Mantener el robot lo más lejos posible de los
objetos, para que los sensores envíen menos datos y así se requiera
menos proceso.
-
Encontrar el camino óptimo (el mejor entre los
posibles) y seguirlo de un modo suave.
Veamos ahora los modos de planificar un camino:
-
Por guiado: consiste en llevar al robot
físicamente a una serie de lugares preestablecidos y almacenar las
impresiones sensoriales que se reciben en cada uno de ellos, así como la
dirección o direcciones de desplazamiento posterior hacia el/los
siguiente(s) punto(s) importantes(s). Para alcanzar el punto deseado se
pueden implantar lazos de realimentación que operen tomando directamente
como entrada las señales sensoriales, y que generen señales de control
para los actuadores, evitando el cálculo de la posición absoluta, no
útil en este caso.
-
Automáticamente: Aquí entran en juego
algoritmos que dependen fuertemente de la representación usada para el
mapa. En mapas de tipo grafo, siendo los nodos posiciones de referencia
a comprobar con los sensores, la planificación consiste en encontrar el
camino de mínima distancia en el grafo. La distancia se define en
función de los costes de cada arco, que pueden ser, bien distancias
físicas, bien algún otro tipo de penalización asociada a ese
desplazamiento (por ejemplo, debida a la estrechez de un pasillo que
obliga a reducir la velocidad, etc.). En mapas que contienen los
objetos, los planificadores tratan de encontrar caminos por el espacio
libre lo más alejados posible de los objetos. Esto es bueno en pasillos
estrechos, pero puede ser ineficiente en zonas anchas, por elegir
caminos más largos. Observa la parte izquierda de la siguiente figura,
en la que se elegiría el camino A antes que el B, pese a ser más largo.

Imagen tomada de
http://ingenieroseninformatica.org (recursos/tutoriales/aprob)
2. Tecnologías de construcción y conexión senso-motora
Un robot móvil, como otros tipos de robot, puede
considerarse esencialmente como un sistema (una colección de sensores,
actuadores, y elementos computacionales) organizados de tal modo que
exhiban una acción inteligente en respuesta aciertos estímulos. Tal sistema no
tiene por qué ser complejo. De hecho, algunos de los robots móviles más
sencillos responden al siguiente esquema. Están constituidos por dos
motores que hacen girar sendas ruedas independientemente. No llevan
procesador, todo su hardware consiste en los drivers de potencia de
los motores, y en dos contadores programables que comienzan a contar al
recibir una señal externa, y durante el tiempo que dure su cuenta, hasta
un valor predefinido generan una señal que indica al motor que se mueva en
sentido opuesto (B). El resto del tiempo cada motor se mueve hacia
adelante (F). Los contadores están conectados a los sensores de choque S1
y S2, como muestra la siguiente figura:

Imagen adaptada de
http://ingenieroseninformatica.org
(recursos/tutoriales/aprob)
Al moverse ambos motores a la misma velocidad y en el
mismo sentido (F) el robot avanza. Al chocar con un obstáculo, ambos
motores invierten su sentido, y el robot retrocede. Pero el contador de
uno de ellos está ajustado a un tiempo menor que el del otro, con lo cual
al invertirse ambos giran en distinto sentido durante un instante, lo que
hace que el robot gire sobre su propio eje, con lo que es posible que ya
no apunte hacia el obstáculo. A continuación ambos motores vuelven a girar
hacia adelante, y se continúa el avance en línea recta. Si el tiempo
(ángulo) de giro no hubiese sido suficiente, el robot volvería a chocar
con el obstáculo, y repetiría la misma maniobra. Observa el recuadro
izquierdo de la siguiente figura:

Imagen tomada de
http://ingenieroseninformatica.org
(recursos/tutoriales/aprob)
Si, además, a uno de los motores se le hiciera girar un
poco más lento en el sentido B, tendríamos que el robot retrocedería
describiendo un arco. Esto haría que siguiese aproximadamente las paredes,
como se observa en el recuadro derecho de la figura anterior. En ese caso,
el observador externo asignaría un propósito al robot, cuando en realidad
el "programa" no lo establece explícitamente. De hecho, ni siquiera se
puede decir que haya un programa en sentido tradicional: todo esto se
puede implantar con circuitería analógica, aunque sea mejor hacerlo
digitalmente, siempre que se conserve el espíritu de simplicidad. Este
ejemplo sirve para ilustrar una conexión directa y de bajo nivel entre
percepción y acción, pero esta no es la única manera. También se puede
(usando sensores más sofisticados) tratar de localizar aspectos físicos
externos conocidos por el mapa prealmacenado,
realizar una planificación del camino por los medios antes vistos, y
seguirlo usando landmakrs u odometría.
Respecto a la tecnología usada, debemos referirnos a
los sensores y a los actuadores. Entre los
sensores que más habituales se encuentran:
-
Fotoresistencias o fototransistores, que se
usan para implementar fototaxias (seguimiento de fuentes de luz). Su
salida se conecta a un conversor A/D, o a un simple comparador,
dependiendo del uso que se quiera hacer (si importa el valor de la
señal, o sólo si ésta es superior a un umbral).
-
Sensores de proximidad por infrarrojos: Son
sensibles a radiación alrededor de los 880 nm. Existen detectores
encapsulados que contienen emisor y receptor; modulan la emisión, y
responden sólo a ese patrón de modulación, con lo que evitan
interferencias de fuentes externas de infrarrojos. El hardware que
necesitan es un oscilador (de cuarzo, o astable) para el emisor, y un
conversor A/D o comparador para el receptor.
-
Sensores piroeléctricos: son resistencias
variables con la temperatura. Se usan para seguir fuentes de calor.
-
Sensores de contacto por doblez: constan de un
eje metálico con una capa de pintura conductora que varía su resistencia
al doblarse. Se conectan a un conversor A/D.
-
Microinterruptores de choque (bumpers): se
usan con una palanca que los activa al chocar el robot con algún
obstáculo. Se conectan directamente a entradas digitales del
microcontrolador del robot.
-
Sonares: El modelo más usado es el Polaroid
TM. El hardware que usan es un contador, para saber el tiempo
transcurrido entre la ida yla vuelta del impulso ultrasónico, y
circuitos especiales para generar el pulso.
-
Codificadores ópticos: normalmente de tipo
incremental, se instalan en todas o algunas de las ruedas, tanto en el
eje de giro como en el de guiado. Como ya se vio, requieren un hardware
específico para la cuenta de pulsos, aunque ésta se pueda hacer también
por sofwtare, conectado las señales de cada canal a puertos de
entrada, y manteniendo un proceso dedicado a monitorizarlos.
-
Giróscopos: son análogos a los usados en los
sistemas de navegación inercial de los aviones, pero algo más simples.
Son raramente usados por su precio. Existen versiones electrónicas
baratas basadas en sensores de estado sólido que sólo miden la velocidad
de giro, pero no la orientación absoluta.
-
Inclinómetros: se basan en un codificador
óptico en posición vertical con un péndulo colgado de él, o bien en una
gota de mercurio sobre un platillo horizontal con contactos repartidos
regularmente alrededor de ella.
-
Brújulas: deberían dar la orientación absoluta
usando el campo magnético terrestre. No son muy usadas, porque aunque en
exteriores dan medidas aceptables, en interiores y sobre todo con campos
magnéticos provocados por la circuitería o maquinaria circundante no son
fiables.
-
Cámaras de TV: se suelen usar modelos en
miniatura, de tipo CCD. Tienen los inconvenientes de requerir un
hardware más complicado (una placa digital de imagen) y generar un
volumen de información difícilmente tratable en tiempo real sin hardware
específico.

Navegación de robots en convoy
utilizando visión artificial
Imagen tomada de
http://omega2.inin.mx/publicaciones/documentospdf/ROBOTS.pdf
En cuanto a los actuadores,
se suelen usar siempre motores eléctricos de CC, por su facilidad de
control. Se conectan a engranajes reductores para disminuir la velocidad y
aumentar la potencia. Si la corriente que necesitan no es muy alta (robots
pequeños no muy pesados con dos motores pueden consumir de 0.5 a 2 A por
motor), existen reguladores encapsulados que pueden proporcionarla, los
cuales se controlan por modulación en anchura de pulso (PWM).
Los lazos de realimentación para el control de las
ruedas se suelen realizar por software, que va leyendo los
registros asociados a los codificadores, y envía una señal digital que
luego se convierte en analógica y activa los dispositivos de potencia. El
control es, por supuesto, siempre discreto.
Los sistemas de locomoción
son variados. El modelo más común consiste en usar dos ruedas motrices
independientes con sus ejes alineados perpendicularmente a la
dirección de avance. La forma del robot suele ser compacta, mejor
circular, para ganar maniobrabilidad.
La alimentación es
un punto muy problemático. Hasta ahora, las baterías que podían dar
suficiente corriente eran muy pesadas; hoy día existen modelos recargables
de Ni-Cd más ligeros.
Fuentes
Robótica. Juan Domingo Esteve (originalmente
en http://ingenieroseninformatica.org/recursos/tutoriales/aprob).
Tecnologías de la Información y de la Comunicación. Capítulo 6, Programación
y control de procesos. Juan A. Alonso, Santiago
Blanco A., Santiago Blanco S., Roberto escribano, Víctor R. González, Santiago
Pascual, Amor Rodríguez. Editorial Ra-Ma 2004.
El león no es como lo pintan. Los robots tampoco. J. Armando Segovia
Control y Robótica. Tema: Fundamentos de robótica. Curso provincial. CFIE
Valladolid II. Víctor R. González. Asesoría de Tecnología y FP.
volver a Inicio
|