laboratorio para el desarrollo de sistemas de …eii.unex.es/ja2018/actas/ja2018_135.pdf · tiempo...

8
LABORATORIO PARA EL DESARROLLO DE SISTEMAS DE NAVEGACI ´ ON Y CONTROL PARA UAVS MULTIRROTOR David Gallarta S´ aenz , Javier Rico-Azagra, Silvano N´ ajera Canal, Montserrat Gil-Mart´ ınez [email protected], {javier.rico,silvano.najera,montse.gil}@unirioja.es Resumen Este trabajo presenta el desarrollo de un labora- torio para la investigaci´on en sistemas de navega- ci´on y control de UAVs (Unmanned Aerial Vehi- cle) multirrotor. El laboratorio est´ a compuesto por un recinto en el que realizar las pruebas de vuelo con seguridad, un sistema de captura que permite determinar la posici´on y orientaci´on espacial del veh´ ıculo, las aeronaves junto con sus controlado- ras de vuelo, y una estaci´on de tierra en la que se centraliza la informaci´on. La configuraci´on y pro- gramaci´on de todos los elementos del sistema se realiza ´ ıntegramente empleando Matlab-Simulink. El laboratorio permite reducir de forma notable el tiempo de desarrollo de nuevos algoritmos de esti- maci´on y control. Adem´as, se simplifica el an´alisis de las pruebas de vuelo al disponer de informa- ci´onm´ as precisa y centralizada en un ´ unico equi- po. En el documento se presenta el dise˜ no de la infraestructura hardware y software que componen el laboratorio. Por ´ ultimo, se muestran resultados obtenidos en una prueba de vuelo y un ejemplo de aplicaci´on para la validaci´on de estimadores de actitud. Palabras clave: Veh´ ıculos a´ ereos no tripulados (UAV), Control de actitud, Control de posici´ on, Sistemas de estimaci´ on, Ingenier´ ıa de Control. 1. Introducci´ on La industria de los veh´ ıculos a´ ereos no tripulados (UAVs), tambi´ en conocidos como drones, ha ex- perimentado un gran crecimiento en los ´ ultimos nos. A pesar de que existen multitud de tipos de aeronaves [1], los veh´ ıculos de tipo multirrotor [2] son los que actualmente presentan mayor po- tencial de desarrollo, debido a su facilidad de uso y a que presentan caracter´ ısticas VTOL (Vertical Take-Off and Landing ) que permiten su empleo en un gran n´ umero de aplicaciones reales [3, 4, 5, 6]. Por todo ello, la popularidad de este tipo de equi- pos ha aumentado notablemente en la comunidad cient´ ıfica y el ´ ambito profesional. Pese a todo, la introducci´ on de estos veh´ ıculos en el sector civil no ha alcanzado su cenit, debido a que existen multitud de problemas que deben ser resueltos y capacidades que deben ser mejoradas. Entre los principales retos destacan aumentar la carga ´ util, mejorar la autonom´ ıa de vuelo, incre- mentar la seguridad, desarrollar sistemas de nave- gaci´ on m´ as precisos que permitan vuelos aut´ ono- mos en espacios reducidos y en interiores, mejorar los sistemas de control de actitud, orientaci´ on y posici´ on, y desarrollar estrategias de vuelo coordi- nado. Algunos de los problemas descritos anteriormen- te son puramente tecnol´ ogicos y solo pueden ser solventados mediante el desarrollo de nuevas tec- nolog´ ıas [7, 8]. Sin embargo, otros dependen direc- tamente de los algoritmos que gobiernan el UAV en diferentes niveles jer´ arquicos. Algunos trabajos en esta l´ ınea son [9, 10]. Uno de los principales obst´ aculos para la investiga- ci´ on en estos problemas de control es el tiempo que debe invertirse en las pruebas de vuelo. T´ engase en cuenta que cada vez que el investigador desea validar en el equipo real un nuevo desarrollo debe desplazarse para realizar una prueba de vuelo, con la que generar datos que posteriormente deben ser procesados y analizados. Todo esto supone un gran coste en horas de investigaci´ on, que pueden redu- cirse si se disponen de instalaciones indoor en las que poder realizar las pruebas de vuelo de forma segura y en un menor tiempo. Bajo las premisas anteriores, este trabajo presen- ta el dise˜ no y construcci´ on de un laboratorio para el desarrollo de sistemas de navegaci´ on y control para UAVs multirrotor de peque˜ no tama˜ no. La so- luci´ on propuesta se compone de un espacio de tra- bajo en el que volar las aeronaves con seguridad, un sistema de tracking por visi´ on que permite de- terminar la posici´ on y la orientaci´ on del veh´ ıculo en tiempo real, las aeronaves y sus controladoras de vuelo, la estaci´ on de tierra en la que se centrali- za la informaci´ on, y toda la arquitectura software que permite la comunicaci´ on entre los diferentes elementos. La configuraci´ on y programaci´ on del sistema micro-controlador empleado en los veh´ ıcu- los, de las comunicaciones, as´ ı como del sistema encargado de centralizar la informaci´ on se desa- Actas de las XXXIX Jornadas de Automática, Badajoz, 5-7 de Septiembre de 2018 613

