Sei sulla pagina 1di 37

Dpt.

de Matemtiques i Informtica Universitat de les Illes Balears

Control de Robots Mviles


Alberto Ortiz
Grupo de Sistemas, Robtica y Visin

Vamos a hablar de ...


Qu se entiende por control de un robot mvil? Qu niveles de control se definen? Qu se entiende por control de bajo nivel? Cmo se organiza el software de control (de alto nivel) de un robot mvil? Qu implicaciones tiene cada modelo? Cmo abordar el diseo de una arquitectura de control (reactiva)?

Alberto Ortiz

ndice

Control de Robots Mviles Breve Introduccin al Control de Bajo Nivel Paradigmas de Control de Alto Nivel Control Reactivo basado en Motor Schemas Bibliografa

Alberto Ortiz

Control de Robots Mviles


Matari (Situated Robotics, 2002) ROBOT CONTROL is the process of


taking information about the environment, through the robots sensors, processing it as necessary in order to make decisions about how to act, and then executing those actions in the environment [by means of the available effectors to achieve, in an autonomous way, the set of goals corresponding to a given mission.]

Alberto Ortiz

Control de Robots Mviles


La palabra CONTROL tiene diferentes significados en robtica:


asegurar que el movimiento del robot es estable y que se produce de acuerdo con cierto(s) criterio(s) de control

velocidad del motor/ruedas se mantiene lo ms prximo posible a la consigna fijada (error en estado estable es inferior a ..., tiempo de estabilizacin es inferior a ..., etc) la orientacin del vehculo es la deseada (idem) vehculo se mantiene horizontal a pesar de las irregularidades del terreno (idem) etc. tambin, nivel de servomecanismo en relacin al control por realimentacin

CONTROL DE BAJO NIVEL


Alberto Ortiz 5

Control de Robots Mviles


La palabra CONTROL tiene diferentes significados en robtica (cont.):


habilidad del robot para ejecutar una cierta tarea


seguir una direccin, ejecutar una trayectoria, ... navegar en un entorno (tal vez evitando obstculos) seguir un objetivo (tal vez evitando obstculos) construir un mapa de su entorno obedecer a comandos verbales etc.

CONTROL DE ALTO NIVEL

Alberto Ortiz

Control de Robots Mviles


p.e. en el diseo de aviones autnomos (Unmanned Aerial Vehicles, UAV) se suele distinguir entre:

ALTO a) control de la trayectoria (control of the trajectory) NIVEL mantener la trayectoria deseada hacia el objetivo (guidance)
GPS, visin, mapas

BAJO b) control sobre la trayectoria (control about the trajectory) NIVEL mientras el vehculo vuela hacia el objetivo siguiendo la trayectoria fijada, se espera que mantenga su orientacin estable, sin oscilar alrededor de ninguno de los ejes
girscopos, acelermetros, inclinmetros, unidad inercial (Inertial Navigation System, INS) desviaciones de la orientacin adecuada (p.e. roll) resulta en un ajuste inmediato de las superficies de control del avin
Alberto Ortiz 7

Control de Robots Mviles


El control de un robot ha de abarcar el rango completo de niveles, desde los aspectos de bajo nivel ...

mantener un movimiento estable

... a los aspectos de alto nivel:


planificacin, toma de decisiones y razonamiento requerido para ejecutar una cierta tarea

Alberto Ortiz

Control de Robots Mviles


ARQUITECTURA DE CONTROL de un robot: (robot architecture, robotic control architecture, ...)


arquitectura de un computador: componentes hardware y la interconexin concreta que deriva en el computador arquitectura, ingeniera de software: proceso de diseo utilizado en el desarrollo de software arquitectura de un robot: organizacin del software de un sistema robtico arquitectura software

Alberto Ortiz

Control de Robots Mviles


Definiciones de autores reconocidos:


An architecture provides a principled way of organizing a control system. However, in addition to providing structure, it imposes constraints on the way the control problem can be solved (Matari, 1992) ... the abstract design of a class of agents: the set of structural components in which perception, reasoning, and action occur; the specific functionality and interface of each component, and the interconnection topology between components (IA, HayesRoth, 1995) discipline devoted to the design of highly specific and individual robots from a collection of common software building blocks (Arkin, 1998)
10

Alberto Ortiz

Control de Robots Mviles


Definiciones de autores reconocidos (cont.):


