Academia.eduAcademia.edu

Estabilización Visual de un Quadrotor

2015

El presente documento trata sobre la estabilizacion basada en la imagen de un vehiculo aereo no tripulado UAVs tipo quadrotor (AR-Drone 2.0 de Parrot) que obtiene informacion mediante su camara frontal. Se aplica la Tecnica de Control Visual Basada en Imagen (IBVS, por sus siglas en ingles), y se hace uso del meta sistema operativo ROS mediante el lenguaje C++, algunas librerias de ViSP y una configuracion del tipo ojo-en-mano (eye-in-hand) para procesar los datos obtenidos por la camara. El seguimiento de las imagenes se logra utilizando el algoritmo KLT y las velocidades se calculan utilizando la pseudo inversa de la aproximacion de la matriz de interaccion en la ley de control. Los resultados se muestran de forma cuantitativa y cualitativa. PALABRAS CLAVE: quadrotor, Control, caracteristicas de interes, Tecnica de Control Visual Basada en Imagen, ojo-en-mano, ROS, KLT. 1 INTRODUCCION En las ultimas decadas el avance de la robotica ha impulsado el desarrollo de los UAVs. Estos veh...

Estabilización Visual de un Quadrotor Eder Rodriguez, David Lara, Gerardo Romero Galvan, Guillaume Caron, Claude Pegard To cite this version: Eder Rodriguez, David Lara, Gerardo Romero Galvan, Guillaume Caron, Claude Pegard. Estabilización Visual de un Quadrotor. Congreso de Instrumentacion, SOMI XXX, Oct 2015, Durango, México. ฀hal-01270425฀ HAL Id: hal-01270425 https://hal.archives-ouvertes.fr/hal-01270425 Submitted on 8 Feb 2016 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés. Estabilización Visual de un Quadrotor Eder A. Rodríguez, David Lara, Gerardo Romero Galván Universidad Autónoma de Tamaulipas Carr. Reynosa - San Fernando, cruce con Canal Rodhe, Arcoíris, Reynosa Tamps., México [email protected], [email protected], [email protected] Guillaume Caron, Claude Pegard Université de Picardie Jules Verne Chemin du Thil, 80000 Amiens, Francia [email protected], [email protected] RESUMEN El presente documento trata sobre la estabilización basada en la imagen de un vehículo aéreo no tripulado UAVs tipo quadrotor (AR-Drone 2.0 de Parrot) que obtiene información mediante su cámara frontal. Se aplica la Técnica de Control Visual Basada en Imagen (IBVS, por sus siglas en ingles), y se hace uso del meta sistema operativo ROS mediante el lenguaje C++, algunas librerias de ViSP y una configuración del tipo ojo-en-mano (eye-in-hand) para procesar los datos obtenidos por la cámara. El seguimiento de las imágenes se logra utilizando el algoritmo KLT y las velocidades se calculan utilizando la pseudo inversa de la aproximación de la matriz de interacción en la ley de control. Los resultados se muestran de forma cuantitativa y cualitativa. PALABRAS CLAVE: quadrotor, Control, características de interes, Técnica de Control Visual Basada en Imagen, ojo-en-mano, ROS, KLT. 1 INTRODUCCIÓN En las últimas décadas el avance de la robótica ha impulsado el desarrollo de los UAVs. Estos vehiculos tienen muchas aplciaciónes en situaciones que ponen en riesgo a los seres humanos y en las que su acceso es limitado, por ejemplo en un desastre natural, un terremoto, una inundación, una catastrofe nuclear, o en tareas que faciliten el trabajo del hombre, vigilancia de tráfico, tomas aereas, busqueda de personas entre otras [1]. El auge de los UAVs ha propiciado el desarrollo de algunas disciplinas tales como la aerodinamica, la mecanica, el control automatico y el control. Esta ultima disciplina tiene un gran campo de estudio y resultados muy importantes en la robotica. El control visual combina procesamiento de imágenes con técnicas de control de tal forma que la información se usa para la retroalimentación del sistema. El problema principal del control visual es el hecho de obtener una interpretación robusta, fiel y en tiempo real del campo visual mediante estructuras de control y algoritmos. Las soluciones provistas por el control visual típicamente se dividen en Técnicas de Control Basadas en Imagen (IBVS) y Técnicas de Control Basadas en Pose (PBVS). Por otra parte, las imágenes pueden ser obtenidas mediante una cámara montada directamente en el manipulador del robot o en un robot movil (ojo-en-mano), en estos casos, el movimiento del robot induce el movimiento de la cámara, o la cámara puede estar fija en el espacio de trabajo y así poder observar el movimiento del robot desde una configuración estacionaria (mano-a-ojo). Otras configuraciones pueden ser posibles, por ejemplo, montar un conjunto de imágenes sobre una base fija [2]. El quadrotor AR Drone 2.0 de Parrot fue elegido para realizar esta investigación. Es controlado por medio de una red Wi-Fi desde algún dispositivo tal como una laptop, un ipad o un smartphone con sistema operativo android. Puede ser manipulado utilizando el meta-sistema operativo ROS [3] y el controlador ardrone_autonomy desarrollado por Autonmy Lab [4]. Cuenta con una cámara frontal HD 720p a 30FPS, un giroscopio de 3 ejes con una presición de 2000°/segundo, un acelerometro de ejes con una presición de 50mg, un magnetometro con precision de hasta 6°, un barometro con una presición de 10Pa, un sensor ultrasónico para medir la altura y una cámara vertical QVGA que mide velocidad con respecto al suelo. Los motores son sin escobillas de 14.5W, 28500RPM [5]. 2 CONCEPTOS BASICOS DE VISÓN Las imágenes son simplemente un arreglo grande de valores de los pixeles, pero, para las aplicaciones de robótica, las imágenes tienen muchos datos e insuficiente información [1]. Las características de interes en la imagen son medidas que pueden contener la información de la pose de algun objeto, el tipo de objeto o su velocidad. Existen diferentes tipos de características de interes en la imagen, por ejemplo, puntos, lineas o áreas. En este artículo se emplean los puntos de interes de la imagen que se obtienen por medio del algoritmo KLT. 3 CONTROL VISUAL Consiste básicamente en integrar, en tiempo real, la información visual en el bucle de control de un robot manipulador [6]. Para realizar un control visual se necesitan encontrar las características de interes en la imagen, procesar la información y generar los valores de consignia correspondientes. El propósito de todo el control basado en visión se centra en minimizar el error , típicamente definido por es un . El vector conjunto de medidas de la imagen. Estas medidas de imagen se usan para calcular el vector de elementos visuales, , en el cual es un conjunto de parámetros que representa información potencial adicional sobre el sistema. El vector contiene los valores deseados de los elementos. Una vez seleccionado, el diseño del esquema de control puede ser más simple. Tal vez el enfoque más directo sea el diseño de un control de velocidad. Para hacer esto, requerimos de una relación entre la variación del tiempo de y la velocidad de la cámara. Sea la velocidad de la camara denotada por , la velocidad lineal instantanea del origen del marco de la cámara y la velocidad angular instantanea desde el marco de referencia de la cámara, la relacion entre y esta dada por , en donde es llamada la matriz de interacción relacionada a . Entonces la relación entre la velocidad de la cámara y la variación del error en el tiempo: , (1) donde . Considerando como la entrada del controlador del robot, y si quisieramos, por ejemplo, intentar asegurar el desacople del decrecimiento exponencial del error (i.e., ), usando (1) obtenemos: , (2) donde es elegido como la pseudo-inversa Moore-Penrose de , que es cuando es de rango completo 6. Esta elección permite y ser mínimo. Cuando si el determinante , es posible invertir , resultando en el control . En sistemas reales de control visual, es imposible conocer perfectamente en práctica o . Entonces se requiere realizar una aproximación o una estimación de una de esas dos matrices. A continuación, denotamos la aproximación de la pseudo inversa de la matriz de interacción con el símbolo . Usando esta notación, la ley de control es de hecho . (3) Este es el diseño básico implementado en la mayoria de los controladores visuales [7]. 3.1 Control Visual Basado en Imagen Los esquemas tradicionales de control basado en la imagen [8], [9] usan las coordenadas del plano de la imagen de un set de puntos para definir el set . Las medidas de la imagen son, usualmente, coordenadas de pixel en un conjunto de imágenes, y los parametros en la definición de son los parámetros intrínsecos de la cámara que relacionan las medidas de la imagen expresadas en pixeles con las cáracteristicas en la imagen [7]. 3.2 La Matríz de Interacción Para un punto 3-D con coordenadas en el marco de referencia de la cámara, que proyecta en la imagen un punto en 2-D con coordenadas , tenemos: , (4) donde son las coordenadas de un punto de la imagen expresadas en unidades de pixel, y es el conjunto de los parámetros intrinsecos de la cámara: y son las coordenadas del punto principal, es la distancia focal, y es el cociente de las dimensiones del pixel. En este caso, tomamos , como las coordenadas del punto del plano de la imagen. Derivando (4) obtenemos . (5) La velocidad de los puntos en 3-D de la cámara se relacionan con la velocidad espacial en . (6) Combinando (5) y (6) obtenemos (7) puede ser escrita como , donde la matríz de interacción . se relacionan con en (8) En la matríz , el valor de la profundidad es el punto relativo en el marco de la cámara. Por lo tanto, en cualquier esquema de control que use esta matríz de interacción se debe de estimar o aproximar el valor de . Similarmente, los parámetros intrínsecos de la cámara estan involucrados en el cálculo de e . Así, no puede ser directamente usado en (3), entonces se debe de usar como una estimación o aproximación. Se necesitan al menos 3 puntos para controlar 6 grados de libertad. Si usamos un vector de característica , al apilar los puntos en la matríz de interacción, se obtiene . (9) En este caso, existen algunas configuraciones para cual es singular [10]. Además, existen cuatro poses de la cámara para cual , es decir, existen cuatro mínimos globales, y es imposible diferenciarlos [11]. Por estas razones, generalmente se consideran más de tres puntos. 4 METODOLOGÍA Algoritmo KLT: El seguidor de puntos de interes Kanade-Lucas-Tomasi (KLT) está diseñado para detectar y seguir un conjunto de características en la imagén dentro de una secuencia de imágenes. Se asume un desplazamiento pequeño entre dos imágenes consecutivas. El seguimiento esta basado en los gradientes de la imagen. Si es el desplazamiento de un punto , esta expresión puede de interes entre dos imágenes e entonces ser aproximada por: , (10) solamente una región que rodea al punto de interes es utilizada para calcular su desplazamiento. es calculada por minimización. Los puntos de interes son usualmente detectados usando los valores característicos de la matriz de la derivada de segundo orden de la imagen. Solo los elementos con valores característicos altos son consideradas como puntos de interes [12]. 5 RESULTADOS La Figura 1 muestra como las velocidades calculadas decrecen cuando el dron se desplaza de izquierda a derecha hasta llegar a su posición deseada. La rapidez es mayor que la rapidez lineal en los demas ejes y debido a que las velocidades y no estan desacopladas. Figura 1. Velocidades calculadas cuando la traslación se realiza sobre el eje La aplicación del control visual se llevó a cabo en un lugar cerrado y con suficiente iluminación donde las corrientes de aire era pequeñas. La Figura 2 muestra las imagenes tomadas por el UAV mientras realizaba el control visual desplazandose lateralmente hasta obtener la imagen deseada (primera imagen). Figura 2. Estabilización visual 6 CONCLUSIONES El código funciona bien, pero, en algunos casos, el comportamiento del quadrotor no es el ideal debido a las corrientes de aire, el cambio en la iluminación, la latencia generada por los procesos de computación y al guardar imágenes, el desplazamiento del quadrotor en el modo hovering y que la rapidez lineal entre .01 y .1 no son obedecidas correctamente por el AR Drone 2.0. 7 AGRADECIMIENTOS Este trabajo de investigación fue desarrollado en la Universidad Autónoma de Tamaulipas, UAT Reynosa Rodhe en colaboración con la Université de Picardie Jules Verne de Amiens, Francia. REFERENCIAS [1] Corke P. Robotics, Vision and Control. 1st ed. Berlin: Springer-Vertag 2011. [2] Pascual Campoy. Campoy P, Mondragón F, Iván O. et al. Visual Servoing for UAVs. InTech, Rijeka Croatia 2010. [3] ROS (Robot Operating System) provides libraries and tools to help software developers create robot applications. Avalible at: http://wiki.ros.org/es (Accesed on: August 21, 2015) [4] Parrot Wi-Fi quadricopter. Augmented Reality games on iPhone, iPod touch and iPad & Android. Avalible at: http://ardrone2.parrot.com/ (Accesed on: August 21, 2015) [5] ROS driver for Parrot AR-Drone 1.0 and 2.0 quadrocopters. Avalible at: https://github.com/AutonomyLab/ardrone_autonomy (Accesed on: August 21, 2015) [6] Pomares J, Gutierrez R, López M, et al. Seguimiento de trayectorias 3D mediante el Control Visual Basado en Imagen. Universidad de Alicante. Alicante, España. [7] Chaumette F, Hutchinson S. Visual Servo Control Part1: Basic Approaches. IEEE Robotics & Automation Magazine. France 2006. [8] Feddema J, Mitchell O. Vision-guided servoing with featurebased trajectory generation.” IEEE Trans. Robot. Automat. 1989. [9] Weiss L, Sanderson A, Neuman C. Dynamic sensor-based control of robots with visual feedback. IEEE J. Robot. Automat. 1987. [10] Michel H, Rives P. Singularities in the determination of the situation of a robot effector from the perspective view of three points. INRIA Research Report, Tech. 1993. [11] Fischler M, Bolles R. Random sample consensus: A paradigm for model fitting with applications to image analysis and automated cartography. Communicat. ACM. 1981. [12] Chaumette F, Marchand E, Melchior N, et al. Image manipulation and processing. ViSP tutorial, Lagadic project 2012.