Upload: others

Post on 17-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: LABORATORIO PARA EL DESARROLLO DE SISTEMAS DE …eii.unex.es/ja2018/actas/JA2018_135.pdf · tiempo de desarrollo de nuevos algoritmos de esti-maci on y control. Adem as, se simpli

LABORATORIO PARA EL DESARROLLO DE SISTEMASDE NAVEGACION Y CONTROL PARA UAVS

MULTIRROTOR

David Gallarta Saenz , Javier Rico-Azagra, Silvano Najera Canal, Montserrat Gil-Martı[email protected], {javier.rico,silvano.najera,montse.gil}@unirioja.es

Resumen

Este trabajo presenta el desarrollo de un labora-torio para la investigacion en sistemas de navega-cion y control de UAVs (Unmanned Aerial Vehi-cle) multirrotor. El laboratorio esta compuesto porun recinto en el que realizar las pruebas de vuelocon seguridad, un sistema de captura que permitedeterminar la posicion y orientacion espacial delvehıculo, las aeronaves junto con sus controlado-ras de vuelo, y una estacion de tierra en la que secentraliza la informacion. La configuracion y pro-gramacion de todos los elementos del sistema serealiza ıntegramente empleando Matlab-Simulink.El laboratorio permite reducir de forma notable eltiempo de desarrollo de nuevos algoritmos de esti-macion y control. Ademas, se simplifica el analisisde las pruebas de vuelo al disponer de informa-cion mas precisa y centralizada en un unico equi-po. En el documento se presenta el diseno de lainfraestructura hardware y software que componenel laboratorio. Por ultimo, se muestran resultadosobtenidos en una prueba de vuelo y un ejemplode aplicacion para la validacion de estimadores deactitud.

Palabras clave: Vehıculos aereos no tripulados(UAV), Control de actitud, Control de posicion,Sistemas de estimacion, Ingenierıa de Control.

1. Introduccion

La industria de los vehıculos aereos no tripulados(UAVs), tambien conocidos como drones, ha ex-perimentado un gran crecimiento en los ultimosanos. A pesar de que existen multitud de tiposde aeronaves [1], los vehıculos de tipo multirrotor[2] son los que actualmente presentan mayor po-tencial de desarrollo, debido a su facilidad de usoy a que presentan caracterısticas VTOL (VerticalTake-Off and Landing) que permiten su empleo enun gran numero de aplicaciones reales [3, 4, 5, 6].Por todo ello, la popularidad de este tipo de equi-pos ha aumentado notablemente en la comunidadcientıfica y el ambito profesional.

Pese a todo, la introduccion de estos vehıculos en

el sector civil no ha alcanzado su cenit, debido aque existen multitud de problemas que deben serresueltos y capacidades que deben ser mejoradas.Entre los principales retos destacan aumentar lacarga util, mejorar la autonomıa de vuelo, incre-mentar la seguridad, desarrollar sistemas de nave-gacion mas precisos que permitan vuelos autono-mos en espacios reducidos y en interiores, mejorarlos sistemas de control de actitud, orientacion yposicion, y desarrollar estrategias de vuelo coordi-nado.

Algunos de los problemas descritos anteriormen-te son puramente tecnologicos y solo pueden sersolventados mediante el desarrollo de nuevas tec-nologıas [7, 8]. Sin embargo, otros dependen direc-tamente de los algoritmos que gobiernan el UAVen diferentes niveles jerarquicos. Algunos trabajosen esta lınea son [9, 10].

Uno de los principales obstaculos para la investiga-cion en estos problemas de control es el tiempo quedebe invertirse en las pruebas de vuelo. Tengaseen cuenta que cada vez que el investigador deseavalidar en el equipo real un nuevo desarrollo debedesplazarse para realizar una prueba de vuelo, conla que generar datos que posteriormente deben serprocesados y analizados. Todo esto supone un grancoste en horas de investigacion, que pueden redu-cirse si se disponen de instalaciones indoor en lasque poder realizar las pruebas de vuelo de formasegura y en un menor tiempo.

Bajo las premisas anteriores, este trabajo presen-ta el diseno y construccion de un laboratorio parael desarrollo de sistemas de navegacion y controlpara UAVs multirrotor de pequeno tamano. La so-lucion propuesta se compone de un espacio de tra-bajo en el que volar las aeronaves con seguridad,un sistema de tracking por vision que permite de-terminar la posicion y la orientacion del vehıculoen tiempo real, las aeronaves y sus controladorasde vuelo, la estacion de tierra en la que se centrali-za la informacion, y toda la arquitectura softwareque permite la comunicacion entre los diferenteselementos. La configuracion y programacion delsistema micro-controlador empleado en los vehıcu-los, de las comunicaciones, ası como del sistemaencargado de centralizar la informacion se desa-

Actas de las XXXIX Jornadas de Automática, Badajoz, 5-7 de Septiembre de 2018

613

Page 2: LABORATORIO PARA EL DESARROLLO DE SISTEMAS DE …eii.unex.es/ja2018/actas/JA2018_135.pdf · tiempo de desarrollo de nuevos algoritmos de esti-maci on y control. Adem as, se simpli