The architecture of a robot defines how the job of generating actions from percepts is organized (IA, Russell and Norvig, 2002) Structure of the software, the way in which the robot processes sensory inputs, performs cognitive functions, and provides signals to control actuators, independently of how it was designed (Bekey, 2005) Way in which sensing, reasoning, and action are represented, organized, and interconnected (Bekey, 2005)

Alberto Ortiz

11

ndice

Control de Robots Mviles Breve Introduccin al Control de Bajo Nivel Paradigmas de Control de Alto Nivel Control Reactivo basado en Motor Schemas Bibliografa

Alberto Ortiz

12

Control de Bajo Nivel


Brevsima introduccin al control (de bajo nivel para robots) Insinuar ideas esenciales Comentarios bsicos sobre controladores PID CONTROL = habilidad de provocar que el estado de un sistema pase a ser el deseado

p.e. uso del acelerador/freno para conseguir que la velocidad de un coche sea la deseada, se corresponda con un perfil, etc. p.e. controlar la velocidad lineal de un robot, su velocidad de giro, etc.

Sistema de control = controlador + planta


13

Alberto Ortiz

Control de Bajo Nivel


Configuraciones tpicas de sistemas de control:


BUCLE ABIERTO
n r(t) (consigna)

controlador

u(t) (var. de control)

planta

y(t) (var. controlada)

p.e. cada 10 min. la temperatura de la estancia sube 0.5C controlador aplica u(t) durante el tiempo necesario para alcanzar r(t) conocimiento perfecto del comportamiento de la planta (= sistema de calefaccin + estancia) PROBLEMA: stma. de calefaccin envejece, estancia cambia desviacin sobre el comportamiento previsto (p.e. temperatura sube slo 1.5C en una hora)
14

Alberto Ortiz

Control de Bajo Nivel


Configuraciones tpicas de sistemas de control (cont.):


BUCLE ABIERTO
n r(t) (consigna) controlador m planta y(t) (var. controlada) n

u(t) (var. de control)

p.e. control de un motor DC por PWM


C (rpm) dir pwm
enable

enable

velocidad de giro depende de la seal PWM, del motor y de la carga control de velocidad en bucle abierto requiere calibrado constante
15

Alberto Ortiz

Control de Bajo Nivel


Configuraciones tpicas de sistemas de control (cont.):


SOLUCIN: determinar e(t) = r(t) - y(t) BUCLE CERRADO


r(t) n

+
n

n e(t)

controlador

m u(t)

planta

y(t)

Alberto Ortiz

controlador mantendra la calefaccin activa hasta e(t) = 0 bucle cerrado requiere sensores y comparadores, pero ... ... conocimiento del comportamiento de la planta no necesita ser perfecto (sistema es menos sensible a variaciones en los parmetros de la planta) ... ... y los componentes del sistema no necesitan ser muy precisos y caros (menos sensible al ruido)

16

Control de Bajo Nivel


Configuraciones tpicas de sistemas de control (cont.):


SOLUCIN: determinar e(t) = r(t) - y(t) BUCLE CERRADO


r(t) n

+
n

n e(t)

controlador

m u(t)

planta

y(t)

dir
+

enable

pwm
enable

sensor de veloc.

Alberto Ortiz

17

Control de Bajo Nivel


Disear controlador adecuado para una aplicacin concreta requiere poder disponer de:

la diferencia entre el estado y la consigna (error), la naturaleza de la tarea de control, y la dinmica de la planta

para aplicar mtodos matemticos en el diseo del controlador es necesario disponer de un modelo matemtico de la dinmica de la planta p.e. sistema de control de temperatura podra ser descrito por:

dy(t) dt

+ ay(t) = Kp u(t)
18

a partir de aqu, comienza la Teora de Control (no es el objetivo de este curso!!!)


Alberto Ortiz

Control de Bajo Nivel


Controladores ON-OFF (bang-bang controller, piecewise constant controller)


u(t .. t + t) = K, si y (t) < r(t) 0, si y (t) r(t)

y(t) r(t) t
19

u(t) = K
Alberto Ortiz

Control de Bajo Nivel


Controladores PID (PID controller, three-mode controller)


combina acciones proporcional, integral y derivativo

u ( t) = K p e ( t ) +

1 Ti

controlador ampliamente utilizado y conocido prcticamente se le considera el controlador estndar para aplicaciones industriales

Rt
0

(t) e(t)dt + Td de dt

Alberto Ortiz

20

Control de Bajo Nivel


Controladores PID (cont.)


accin proporcional: Kp R Kp osc. error en estado estable

u ( t) = K p e ( t)

