Sensado basado en visión para el control de un sistema de Barra y Bola Autor: Ezequiel Pecker Marcosig Tutor: Anı́bal Zanini Universidad de Buenos Aires Facultad de Ingenierı́a Agosto 11, 2010 1 / 11 Introducción Descripción El sistema mecánico Barra y Bola es no lineal y extremadamente inestable. Para hacerlo estable se realimenta utilizando, en general, sensores que se montan sobre la guı́a y necesitan estar en contácto con la bolita. Objetivos Estabilizar el sistema usando un lazo de realimentación para controlar la posición de la bolita sobre la guı́a. Utilizar un sensado por medio de una cámara web y un algoritmo de detección sobre una imágen. Servo Bola: Plastico 43mm diametro Base: Madera r θ Barra: Aluminio 1 m largo 2 / 11 Lazos de Control En Laplace y en la vida real Sensor Adquisicion Control Planta Actuador 3 / 11 Lazos de Control En Laplace y en la vida real Sensor Adquisicion Control Planta Actuador Servo Motor rd(s) e(s) C(s) θd(s) Barra y Bola CM(s) M(s) θ(s) G(s) r(s) rcam(s) Hcam(s) 3 / 11 Lazos de Control En Laplace y en la vida real Sensor Adquisicion Control Planta Actuador Barra y Bola Servo Motor rd(s) e(s) C(s) θd(s) CM(s) M(s) θ(s) G(s) r(s) rcam(s) Hcam(s) 3 / 11 Lazos de Control En Laplace y en la vida real Sensor Adquisicion Control Planta Actuador Servo Motor rd(s) e(s) C(s) θd(s) Barra y Bola CM(s) M(s) θ(s) G(s) r(s) rcam(s) Hcam(s) 3 / 11 Lazos de Control En Laplace y en la vida real Sensor Adquisicion Control Planta Actuador Servo Motor rd(s) e(s) C(s) θd(s) Barra y Bola CM(s) M(s) θ(s) G(s) r(s) rcam(s) Hcam(s) 3 / 11 Diagrama de Flujo 2 flujos en paralelo INICIO THREAD ADQUISICION Lectura variab. comunes Calibracion de Camara Adquisicion imagen Deteccion de Marcas t(k)=t(k-1)? Calculo Rotac. y Traslaciones Si Inicializacion Servo Declaracion de thread adquisic. No Determinacion inicial de r Observador de Posicion Determinacion final de r Calculo de Error Escritura var. comunes Controlador PD quit = 1? Ts? No Envio de u(k) al Actuador No Si Si FIN No Terminar? Si quit = 1 FIN 4 / 11 Cámara e Imagenes Una imagen en B/N es una matriz de puntos. Plano Imagen (0,0) x f u f = − XZ 0 X Eje Optico Z 5 / 11 Cámara e Imagenes Una imagen en B/N es una matriz de puntos. x Plano Imagen y 0 u X x f = X Z 5 / 11 Cámara e Imagenes Una imagen en B/N es una matriz de puntos. x Plano Imagen y 0 u X x f = X Z u Z Y v t X R z y x (u0,v0) u= x kx + cx = X Z f kx + cx v= y ky + cy = Y Z + cy f ky 5 / 11 Calibración Modelo de Cámara de pin-hole La calibración da un modelo de la geometrı́a de la cámara y un modelo de la distorsión de la lente. Estos dos determinan los parámetros intrı́nsecos de la cámara (fx , fy , cx , cy , k1, k2, k3, p1, p2). Se llaman ası́ porque son propios de la cámara y no cambian entre imagenes. 6 / 11 Calibración Modelo de Cámara de pin-hole La calibración da un modelo de la geometrı́a de la cámara y un modelo de la distorsión de la lente. Estos dos determinan los parámetros intrı́nsecos de la cámara (fx , fy , cx , cy , k1, k2, k3, p1, p2). Se llaman ası́ porque son propios de la cámara y no cambian entre imagenes. Método de calibración 2D de Zhang 6 / 11 Calibración Modelo de Cámara de pin-hole La calibración da un modelo de la geometrı́a de la cámara y un modelo de la distorsión de la lente. Estos dos determinan los parámetros intrı́nsecos de la cámara (fx , fy , cx , cy , k1, k2, k3, p1, p2). Se llaman ası́ porque son propios de la cámara y no cambian entre imagenes. Método de calibración 2D de Zhang u Z Y v t X R z x (u0,v0) y 6 / 11 Detección Algunos detectores Detección de borde Sobel Laplaciano Canny Momentos Pattern Matching Transformada de Hough Background/Forward Substraction 7 / 11 Parámetros Extrı́nsecos Relación entre ternas u v x Terna Imagen (uv) y t1+R.t2 Zg Zg’ z Zg" Yg’ Z θ Yg Yg" Xg Xg’ Xg" Y X 8 / 11 Parámetros Extrı́nsecos Relación entre ternas u v x Terna Imagen (uv) Terna Cámara (xyz) y t1+R.t2 Zg Zg’ z Zg" Yg’ Z θ Yg Yg" Xg Xg’ Xg" Y X 8 / 11 Parámetros Extrı́nsecos Relación entre ternas u v x Terna Cámara (xyz) y Terna Mundo (XYZ) t1+R.t2 Zg Zg’ R Terna Imagen (uv) z Zg" t1 Yg’ Z θ Yg Yg" Xg Xg’ Xg" Y X 8 / 11 Parámetros Extrı́nsecos Relación entre ternas u v x Terna Cámara (xyz) y Terna Mundo (XYZ) t1+R.t2 Zg Zg’ R Terna Imagen (uv) z Zg" t1 Yg’ Z Terna Intermedia (XgYgZg) θ t2 Xg Yg Yg" Xg’ Xg" Y X 8 / 11 Parámetros Extrı́nsecos Relación entre ternas u v x Terna Cámara (xyz) y Terna Mundo (XYZ) t1+R.t2 Zg Zg’ R z Zg" t1 Yg’ Z ϕ t2 Xg Terna Imagen (uv) Yg Yg" Terna Intermedia (XgYgZg) Terna Guı́a (Xg‘Yg‘Zg‘) Xg’ Xg" Y X 8 / 11 Parámetros Extrı́nsecos Relación entre ternas u v x Terna Cámara (xyz) y Terna Mundo (XYZ) t1+R.t2 Zg Zg’ R z Zg" t1 Yg’ Z ϕθ t2 Xg Terna Imagen (uv) Yg Yg" Xg’ Xg" Y Terna Intermedia (XgYgZg) Terna Guı́a (Xg‘Yg‘Zg‘) Terna Guı́a Rotada (Xg“Yg“Zg“) X 8 / 11 Pasos Recopilación de información 9 / 11 Pasos Recopilación de información Contrucción de la planta 9 / 11 Pasos Recopilación de información Contrucción de la planta Contrucción del modelo matemático de la planta 9 / 11 Pasos Recopilación de información Contrucción de la planta Contrucción del modelo matemático de la planta Validación del modelo por simulación 9 / 11 Pasos Recopilación de información Contrucción de la planta Contrucción del modelo matemático de la planta Validación del modelo por simulación Diseño y validación del sensor 9 / 11 Pasos Recopilación de información Contrucción de la planta Contrucción del modelo matemático de la planta Validación del modelo por simulación Diseño y validación del sensor Selección y diseño de un controlador 9 / 11 Pasos Recopilación de información Contrucción de la planta Contrucción del modelo matemático de la planta Validación del modelo por simulación Diseño y validación del sensor Selección y diseño de un controlador Cerrado del lazo 9 / 11 La criatura Fatto in casa!! 10 / 11