rrolla ıntegramente en Matlab-Simulink. De estemodo se mantiene un entorno de trabajo unifica-do que simplifica el trabajo. El objetivo principaldel sistema es reducir el tiempo de desarrollo denuevas estrategias de navegacion y control paraUAVs multirrotor, eliminando las fases de pruebasen exterior. Ademas el sistema permite recolectardatos de vuelo en tiempo real, tanto del sistemade captura por vision como del UAV. Toda es-ta informacion facilita un analisis mas preciso delcomportamiento del vehıculo y una interpretacionde los resultados con mayor fiabilidad. Por ultimo,el sistema permite cerrar los lazos de control quegobiernan el guiado autonomo y desarrollar nue-vas estrategias de guiado y aplicaciones de vuelocolaborativo.

El documento se organiza en cinco secciones. Enla segunda se describe el sistema, los elementoshardware que intervienen en el mismo y su ins-talacion. En la tercera se describe la arquitecturasoftware que permite comunicar todos los elemen-tos. La seccion cuarta muestra los resultados ob-tenidos en dos aplicaciones. Por ultimo, la quintacontiene las conclusiones.

2. Descripcion del sistema

Como se ha explicado anteriormente, el laborato-rio esta compuesto por una zona de vuelo, en laque se han instalado las medidas de seguridad ne-cesarias para operar los UAVs con seguridad, unsistema de captura por vision OptiTrack [11] quepermite determinar la posicion y actitud de unoo varios vehıculos en tiempo real, los UAVs juntocon sus controladoras de vuelo, y una estacion detierra que centraliza la informacion.

El funcionamiento del conjunto se ilustra en la Fi-gura 1. Por un lado, el sistema de captura Opti-Track es el encargado de determinar la posiciony actitud del vehıculo, siendo esta informaciontransferida a la estacion de tierra. La comunica-cion entre el sistema OptiTrack y Simulink per-mite actualizar los datos con una cadencia de 10ms. Por lo tanto, los datos obtenidos pueden serempleados para cerrar los lazos de control o paramonitorizar el estado del UAV.

Por otro lado, los UAVs establecen una comunica-cion bidireccional e inalambrica con la estacion detierra, que nuevamente recoge los datos a travesde Simulink. Mediante el empleo de este enlacede comunicaciones los UAVs pueden enviar la in-formacion de sus sensores o del estado interno desu sistema. Del mismo modo, la estacion de tierrapuede transferir en tiempo real informacion a laaeronave. Esta informacion puede emplearse pa-ra conmutar los modos de operacion del equipo o

Figura 1: Esquema de funcionamiento del labora-torio.

para cerrar lazos de control con los resultados ge-nerados en la estacion de tierra. En este caso latasa de refresco depende de la cantidad de datosa transferir, ya que el enlace de comunicacionespresenta una velocidad maxima de 115200 bau-dios. Como ejemplo, en las aplicaciones presenta-das en la seccion 4 se ha empleado una frecuen-cia de muestreo de 20 ms. Con esta configuracion,pueden transmitirse en cada envıo 57 datos en for-mato single (230 bytes).

Por ultimo, la estacion de tierra actua como ele-mento centralizador de informacion. En ella se eje-cutan bajo Matlab-Simulink las aplicaciones desa-rrolladas para cada uno de los experimentos. Lastareas a ejecutar por la estacion de tierra pue-den ser diversas en funcion del objetivo del expe-rimento a realizar. Se establecen diferentes nivelesde integracion, los cuales determinan el grado decomplejidad de la aplicacion y su importancia enel adecuado funcionamiento del sistema. A conti-nuacion se describen estos niveles:

Nivel 0: Registro de datos. La estacion de tie-rra realiza funciones de data logger. Por lotanto, su unica mision es la de registrar losdatos generados por la controladora de vueloy por el sistema OptiTrack. En estos casos elUAV debe ser totalmente funcional, ya quetrabaja de forma autonoma. Este nivel puedeemplearse una vez que los disenos se encuen-tran implementados en el UAV para validarsu correcto funcionamiento.

Nivel 1: Pasarela de comunicaciones. En es-te caso la estacion de tierra actua como in-terfaz de comunicaciones entre el sistema decaptura de datos por vision y el UAV. Estemodo de operacion se emplea preferentemen-te para realizar pruebas de sistemas de guiadoautonomo, cerrando las medidas del sistemaOptiTrack los lazos de control de posicion.

Nivel 2: Sistema de control. En este caso la es-tacion de tierra actua como controladora de

614

Page 3: LABORATORIO PARA EL DESARROLLO DE SISTEMAS DE …eii.unex.es/ja2018/actas/JA2018_135.pdf · tiempo de desarrollo de nuevos algoritmos de esti-maci on y control. Adem as, se simpli