Alberto Ortiz

21

Control de Bajo Nivel


Controladores PID (cont.)


accin integral:

u ( t) =

Kp Ti

compensa el error en estado estable la estabilizacin se produce ms tarde que con un controlador P no se suele utilizar aislado, ms bien combinado en forma PI

Rt
0

e(t)dt

Alberto Ortiz

22

Control de Bajo Nivel


Controladores PID (cont.)


accin derivativa:

(t) u(t) = Kp Td de dt

acelera el controlador P presenta error en estado estable no se suele utilizar aislado, ms bien combinado en forma PD

Alberto Ortiz

23

Control de Bajo Nivel


Controladores PID (cont.)


u ( t) = K p e ( t ) +

1 Ti

ana las ventajas del PD y del PI:


Rt
0

(t) e(t)dt + Td de dt

respuesta rpida no error en estado estable

Alberto Ortiz

24

Control de Bajo Nivel


Controladores PID (cont.)


u ( t ) = K p ( e( t ) + 1 Ti Z
t

e(t)dt
0

de(t) + Td dt

1 en = rn yn; 2 un = un_1 + kp*(en-en_1) + ki*(en+en_1)/2 + kd*(en-2*en_1+en_2); 3 motor = min(un,+100); 4 motor = max(un,-100); 5 en_2 = en_1; en_1 = en; un_1 = un;

Para programarlo:
un = Kp en +
Kp Ti

un un1 = Kp (en en1 ) +

Pn

i=1

ei +ei1 t 2

en1 + Kp Td en t
1 +en2 + Kp Td en 2en t

Kp en +en1 t Ti 2

en1 un = un1 + Kp (en en1 ) + Ki en +2 + Kd (en 2en1 + en2 )


Alberto Ortiz

un = un1 + Aen + Ben1 + Cen2

25

Control de Bajo Nivel


Controladores PID (cont.) Ajuste parmetros PID:


u ( t) = K p e ( t ) +

1 Ti

Rt
0

(t ) e(t)dt + Td de dt

varios mtodos; ms conocido Ziegler-Nichols ZN para configuracin en bucle cerrado:


Ti = , Td = 0 y Kp se incrementa hasta que el sistema empieza a oscilar (si no oscila, el mtodo no sirve) Kcr = Kp y Pcr = periodo de oscilacin Kp P PI PID 0.5Kcr 0.45Kcr 0.6Kcr Ti Td 0 0 0.125Pcr
26

0.833Pcr 0.5Pcr

Alberto Ortiz

Control de Bajo Nivel


a

Ejemplo: control de distancia recorrida

v x

vmax xr 0

xr

PIx

PIv

motor+ carga

software
Alberto Ortiz

hardware
27

Control de Bajo Nivel


Ejemplo: control sincronizado de varios motores


sincronizar dos motores de una plataforma con traccin diferencial para poder trazar trayectorias rectas y curvas

+ vr +

PIv

MOIZD

vI

PIv

MODER

vD

Alberto Ortiz

28

Control de Bajo Nivel


Ejemplo: control sincronizado de varios motores (cont.)


sincronizar dos motores de una plataforma con traccin diferencial para poder trazar trayectorias rectas y curvas
+ vr + + Pv
MODER

Pv Iv
MOIZD

vI + offset + vD

Alberto Ortiz

29

ndice

Control de Robots Mviles Breve Introduccin al Control de Bajo Nivel Paradigmas de Control de Alto Nivel Control Reactivo basado en Motor Schemas Bibliografa

Alberto Ortiz

30

Paradigmas de Control de Alto Nivel


No existe consenso sobre la arquitectura de control idnea Actualmente, se reconocen tres modelos

arquitecturas deliberativas arquitecturas reactivas arquitecturas hbridas deliberativo-reactivas la relacin existente entre las 3 primitivas en las que comnmente se acepta que se descompone cualquier accin robtica (de alto nivel): SENSE, PLAN, ACT la forma como la informacin sensorial es procesada y distribuida a lo largo del sistema
31

... las cuales se diferencian en:


Alberto Ortiz

Paradigmas de Control de Alto Nivel


Primitiva SENSE Entrada informacin sensorial cruda modelo del entorno + conocimiento previo informacin sensorial y/o directivas Salida modelo del entorno Descripcin
traduce informacin proveniente de los sensores en un modelo del entorno genera el plan de ejecucin acorde a la misin a cumplir y el modelo del entorno traduce el plan de ejecucin en una secuencia apropiada de comandos para los actuadores

PLAN

directivas

ACT

comandos para los actuadores

Alberto Ortiz

32

Paradigmas de Control de Alto Nivel


Control deliberativo (control jerrquico, IA clsico, SPA)


Primeros intentos (60s 90s), fuertemente influenciados por el optimismo de la comunidad investigadora en la potencia del razonamiento simblico y la Inteligencia Artificial (IA) Ciclo SPA (Sense-Plan-Act):
SENSE Modelizacin Percepcin PLAN Planificacin ACT Control de motores Ejecucin de tareas

sensores

actuadores

Entorno
Alberto Ortiz 33

Paradigmas de Control de Alto Nivel


Control deliberativo (cont.)


caractersticas principales:

informacin fluye en un nico sentido el planificador es una entidad que razona sobre los smbolos en que se expresa el modelo del entorno modelizacin y planificacin son las tareas fundamentales y, a su vez, de alto coste temporal

investigacin en 1985s fundamentalmente centrada en ellas

dos variantes:

control jerrquico: jerarqua de niveles que emplean/proporcionan servicios de/a niveles superiores/inferiores control centralizado: conjunto de mdulos comunicados por un almacen central de informacin
34

Alberto Ortiz

Paradigmas de Control de Alto Nivel


Control deliberativo (cont.)


Shakey (SRI, 1966-1972)


SAIL, Stanford Artificial Intelligence Lab Entornos de oficina con objetos de formas y colores previamente especificados Tareas de planificacin, bsqueda de caminos, redisposicin de objetos Control embarcado (sec. comandos motores) + control externo (percepcin, modelo, planific.) LISP/Fortran + STRIPS (STanford Research Institute Problem Solver) 2 m/h Life Magazine (1970): 1st electronic person

Alberto Ortiz

35

Paradigmas de Control de Alto Nivel


1977

Control deliberativo (cont.)


Cart (SRI, 1960-1979)


Alberto Ortiz

SAIL, Stanford Artificial Intelligence Lab Plataforma de investigacin para estudiar el problema del control de un vehculo lunar desde la Tierra (Adams, Braisted) Posteriormente, fue reconfigurado como plataforma autnoma para investigar en navegacin visual (Earnest-Schmidt, Moravec) 4 ruedas de bicicleta con motores elctricos alimentados por una batera de coche y una cmara de TV fija primero y mvil despus Entornos con obstculos (incorporacin al modelo on-line): bsqueda camino ms corto + evitacin de obstculos optimizando ngulos de giro y consumo energtico 1 m cada 10-15 min; recorrido completo entorno = 5 horas

36

Paradigmas de Control de Alto Nivel


Control deliberativo (cont.)


HILARE (CNRS, 1970s)


LAAS, Laboratoire dAnalyse et dArchitecture des Systmes Cmara, 14 ultrasonidos, laser range finder 3 ruedas: 2 directoras y una tipo caster Peso:400 kg Entorno: suelos lisos, entornos de oficina Planificacin a nivel geomtrico multinivel

Alberto Ortiz

37

Paradigmas de Control de Alto Nivel


1977

Control deliberativo (cont.)


CMU Rover - Pluto (CMU, 1980s)


Mobile Robot Lab Cmara con pan/tilt + sensores de infrarrojos + ultrasonidos Tres ruedas alimentadas/controladas independientemente (omnidireccional) planificacin sobre base de datos central

Otros: NASREM (NASA-NBS, 1989)


Alberto Ortiz

Standard REference Model for telerobot control system architecture Sistema de control jerrquico + base de datos centralizada Informacin percibida es procesada en varias etapas hasta que una visin coherente del entorno es conseguida Se define un plan que se refina hasta el nivel de actuador

38

Paradigmas de Control de Alto Nivel


Control deliberativo (cont.)


inconvenientes intrnsecos (identificados a finales de los 80):


ejecucin secuencial estricta y elevado flujo de datos


no se adapta fcilmente a la complejidad de las tareas reales (p.e. entornos dinmicos)

eventos significativos en el entorno pueden ocurrir a una frecuencia superior a la frecuencia de ejecucin del ciclo SPA modelo es difcil de mantener sincronizado con el mundo real sobrecarga de comunicaciones sensores proporcionan informacin imperfecta difcil derivar smbolos modelo difcil de crear, mantener y usar proceso sobre computadores no embarcados radioenlazados con el robot; prdida de autonoma investigacin orientada al aumento de velocidad del ciclo SPA para evitar tener que reducir la velocidad de desplazamiento del robot a velocidades insignificantes (hardware especfico, algoritmos optimizados, etc.)

modelizacin y planificacin son tareas muy costosas


Alberto Ortiz

39

El da anterior hablamos de:


definiciones: control de un robot, arquitectura de control control de bajo nivel


controladores PID representar el entorno del robot de forma fidedigna en la memoria del robot definir el movimiento del robot a base de planificarlo cuidadosamente con sofisticadas tcnicas de inteligencia artificial

arquitecturas de control deliberativas


Alberto Ortiz

40

Paradigmas de Control de Alto Nivel


Control reactivo (nouvelle AI, control Sense-Act (SA), basado en comportamientos)


Derivado del desencanto con las arquitecturas deliberativas en cuanto a capacidad de tratar con la complejidad del mundo real y la imposibilidad de actuar en tiempo real

Idea clave: el mejor modelo del mundo es el mundo


est siempre actualizado y contiene toda la informacin

Esfuerzos dedicados al subsistema sensorial, no a la planificacin:


obtener informacin del mundo de forma apropiada y todo lo frecuente que sea necesario ponen un gran nfasis en la calidad de la informacin suministrada por los sensores
41

Alberto Ortiz

Paradigmas de Control de Alto Nivel


Control reactivo (cont.)


Arquitectura de control se estructura como una coleccin de niveles que se ejecutan en paralelo
ciclo SA

SENSE sensores estmulos


comp 1 comp 2

ACT coordinador actuadores

Inspiracin en conducta animal: arquitectura = colleccin de comportamientos


comportamiento = reaccin a un estmulo operan independientemente unos de otros sin supervisin (sin planificacin) y sin una representacin global del entorno (uso escaso de recursos de almacenamiento) ir al objetivo seguir pared evitar obstculos vagar mantener profundidad

comp n

Entorno
Alberto Ortiz

...

Ejemplos de comportamientos:

comportamiento emergente

permanecer en el medio (de un pasillo) mantener altura


42

Paradigmas de Control de Alto Nivel


Control reactivo (cont.)


coordinador comp 1 comp 2 comportamiento emergente

Mecanismos de coordinacin:

competitivo

...

el coordinador decide qu comportamiento es el ms apropiado en cada caso el comportamiento emergente es la combinacin (ponderada) de los comportamientos individuales

comp n

comp 1 comp 2

coordinador

comp n

comportamiento emergente

cooperativo

...

Alberto Ortiz

43

Paradigmas de Control de Alto Nivel


coordinador comp 1

Ejemplo: sistemas subsumidos (subsumption systems)


comp 3 comp 4

Rodney Brooks, 1986 Comportamientos organizados jerrquicamente por niveles que se ejecutan concurrentemente y asncronamente

cada nivel tiene asignada una prioridad las respuestas de los niveles superiores subsumen (predominan sobre) las respuestas de los niveles inferiores niveles altos deberan estar a cargo de comportamientos orientados a garantizar la supervivencia (p.e. evitar obstculos)

Alberto Ortiz

actuadores
44

Control reactivo (cont.)

comp 2

Paradigmas de Control de Alto Nivel


c

Control reactivo (cont.)


b a
PWR

ejemplo de arquitectura subsumida


Recarga Escapar Evitar obst. Seguir luz Avanzar S S S S motores alimentador

d e

fotoclulas infrarrojos contacto nivel batera

a) b) c) d)

