Professional Documents
Culture Documents
CAMPUS MONTERREY
Reporte Técnico
Equipo:
Sergio Chávez A00810117 Jesús Delgadillo A00999575
Héctor Jiménez A00949740 José Cortés A01139006
Edgar Ledezma A00811157 Miguel Valadez A01034467
ABRIL 2015
AR DRONE PARROT + KINECT
S. Chávez, H. Jiménez, E. Ledezma,
J. Delgadillo, J. Cortés, M. Valadez
Resumen ― El siguiente proyecto consiste en el por controlar el drone, ya que este lo hace solo. El segundo
desarrollo de un sistema de control para el AR Drone enfoque tiene que ver con que el usuario emita las señales
Parrot a través de lectura de gestos por el Kinect. correctas para poder enviar los comandos al drone para que
Además de una manipulación de señales análogas para ejecute alguna acción. De esta forma, el usuario decide por
controlar el Drone a través de Labview. el VANT qué hacer. Sin embargo, ya que alguien tiene
control sobre el drone, éste debe estar capacitado para
Abstract ― The following project is about the poder volarlo. Por esta razón se requieren de sistemas no
development of a control system for the AR Drone complejos que puedan ser fáciles y rápidos de aprender.
Parrot through gestures read by the Kinect. Likewise,
analog signals manipulation through Labview to Hay muchas tecnologías que pueden aplicarse para
control the Drone. controlar el drone. Puede ser desde un control de RF, tal y
como se vende. Se podría utilizar tanto Bluetooth como X-
Keywords: Drone, control system, gesture control, Kinect, Bee para esta aplicación. Una interfaz amigable en una
labview. computadora podría manipular las señales que se enviaran
al drone, la cual puede utilizar un Kinect para interpretar
I. INTRODUCCIÓN gestos de una persona, un EEG para interpretar las ondas
cerebrales, entre otros.
Los vehículos aéreos no tripulados, VANT por sus siglas,
mejor conocido como drones son aeronaves que pueden El objetivo de esta investigación es el uso de un
ejecutar un vuelo sin tripulación. Hoy en día esta Kinect para interpretar gestos de un usuario para enviar
tecnología está siendo primordialmente usada por los datos de control al drone. Por otra parte, se estarán
militares. No obstante, la reducción de precio en dicha manipulando manualmente las señales análogas para
tecnología ha abierto nuevos mercados a tal punto que se simular un control de RF al VANT.
está volviendo muy comercial.
Después de varios experimentos, se concluyó que los
gestos seleccionados para el sistema de control del drone
resulta muy fácil de aprender y tiene una respuesta de
reacción rápida por lo que el tiempo de interpretación de
gesto y transmisión de dato de control es mínimo.
I.I. OBJETIVO
Fig 1.1 – VANT comúnes. El objetivo de esta investigación es el uso de un
Drone militar (izq.) y Drone Comercial (der.) Kinect para interpretar gestos de un usuario para enviar
datos de control al drone. Por otra parte, se estarán
Hoy en día, la tecnología explora nuevos horizontes manipulando manualmente las señales análogas para
en donde el enfoque pueden ser dos - control del VANT de simular un control de RF al VANT.
manera autónomo y control del VANT de manera remota.
El primer enfoque tiene la intención de darle control a la Para poder alcanzar el objetivo general se han
computadora del vehículo para que pueda ejecutar una definido los siguientes objetivos intermedios:
tarea de acuerdo a la interpretación de sus sensores. De o Selección de gestos a utilizar que sean amigables.
esta manera la persona o usuario no tiene que preocuparse
pág. 2
AR DRONE PARROT + KINECT
S. Chávez, H. Jiménez, E. Ledezma,
J. Delgadillo, J. Cortés, M. Valadez
En el Eje Z se tienen dos movimientos el de translación Fig 2.1.2 – Áreas de trabajo para gestos.
que permite al Drone ir arriba o abajo y el de rotación
llamado “Yaw”, el cual permite que el VANT gire a su Las dos áreas de trabajo mostradas en la figura anterior
alrededor o es decir en sentido o en contra del reloj. En el permiten realizar los gestos adecuados para controlar cada
Eje Y se tiene el de rotación denominado “Pitch”, el cual eje. En la primera área de trabajo, es decir la mano derecha
sirve para moverse en la profundidad o en simples del usuario (cuadro rojo), servirá para realizar
términos ir hacia adelante o hacia atrás. Por último, se movimientos en el plano XY, “Roll” y “Pitch”. La segunda
tiene en el Eje X el de rotación llamado “Roll”, por el cual área de trabajo, es decir la mano izquierda del usuario
se logra hacer movimiento hacia los lados, es decir de (cuadro naranja), servirá para realizar movimientos en el
izquierda a derecha. eje Z, “Yaw” y de translación.
moverse hacia adelante y hacia atrás, mientras que en la mandar comandos. Por esta razón, si el usuario quiere
mano izquierda solo cambiaría su altura respectivamente. aterrizarlo solo es necesario bajar ambas manos fuera del
área del trabajo. No obstante, solamente a determinada
altura este comando puede interpretarse. El VANT tiene
integrado un sensor ultrasónico que está leyendo la altura
del mismo. Es por esta razón, que cuando se detecta que ya
no hay gestos por procesar y se está a cierta altura, el drone
aterriza.
Sin embargo, hay tres instancias más que se deben definir II.II Normalización de Lecturas
para poder controlar el drone del todo y estos son el Basado en experiencias de proyectos de detección gestual
despegue, el aterrizaje y el paro de emergencia. El primero previos, se tenía el problema de al hacer calibraciones para
y el último resultan muy importantes debido a que son la programación de las coordenadas que deberían
comandos de alta prioridad, ya que sin despegue el reconocerse para cada gesto, es que se realizaban en base a
movimiento del drone no es posible y el paro de un sistema de posicionamiento absoluto, que funcionaba
emergencia es necesario para evitar cualquier accidente. bien para una persona adulta de tamaño promedio, sin
embargo si un niño pequeño o una persona muy alta por
Es por esta razón, que se debe utilizar ambas áreas de ejemplo intentaban usar el sistema, se dificultaba la
trabajo para esas dos instancias. La del despegue se logra detección de los gestos, debido a este tipo de sistema
diferenciar de los demás movimientos al extender por absoluto, pues en un niño pequeño, las referencias
completos ambos brazos hacia enfrente, esto significa que utilizadas resultan ser más pequeñas, o más grandes en el
el usuario no quiere moverse para ningún lado, caso contrario. Para evitar esto, antes de realizar cualquier
arriba/abajo/izquierda/derecha. El paro de emergencia se cálculo, las coordenadas se normalizan respecto a la
interpreta al colocar ambas manos sobre la cabeza, la cual distancia existente entre la cabeza y la cadera del usuario,
hace la distinción debido a la unión de las extremidades. pues se mantiene una relación directa entre la estatura de la
persona y el resto de las coordenadas, independientemente
Para el aterrizaje, no es necesario utilizar un gesto debido a de cual sea la medida absoluta de la persona.
la simpleza de esta instancia. Esto quiere decir, que el
cuándo el usuario quiere aterrizar, éste ya no quiere
pág. 4
AR DRONE PARROT + KINECT
S. Chávez, H. Jiménez, E. Ledezma,
J. Delgadillo, J. Cortés, M. Valadez
𝑦 = 2𝑥 − 0.6
Fig 2.2.1 – Lectura de datos de posición para
cálculos de normalización.
0.0501288
𝑅𝑥 = = 0.08322
0.602313
Fig 2.2.3 – Linealización para caso de
0.566557 movimiento positivo
𝑅𝑦 = = 0.940619
0.602313
0.1653
𝑅𝑧 = = 0.27444 𝑦 = 2𝑥 + 0.6
0.602313
pág. 5
AR DRONE PARROT + KINECT
S. Chávez, H. Jiménez, E. Ledezma,
J. Delgadillo, J. Cortés, M. Valadez
utiliza un radiocontrol SPEKTRUM DX6i el cual es un control en dado caso de que la interpretación del gesto
control de 6 canales de radio control. no sea la correcta.
III. IMPLEMENTACIÓN
pág. 6
AR DRONE PARROT + KINECT
S. Chávez, H. Jiménez, E. Ledezma,
J. Delgadillo, J. Cortés, M. Valadez
La estructura de programación para el sistema de El primer estado consiste en permitir que el Kinect
control consta de cuatro ciclos independientes. El haga una detección adecuada del usuario. En
primer ciclo es el que establece la comunicación con ocasiones el usuario se coloca o muy cerca del sensor
el Kinect y hace la interpretación de los gestos. El o en un ángulo difícil de leer, lo cual hace lecturas
segundo ciclo es el que establece la comunicación con erróneas de las extremidades. Es necesario permitir
el Drone para enviarle el paquete de datos deseado. El que se detecte una distancia adecuada entre las
tercer ciclo es el que se encarga de recibir datos del extremidades. Esto se logra al asegurar que la
Drone (altura, grados). El cuatro ciclo es el que se distancia entre la cabeza y los pies sea al menos el
encarga de recibir la transmisión del video del Drone. doble de la distancia entre la cabeza y la cintura. Si
esta distancia se logra, el Kinect está leyendo
correctamente al usuario y se prosigue al siguiente
estado de esperar lanzamiento o despegue.
El estado del despegue es un estado de control para
evitar situaciones en donde el usuario active un
movimiento de “Roll” o “Pitch” sin haber despegado.
Es entonces donde este gesto debe ignorarse. Es por
esta razón que solamente se puede interpretar el gesto
de despegue. Cuando el usuario lo realice, se hace un
Fig 3.1.2 – Ciclo 3 y 4 que se encargan de recibir cambio al estado de cálculo de velocidad.
información del Drone (Datos y Videos)
El estado de cálculo de velocidad consta en estar
interpretando los distintos gestos que se mencionaron
en la sección de desarrollo teórico. Dependiendo el
gesto que se esté realizando es el cálculo de la
velocidad que se guardará para enviar al drone en el
segundo ciclo.
pág. 8
AR DRONE PARROT + KINECT
S. Chávez, H. Jiménez, E. Ledezma,
J. Delgadillo, J. Cortés, M. Valadez
Para Simular las señales se requiere abrir el control las señales analógicas, por lo que con un filtro paso
para poder conectar las señales directamente de una bajo se realiza una conversión de señal de PWM-
tarjeta ARDUINO UNO con la plataforma Analógico.
LABVIEW y la librería LYNX, la cual permite
conectar el Arduino con el programa de Labview.
En la siguiente etapa se fue comprobando si recibe Fig 3.2.4 – Filtro paso bajo que se debe integrar
señales de manera adecuada el control, por lo que con En las cuatro señales de control
el configurador del controlador verificamos los
valores numéricos para su funcionamiento. IV. CONSIDERACIONES
VI. REFERENCIAS
1. Haluani, M. (2014). La tecnología aviónica
militar en los conflictos asmétricos:
problemáticas aplicaciones de los drones.
Cuadernos Del Cendes, 44.
2. Molina, G., Vizuet, J., Angeles, A., & Ruiz,
M. (2005). RADIACIONES IONIZANTES
EN LA INDUSTRIA PETROLERA.
Veracruz: CIPM
3. "Aircraft Rotations." Aircraft Rotations. Web.
27 Apr. 2015.
http://www.grc.nasa.gov/WWW/K-
12/airplane/rotations.html
4. Robert L., Williams II. "Engineering
Biomechanics of Human Motion." Ohio. Ohio
University. Web. 27 Apr. 2015.
http://www.ohio.edu/people/williar4/html/PD
F/ResPapePres4670.pdf.
5. "Kinect LabVIEW Interface Using Microsoft
Kinect API." National Instruments. Web. 27
Apr. 2015.
http://www.ni.com/example/31504/en/
6. "Kinesthesia Toolkit for Microsoft Kinect -
University of Leeds NI LabVIEW
Programming API for Microsoft Kinect SDK."
Kinesthesia Toolkit for Microsoft Kinect. Web.
27 Apr. 2015.
<http://sine.ni.com/nips/cds/view/p/lang/es/nid
/210938>.
pág. 11