vuelo del UAV. La estacion de tierra incor-pora el sistema de navegacion y control delvehıculo. Para ello puede emplear los datosprovenientes del sistema OptiTrack y de lossensores de la controladora de vuelo, que sontransmitidos en modo raw (en crudo) a la es-tacion de tierra. Todas las acciones de con-trol son calculadas en la estacion de tierra ytransferidas a la aeronave. En este modo deoperacion la controladora de vuelo unicamen-te transfiere las acciones de control recibidasa los motores correspondientes. La ventajaprincipal de este modo es la capacidad pa-ra ajustar nuevos disenos en un menor tiem-po, ya que estos no deben ser compilados yprogramados en la controladora de vuelo. Elprincipal problema aparece en las comunica-ciones, ya que pueden impactar negativamen-te en el comportamiento del vehıculo.

Para que todo el sistema funcione de forma ade-cuada es necesario que los elementos descritosanteriormente cumplan una serie de requisitos.A continuacion, se describen las caracterısticas acumplir por cada uno de ellos y la solucion adop-tada en el desarrollo realizado.

2.1. Zona de vuelo

Para que el laboratorio sea funcional, la zona devuelo debe ser lo suficientemente amplia como pa-ra poder efectuar maniobras con UAVs de pe-queno tamano. En principio, para poder probarestrategias de control con ciertas garantıas de-be disponerse de una area de vuelo de al menos5 m× 5 m× 2,5 m. Ademas, todo el area de vuelodebe ser visible por el sistema de camaras Opti-Track.

Figura 2: Descripcion de la zona de captura.

En el laboratorio donde se ha instalado el sistemase dispone de un area irregular de aproximada-mente 7 m × 7 m × 3 m. En la esquina superiorizquierda de la Figura 2 se muestra el perımetrodisponible junto con el area mınima de vuelo. Pa-ra configurar el area de captura del sistema Opti-Track se han empleado ocho camaras Flex 3, quese han ubicado y numerado segun el esquema mos-trado en la esquina superior derecha de la Figura2. Cada una de las camaras presenta una aperturafocal de 58o, por lo que estas camaras deben serubicadas de forma estrategica para que se cubratodo el area de vuelo. Tengase en cuenta que ca-da punto del area de vuelo debe ser visto por almenos tres camaras para que el sistema funcionecorrectamente. En la esquina inferior izquierda dela Figura 2 se muestra la orientacion de cada unade las camaras junto con su area de captura. Porultimo, en la esquina inferior derecha de la Figura2 se muestra la superposicion de las areas captu-radas por cada una de las camaras. En ella puedecomprobarse como todo el area de vuelo cumplecon los requisitos expuestos anteriormente, garan-tizando que el sistema es capaz de operar en todoel recinto. Una vez configurado y calibrado, el sis-tema trabaja presentando errores de estimacion deposicion y actitud inferiores a 0,2 mm y 0,1o.

Un factor que a priori puede parecer poco impor-tante es la forma de sujecion de las camaras, pe-ro resulta fundamental para un correcto funciona-miento del sistema. El anclaje debe permitir quelas camaras queden fijas en una orientacion duran-te el vuelo, pero que a su vez pueda ser modifica-da en un futuro. Otro aspecto fundamental parala calibracion de las camaras es el ajuste en altu-ra, ya que en caso de no ser adecuado se perderavolumen de captura en la parte inferior o superiordel recinto. Por estos motivos se ha realizado unsoporte para camaras que permite la regulacionde la actitud y altura de las mismas. El soportedesarrollado consiste en un tubo metalico hueco,de 1 m de longitud y 5 cm de diametro, con unabase cuadrada perforada que permite su fijacional techo. La camara se fija al tubo mediante unapinza de plastico que incorpora una rotula. En laFigura 3 se observa el sistema final una vez fijadoal techo.

Figura 3: Ubicacion del sistema OptiTrack

615

Page 4: LABORATORIO PARA EL DESARROLLO DE SISTEMAS DE …eii.unex.es/ja2018/actas/JA2018_135.pdf · tiempo de desarrollo de nuevos algoritmos de esti-maci on y control. Adem as, se simpli

Para garantizar la seguridad se ha colocado unared alrededor de todo el perımetro. Este elemento,ademas de proteger a las personas que se encuen-tran en el exterior del recinto, permite atrapar losUAVs cuando estos pierden el control, ya que sequedan enganchados en la misma debido al movi-miento de las helices. Con este sistema se evitanlos impactos contra superficies duras y se alargala vida util de los vehıculos. Para que la red deproteccion pueda cumplir con su proposito se re-comienda separarla al menos 20 cm de cualquierpared u objeto. La Figura 3 muestra una imagendel laboratorio con la red instalada.

2.2. Cableado y sincronizacion

Cada una de las camaras Flex 3 mencionadas enla seccion anterior debe conectarse a un concen-trador OptiHub empleando una conexion USB 2.0(ver Figura 4). Cada modulo OptiHub admite laconexion de hasta seis camaras. Este dispositivo esel encargado de dotar de alimentacion a las cama-ras, y de sincronizar y transmitir la informaciongenerada a la estacion de tierra utilizando el pro-tocolo de sincronizacion OptiSync. En caso de dis-poner de una zona de captura que contenga mas deseis camaras, estas deberan conectarse a diferen-tes modulos OptiHub, que a su vez deberan estarinterconectados para poder sincronizar la toma deimagenes.