Avanzar: desplazamiento en lnea recta Seguir luz: giro hacia el lado del fotosensor ms iluminado Evitar obst: giro hacia el lado donde no est el obstculo Escapar: retrocede cuando hay contacto y gira Recarga: regarga batera cuando est suficientemente cerca de la estacin de alimentacin, indicada por un emisor de luz
Alberto Ortiz

batera suficiente + avanzar IR detectan pared IR detectan pared silla no detectada por IR pero s por sensores contacto e) batera baja + seguir luz f) cerca estacin de recarga + batera baja + misma intensidad de las dos fotoclulas
45

Paradigmas de Control de Alto Nivel coordinador


Control reactivo (cont.)


comp 2 comp 3

Ejemplo: motor schemas


comp 4 Ronald Arkin, 1989 Motor schema = unidad bsica de comportamiento Cada schema opera de forma asncrona y concurrentemente con los otros y reacciona proporcionalmente a la informacin sensorial percibida

La salida de cada schema es un vector 2D/3D que define la direccin de movimiento que debera seguir el robot Vector proviene tpicamente de un campo de potencial gradiente de la fuerza que regula el movimiento del robot campos uniformes, repulsores, atractores, ...

Cada motor schema tiene asignada una ganancia que determina su contribucin relativa a la direccin de movimiento del robot

