AURA – Arquitectura
AURA – Arquitectura
• Cartographer
– Mantener el modelo del mundo
– Manejar imprecisión e incerteza
– Administrar memoria (de largo y corto plazo)
• Subsistema de Planificación
– Genera y ejecuta las trayectorias para cumplir las misiones
• Subsistema de percepción
– Administra un conjunto de esquemas de percepción (de distintos
niveles)
• Subsistema de motores
– Administra un conjunto de esquemas de motor (de distintos
niveles)
• Control homeostático
– Maneja la “seguridad” del robot
AURA - Planificador
AURA – Planificador
• Planificador de misión
– Alto nivel. Busca el mejor camino sobre un mapa. También
utiliza datos del control homeostático (temperatura, batería,
etc.). Usa técnicas de razonamiento y de búsqueda.
• Navegador
– Recibe una secuencia de sub-objetivos del planificador y genera
trayectorias. Usa un mapa de “bajo nivel” (vértices, espacios
libres, landmarks, etc) denominado “meadow map”.
• Piloto
– Asigna los comandos a los motores, guiado por los sensores
Ejemplo
Elementos extraídos de los módulos de alto nivel
•
Camino: Se debe seguir el
camino de piedritas, que tiene
pasto a ambos costados.
•
Landmark: Al final del camino,
hay un poste de luz
•
Landmark: A la derecha del
camino, hay un poste hidrante rojo
brillante
•
Landmark: A la izquierda del
camino, hay un edificio de 16
pisos
•
Obstáculos: Puede haber
personas, objetos y autos en el
camino, tanto fijos como móviles
•
Objetivo: Al final del camino hay
un cambio de terreno, de piedritas
a asfalto. Ese será el objetivo
Esquemas extraídos
•
Camino: Se debe seguir el camino de
piedritas, que tiene pasto a ambos
costados.
•
•
Stay-on-path(find-path(gravel))
Move-ahead(NNE – 30 degrees)
•
Landmark: Al final del camino, hay un
poste de luz
•
Move-to-goal(right(findlandmark(LAMPPOST_107),3))
•
Landmark: A la derecha del camino,
hay un poste hidrante rojo brillante
•
Find-landmark(HYDRANT_2)
•
Landmark: A la izquierda del camino,
hay un edificio de 16 pisos
•
Find-landmark(GRC_TOWER(face_3))
•
Obstáculos: Puede haber personas,
objetos y autos en el camino, tanto
fijos como móviles
•
Avoid-obstacles
•
Objetivo: Al final del camino hay un
cambio de terreno, de piedritas a
asfalto. Ese será el objetivo
•
Move-to-goal(find-transitionzone(gravel,concrete)
avoid-obstacle
move-to-goal
move-ahead
stay-on-path
Funcionamiento básico
• Se habilita move-ahead para
satisfacer el objetivo de ir
hacia L. Asimismo, stay-on-path
hace que no se salga del
camino.
• Cuando se activa findlandmark(LAMPPOST_107), se
activa move-to-goal, que apaga
move-ahead
•
Stay-on-path(find-path(gravel))
•
Move-ahead(NNE – 30 degrees)
•
Move-to-goal(right(findlandmark(LAMPPOST_107),3))
Find-path
• find-path se divide en:
• find-path-border: usa un detector de líneas para
deducir la posición de los bordes del camino
• segment-path: usa segmentación de imágenes para
determinar el tamaño del camino
Con estos dos subschemas, se deduce la posición del
camino relativa al robot.
Find-landmark
• find-landmark es un esquema
general que se “instancia” para
cada caso particular
• En este caso, cada vez que se
percibe algo “parecido” a
LAMPPOST_107, se crea un
nuevo find-landmark. La
parcepción se realiza por
medio de detección de líneas
verticales
• Ocurre lo mismo con la zona
de transición, pero con otra
estrategia de detección
•
•
Move-to-goal(right(findlandmark(LAMPPOST_107),3))
Move-to-goal(find-transitionzone(gravel,concrete)
Descargar

AURA