Figura 4: Esquema para la interconexion de lascamaras Flex 3. Figura extraıda de [11].

A la hora de distribuir las camaras en el recinto,ademas del estudio realizado en la seccion ante-rior, es necesario tener en cuenta las limitacionesfısicas de la transmision de datos mediante enla-ces USB. El emparejamiento entre cada camara ysu OptiHub debe acometerse con un cable de ex-tension igual o inferior a 5 metros. Por lo tanto,es necesario realizar una planificacion adecuadade la distribucion de los diferentes OptiHub y delas camaras alrededor del recinto. Debe tenerse encuenta que para la conexion de los diferentes Op-

tiHub al PC host, sı es posible emplear cableadoque supere los 5 m de longitud.

Como puede comprobarse en la Figura 3, el recin-to en el que se ha llevado a cabo la instalacionpresenta falso techo, el cual se ha aprovechado pa-ra distribuir el cableado permitiendo situar todoslos OptiHub cerca de las camaras a las que danservicio. Ademas, el empleo de falso techo permi-te eliminar todos los cables de la zona de vuelo,logrando un espacio diafano y libre de obstaculos.

2.3. Multirrotores

Se emplean mutirrotores de diferentes envergadu-ras, en concreto de 250 mm, 450 mm y 550 mm,en configuraciones de cuatro y seis ejes. No obs-tante, se recomienda emplear UAVs de 250 mmde tamano, ya que presentan un comportamientomas agil y apropiado para el espacio de trabajodisponible. Todos los vehıculos empleados se en-cuentran gobernados con la controladora de vueloAPM 2.5 (Ardupilot Mega 2.5 ) [12], que corres-ponde con una modificacion del micro-controladorArduino Mega 2560 realizada por 3DR Robotics.Se ha decidido emplear la controladora de vueloAPM 2.5 debido a su facilidad para ser programa-da empleando Matlab-Simulink. La toolbox AMP2[13] permite programar el firmware de la contro-ladora de vuelo empleando Simulink. Esta carac-terıstica simplifica el proceso de diseno de nuevosalgoritmos de control, manteniendo un entorno detrabajo unificado.

Por ultimo, hay que destacar que todos los UAVsempleados en las pruebas de vuelo deben de es-tar equipados con marcadores OptiTrack, para quepuedan ser identificados dentro del espacio habili-tado. Como numero mınimo, se recomienda que eldron presente cuatro marcadores. De este modo,aunque uno de ellos quede oculto para las cama-ras, el sistema seguira siendo capaz de localizar elUAV. La disposicion de dichos marcadores tam-bien es relevante, siendo la mejor opcion distri-buirlos de forma aleatoria y evitar que estos for-men cuerpos regulares. La Figura 5 ilustra la dis-tribucion de los marcadores instalados en un hexa-coptero de 550 mm de envergadura. En este UAVse han empleado nueve marcadores de 12,7 mmde diametro. El la parte derecha de la Figura 5se observa como Motive genera un cuerpo solido apartir de los marcadores detectados.

3. Sistema de comunicaciones

Como se ha descrito en secciones anteriores, tantolos UAVs como el sistema de captura OptiTrackdeben establecer comunicacion con la estacion detierra en la que se centraliza la informacion. En la

616

Page 5: LABORATORIO PARA EL DESARROLLO DE SISTEMAS DE …eii.unex.es/ja2018/actas/JA2018_135.pdf · tiempo de desarrollo de nuevos algoritmos de esti-maci on y control. Adem as, se simpli

Figura 5: Distribucion de marcadores en un UAVy representacion del mismo en Motive.

presente seccion se describe la arquitectura soft-ware empleada para realizar dicha comunicacion.

3.1. Comunicacion Motive-Simulink

El sistema OptiTrack necesita su propio software,Motive, para controlar sistemas de captura de mo-vimiento en aplicaciones de tracking. Este softwaredebe ser empleado por el usuario para calibrar yconfigurar el sistema, crear los objetos tridimen-sionales, y procesar en 3D los datos obtenidos.Junto con Motive, OptiTrack facilita el entornode desarrollo NatNet, que consta de un conjuntode herramientas cliente-servidor que emplean pro-tocolo UDP y comunicacion de tipo multicast ounicast. Empleando estas herramientas pueden en-viarse los datos registrados en las pruebas de vuelodesde un servidor (Motive) a aplicaciones cliente(en la aplicacion descrita Matlab-Simulink).

Para recibir los datos en Simulink desde Motivese emplea una S-Function que utiliza la API fa-cilitada por NatNet. En concreto, se emplean losrecursos disponibles en NPTrackingTools.h y Ri-gidBodySettings.h, que contienen las funciones pa-ra obtener las caracterısticas de los cuerpos rıgi-dos detectados por las camaras. A partir de estasherramientas se obtienen las posiciones tridimen-sionales y los cuaternios que definen la orientacionespacial del vehıculo. Estos ultimos son transfor-mados en angulos de Euler y enviados junto conlas posiciones espaciales a la salida de la S-functiondesarrollada.

3.2. Comunicacion Simulink-UAV