Alberto Ortiz

accin = suma vectorial ponderada y normalizada

actuadores
46

comp 1

norm

Paradigmas de Control de Alto Nivel


Control reactivo (cont.)


ejemplo de campos de potencial


objetivo

robot

obstculo

Alberto Ortiz

47

Paradigmas de Control de Alto Nivel


Control reactivo (cont.)


Aspectos destacables:

resuelve los problemas del control deliberativo (consiguen resolver con xito tareas relativamente complejas haciendo uso de escasa informacin sensorial: navegar o seguir un objetivo en un entorno con obstculos estticos y dinmicos) modelo de entorno distribuido entre los comportamientos (robustez y flexibilidad) baja carga de comunicaciones (cada capa procesa exclusivamente la informacin que necesita) posibilita la implementacin en hardware de parte de la arquitectura no existe un mtodo sistemtico de descomposicin en comportamientos ni la ordenacin (sistemas subsumidos) ni las ganancias (motor schemas) son fciles de definir

Limitaciones:

a veces comportamientos entran en conflicto, se compensan y el robot queda bloqueado

Alberto Ortiz

la ausencia de una visin global del entorno puede limitar su aplicacin (p.e. en el mundo animal: mosca que repetidamente golpea el cristal por falta de recuerdo) no es trivial implementar tareas complejas mediante arquitecturas puramente reactivas

