Upload
others
View
21
Download
0
Embed Size (px)
Citation preview
Seguimiento visual basado en posición y basado en
características
Departamento de Ingeniería de Sistemas y Automática
Universidad de Sevilla
Manuel Vargas VillanuevaFrancisco Rodríguez Rubio
.
Índice de la presentaciónÍndice de la presentación
Introducción
Estrategias de seguimiento visual. Clasificación
Calibraciones previas requeridas
Implementaciones completadas o en realización
Caso1. Seguimiento visual basado en posición para PUMA 560
Caso 2. Seguimiento visual basado en características para RM-10
Conclusiones
Trabajos futuros
2
Introducción
3
Control de robots mediante realimentación visual (seguimiento visual):
• Nuestro interés: control de robots manipuladores mediante realimentación visual:- Seguimiento de objetos- Interacción con los mismos (posición desconocida o imprecisa)
• “Realimentación visual”: sist. guiados visualmente, una o más cámaras, imágenes ⇒ señal de realimentación para tarea
Decidir relación cinemática robot-cámara(s):• Estáticas: Ubicación fija. Visibles permanentemente: robot (ef. final) , objeto
• Móviles: “cámara-en-mano”. Observación objeto. Pos. robot implícita
• Número de cámaras: monocular / estéreo
.
Índice de la presentaciónÍndice de la presentación
Introducción
Estrategias de seguimiento visual. Clasificación
Calibraciones previas requeridas
Implementaciones completadas o en realización
Caso1. Seguimiento visual basado en posición para PUMA 560
Caso 2. Seguimiento visual basado en características para RM-10
Conclusiones
Trabajos futuros
4
5
Dos criterios:1) En función del espacio de control:
1.1) Seguimiento visual basado en posición- Información de la imagen ⇒ estimación explícita localización- Referencia espacio cartesiano
1.2) Seguimiento visual basado en características- Las características visuales ⇒ información de realimentación- Referencia y control trabajan sobre estas características
Estrategias de seguimiento visual. Clasificación
Estimaciónde Posición
Extracción deCaracterísticas
s
Controlador enespacio
cartesiano
cr̂
dcr
Extracción deCaracterísticas
Controlador enespacio de
característicasds
s
6
Dos criterios:1) En función del espacio de control:
1.1) Seguimiento visual basado en posición- Información de la imagen ⇒ estimación explícita localización- Referencia espacio cartesiano
1.2) Seguimiento visual basado en características- Las características visuales ⇒ información de realimentación- Referencia y control trabajan sobre estas características
Estrategias de seguimiento visual. Clasificación
Estimaciónde Posición
Extracción deCaracterísticas
s
Controlador enespacio
cartesiano
cr̂
dcr
Extracción deCaracterísticas
Controlador enespacio de
característicasds
s
Ventajas:Esquema basado en características:
- Se especifica en términos de cómo se quiere ver el objeto- Más robusto ante calibraciones deficientes
7
2) En función de que se mantenga lazo de realimentación articular:
2.1) Esquema “mira y mueve dinámico” (“dynamic look-then-move”)
- Se mantienen los lazos internos de control articular- Su dinámica debe considerarse- Suele llevar a esquemas de control bifrecuenciales
2.2) Esquema “servo-visual” (“visual servoing”)- Desaparece lazo de control interno- Controlador visual proporciona directamente pares actuación- Fuerte nivel de acoplamiento dinámico (cinem, dinámica, visión,acoplados, se formulan conjuntamente)
- Procesamiento de imágenes a frecuencias elevadas
Estrategias de realim. visual. Clasificación
• Esquema “mira y mueve” basado en posición (pose-based look-then-move scheme):
• Esquema “servo-visual” basado en características (feature-based visual servoing scheme):
dcr
Extracción deCaracterísticas
s
Controladoren espaciocartesiano
dq
q
Controladoresde Articulación
Amplificadores deServomotores
Estimación deposición
cr
CinemáticaInversa
ds
Extracción deCaracterísticas
Controlador enespacio de
caracteristicas
Amplificadores deServomotores
s
dq
8
Estrategias de realim. visual. Clasificación
.
Índice de la presentaciónÍndice de la presentación
IntroducciónEstrategias de seguimiento visual. ClasificaciónCalibraciones previas requeridas3.1) Modelo de formación de la imagen3.2) Calibración interna de la cámara3.3) Calibración cámara-garraImplementaciones completadas o en realizaciónCaso1. Seguimiento visual basado en posición para PUMA 560Caso 2. Seguimiento visual basado en características para RM-10ConclusionesTrabajos futuros
9
10
Calibraciones:Calibración interna de la cámara:
- Parámetros internos de la cámara
Calibración cámara-robot:- Configuración cámara-en-mano ⇒ cámara-garra {C}-{G}- Configuración cámara estática ⇒ {C}-{W}
Calibración del robot:- Para conocer la situación de {G}
Implementaciones que no requieren calibración:Esquemas adaptativos, capaces de “aprender” cómo un determinado
cambio en la posición del robot, puede afectar a lo observado.
Calibraciones previas requeridas
Cuatro pasos en la formación de la imagen:
ico
c
io pTp → xC
{C}y
z
xx
y {I}
{O}
y
z
x
yC
Plano de la Imagen
ic p
io p
ip
oc
io
oc
ic rpRp +=
• Paso 1:
iuic Pfp →
=
=
ic
ic
ic
u
uu y
xzf
YX
Pi
i
i
Proyección perspectiva
• Paso 2:
Expresar cada punto del objeto respecto al sistema de coordenadas de la cámara {C}
uiP
f
Plano de la imagen
Lente simple
{C}
y
zx
ic p
11
Modelo de formación de la imagen
...)1(2
1 ++=iii ddu PPP κ
• Paso 3:ii du PP → ...,, 21 κκ
Coordenadas en memoria digitalizadora
• Paso 4:
Distorsión radial de la lenteuPdP
),( yx CC
Plano de la imagen
td
rd
ii fyxyxx
d PCCdds
P →,,,,
12
Modelo de formación de la imagen
yy
dfx
ys
df C
dY
YCda
XX i
i
i
i+−=+−= , dy puede ser ficticio
- Obtener parámetros intrínsecos- Proceso costoso, off-line (salvo modelos simplificados)
Tres pasos:- Determinar con precisión situación puntos plantilla calibración- Identificar corresp. de esos puntos en la(s) imagen(es)- Calcular params. que mejor resuelvan la correspondencia
(de acuerdo con modelo)
Los diversos métodos se diferencian en:El modelo de cámara supuesto, en nuestro caso:
pin-hole, proy. persp, dist. radial primer ordenMétodos lineales o no linealesTipo de objeto requerido como pieza de calibración
Método de calibración empleado:Variación del método de Tsai (http://www.cs.cmu...)Objeto de calibración requerido:plantilla plana de 54 círculos dispuestos en forma matricial
Calibración interna de la cámara
13
{Ci}
{O}
{Gi}
{Cj}
{Gj}
{W}
igwT
cgT
cgTj
ig
g T
oc Tj
j
ic
c T
Calibración cámara-garra
Método de Tsai y Lenz
{C}
x
z
y
{G}
x
z
y
]90.2,67.3,99.84[ oooc
g R −−←
]10,5.0,5.6[←cg r
- Orientación (ángulos Euler ZYX):
- Traslación (cm):
14
.
Índice de la presentaciónÍndice de la presentación
Introducción
Estrategias de seguimiento visual. Clasificación
Calibraciones previas requeridas
Implementaciones completadas o en realización
Caso1. Seguimiento visual basado en posición para PUMA 560
Caso 2. Seguimiento visual basado en características para RM-10
Conclusiones
Trabajos futuros
15
16
Caso 1) Esquema “mira y mueve dinámico” basado en posición- Mono-cámara, cámara-en-mano- Sobre robot PUMA 560- Lazo interno mediante la electrónica propia del robot- Usado como posicionador cartesiano (no cinemat. inversa)- 6 GDL- Control desacoplado de cada articulación cartesiana- 2 lazos de control ⇒ bifrecuencial- Modelo geométrico del objeto
Caso 2) Esquema “servo-visual” basado en características
- Mono-cámara y estéreo, cámara-en-mano- Sobre robot RM-10 y plataforma giroestabilizada- Robot controlado desde PC, ignorando electrónica propia- 3 GDL y 6 GDL- 1 lazo de control. Mayor velocidad. Tarjeta adquis. y cámara digitales
Implementaciones completadas o en realización
.
Índice de la presentaciónÍndice de la presentación
Introducción
Estrategias de seguimiento visual. Clasificación
Calibraciones previas requeridas
Implementaciones completadas o en realización
Caso1. Seguimiento visual basado en posición para PUMA 560
5.1) Estimación localización objeto-cámara
5.2) Esquema de control para 6 GDL
Caso 2. Seguimiento visual basado en características para RM-10
Conclusiones
Trabajos futuros17
18
Caso 1. Basado en posición para PUMA 560
• La tarea se especifica en términos de localización cartesiana
• Paso fundamental: Estimación localización relativa objeto-cámara
• Separación clara entre ambos aspectos
Seguimiento visual basado en posición
dcr
Extracción deCaracterísticas
s
Controladoren espaciocartesiano
dq
q
Controladoresde Articulación
Amplificadores deServomotores
Estimación deposición
cr
CinemáticaInversa
Estimación de la localización objeto-cámara
Se trata de recuperar la profundidad de los puntos en la escena
Para extraer datos tridimensionales se requiere información adicional:
• Modelo geométrico del objeto
- Emparejando de nuevo puntos en la imagen con puntos en objeto,ahora “en línea”.
- Falta de flexibilidad• Uso de múltiples cámaras
- Emparejamiento de imágenes simultáneas desde distintospuntos de vista
• Uso del movimiento- Correspondencias entre imágenes sucesivas- Flujo óptico
19
Estimación de la localización objeto-cámara
Método basado en la parametrización matricial de la rotación:
Se estiman los 9 parámetros de la matriz de rotación
- Sistema de ecuaciones lineal:
- Solución analítica simple
- Resolver para 11 params. Se aplican condiciones de ortogonalidad aposteriori.
- Versión reducida del método de calibración de Tsai
)(
),(x
i
i
f2n
io
f112n
Pbb
pPAA
=
=bxA =
20
Esquema de control para 6 GDL
Robot PUMA operando en modo ALTER
Controlador del robot se encarga de cinemática inversa ycontrol de las articulaciones
Control en coordenadas cartesianas
Al robot se le envían: deseadas
De cara al usuario los distintos grados de libertad cartesianos aparecen como independientes
Modelables mediante sencillo modelo lineal
kk gw
gwr θ,
21
Esquema de control para 6 GDL
{Ok}
{W}
{Ck}
{Gk}
{Ck-1}
{Gk-1}
kgwT
kowT
cgT
cgT
1
1
−
−
k
kg
g Tk
kc
c T1−
k
ko
c T1−
k
ko
c T
- Comparaciones simbólicas:
- Modelo bifrecuencia:Tv = 8 Tr
- Módulos idealmente complementarios:
(1)↔(2)(3)↔(4)
[ ]kkk
ko
wc
wo
c TTT ⋅=−1
[ ] 1
11
11 ˆ −
−−
−− ⋅==∆ do
co
cc
cc k
k
k
k
k
k
kTTTT
ModeloRobot
Captura+Procesamiento Imagen
(1)
FormaciónImagen
Estimac.Pos-Orient
1−z
(3) (4)(2)
)(zCControlador
kowT
k
ko
c T1
1 ˆ−
−
k
ko
c T
do
ck
k T
1−∆
kcT gcT̂ c
gTuT kg
wTkc
wT
1−∆
kgT
22
Esquema de control para 6 GDL
23
- Debemos descomponer la matriz de transformación en 6 coordenadas.
- Estas coordenadas deben ser consistentes con la operación suma a lo largo de diversos periodos de muestreo:
- Cambio de referencia:
- Descomposición:
Descomposición de coordenadas para el control:
mkmku
nknuk
uk xbxbxaxax −−− +++++= LL 011
)(zCControlador
1−∆
kgT uT
[ ]
∆⋅=∆⋅∆⋅=∆
=∆→=∆−−−
−−−−−
−
−
−
−
111
11111
1
1
1 )(
1)()()(
kkk
kkkkk
k
kk
k
k
ggww
g
gw
ggww
gwg
gwgg
gg rRr
RRRRTTTT
],,[)(
)(
1
1
zyxw
g
wg
tttr
EulerdeángulosR
k
k
→∆
→∆
−
−
Esquema de control para 6 GDL
Experimento demostrativo:
- Mantener localización relativa inicial- Predictor Smith, Kp= 0.08- 224 ms por ciclo ⇒ 4.5 ciclos por segundo
24
.
Índice de la presentaciónÍndice de la presentaciónIntroducciónEstrategias de seguimiento visual. ClasificaciónCalibraciones previas requeridasImplementaciones completadas o en realizaciónCaso1. Seguimiento visual basado en posición para PUMA 560Caso 2. Seguimiento visual basado en características para RM-10
6.1) Planteamiento general6.2) Obtención de la matriz de interacción6.3) Esquema de control para 6 GDL6.4) Movimiento del objeto como perturbación6.5) Ruido en las características. Redundancia6.6) Incertidumbre en el modelo. Robustez6.7) Implementación para RM-10
ConclusionesTrabajos futuros
25
- Esquema servo-visual basado en características- Monocámara, cámara-en-mano- Se controla robot sólo con lazo de realimentación visual- Supone modelo conocido de robot: cinemático, dinámico- Modelo de cámara conocido:
- 3 GDL modelo proyección perspectiva con distorsión- 6 GDL modelo sin distorsión
- Modelo geométrico del objeto requerido
26
Descripción a grandes rasgos:
Caso 2. Basado en características para RM-10
Planteamiento general- La dinámica del manipulador viene dada por:
- Función de la tarea:
- Objetivo de control:
“controlar manipulador con señales obtenidas con sensor visual”
- Matriz de interacción (en Jq):(Jacobiano de la imagen)
)),(( ttqe
27
0),( =tqe
→→×etq
RRR mdof
),(
),()(),( tqststqe d −= )),(( tqrs cw {C}, {W}
=
∂∂
==o
co
c
oc
oco
c rrsLrLs
ωυ&&& ;;
∂∂
=
∂∂
=
ttqetqJ
qtqetqJ
t
q
),(),(
),(),(
tq JqJtqqe += &&& ),,(
),()( qqNqqMΓ &&& +=
Jq: Jacobiano de la tarea
niPLzrPLLL
LL
ii fiic
oc
fii
n
KL 1,),(),,(;1
=∀==
=
Obtención de matriz de interacción- De especial interés en control visual basado en características
- Características empleadas:
- Submatriz de interacción para cada punto:
;;11
1
1
=
≡
=
=
n
n
n
i
i
i
f
f
f
f
f
f
mf
ff
P
P
YX
YX
s
ss
YX
P LLL
28
))(),((; trqrfrrLs ow
cw
oc
oc == &&
+
+−++−
−−
−−−−+−
+
−−
=
ic
y
oc
sfi
co
cys
ffi
co
c
ffi
co
c
yic
f
ic
y
ic
ys
oc
s
f
ic
oc
fs
fsi
co
c
yic
oc
yff
ic
f
ic
ysi
zdxfaX
zx
fda
XYzyY
fdyY
dyzfz
df
zY
zdf
zdayf
aY
zxX
fdyaX
dyazfz
df
zy
fd
YXzX
zdaf
L
iiiii
i
i
iiii
i
~~~~~~
0
~~~~~
~0
2
2
ocr
Obtención de matriz de interacción
1) Matriz de interacción en configuración deseada (Espiau)
- Matriz de interacción constante (no hay que estimarla en línea)- Trayectoria de referencia:- Aproximación local => problemas incluso con:
2) Visión estereoscópica (Hager)- Basta con la información visual procedente de un par de imágenes
3) Estimación en línea de Jq (Jägersand)- Algoritmo de control adaptativo- Inicialmente, ejecutar un juego de movimientos de prueba- Estéreo
Soluciones para abordar la dependencia con :
),(ˆ do
cd
TT rsLL =
ocr
29
)(tsd
ctesd =
Obtención de matriz de interacción4) Estimación posición del objeto
- Asumir esta dependencia al tiempo que monocámara.- Hacer estimación en línea de
al igual que se hacía en seguimiento visual basado en posición- Empleando modelo geométrico del objeto - Para 3GDL, esa dependencia: , se obtiene expr. compacta:
- Esto queda implícito, de forma que: 30
ocr
)(if
PLL =
2)~()(
uu
uuooT
uufo
c
PPPfPPz
i
−⋅=
=
=
=
LLL32
31
21
32
31
21
32
31
21
~~~
~,,u
u
u
uuo
o
o
oou
u
u
uu PPP
PPPP
PPPP
P
ijijijij uio
ujo
uui
oj
oi
oj
o
ouuu PzPzPyyxx
PPPP −=
−−
=−= ~,,
oc
oc zr →
Esquema de control para 6 GDL
- La dinámica del manipulador viene dada por: - De la tarea especificada:
- Dinámica del conjunto robot+tarea:
- Si el par de entrada se obtiene, a partir de ue, mediante la dinámica inversa:
),( tqe),()( qqNqqMΓ &&& +=
f),,,(
),,(
+=
+=
qJtqqqe
JqJtqqe
q
tq
&&&&&&&
&&&2
222
1
2),,(fteq
tqe
qWq
qWqqWq
tqq
mT
T
T
∂∂
+∂∂
∂+
= &
&&
L
&&
&&
&
)(1 lΓMJe q −= −&& f1−−= qJMNlRobot+
Tarea2
1s
Γ e&& e
31
luJMΓ eqˆˆˆ 1 += −
Linealización por realimentación
Se puede diseñar control lineal:
Tarea
vK−
pK−
Robot1−qJM
lqq&
Γ q
q&eu e
e&
Dinámica inversa
0=++ eKeKe vp &&&
32
luJMΓ eqˆˆˆ 1 += −
Linealización por realimentaciónEspacio de características visuales: ))(()(),( qrststqe o
cd −=
dow
ow
wcT
co
wm
Tco
w
co
wTco
w
co
w
mTTcT
TTcT
cm
Tco
w
cTco
w
T
T
wc
cm
TTcT
cTTcT
sBLrrBLrr
rrr
BJq
BJqq
JBr
JBr
qHq
qHqBL
qJBBJq
qJBBJq&&&&&
&&L
&&
&
&
L
&
&
&L
&
&&
L
&&
&&
L
&&
+−−+
−
+
+
+
−= 32)()(
)(1
)(
)(
1)(
11)(
)(1
)(
)(11
)(
6
1
1)(
11)(
)(111
)(
)()(
)(f RR
L
L
L
L
L
L
L
L
vK−
pK−
Robot1−qJM
l Tarea
PCD CAM
J TLqq&
Γeu
ds&&
owr
e
e&
owr& o
wr&&
owr&
cwr
cwr&
q
q&
ocr
oc r&
s
s&
ds ds&
33
+−=
=
dc
ow
t
cq
srLJ
JBLJ
&& )(
)(1
f),,,(
),,(
+=
+=
qJtqqqe
JqJtqqe
q
tq
&&&&&&&
&&&
Esquema de control para 6 GDLReorganizado en forma similar al control por par calculado
Robot1−− qJM
NvK
pKPCD CAM
J TLqq&
Γ
owr
e
e&
owr& o
wr&&
owr&
cwr
cwr&
q
q&
ocr
ocr&
s
s&ds
ds&
ds&& qq&'f
- Dependencia de: 34
ow
ow rr &&& ,
Movimiento objeto como perturbación
Robot1−− qJM
NvK
pKPCD CAM
J TLqq&
Γ
owr
e
e&
owr& o
wr&&
owr&
cwr
cwr&
q
q&
ocr
ocr&
s
s&ds
ds&
ds&& qq&'f
- Existe la dependencia: - En general, no se conoce el perfil de movimiento del objeto- La linealización exacta no es posible
- Lo planteamos como perturbación:
),,,('f ow
ow rrqq &&&&
),,,(f),(f'f ''o
wo
wPN rrqqqq &&&&& +=
35
- Objeto con movimiento a velocidad constante => - Objeto con movimiento unif. acelerado => - Se añade efecto integral al controlador
Robot1−− qJM
NvK
pKPCD CAM
J TL(1)qq&
Γ
owr
e
e&
owr&
cwr
cwr&
ocr
oc r&
s
s&ds
ds&
ds&& qq&N'f
NΓ
PΓ
Nu
.cteΓP =rampaΓP =
36
Movimiento objeto como perturbación
- En t=2s, objeto inicia mvto. a velocidad cte.
- Se emplean 3 características- Se muestra: y pares en segunda articulación
- Prefiltro para reducir SO y limitar riesgo de saturación: filtro primer orden
spixelssmr TTo
w /]225,275,220[/]25.0,25.0,25.0[ ⇒−−=&
11 fXs =
s15.0=τ 37
Movimiento objeto como perturbación
- En principio, se suponia m=dof- Para mejorar comportamiento en presencia de ruidos (frecuente):
- Problema de controlabilidad (coherencia de las características)
Alternativas para la inclusión de redundancia:1) Uso de matriz de combinación (Espiau):
- Se pierde intuición
2) Estimar con mayor número:- Usar 6 características para el error - Más (hasta 50) para estimar
Ruido en características. Redundancia
6616 666 ×× ××= JBLJ mqm
))()((),(~11616 mxmxdxmx qstsCtqe −=
38
6)( =LCrango
ocr
ocr
dofm > ⇒ redundancia en las características
- Segundo método de Lyapunov mediante el empleo de funciones saturación
- Originalmente aplicado al control articular
- Se aplica al control en espacio de características
- Sin incertidumbre:
- Con incertidumbre:
Incertidumbre en el modelo. Robustez
11 ,)( −− ⋅=−= qaa JMMlΓMe&&
)( xKuueluMΓ eeea −==⇒+= &&
η+=⇒+= eea ueluMΓ &&ˆˆ
<−
≥−
=∆
εε
ρ
ερ
xPBsixPB
xPBsixPBxPB
uT
T
TT
T
e
eeNe uuu ∆+=
−=∆
−⋅=
∆+=−
−
lll
IMME
lMuE
xaa
ae
ˆ
ˆ33
1
1η
xKueN −=
breincertidumcotaρ
39
- Incertidumbre aleatoria de hasta el 40%:- parámetros de la cámara- parámetros cinemáticos del robot- parámetros dinámicos del robot
Incertidumbre en el modelo. Robustez
310−=ε
40
Incertidumbre en el modelo. Robustez
41
- Comparación de pares en articulaciones:
Implementación para RM-10
- En desarrollo- Robot industrial RM-10 - (simulaciones suponiendo reductoras unitarias)- Reemplazada electrónica de control
),()( qqNqqMΓ &&& +=
42
505.00 Kg6
807.35 Kg5
5933.89 Kg4
10584.10 Kg3
15351.80 Kg2
12138.65 Kg1
Reduc.MasaElem.
Implementación para RM-10
- Dos ordenadores personales: PC 1: Host electrónica de control articulaciones:
- Tarjeta dSpace 6 ejes- Entorno de desarrollo Simulink+ControlDesk
PC 2: Host sistema de visión:- Cámara digital PULNIX TM-6710- Tarjeta de adquisición PC-DIG
- Conexión ethernet dedicada via sockets- Velocidad captura y extracción de características < 10 ms- 100 ciclos por segundo (22 veces más rápido que el otro)
43
.
Índice de la presentaciónÍndice de la presentación
Introducción
Estrategias de seguimiento visual. Clasificación
Calibraciones previas requeridas
Implementaciones completadas o en realización
Caso1. Seguimiento visual basado en posición para PUMA 560
Caso 2. Seguimiento visual basado en características para RM-10
Conclusiones
Trabajos futuros
44
• Esquema basado en posición:- Control de robot PUMA 560- Con doble lazo de realimentación - 6 GDL
• Esquema basado en características:- Control de robot RM-10 (no concluido)- Control directo (servo-visual)- 3 GDL, 6 GDL
Conclusiones
45
.
Índice de la presentaciónÍndice de la presentación
Introducción
Estrategias de seguimiento visual. Clasificación
Calibraciones previas requeridas
Implementaciones completadas o en realización
Caso1. Seguimiento visual basado en posición para PUMA 560
Caso 2. Seguimiento visual basado en características para RM-10
Conclusiones
Trabajos futuros
46
- Visión estereoscópica ⇒ no modelo geométrico objeto
- Planificación de trayectorias en espacio características
- Combinación del seguimiento visual basado en características con evitación de singularidades en la tarea
Trabajos futuros
47