Como ya se ha comentado, cada UAV estableceuna comunicacion bidireccional con la estacion detierra. En principio, el UAV podra enviar a la es-tacion de tierra la informacion generada por lossensores de la controladora de vuelo y senales re-cibidas a traves de la emisora de radio. Por otrolado, la estacion de tierra enviara al UAV las con-signas para los diferentes modos de operacion o lasacciones de control para los motores.

Para lograr la comunicacion en tiempo real se em-plea un enlace de telemetrıa que opera a 915 MHZ.Dicho enlace se conecta a la UART0 de la controla-

dora de vuelo APM y al puerto USB de la estacionde tierra. Desde el punto de vista del software, elproblema reside en establecer una comunicacion atraves de un puerto serie. Para ello deben desarro-llarse modulos software que deben ser integradosen el firmware de la controladora de vuelo y en elprograma que se ejecuta en la estacion de tierra.

3.2.1. Envıo de datos desde la estacion detierra al UAV

En el PC de la estacion de tierra se emplea el blo-que Serial Send que a traves del puerto COM de-finido envıa los datos deseados en forma de vector.Todos los datos transmitidos se envıan como bytessin codificacion. Para ello, se emplea un algoritmoque trabaja de la siguiente manera: en primer lu-gar, los datos que se quieren transmitir (de tiposingle) se trocean en paquetes de ocho bits codifi-cados como uint8. A continuacion, para estableceruna comunicacion mas robusta se anade la cabe-cera del mensaje. En este caso se ha optado poremplear dos @@ (64 codificado en uint8 ). La ca-becera es facilmente modificable y escalable parasistemas que presenten mas de un UAV. Por ulti-mo, se aplica un codigo CRC para la deteccion deerrores de comunicacion. El codigo CRC empleadoesta formado por dos bytes que se anaden al finalde la trama. La Figura 6 muestra como se generala trama a enviar.

Figura 6: Generacion de tramas para el envıo dedatos.

El firmware de la controladora de vuelo emplea elbloque Serial Read, que extrae byte a byte los da-tos que se almacenan en el buffer de entrada delpuerto serie. Para recomponer la trama transmi-tida es necesario emplear un algoritmo encargadode extraer los datos de forma inteligente. Para ello,el algoritmo busca en primer lugar los dos bytesque marcan el inicio de la comunicacion. Una vezdetectada la cabecera de la trama se almacenanlos valores correspondientes a los datos troceados,doce en el ejemplo, y al codigo de error, dos. Fi-nalizado este proceso se generan los dos bytes delcodigo CRC con los datos recibidos. Si el codigo deerror recibido coincide con el calculado, la trama

617

Page 6: LABORATORIO PARA EL DESARROLLO DE SISTEMAS DE …eii.unex.es/ja2018/actas/JA2018_135.pdf · tiempo de desarrollo de nuevos algoritmos de esti-maci on y control. Adem as, se simpli

se considera correcta. Por ultimo, se recomponenlos datos en formato single a partir de los bytesdisponibles y se pasan a la salida de la funcion.

3.2.2. Envıo de datos desde el UAV a laestacion de tierra

El firmware emplea el bloque Serial Write paraenviar a traves de la UART0 el vector de datosque tiene a su entrada. El algoritmo para realizarel envıo de datos es igual al descrito en la seccionanterior y se mantiene el mismo formato de tramay el metodo en el que se descomponen los datos.

En la aplicacion Simulink, que se ejecuta en laestacion de tierra, se emplea el bloque Serial Re-ceive, el cual permite definir el tamano del vectorde datos que se desean leer del buffer de entrada.Por lo tanto, en este caso cambia el modo en elque se efectua la re-composicion de las tramas yla filosofıa de programacion. El algoritmo emplea-do busca dentro del vector de datos recibidos losbytes que marcan el inicio de la trama. Una vez de-tectada la cabecera se almacenan el resto de bytesde la misma (en el ejemplo doce datos provenien-tes de la descomposicion de tres datos single, y dosdel codigo CRC). Los datos a almacenar puedenpertenecer a dos vectores de datos muestreados enintervalos diferentes. Por lo que para solucionar es-te problema se emplea la siguiente estrategia: enprimer lugar se genera un vector auxiliar en el quese almacenan los valores extraıdos del primer vec-tor de datos. Posteriormente, dicho vector auxiliarse rellena con los valores que se encuentran al co-mienzo del segundo vector de datos. Una vez secomplete el vector auxiliar, se computa el codigode error y se compara con el codigo de error re-cibido por el puerto serie. Si ambos coinciden seconsidera que la trama es correcta y se procesanlas salidas. Un ejemplo se muestra en la Figura 7.

Figura 7: Recepcion de tramas en la estacion detierra.

4. Ejemplos de aplicacion

4.1. Ejemplo 1: registro de datos de vuelo

En este primer ejemplo se muestra como el sistemaes capaz de registrar los datos de un vuelo. Estaes la aplicacion mas sencilla para la que puedeemplearse el laboratorio desarrollado. Para ello serealiza un vuelo con un UAV multirrotor dentrode la zona habilitada. En dicho vuelo no se haseguido una trayectoria concreta, unicamente seha mantenido el vehıculo en la zona de capturadescribiendo movimientos aleatorios.