48

Paradigmas de Control de Alto Nivel


Control hbrido (control Plan,Sense-Act [P,SA])


Ana las mejores cualidades de los dos planteamientos anteriores para conseguir robots inteligentes, robustos y flexibles:

SPA = planificacin (inf. global) entornos controlados SA = reactividad + simplicidad (inf. local) entornos dinmicos

sistemas hbridos que incorporan razonamiento deliberativo y ejecucin basada en comportamientos Procesamiento a diferentes niveles con distinta frecuencia de ejecucin:

mdulos reactivos tratan con situaciones impredecibles y aportan al sistema respuesta en tiempo real mdulos deliberativos generan y mantienen un modelo del entorno que les permite planificar el movimiento
49

Alberto Ortiz

Paradigmas de Control de Alto Nivel


Control hbrido (cont.)


ciclo P,SA PLAN Planificador Secuenciador

SENSE coordinador
comp 2

actuadores

sensores estmulos

comp 1

Idea bsica propuesta por diferentes grupos de investigacin simultneamente, pero ... ... a nivel de detalle aparecen diferentes estructuras debido a que no es evidente cmo unir los niveles reactivos y los deliberativos La arquitectura ms extendida consta tpicamente de tres niveles (integracin jerrquica planificacin-reaccin):

comp n

Alberto Ortiz

ACT Entorno

...

Planificador: modelo + plan Secuenciador: descompone plan en tareas Reactivo: implementa tareas y proporciona respuesta rpida

50

Paradigmas de Control de Alto Nivel


Control hbrido (cont.)


planificador

Otras posibilidades (Lyons, 1992):


Deliberacin Proyeccin
consejos configuracin parmetros

planificacin gua la reaccin


el planificador configura los parmetros de operacin de los comportamientos (proyeccin del plan) ejecucin slo a nivel reactivo

comportamientos

acoplamiento de planificacin y reaccin


planificador

comportamientos

planificacin y reaccin son actividades concurrentes que se asisten mtuamente

Alberto Ortiz

51

Paradigmas de Control de Alto Nivel


Control hbrido (cont.)


misin imposible re-enrutado imposible


52

Ejemplo (entre muchos otros): AuRA (Autonomous Robot objetivos de alto nivel + restricciones Architecture), Arkin, 1990s
de operacin; interfase humana NAVEGADOR: construye caminos empleando un mapa

imposible reajustar comportamientos PILOTO: activa/configura/desactiva comportamientos para seguir camino

fallo en la ejecucin reactiva de la misin (p.e. no progreso)


Alberto Ortiz

Paradigmas de Control de Alto Nivel


Control hbrido (cont.)


Aspectos destacables:

ana las ventajas de sistemas reactivos y deliberativos


planificacin + reactividad