Los resultados obtenidos en el experimento semuestran en la Figura 8. En la grafica superiorse observan los valores registrados para la actitudde la aeronave. En ellos puede comprobarse comoel vehıculo presenta inclinaciones maximas en elentorno de los ±20o. Esto es debido a que el vueloefectuado se ha realizado sin maniobras agresivas.En la grafica inferior de la Figura 8 se muestranlos desplazamientos en los tres ejes de movimien-to. En ella se observa como el movimiento en losejes X e Y sigue trayectorias que producen des-plazamientos de un lado al otro del area de vuelo.Por el contrario, en el eje Z se observa como elUAV se ha mantenido a una altura inferior a 1 m,hasta que en los instantes finales ha descendidopara aterrizar.

0 4 8 12 16 20 24Tiempo (s)

-40

-20

0

20

40

Act

itud

[o]

Roll Pitch Yaw

0 4 8 12 16 20 24Tiempo (s)

-2

-1

0

1

2

3

Pos

ició

n[m

]

x(t) y(t) z(t)

Figura 8: Datos registrados en la prueba de vuelo.

4.2. Ejemplo 2: validacion del sistema deestimacion

En este segundo ejemplo se presenta una de laspotenciales aplicaciones del sistema desarrollado.Uno de los elementos mas importantes de todovehıculo autonomo es el sistema de estimacion de

618

Page 7: LABORATORIO PARA EL DESARROLLO DE SISTEMAS DE …eii.unex.es/ja2018/actas/JA2018_135.pdf · tiempo de desarrollo de nuevos algoritmos de esti-maci on y control. Adem as, se simpli

actitud. En los UAVs este sistema es el encargadode inferir el estado de la aeronave a partir de lasmedidas obtenidas con sensores de bajo coste (gi-roscopios, acelerometros y magnetometros). Paralograr estos objetivos se emplean estrategias de fu-sion sensorial. Actualmente siguen desarrollando-se nuevos estimadores que persignen mejorar lasmedidas anadiendo medidas de nuevos sensores omejorando los algoritmos ya existentes. En mu-chas ocasiones, los estimadores disenados no pue-den validarse correctamente por no disponer desensores patron con los que comparar las medidas.Este problema impide comprobar si realmente sonadecuados para su empleo en multirrotores reales.

El laboratorio desarrollado permite validar de for-ma fiel el comportamiento de dichos estimadores,ya que el sistema de captura por vision puede ac-tuar como sensor patron con el que contrastar losresultados arrojados por el estimador. En la Figu-ra 9 pueden compararse los resultados obtenidosdurante un vuelo real y se comprueba la similitudentre las medidas ofrecidas por la aeronave y porel sistema OptiTrack. Sin embargo, pueden obser-varse errores en la estimacion del angulo de rollque llegan a ser superiores a ±10o. Este error esdebido a que la frecuencia de corte del filtro delestimador (se ha empleado el estimador propuestoen [9]) es demasiado alta1. Cuando la frecuenciade corte se selecciona mal, las aceleraciones que seproducen durante el desplazamiento del UAV pro-ducen errores de estimacion. Este ejemplo muestralas posibilidades de la instalacion desarrollada pa-ra detectar problemas que de otro modo puedenpasar inadvertidos. Notese que el experimento seha realizado cerrando el lazo de control del UAVcon las medidas del estimador. A pesar de presen-tar errores de estimacion, el UAV es totalmenteoperativo y el operador de vuelo no es capaz dedetectar la distorsion, pero esta puede afectar alos sistemas de control que se empleen en nivelesjerarquicos superiores.

5. Conclusiones

Se ha presentado un laboratorio para el desarrollode estrategias de navegacion y control para UAVsmultirrotor. El laboratorio emplea un sistema decaptura de imagenes OptiTrack que permite reali-zar el tracking de objetos en el espacio. Para llevara cabo las pruebas de vuelo se emplean UAVs debajo coste gobernados con la controladora de vue-lo APM 2.5. La coordinacion entre los dos siste-mas se realiza en una estacion de tierra en la quese concentra la informacion. La instalacion cuen-ta con las medidas de seguridad necesarias para

1Seleccionada de forma erronea para el ejemplopropuesto.

0 4 8 12 16 20Tiempo (s)

-50

-25

0

25

50

Rol

(t)

[o]

UAVOptiTrack

0 4 8 12 16 20Tiempo (s)

-50

-25

0

25

50

Pit

chφ

(t)

[o]

UAVOptiTrack

Figura 9: Validacion de un estimador de actitud.

efectuar las pruebas de vuelo sin comprometer laintegridad fısica del usuario.

Entre las ventajas de la instalacion destaca la faci-lidad de construccion y configuracion, su versatili-dad, y el empleo de un entorno de desarrollo uni-ficado bajo Matlab-Simulink. Estas caracterısticaspermiten reducir el numero de horas necesariasdesde el diseno de los algoritmos hasta su imple-mentacion en dispositivos reales.

Por ultimo, se han presentado dos ejemplos en losque el entorno propuesto puede ser de utilidad.En el primer ejemplo se muestran los datos gene-rados durante una prueba de vuelo de un UAV.El segundo ilustra como el sistema puede ayudara sintonizar los sistemas de estimacion de actitudincorporados en la controladora de vuelo de la ae-ronave.

Agradecimientos

Los autores agradecen la ayuda prestada por elGobierno de La Rioja a traves del proyecto de I+DADER 2017-I-IDD-00035 y por la Universidad deLa Rioja a traves de la Ayuda a Grupos de Inves-tigacion REGI 2018/42.

English summary

LABORATORY FOR THE DE-VELOPMENT OF NAVIGATIONAND CONTROL SYSTEMS FORMULTIROTOR UAVS

619

Page 8: LABORATORIO PARA EL DESARROLLO DE SISTEMAS DE …eii.unex.es/ja2018/actas/JA2018_135.pdf · tiempo de desarrollo de nuevos algoritmos de esti-maci on y control. Adem as, se simpli

Abstract

This work presents the development of alaboratory for research on navigation andcontrol systems of multirotor UnmannedAerial Vehicles (UAV). The laboratory iscomposed of an enclosure in which flighttests are carried out with safety, a captu-re system that allows determining the po-sition and orientation of the vehicle, theaircraft with their flight controllers, anda ground station where the informationis centralized. The configuration and pro-gramming of all system elements is do-ne using Matlab-Simulink. The laboratoryallows to significantly reduce the develop-ment time of new estimation and controlalgorithms. In addition, it simplifies theanalysis of flight tests with more accura-te and centralized information in a singleteam. The document presents the design ofthe hardware and software infrastructuresthat make up the laboratory. Finally, re-sults obtained in a flight test and an appli-cation example for the validation of attitu-de estimators are shown.

Keywords: Unmanned Aerial Vehicle(UAV), Attitude Control, Position Con-trol, Estimation Systems, Control Engi-neering.

Referencias

[1] M. Hassanalian and A. Abdelkefi. Classifi-cations, applications, and design challengesof drones: A review. Progress in AerospaceSciences, 91:99 – 131, 2017.

[2] R. Mahony, V. Kumar, and P. Corke. Multi-rotor Aerial Vehicles: Modeling, Estimation,and Control of Quadrotor. IEEE Robotics &Automation Magazine, 19:20–32, 2012.

[3] I. Sa and P. Corke. Vertical infrastructureinspection using a Quadcopter and shared au-tonomy control, volume 92 of Springer Tractsin Advanced Robotics. 2014.

[4] S. Candiago, F. Remondino, M. De Giglio,M. Dubbini, and M. Gattelli. Evaluating mul-tispectral images and vegetation indices forprecision farming applications from uav ima-ges. Remote Sensing, 7(4):4026–4047, 2015.

[5] S. Siebert and J. Teizer. Mobile 3d mappingfor surveying earthwork projects using an un-manned aerial vehicle (uav) system. Automa-tion in Construction, 41:1 – 14, 2014.

[6] Y. Li and C. Liu. Applications of multirotordrone technologies in construction manage-ment. International Journal of ConstructionManagement, 0(0):1–12, 2018.

[7] B. Lee, P. Park, C. Kim, S. Yang, and S. Ahn.Power managements of a hybrid electric pro-pulsion system for uavs. Journal of Mechani-cal Science and Technology, 26(8):2291–2299,Aug 2012.

[8] W. Lu, D. Zhang, J. Zhang, T. Li, and T. Hu.Design and implementation of a gasoline-electric hybrid propulsion system for a mi-cro triple tilt-rotor vtol uav. In 2017 6thData Driven Control and Learning Systems(DDCLS), pages 433–438, May 2017.

[9] J. Rico-Azagra, M. Gil-Martınez, R. Rico-Azagra, and P. Maisterra. Low-cost attitu-de estimation for a ground vehicle. In Ro-bot 2015: Second Iberian Robotics Conferen-ce, Advances in Intelligent Systems and Com-puting, pages 121–132, Switzerland, 2016.Springer International Publishing.

[10] C. Fu, W. Hong, H. Lu, L. Zhang, X. Guo,and Y. Tian. Adaptive robust backsteppingattitude control for a multi-rotor unmannedaerial vehicle with time-varying output cons-traints. Aerospace Science and Technology,78:593 – 603, 2018.

[11] NaturalPoint Inc. http://optitrack.com/.

[12] H. Lim, J. Park, D. Lee, and H. J. Kim. Buildyour own quadrotor: Open-source projects onunmanned aerial vehicles. IEEE Robotics andAutomation Magazine, 19(3):33–45, 2012.

[13] F. Hugon, R.F. Hartley, B. DeRosa, andC. Carvalho. http://www.mathworks.com/matlabcentral/fileexchange/39037-apm2-simulink-blockset.

c© 2018 by the authors.Submitted for possibleopen access publication

under the terms and conditions of the Creati-ve Commons Attribution CC-BY-NC 3.0 license(http://creativecommons.org/licenses/by-nc/3.0/).

620