sistemas hbridos proporcionan una va para la incorporacin de mtodos de inteligencia artificial y representacin simblica en arquitecturas reactivas hay fuertes evidencias de que en el mundo animal se reproducen esquemas hbridos deliberativo-reactivos no hay consenso en el nmero de niveles no hay consenso en la interfase entre los niveles deliberativos y los reactivos
53

Problemas abiertos:

Alberto Ortiz

ndice

Control de Robots Mviles Breve Introduccin al Control de Bajo Nivel Paradigmas de Control de Alto Nivel Control Reactivo basado en Motor Schemas Bibliografa

Alberto Ortiz

54

Control Reactivo basado en Motor Schemas


Resumen rpido:

Desarrollado por Arkin en 1980s Control de alto nivel del robot se consigue a base de combinar la respuesta de comportamientos individuales:

Inspirado en las respuestas condicionadas de la conducta animal (schema theory, neurociencia-psicologa-etologa) estmulo comportamiento respuesta

Motor Schema = unidad bsica de comportamiento

Respuestas comportamentales se representan en forma de vectores generados a partir de campos de potencial


Alberto Ortiz

Cada campo de potencial induce una fuerza sobre el robot Movimiento final del robot se obtiene de combinar las diferentes fuerzas (suma vectorial)

55

Control Reactivo basado en Motor Schemas


Comportamiento = perceptual schema(s) + motor schema

Alberto Ortiz

56

Control Reactivo basado en Motor Schemas


Generacin de un campo de potencial 2D:


entorno que rodea al robot se divide regularmente en zonas cuadradas se define una matriz (= mapa) con tantas celdas como zonas sobre cada celda se sita un vector que define la fuerza asociada al campo en ese punto del entorno V = (Vx,Vy) de cada vector V se considera su magnitud m y su m direccin d: V = (Vx,Vy) = (m,d) d cada comportamiento genera un campo de potencial de q los cuales se derivan las fuerzas Fi que determinan el 2+V2 m = Vx y movimiento del robot (tpicamente, velocidad = kiFi)
d = tan1 Vy Vx

Alberto Ortiz

57

Control Reactivo basado en Motor Schemas


15 14

Comportamiento go-to-goal:

13 12 11

10 m = constante 9 d = radialmente hacia el objetivo (gx , gy ) 8

F (x, y) = m

(gx x)2 +(gy y )2

(gx x,gy y )

7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Alberto Ortiz

58

Control Reactivo basado en Motor Schemas


15 14

Comportamiento avoid-obstacle:
(soi = sphere of influence)
m= 0,
Rsoi do , do

13 12 11 10 9

do > Rsoi do Rsoi

8 7 6 5 4 3 2

d = radialmente desde el obstaculo (ox , oy ) hacia afuera


F (x, y) =
R soi do do

( x ox )2 +(y oy )2

(x ox ,y oy )

Tambin:
F (x, y) =

(si do Rsoi )
1 do

1 Rsoi

(si do Rsoi)

d2 o

o y ) (xox ,y 2

(xox ) +(y oy

)2

1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Alberto Ortiz

59

Control Reactivo basado en Motor Schemas


15 14

Comportamiento stay-on-path:
m=
dpath W/2

13 12 11 10 9 8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

d = lateralmente hacia el centro del camino


F (x, y) =
d path W/ 2

(x path x )2 +(y pathy )2

(x path x ,y path y )

(pathx,pathy) = punto ms cercano desde (x,y) al centro del camino

Alberto Ortiz

60

Control Reactivo basado en Motor Schemas


15 14

Comportamiento move-ahead:
m = constante d = direccion especicada (dx , dy )
x y F (x, y ) = m d 2 +d2 x

13 12 11 10 9 8 7

(d ,d )

6 5 4 3 2 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Alberto Ortiz

61

Control Reactivo basado en Motor Schemas


Otros comportamientos:

escape: alejarse del punto previsto de interceptacin con un objeto follow-the-leader: seguir a un robot/objeto en movimiento dock: aproximarse a un punto determinado de un objeto desde cierta direccin move-up, move-down, maintain-altitude: modificar/mantener altitud de un robot en movimiento por un terreno con desniveles teleautonomy: aceptar comandos remotos inertia: genera un vector en el sentido de la marcha del robot (til para suavizar los giros del robot)

Alberto Ortiz

62

Control Reactivo basado en Motor Schemas


15 14

Comportamiento emergente:
F (x, y ) = P
i

13 12 11 10

Gi Fi (x, y )

9 8 7 6

(Gi = peso del comportamiento)

V (x, y ) = KF (x, y)
(K = constante de conversin fuerza-velocidad)

5 4 3 2 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Alberto Ortiz

63

Control Reactivo basado en Motor Schemas


Comportamiento emergente:

Alberto Ortiz

64

Control Reactivo basado en Motor Schemas


Algunos detalles:

El robot es considerado un punto bajo la influencia de un campo de potencial artificial U:

U U F (x, y ) = U (x, y ) = x , y p.e. m m (x, y ) = ((x gx )2 + (y gy )2 ) Uatt (x, y ) = d2 2 g 2 Fatt (x, y ) = Uatt (x, y ) = m(x gx , y gy ) No es necesario calcular todo el campo, slo en la posicin del robot (xr,yr); calcular todos los componentes y sumar incorporando las ganancias: P F (xr , yr ) = i Gi Fi (xr , yr ) El campo se calcula utilizando informacin sensorial ( actualizacin instantnea del campo si obstculos dinmicos)
65

Alberto Ortiz

Control Reactivo basado en Motor Schemas


Gua de diseo:

Caracterizar el problem en trminos de los comportamientos necesarios para implementar la tarea


descomponer los comportamientos al nivel ms primitivo, utilizando estudios biolgicos cuando sea factible desarrollar frmulas para expresar la reaccin del robot a los eventos percibidos del entorno determinar los requerimientos perceptuales de los comportamientos disear los algoritmos de procesamiento de informacin sensorial

Llevar a cabo simulaciones para verificar la correccin del comportamiento del robot Integrar el sistema de control sobre el robot Verificar y evaluar Iterar y expandir segn se requiera
66

Alberto Ortiz

Control Reactivo basado en Motor Schemas


Problemas potenciales:

Mnimos locales en el campo de potencial: P F (xr , yr ) = i Gi Fi (xr , yr ) ~ 0


Goal

Obstacle

Obstacle

Alberto Ortiz

67

Control Reactivo basado en Motor Schemas


Problemas potenciales:

Comportamiento cclico:

Alberto Ortiz

68

Control Reactivo basado en Motor Schemas


Problemas potenciales (cont.):


Soluciones (para algunos mnimos locales):


campos rotacionales (tangenciales) alrededor de obstculos:


rompe simetra evita que el robot se quede parado mapa local donde en cada celda se anota las veces que el robot ha pasado a medida que pasa el tiempo se decrementa el valor de los acumuladores fuerza repulsora en funcin del valor de cada acumulador
69

comportamiento noise o random


comportamiento avoid-the-past

Alberto Ortiz

Control Reactivo basado en Motor G F Schemas


r

> Gt Ft

Problemas potenciales (cont.):


Problemas para pasar entre obstculos escasamente espaciados:


solucin: variar tamao SOI de forma dinmica si avoid-obstacle trabaja directamente con ultrasonidos:

Oscilaciones inestables:

oscilaciones en presencia de obstculos oscilaciones en pasillos estrechos

Alberto Ortiz

solucin: reducir influencia de obstculos laterales

70

Control Reactivo basado en Motor Schemas


Ejemplo de Arquitectura Reactiva:


Seguidor de Cables Submarinos (Grupo SRV, Antich-Ortiz-Oliver)

Alberto Ortiz

71

Control Reactivo basado en Motor Schemas


Pesos de los comportamientos determinados experimentalmente:

Pesos refinados mediante algoritmos genticos:

Alberto Ortiz

72

ndice

Control de Robots Mviles Breve Introduccin al Control de Bajo Nivel Paradigmas de Control de Alto Nivel Control Reactivo basado en Campos de Potencial Bibliografa

Alberto Ortiz

73

Bibliografa

George A. Bekey, Autonomous Robots: From Biological Inspiration to Implementation and Control, MIT Press, 2005 Thomas Brunl, Embedded Robotics, Springer, 2003 Robin R. Murphy, Introduction to AI Robotics, MIT Press, 2000 J. Jones, A. Flynn, B. Seiger, Mobile Robots From Inspiration to Implementation, AK Peters, 1999 Ronald C. Arkin, Behaviour-Based Robotics, MIT Press, 1998 Y. Koren, J. Borenstein, Potential Field Methods and Their Inherent Limitations for Mobile Robot Navigation, Proc. ICRA, 1991 T. Balch, R. Arkin, Avoiding the Past: A Simple but Effective Strategy for Reactive Navigation, Proc. ICRA, 1993

Alberto Ortiz

74

Potrebbero piacerti anche