scieee Science in your language
[es] (orig)

Simulación dinámica de un conjunto de vehículos no tripulados

Abstract

En este proyecto se desarrollará un algoritmo, utilizando el lenguaje de MATLAB, que diseñe y simule unas trayectorias para un conjunto de vehículos no tripulados. Esta flota de vehículos tendrá dos misiones de inspección que, tras la simulación, serán puestas a prueba en un entorno real.

Read accessible full text

Simulación dinámica de un conjunto de vehículos no tripulados

Author: Zarco Vaz, Diego
Year: 2022
Source: https://idus.us.es/bitstreams/95c7d7b3-4e45-4ba1-a837-fabed4147fe2/download
P oyec o Fin de Ca e a
Ingenie ía de Telecomunicación
Fo ma o de Publicación de la Escuela Técnica
Supe io de Ingenie ía
Au o : F. Ja ie Payán Some
Tu o : Juan José Mu illo Fuen es
Dep. Teo ía de la Señal y Comunicaciones
Escuela Técnica Supe io de Ingenie ía
Uni e sidad de Se illa
Se illa, 2013
T abajo Fin de G ado
G ado en Ingenie ía Ae oespacial
Simulación Dinámica de un Conjun o de
Vehículos no T ipulados
Au o : Diego Za co Vaz
Tu o : D. Edua do Fe nández Camacho
Dp o. de Ingenie ía de Sis emas y Au omá ica
Escuela Técnica Supe io de Ingenie ía
Uni e sidad de Se illa
Se illa, 2022
T abajo Fin de G ado
G ado en Ingenie ía Ae oespacial
Simulación Dinámica de un Conjun o de
Vehículos no T ipulados
Au o :
Diego Za co Vaz
Tu o :
D. Edua do Fe nández Camacho
Ca ed á ico de Uni e sidad
Dp o. de Ingenie ía de Sis emas y Au omá ica
Escuela Técnica Supe io de Ingenie ía
Uni e sidad de Se illa
Se illa, 2022
T abajo Fin de G ado:
Simulación Dinámica de un Conjun o de Vehículos no T ipulados
Au o : Diego Za co Vaz
Tu o : D. Edua do Fe nández Camacho
El ibunal nomb ado pa a juzga el abajo a iba indicado, compues o po los siguien es p o eso es:
P esiden e:
Vocal/es:
Sec e a io:
acue dan o o ga le la cali icación de:
El Sec e a io del T ibunal
Fecha:

Ag adecimien os
En
p ime luga quie o ag adece le a mi u o D. Edua do el habe acep ado mi solici ud como
alumno de TFG y ambién que me pe mi iese ene lexibilidad a la ho a de desa olla el
mismo. Después que ía ag adece le a mis pad es el apoyo que me han dado, y en pa icula a mi
mad e que me ha seguido de ce ca el desa ollo de es e p oyec o. Finalmen e, es oy muy ag adecido
con las pe sonas que han es ado ce ca de mí du an e mi camino po es e g ado, y que me han
animado y mo i ado a segui a anzando en los momen os más di íciles.
Diego Za co Vaz
Se illa, 2022
I
Resumen
En
es e p oyec o se desa olla á un algo i mo, u ilizando el lenguaje de MATLAB, que diseñe y
simule unas ayec o ias pa a un conjun o de ehículos no ipulados. Es a lo a de ehículos
end á dos misiones de inspección que, as la simulación, se án pues as a p ueba en un en o no eal.
III
XÍndice
Resul ados 63
2.4 Algo i mo comple o 64
2.4.1 Función uni icado a 64
2.4.2 En adas a a és de un sc ip 69
2.4.3 En adas a a és de MATLAB App Designe 70
3 Simulación 75
3.1 Inspección de un pun o 75
3.1.1 Ejemplo 1 77
3.1.2 Ejemplo 2 80
3.1.3 Ejemplo 3 82
3.1.4 Ejemplo 4 86
3.2 Inspección de un á ea 88
3.2.1 Ejemplo 1 88
3.2.2 Ejemplo 2 92
3.2.3 Ejemplo 3 94
3.2.4 Ejemplo 4 97
4 P uebas Reales 101
4.1 In oducción 101
4.1.1 Banco de p uebas 102
4.1.2 C azy lies 102
4.2 1ª Aplicación 103
4.2.1 Simulación 103
4.2.2 En o no eal 104
4.3 2ª Aplicación 105
4.3.1 Simulación 105
4.3.2 En o no eal 106
4.4 3ª Aplicación 107
4.4.1 Simulación 107
4.4.2 En o no eal 108
5 Conclusiones 111
Índice de Figu as 113
Índice de Códigos 117
Bibliog a ía 119

1 In oducción
En
es e documen o, se a a mos a un nue o algo i mo que se ha desa ollado pa a diseña
ayec o ias y simula las. Es as ayec o ias ienen como misión eco e e i o ios pa a
ejecu a dis in as aplicaciones. Es as pueden se la moni o ización de dis in as ex ensiones de e eno,
lle a las comunicaciones a si ios emo os o ealiza un análisis sob e las zonas inspeccionadas.
Pa a consegui ejecu a es as misiones, se ienen que impone una se ie de es icciones que las
ayec o ias ienen que espe a . Además, una ez c eadas es as u as, se a a p esen a una simulación
en la que una lo a de ehículos no ipulados eco e á los caminos diseñados pa a comp oba que
cumplen con la misión co espondien e.
Es as ayec o ias y la pos e io simulación, se basa án en el uso de ehículos no ipulados
conocidos como HAPS (High Al i ude Pseudo Sa elli es). Más adelan e se explica á en que consis en
es os ehículos. Además, se e isa án algunos plani icado es de ayec o ias exis en es. De es a
mane a se encon a á el mé odo más con enien e y e icien e pa a las misiones pa a las que es án
des inadas las u as del p esen e abajo.
1.1 Es ado del a e
En es e apa ado se an a explica algunos concep os necesa ios pa a la ealización de es e documen o.
Es os concep os son los HAPS, ya mencionados, y los plani icado es de ayec o ias exis en es has a
el momen o que se conside an más adecuados pa a el abajo.
1.1.1 High Al i ude Pseudo Sa elli es
En la ac ualidad exis e una zona del espacio po encima de los 20 kilóme os de al i ud que no se
encuen a ap o echada. En es a zona, ambién conocida como la es a os e a, es donde apa ece el
concep o de HAPS (High Al i ude Pseudo Sa elli es) o HAPs (High Al i ude Pla o ms), Figu a 1.1.
Es os pseudo-sa éli es son obje os olado es no ipulados que uelan a g andes al i udes, que ienen
como obje i o man ene se en uelo du an e g andes pe iodos de iempo, llegando a es a meses o
incluso años en uncionamien o. De es a mane a pueden abaja mucho más iempo ealizando
misiones de igilancia o lle ando las comunicaciones a o as zonas del plane a [25].
1
2Capí ulo 1. In oducción
Figu a 1.1 High Al i ude Pseudo Sa elli es.
El concep o de HAPS se es udia desde hace muchos años. Su his o ia se emon a al siglo pasado,
en los 30s ya se comenza on p oyec os que en iaban globos a la es a os e a. Pos e io men e, sob e
1950-1960, se expe imen ó con ae ona es capaces de alcanza al i udes es a os é icas. Finalmen e,
a pa i de 1990 ya se lanzaban p oyec os los cuales enían como obje i o analiza las posibles
aplicaciones de los HAPS en elecomunicaciones y accesos emo os [9].
De ás de es os p oyec os se encuen an muchas emp esas amosas las cuales han diseñados sus
p opios HAPS. En e ellos es án P ojec Loon de Google, Zephy de Ai bus o Aquila de Facebook.
Algunos de es os p oyec os se mues an en la Figu a 1.2.
(a) (b)
Figu a 1.2 His ó ico de p oyec os con HAPS.
Los HAPS pueden clasi ica se en dos ipos. El p ime ipo se le conoce como LTA (Ligh e Than
Ai ) y co esponde a los ehículos HAPS que son más lige os que el ai e. El segundo ipo es el
HTA (Hea ie Than Ai ), que se e ie e al ehículo HAPS que es más pesado que el ai e. En la
Figu a 1.3 se mues an ejemplos de ambos ipos de HAPS. Po ejemplo, los globos ae os á icos o
los di igibles son ejemplo de LTA. Mien as que como ejemplo de HTA pod ían se ehículos no
ipulados de ala ija. Exis en cie as en ajas de unos ipos espec o a o os pe o su uso depende
undamen almen e de la aplicación que se le quie a da al p oyec o.
Es as ae ona es se encuen an en e el mundo de los sa éli es y el de los d ones, pudiendo
ap o echa las en ajas de ambos mundos y sacando el mayo pa ido a sus capacidades. Al ope a
a al as al i udes, unos 20 kilóme os de dis ancia con la ie a, es os ehículos pueden llega a cub i
g andes dis ancias con su campo de isión. Además, no se encuen an an alejados como los sa éli es
habi uales, los cuales es án a más de 340 kilóme os. Po an o, las imágenes ealizadas desde los
HAPS p esen an mayo esolución asemejándose a las ob enidas con un d on. También se puede
des aca de es e híb ido en e sa éli e y d on que, al no es a an alejado de la ie a, no p o oca
an o e aso en las comunicaciones como ocu e en los sa éli es con encionales [21].
1.1 Es ado del a e 3
(a) LTA. S a obus de Thales. (b) HTA. Zephy de Ai bus.
Figu a 1.3 Tipos de HAPS.
Pa a que es os pseudo sa éli es se man engan mucho iempo en uelo necesi an ap o echa la
ene gía sola . A a és de paneles sola es, eca gan sus ba e ías a lo la go del día y u ilizan la ene gía
ecolec ada en la noche. Además de ap o echa la ene gía ob enida du an e el día, es os ehículos
ealizan maniob as de ascenso y descenso pa a op imiza el uso de la misma. Po el día, los HAPS
ap o echan la ene gía del sol pa a ola a las al i udes deseadas. Pos e io men e, cuando llega la
noche y el sol se ocul a, los HAPS se dejan cae de o ma con olada y, de es a mane a, usan la
meno can idad de ene gía posible [
14
]. El incon enien e que exis e en la ac ualidad es que se
necesi a que es a ecnología mejo e.
Po o o lado, eniendo en cuen a las al i udes a las que uelan es os ehículos, se obse a que en
ningún momen o in e umpen o causan in e e encias con el á ico aé eo exis en e en las zonas
de uelo. También, la anja del espacio po la que se desplazan es os ehículos iene la en aja de
que no se e a ec ada po co ien es de ien o muy ue es. Es as co ien es, conocidas como Je
S eam, se encuen an en e los 9 y los 16 kilóme os de al i ud [
8
] y complica ían el diseño y el
uncionamien o de los pseudo-sa éli es. Además de es as ue es co ien es de ien o, ambién se
e i an g an pa e de los bancos de nubes que se encuen an en el cielo.
Una ez expues as las ca ac e ís icas de es e ipo de ae ona es, con iene indica cuales son las
posibles aplicaciones pa a las que se i ían. Las misiones a las que pueden i des inadas es e ipo
de ae ona es son muy a iadas, Figu a 1.4. A con inuación se mues a una lis a de ejemplos dónde
los HAPS pod ían ene una amplia epe cusión.
•De ensa
•Vigilancia
•Ambien al/U bano
•Na egación
•Telecomunicaciones
Po ejemplo, cuando se habla de aplica a los HAPS en misiones de de ensa, se e ie e a la
posibilidad de ansmi i comunicaciones o ealiza igilancias de á eas de al a segu idad. O o
ejemplo de la aplicación en de ensa pod ía se u iliza es os ehículos pa a con ola las on e as.
Un ejemplo de misiones de igilancia pod ía se el con ol del á ico ma í imo y aé eo ap o echando
las al i udes en las que se abaja. En o os casos, se pod ían u iliza es as ae ona es pa a el mapeo
y la ca og a ía de cie as ex ensiones de e eno. También iene aplicaciones cuando se habla
del ambien e, ya que se pueden ealiza abajos de p e ención/ igilancia de incendios o medi
la con aminación en cie as zonas. Po úl imo, en el caso de las elecomunicaciones, se es a ía
hablando de u iliza los HAPS pa a da cobe u a en eme gencias o ca ás o es.
4Capí ulo 1. In oducción
Figu a 1.4 Aplicaciones pa a las ayec o ias [10].
Una de las posibles aplicaciones del p esen e p oyec o pod ía se la inspección, moni o ización
y igilancia de g andes o pequeños e enos, ya sean cul i os ag a ios o plan as sola es. Po ello,
se an a u iliza los HAPS de ala ija pa a el diseño de las ayec o ias diseñadas, mien as que la
simulación pod á adap a se a o os d ones como los quad o o .
1.1.2 Plani icado de ayec o ias
En es e apa ado se ealiza un eco ido po los algo i mos plani icado es de ayec o ias que pueden
u iliza se pa a las aplicaciones que se p opond án en es e abajo.
En la ac ualidad, el é mino de "Pa h Planning" ha sido muy u ilizado en el mundo de la obó ica.
Es os algo i mos, de los que hay una g an a iedad, buscan una sucesión de posiciones pa a un
obo , que lo lle en desde un es ado inicial a un es ado inal. Es as posiciones depende án de la
dis ibución de los obs áculos en el en o no. Además, ambién se end á que ene en cuen a la
geome ía del obo y su maniob abilidad.
Los algo i mos plani icado es se suelen di e encia po la mane a de busca las mejo es u as,
po su elocidad a la ho a de gene a las ayec o ias o po la in o mación p e ia que necesi an pa a
cons ui es a u a. Po lo gene al, lo más adecuado es iden i ica cuales son las ca ac e ís icas del
p oblema, y a pa i de ahí, selecciona el mé odo pa a esol e lo.
Los algo i mos de plani icación de ayec o ias más ac uales se ca ac e izan po ob ene la mejo
u a posible o una u a que se ap oxime bas an e a la an e io mencionada. Gene almen e, la mejo
u a se e ie e a la u a óp ima, la cual se consigue minimizando las unciones obje i o del p oblema.
Po ejemplo, se p e ende minimiza el iempo o al que se a da en eco e la u a en misiones de
búsqueda y esca e. O o ejemplo pod ía se cuando se in en a minimiza la ene gía que u iliza el
ehículo pa a eco e la u a como se puede obse a pa a los casos de uelos con HAPS.
Exis en muchas o mas de clasi ica los algo i mos de plani icación. En es e abajo se ha en ocado
el es udio en algo i mos cuya plani icación no sea dinámica, es deci , no exis en obs áculos mó iles.
Y, además, se conoce el mapa sob e el que se a a abaja incluyendo los pun os inicial y inal.
Es os se ían los condicionan es pa a la búsqueda de un ipo de algo i mo de plani icación e ec i o
pa a el p opósi o del abajo. Un ipo de algo i mos que concue dan con dichas especi icaciones son
los conocidos como "C Space Sea ch Based Pa h Planning Algo i hms" [
23
]. Den o de ellos se
puede dis ingui en e "G aph Sea ch" y "Sampling-Based". En la Figu a 1.5 se mues a una se ie
de ejemplos pe enecien es a la ca ego ía de algo i mos "G aph Sea ch".
1.1 Es ado del a e 5
Figu a 1.5 Algo i mos plani icado es.
Sin emba go, la ca ego ía "Sampling-Based" pa ece que se ajus a más a las necesidades del
p esen e abajo. Den o de ella se encuen a el algo i mo conocido como RRT (Rapidly Random
T ee). Es e algo i mo plani icado se basa en la cons ucción de un á bol de pun os que comienzan en
el pun o inicial y se a expandiendo has a encon a el pun o inal, Figu a 1.6. Se le llama andom o
alea o io po la o ma en la que gene a los waypoin s po los que pasa á el ehículo. Es as posiciones
se conocen como nodos y se c ean pa iendo del nodo inicial. A pa i de es e, se elige un pun o
de o ma alea o ia en el mapa, se ex iende una ama desde el pun o inicial en di ección al pun o
alea o io y se c ea un nodo a una dis ancia del nodo inicial elegida po el usua io. A con inuación,
se gua da el nue o nodo y se sigue expandiendo el á bol de la misma mane a has a alcanza el
pun o inal. Una ez encon ado el es ado inal, se ealiza una inspección pa a e si exis e un mejo
camino según los nodos exis en es.
Figu a 1.6 Algo i mo RRT.
El p esen e abajo se cen a á en c ea un algo i mo que diseñe las ayec o ias que an a eco e
las ae ona es desde un pun o inicial a un pun o inal, sin abo da el con ol del d on du an e el
uelo. Los condicionan es de es as ayec o ias son, en p ime luga que no exis an obs áculos en
las mismas, y en segundo luga , que la lo a es é compues a po ae ona es de ala ija. Es o úl imo
implica que las ayec o ias no pueden ene gi os b uscos ya que en es e ipo de ehículos se necesi a
cie o espacio pa a pode maniob a man eniendo la segu idad.
Debido a es as dos p emisas, los algo i mos plani icado es mencionados en es e apa ado, aun
apo ando mucha in o mación, no se ajus an a las necesidades del p oyec o. En un p incipio se
comenzó c eando ayec o ias u ilizando una a ian e del algo i mo RRT combinado con un ipo de
cu as denominadas Caminos de Dubins. Pe o dado la ausencia de obs áculos ijos o mó iles, se
obse ó que no e a necesa io ecu i a algo i mo de plani icación que busquen el camino óp imo
basándose en la dis ibución de los obs áculos. En el caso que se plan ea en es e abajo, se le da
más impo ancia a la maniob abilidad de la lo a de ehículos no ipulados y al ipo de elemen os
que se quie en isualiza . Po odo ello se decidió c ea un algo i mo di e en e, de c eación p opia.

6Capí ulo 1. In oducción
1.2 Obje i os
En es e p oyec o se desa olla á un algo i mo, u ilizando el lenguaje de MATLAB, que diseñe y
simule unas ayec o ias pa a un conjun o de ehículos no ipulados. Es a lo a de ehículos end á
dos misiones de inspección que debe án lle a a cabo de o ma e icien e y e i ando colisiones
en e las dis in as ae ona es. La p ime a misión se co esponde con la igilancia de un pun o del
mapa conside ando algunas es icciones como las ca ac e ís icas de la ae ona e o el núme o de
inspecciones que se quie an ealiza . La segunda misión consis e en la isualización de una zona
g ande de e eno du an e un iempo de e minado. Finalmen e, as ob ene las ayec o ias se ealiza
una simulación en la que un conjun o de ehículos no ipulados eco en es as u as pa a e i ica
que se cumplen odas las condiciones impues as po el usua io.
En elación a los obje i os a inspecciona , puede a a se desde una plan a sola de 100 hec á eas,
como pod ía se Solno a en Sanlúca la Mayo , sob e la que se quie e ealiza una inspección, has a
una comunidad au ónoma en e a como es Andalucía. En la Figu a 1.7 se mues an los ejemplos
mencionados hacia los que se pod ían o ien a las misiones.
(a) Plan a sola Solno a. (b) Mapa de Andalucía.
Figu a 1.7 Posibles á eas a inspecciona .
Debido a la a iabilidad en las dimensiones del e eno a inspecciona , el algo i mo iene que se
escalable, es deci , iene que c ea ayec o ias de mane a adecuada independien emen e de si la
misión le concie ne a un HAPS que uela a muchos kilóme os de al i ud o si la misión la ejecu a
una lo a de ehículos no ipulados sob e una plan a sola .
Finalmen e, la simulación co espondien e iene que ap oxima se lo más posible a la ealidad. Se á
necesa io comp oba que no exis en colisiones en e las ae ona es, ya que aunque no haya obs áculos
en las condiciones del p oblema, si hay que ene en cuen a que se a a u iliza una lo a de ehículos
los cuales pueden colisiona en e sí. Po an o, las ayec o ias c eadas end án componen es
que pe mi an ga an iza la segu idad de los ehículos. Al inal del abajo, el uncionamien o del
algo i mo se comp oba á ealizando p uebas eales con las ayec o ias c eadas.
1.3 Es uc u a del documen o 7
1.3 Es uc u a del documen o
Una ez in oducidos, en el capí ulo uno, los concep os necesa ios pa a el desa ollo del p esen e
abajo y es ablecidos los obje i os, a con inuación se indica la es uc u a que end á el es o del
documen o, la cual co esponde a es capí ulos y unas conclusiones.
El segundo capí ulo de es e documen o consis i á en el desa ollo del algo i mo, pa a lo que se á
necesa io explica dos concep os: las cu as de Dubins, que se u iliza án como base pa a la c eación
de las ayec o ias, y el campo de isión de una ae ona e, impo an e pa a de e mina la o ma de
las u as diseñadas. Pos e io men e, se ha á una b e e in oducción al p ime caso de uso donde se
conc e a á la misión co espondien e y se expond án las di icul ades que se ue on plan eando y que
moldea on la o ma de su desa ollo. A con inuación, se desa olla á el algo i mo co espondien e
a la inspección de un pun o. El mismo esquema se segui á pa a la exposición del segundo caso de
uso, la inspección de un á ea. Po úl imo, se c ea á un único código que uni ica á ambos algo i mos
y una aplicación donde, de o ma in ui i a, se in oducen los da os de pa ida pa a la ejecución de la
misión.
En el e ce capí ulo se explica á el código co espondien e a la simulación de las ayec o ias y se
expond án cua o ejemplos pa a cada caso de uso de dis in as si uaciones que mues an el po encial
del algo i mo.
El cua o capí ulo se co esponde con las p uebas eales. Se comienza desc ibiendo el banco
de p uebas y los d ones c azy lies u ilizados en los ensayos. Pos e io men e, se p esen an es
aplicaciones. Pa a ello, p ime o se de ine el obje i o, después se c ea la ayec o ia y se simula, y
po úl imo, se e i ican los esul ados de la simulación con una p ueba en un en o no eal.
Finalmen e, se inclui án las conclusiones y posibles líneas u u as de abajo.
2 Algo i mo
En es a sección p ime o se habla á de dos concep os muy impo an es de ca a al p oblema que
se p e ende esol e . Es os concep os son las cu as de Dubins y el campo de isión de una
ae ona e. Además de explica a ondo es as dos ideas, se comen a á como se p e enden inclui en
el abajo que se desa olla á en el es o del capí ulo. Pos e io men e, se p ocede á a in oduci
p ime o el caso de la inspección de un pun o. En es e p oblema, se iene como obje i o igila un
cie o pun o en el mapa bajo unas condiciones de elocidad y iempo. Po o o lado, ambién se
explica á el segundo p oblema plan eado en es e abajo, la inspección de un á ea. Al igual que en
el p ime caso, bajo unas es icciones de elocidad y de iempo, se igila á un á ea ex ensa sob e
el mapa con un conjun o de ehículos no ipulados.
2.1 Concep os p e ios
2.1.1 Cu as de Dubins
El concep o de cu a de Dubins o camino de Dubins (en inglés, Dubins cu e o Dubins pa h) se
e ie e a la cu a de longi ud mínima con una es icción en la cu a u a y con angen es y posiciones
inicial y inal p esc i as, conside ando que el ehículo que eco e la u a solo puede i hacia delan e.
Si el ehículo pudie a i hacia a ás, es a íamos hablando de las cu as Reeds-Shepp, ema que no
se a a á en es e documen o [
5
]. En la Figu a 2.1 se puede obse a un ejemplo simple de una cu a
de Dubins. Más adelan e, se explica án los elemen os que la componen.
Figu a 2.1 Cu a de Dubins. Ejemplo básico.
9
16 Capí ulo 2. Algo i mo
Figu a 2.12 Cálculo cu a de Dubins RSL (6).
Finalmen e, el camino de Dubins se compone de es amos. El p ime amo se encuen a en la
ci cun e encia
R1
, se ía el a co que se desc ibe desde el pun o inicial

S
has a el pun o de angencia

T1
,
eco ido en sen ido ho a io. El segundo amo se ía el segmen o

RSL
ya calculado, que co esponde
con la angen e in e na a ambas ci cun e encias que une los pun os

T1
y

T2
. Finalmen e, el úl imo
amo es el ozo de ci cun e encia que se eco e, en sen ido an iho a io, desde el pun o de angencia

T2, has a el pun o inal 
E. En la Figu a 2.13 se mues a como queda ía la ayec o ia inal.
Figu a 2.13 Cálculo cu a de Dubins RSL (7).
De o ma análoga, se pod ían ob ene las cinco cu as de Dubins es an es pa a los mismos
pun os inicial y inal. Los cálculos a ían espec o a es e ejemplo, pe o la me odología es simila .
Cabe des aca que no siemp e se á posible calcula los seis caminos de Dubins. Ya que en los casos
o mados po es ci cun e encias consecu i as, RLR y LRL, solo es posible el cálculo de es as
cu as si la dis ancia en e los pun os inicial y inal es meno de seis eces el adio mínimo de gi o.
Es o se debe a que es la máxima dis ancia alcanzable po es ci cun e encias angen es en e sí.
Función de MATLAB
Una ez explicado el modo de calculo de los caminos de Dubins, se p osigue mos ando cómo
se pod ían calcula es as cu as en el so wa e de MATLAB. Todos los algo i mos desa ollados
a lo la go de es e p oyec o, se han en ocado en el lenguaje de MATLAB, aunque es os ienen
adap abilidad pa a o os lenguajes como se comen a á más adelan e.
En MATLAB, se puede u iliza una unción especí ica que e encuen a las cu as de Dubins
dados un pun o inicial y un pun o inal, pudiendo cambia pa áme os como el adio mínimo de
gi o. El código necesa io pa a ejecu a es o se puede encon a en la p opia página de MATLAB [
6
]
y co esponde al Código 2.1.
Código 2.1 Función de cu a de Dubins de MATLAB.
1% C ea e a dubinsConnec ion objec .

2.1 Concep os p e ios 17
2dubConnObj = dubinsConnec ion;
3
4% De ine s a and goal poses as [x y he a] ec o s.
5s a Pose = [0 0 0];
6goalPose = [1 1 pi];
7
8% Calcula e a alid pa h segmen o connec he poses.
9[pa hSegObj, pa hCos s] = connec (dubConnObj,s a Pose,goalPose);
10
11 % Show he gene a ed pa h.
12 show(pa hSegObj{1})
En es e ejemplo se p e ende ob ene el camino de Dubins más co o en e el pun o inicial, el
cuál co esponde al
[0,0,0]
, es deci , coo denadas
x=0
,
y=0
y con un ángulo de salida de
0◦
espec o a la ho izon al; y un pun o inal
[1,1,π]
cuyo ángulo inal iene que se de
180◦
espec o a
la ho izon al.
Pa a ob ene la cu a de Dubins p ime o hay que c ea un obje o que MATLAB denomina
dubinsConnec ion como se mues a en la línea 2 del Código 2.1). Pos e io men e, se de inen los
pun os inicial y inal con el o ma o ya indicado
[x,y,θ]
. Po úl imo, se hace uso de la unción
connec , línea 9 del Código 2.1, que conec a los pun os siguiendo un camino de Dubins. Cabe
des aca que, como pa áme os p ede e minados se encuen a po ejemplo el adio mínimo de gi o
con una unidad de MATLAB como alo po de ec o. Finalmen e, en la Figu a 2.14 se ob iene una
isualización de los esul ados ob enidos g acias al uso del comando show de MATLAB.
Figu a 2.14 Ejemplo en MATLAB de cu a de Dubins.
De la g á ica ob enida se pueden iden i ica a ios elemen os. El pun o inicial co esponde al
obje o si uado en el
[0,0]
, pin ado de colo e de. El pun o inal po o o lado, se encuen a en la
posición
[1,1]
de la igu a, pin ado en ojo. O o aspec o de la leyenda a des aca es la u a o camino
que se encuen a como un azo de colo na anja e ique ado en la leyenda como pa h. A lo la go
de es e azo exis en dos pun os neg os con una pequeña línea neg a. Es os elemen os indican la
posición de los pun os de angencia y la di ección que segui ía el ehículo al pasa po ese pun o.
Se puede obse a ambién que la cu a calculada se ía del ipo RLR, es deci , una p ime a cu a
en sen ido ho a io, pos e io men e se eco e un ozo de ci cun e encia en sen ido an iho a io pa a
acaba con o o pequeño ozo en sen ido ho a io.
La unción de MATLAB e indica que ipo de cu a es, la longi ud de la cu a, el cos e del
18 Capí ulo 2. Algo i mo
camino y más in o mación que se gua da en las a iables de salida de la línea 9 del Código 2.1. El
elemen o pa hSegObj consis e un una celda que incluye los pun os inicial y inal, el adio mínimo de
gi o, la longi ud de cada uno de los es amos, el ipo de cu a de Dubins y po úl imo la longi ud
o al de la ayec o ia. A con inuación, se an a ealiza unas pequeñas modi icaciones en el código
pa a pode ob ene un ejemplo dónde se ob engan odas las cu as posibles.
Código 2.2 Función de cu a de Dubins de MATLAB modi icada.
1% C ea e a dubinsConnec ion objec
2dubConnObj = dubinsConnec ion;
3
4% Change minimum u ning adius
5dubConnObj.MinTu ningRadius = 0.5;
6
7% De ine s a and goal poses as [x y he a] ec o s
8s a Pose = [0 0 0];
9goalPose = [1 0 -pi/4];
10
11 % Calcula e a alid pa h segmen o connec he poses
12 [pa hSegObj, pa hCos s] = connec (dubConnObj,s a Pose,goalPose,"
Pa hSegmen s","all");
13
14 % Show he gene a ed pa h
15 o i = 1:6
16 igu e()
17 show(pa hSegObj{i})
18 axis equal
19 end
Los aspec os más impo an es que se han modi icado pa a ob ene el Código 2.2 son los siguien es.
Se ha cambiado el pun o inal a la posición
[1,0,−π
4]
y se ha disminuido el adio mínimo de gi o a
la mi ad, po an o, end á un alo de 0.5 unidades. Po úl imo, se han modi icado las en adas de la
unción connec pa a ob ene odas las cu as y se ha añadido un bucle que pe mi a saca una igu a
pa a cada camino de Dubins. La Figu a 2.15 y la Figu a 2.16 mues an los esul ados ob enidos al
ejecu a el Código 2.2.
(a) RSR. (b) RSL. (c) LSR.
Figu a 2.15 Ejemplo modi icado en MATLAB de cu as de Dubins (1).
2.1 Concep os p e ios 19
(a) LSL. (b) RLR. (c) LRL.
Figu a 2.16 Ejemplo modi icado en MATLAB de cu as de Dubins (2).
Todas las imágenes compa en el mismo pun o inicial, pun o inal y adio mínimo de gi o. Los
elemen os que apa ecen en las igu as y en la leyenda de cada uno son los mismos elemen os que
se ob u ie on en la Figu a 2.14. Se puede obse a que hay caminos de Dubins que no pa ecen
óp imos compa ados con o os. Póngase un ejemplo: en la Figu a 2.15a la u a ealiza casi una
uel a comple a en sen ido ho a io pa a alcanza el ángulo necesa io que le pe mi e ap oxima se al
pun o inal. Po o o lado, en la Figu a 2.15c se obse a como se ía posible llega desde el mismo
pun o inicial has a el inal, u ilizando 3 amos muy co os y di ec os hacia la me a deseada. Es po
ello, que una cu a de Dubins cualquie a no siemp e se á el camino más co o, sino que hay que
ene en cuen a cuál de las seis posibilidades es la más co a.
O os ejemplos a des aca en es e caso, se ían los caminos de Dubins compues os solo po
cu as, y po an o, no cons an de ningún amo ec ilíneo. En los casos de la Figu a 2.16b y de la
Figu a 2.16c se obse a que se comple a la u a con es amos cu ilíneos o mados po a cos de
ci cun e encias de adio mínimo. Pa a el ejemplo p opues o, es a mane a de ac ua no es la adecuado
ya que e obliga a eco e g an pa e de las ci cun e encias pa a halla el ángulo adecuado pa a
pasa al siguien e amo.
A pesa de la e ec i idad de la unción de MATLAB, es di ícil ene acceso al cálculo de es as
ayec o ias de una o ma más p o unda. Es po ello, que se plan eó la idea de busca unas unciones
sob e las cuales se enga más con ol del p opio algo i mo. De es a mane a, se pod án hace cambios
a la unción según los in e eses de la in es igación. Po an o, se buscó una unción que al igual que
la de MATLAB, calcula a los caminos de Dubins con la es icción en el adio de gi o de la cu a.
Función de And ew Walke
En 2008, And ew Walke , ealizó un so wa e que calcula el camino más co o pa a un ehículo
de Dubins, es deci , que iene una es icción de maniob abilidad y solo a hacia delan e. And ew
comen a que sus in es igaciones se basan en los abajos de [
15
]y[
20
], y que el en oque usado pa a
el cálculo de es as u as se ía el encon ado en el a ículo [24] del cual se habla á más adelan e.
El código que ealizó And ew Walke ue u ilizando el lenguaje C y lo publicó en la web de
Gi Hub [
26
]. Es a web es un luga en in e ne c eado pa a aloja di e en es p oyec os a los cuales
se puede accede y segui in es igando con ellos. Más adelan e, en 2016 Hsin-Yi Kang o ambién
conocido en la pla a o ma como EwingKang, decidió aduci el código de And ew al lenguaje
de MATLAB [
17
]. Además, Hsin-Yi iene a ios p oyec os subidos a la web hablando sob e las
cu as de Dubins y algo i mos de plani icación de ayec o ias como el RRT del que se habló con
an e io idad. Finalmen e, en es e abajo se a a analiza la aducción que hizo Ewingkang en
MATLAB del código que c eó And ew Walke sob e las cu as de Dubins.
En e los a chi os que se encuen an en la publicación de Hsin-Yi encon amos dos documen os
con o ma o ".m" que se i án como núcleo del desa ollo de las ayec o ias en es e p oyec o. Es os
20 Capí ulo 2. Algo i mo
a chi os se ían
dubins_cu e.m
y
dubins_co e.m
. P ime o, se an a in oduci las unciones en
un sc ip de MATLAB al como ecomienda el au o . Pos e io men e se ejecu a án pa a e los
esul ados ob enidos. En la Figu a 2.17 se mues a los esul ados co espondien es al ejecu a el
Código 2.3.
Código 2.3 Ejemplo del código de Hsin-Yi.
1P1 = [1 1 0];
2P2 = [4 4 -pi/4];
3 = 1;
4s epsize = 0.01;
5PATH = dubins_cu e(P1, P2, , s epsize);
6axis([0 5 0 5]), daspec ([1 1 1])
Figu a 2.17 Ejemplo del código de Hsin-Yi.
Pa a u iliza las unciones p ime o hay que c ea los pun os inicial y inal de la ayec o ia. En
la Figu a 2.17 es án ma cados con las palab as s a pa a el pun o inicial y end pa a el pun o inal.
Después, se le indica a la unción cual es el adio mínimo de gi o que se use como es icción pa a
cons ui el camino. Y, po úl imo, hay que indica como en ada de la unción el "s epsize" o la
dis ancia en e pun os que se quie e a la ho a de ealiza la ayec o ia. Es a dis ancia si e pa a
ob ene una mayo p ecisión en la cu a a causa de u iliza mayo capacidad de cómpu o. Además de
lo indicado, se ha añadido una línea inal (línea 6 del Código 2.3) dónde se indican las dimensiones
de la igu a de salida y la elación de aspec o en e los dis in os ejes. Es o si e pa a que las cu as
se ean como ayec o ias ci cula es.
Finalmen e, se ob iene como salida de la unción una ma iz de 3 columnas y, en es e caso, 525
ilas que co esponde ían a los dis in os pun os de la ayec o ia. Las es columnas son la coo denada
en
x
, la coo denada en
y
y el ángulo
θ
, en adianes, espec i amen e. Además, se mues a en la
en ana de comandos de MATLAB el mensaje que se e en la Figu a 2.18.
Figu a 2.18 Mensaje del código de Hsin-Yi.
2.1 Concep os p e ios 21
En es e mensaje se mues a el iempo que se ha a dado en compu a la ayec o ia y el iempo
que se ha a dado en mos a la igu a co espondien e. La unción ejecu ada, iene un pa áme o
adicional de en ada llamado quie . Es e pa áme o se encuen a de o ma p ede e minada con un
alo alse o also den o de la unción. Si se le in oduce un alo de ue o e dade o en las en adas,
es o p oduce que no se mues e po pan alla un dibujo de como se ía la ayec o ia. Es a idea se á
u ilizada en pos e io es desa ollos.
A con inuación, se p ocede a analiza la unción que se ha ejecu ado:
dubins_cu e.m
. Ya que,
pa a pode u iliza la en u u as in es igaciones, lo más con enien e es en ende su uncionamien o a
la pe ección.
Al ab i la unción en MATLAB, las p ime as líneas co esponden a una explicación de como
u iliza la unción. Además, se añaden las e e encias a la web Gi Hub y más da os sob e el au o .
Código 2.4 Función dubins_cu e.m (1).
1%DUBINS_CURVE Find he Dubins pa h (sho es cu e) be ween wo poin s.
2% PATH = DUBINS_CURVE(P1, P2, , s epsize) inds he sho es cu e
3% ha connec s wo poin s in he Euclidean plane wi h a cons ain o
4% he cu a u e o he pa h. The s a and inish o ien a ions P1 and
5% P2 a e de ined as [x, y, he a]. The u ning adius ( ) and s epsize
6% will be de ined au oma ically i hei alue is <= 0. The ou pu
7% PATH is an [mx3] a ay consis ing o m ows o [x, y, he a] alues.
8%
9% PATH = DUBINS_CURVE(P1, P2, , s epsize, quie ) pe o ms he same as
10 % abo e, howe e i quie == ue, hen no plo s o command window
11 % ou pu will be gene a ed. Ommi ing his inpu will esul in quie
12 % = alse/0.
13 %
14 % This unc ion handles he in e ace o dubins_co e.m o gi e a mo e
15 % in ui i e ool o inding he Dubins pa h.
Como se obse a en el Código 2.4, el au o explica cómo usa la unción y los pa áme os de
en ada que la componen. Después, indica como se usa el úl imo pa áme o de en ada a la unción
que, como ya se ha dicho, es e si e pa a saca un g á ico con el dibujo de la ayec o ia. Finalmen e,
comen a que den o de esa unción se u iliza el o o a chi o hallado en la lib e ía,
dubins_co e
,
como he amien a pa a encon a el camino de Dubins.
T as es os comen a ios iniciales comienza el código co espondien e a la unción. De es e, solo
se habla á de las pa es más ele an es del mismo, pasando po encima algunas líneas menos
impo an es. La p ime a pa e impo an e se encuen a en las líneas p esen adas en el Código 2.5.
Código 2.5 Función dubins_cu e.m (2).
1% main unc ion
2pa am = dubins_co e(p1, p2, );
3i s epsize <= 0
4s epsize = dubins_leng h(pa am)/1000;
5end
6pa h = dubins_pa h_sample_many(pa am, s epsize);
En es as líneas se hace una llamada a la unción
dubins_co e
en la cuál se ealizan los cálculos

22 Capí ulo 2. Algo i mo
de los di e en es amos del camino de Dubins más co o. Es os amos, salen en o ma de alo es
numé icos en la es uc u a denominada
pa am
, la cuál se explica á más adelan e. T as ob ene
los pa áme os, se analiza el alo dado po el usua io de s epsize y se ejecu a la unción in e na
en el algo i mo denominada
dubins_pa h_sample_many
. Es a unción con ie e los pa áme os
calculados en el código de
dubins_co e
en pun os a lo la go de la ayec o ia sepa ados una dis ancia
igual al s epsize dado.
El es o de la unción de
dubins_cu e
consis e en ealiza el cálculo de las ayec o ias ya
comen adas a pa i de los pa áme os y dibuja la g á ica co espondien e. Es po ello, que a
con inuación se a a comen a como se han llegado a ob ene los amos de los caminos de Dubins
den o de la unción dubins_co e.m.
Al ab i es e nue o a chi o, apa ecen los mismos comen a ios encon ados en la unción an e io .
Pos e io men e, se explican como se han de inido los di e en es amos posibles pa a las cu as de
Dubins.
Código 2.6 Función dubins_co e.m (1).
1%%%%%%%%%%%%%%%%%% DEFINE %%%%%%%%%%%%%%%%%
2% He e a e some use ulde ine heade s o be e implemen a ion
3% he e a e 6 ypes o dubin’s cu e, only one will ha e minimum cos
4% LSL = 1;
5% LSR = 2;
6% RSL = 3;
7% RSR = 4;
8% RLR = 5;
9% LRL = 6;
10
11 % The h ee segmen ypes a pa h can be made up o
12 % L_SEG = 1;
13 % S_SEG = 2;
14 % R_SEG = 3;
15
16 % The segmen ypes o each o he Pa h ypes
17 %{
18 DIRDATA = [ L_SEG, S_SEG, L_SEG ;...
19 L_SEG, S_SEG, R_SEG ;...
20 R_SEG, S_SEG, L_SEG ;...
21 R_SEG, S_SEG, R_SEG ;...
22 R_SEG, L_SEG, R_SEG ;...
23 L_SEG, R_SEG, L_SEG ];
24 %}
25 %%%%%%%%%%%%%%%% END DEFINE %%%%%%%%%%%%%%%%
Como se comen a en el Código 2.6, exis en seis posibles caminos de Dubins, de los cuales solo
uno se á el más co o. El sis ema pa a ob ene el camino más co o se basa á en asigna le un cos e a
los amos de cada camino según la longi ud de los mismos.
Al igual que con el a chi o de
dubins_cu e.m
, en es e caso se an a ob ia las pa es menos
impo an es. A con inuación, en el Código 2.7 se mues an el cálculo de odas las posibles cu as
de Dubins y en e ellas se busca la más co a.
2.1 Concep os p e ios 23
Código 2.7 Función dubins_co e.m (2).
1% Second, we ind all possible cu es
2bes _wo d = -1;
3bes _cos = -1;
4 es _pa am(1,:) = dubins_LSL(alpha, be a, d);
5 es _pa am(2,:) = dubins_LSR(alpha, be a, d);
6 es _pa am(3,:) = dubins_RSL(alpha, be a, d);
7 es _pa am(4,:) = dubins_RSR(alpha, be a, d);
8 es _pa am(5,:) = dubins_RLR(alpha, be a, d);
9 es _pa am(6,:) = dubins_LRL(alpha, be a, d);
10
11 o i = 1:1:6
12 i ( es _pa am(i,1) ~= -1)
13 cos = sum( es _pa am(i,:));
14 i (cos < bes _cos ) || (bes _cos == -1)
15 bes _wo d = i;
16 bes _cos = cos ;
17 pa am.seg_pa am = es _pa am(i,:);
18 pa am. ype = i;
19 end
20 end
21 end
En es e Código 2.7 se calculan indi idualmen e odos los posibles caminos de Dubins. Los
pa áme os de en ada co esponden a ángulos calculados a pa i de los pun os inicial y inal. Es os
ángulos denominados
alpha
y
be a
apa ecen explicados en el a ículo [
24
] que si ió como guía
pa a la c eación de es e a chi o
dubins_co e
. En el a ículo mencionado, se mues a el ejemplo que
se a a inclui a con inuación. En el ejemplo que se mues a en el Código 2.8, se a a calcula la
longi ud de los di e en es amos del camino de Dubins LSL.
Código 2.8 Función dubins_co e.m (3).
1 unc ion pa am = dubins_LSL(alpha, be a, d)
2 mp0 = d + sin(alpha) - sin(be a);
3p_squa ed = 2 + (d*d) -(2*cos(alpha - be a)) + (2*d*(sin(alpha) -
sin(be a)));
4i ( p_squa ed < 0 )
5pa am = [-1, -1, -1];
6 e u n;
7else
8 mp1 = a an2( (cos(be a)-cos(alpha)), mp0 );
9 = mod((-alpha + mp1 ), 2*pi);
10 p = sq ( p_squa ed );
11 q = mod((be a - mp1 ), 2*pi);
12 pa am(1) = ;
13 pa am(2) = p;
14 pa am(3) = q;
15 e u n ;
16 end
24 Capí ulo 2. Algo i mo
17 end
En es e código, a pa i de los pa áme os
alpha
,
be a
y
d
, se calcula la longi ud de los di e en es
amos que componen el camino de Dubins LSL. Es os amos co esponden a un amo cu ilíneo
eco ido en sen ido an iho a io, un amo ec o y o o amo igual que el p ime o. Es as longi udes
co esponden en el código a los pa áme os
,
p
y
q
. Al igual que se hace con es e ejemplo, unos
cálculos pa ecidos se ealizan pa a el es o de cu as de Dubins. Todos es os cálculos se encuen an
indicados en [24], el cuál ha sido la base pa a el desa ollo de es os algo i mos.
Finalmen e, se da po concluida la explicación de los algo i mos que se i án como núcleo en el
desa ollo u u o de es e abajo. A con inuación se explica á o o concep o muy impo an e que se
u iliza á a lo la go del p oyec o, el campo de isión de una ae ona e.
2.1.2 Campo de isión
El campo de isión de una pe sona es el ango que una pe sona puede e a a és de los ojos. Es
deci , es donde se ap ecian los obje os si uados en el espacio. En las pe sonas, el ango de isión
onda los
180◦
aunque el ango de isión e ec i o o el luga dónde las pe sonas dis inguen bien
los elemen os no es supe io a los
30◦
[
3
]. En la Figu a 2.19 se mues a el campo de isión de una
pe sona.
Figu a 2.19 Campo de isión de una pe sona.
Al campo de isión de o ma gene al ambién se le conoce po su aducción al inglés, Field o
View (FOV). Es a isión cons a de dos componen es, el campo de isión ho izon al y el campo
de isión e ical o mando ambas un ec ángulo en su conjun o [
27
]. Al igual que las pe sonas,
exis en sis emas como las cáma as que ienen su p opio campo de isión.
Es os sis emas u ilizan dis in os obje i os según el uso que se les quie a da . Po ejemplo, se
necesi a á un obje i o ipo g an angula pa a campos de isión g andes. Además, es o ambién suele
pe judica lo que se conoce como la esolución. Es lógico pensa que cuan o más g ande es el campo
de isión de un obje o, meno es la esolución del mismo, es deci , las pequeñas cosas que apa ecen
en la imagen se án menos p ecisas [
13
]. Es a p ecisión de la cáma a o de los senso es u ilizados
apo a las medidas más pequeñas que pueden ep esen a se en un píxel. A lo la go del abajo se
a a á con pa áme os mucho más gene ales que los mencionados aquí. De es os pa áme os se
habla á a con inuación.
En misiones de igilancia medioambien al, de búsqueda y esca e, o muchas o as de las que se
habló cuando se mencionó el concep o de HAPS (High Al i ude Pseudo Sa elli es), e a sencillo
2.1 Concep os p e ios 25
ob ene un amplio campo de isión debido a la g an al i ud a la que uelan es as ae ona es. Además,
es in e esan e ene con olado el FOV pa a sabe en odo momen o las dis ancias que aba can los
senso es de es os ehículos no ipulados.
A con inuación se a a mos a un esquema en la Figu a 2.20 sob e el que se basa á el campo de
isión u ilizado pa a ealiza las ayec o ias a lo la go de es e p oyec o.
Figu a 2.20 Campo de isión de una ae ona e.
Es a imagen ue sacada de [
19
]. Es e a ículo i ulado "Au oma ed UAV asks o sea ch and
su eillance" se á muy ecu en e a lo la go del abajo ya que menciona é minos y p opone
desa ollos muy in e esan es a ene en cuen a. En la Figu a 2.20 se obse a cual es el campo de
isión de una ae ona e que uela a una al i ud
hal
con dos pe spec i as dis in as. En la imagen de la
de echa podemos obse a una is a de pe il, donde se mues a el ango de isión que iene la na e
hacia delan e y hacia de ás. En la o a is a, imagen del lado izquie do, se obse a una pe spec i a
desde a iba donde se e el ancho del campo de isión o al.
Pa a ob ene las dimensiones o ales del campo de isión, a pa e de la al i ud, se necesi an es
ángulos ep esen ados en es os esquemas. Es os ángulos son conocidos como el ángulo de ele ación
del gimbal del senso (
θg
), el ángulo e ical del FOV (
η
) y, po úl imo, el ángulo ho izon al del
FOV (
ηh
). A pa i de es os ángulos y de la al i ud de la ae ona e, se pueden ob ene los pa áme os
que in e esan pa a calcula las dimensiones sob e el mapa del campo de isión como se de alla en
las siguien es ecuaciones.
dl=hal
an(θg−η /2)(2.11)
d =hal
an(θg+η /2)(2.12)
dw=2hal
cos(θg) an(ηh/2)(2.13)
Como se puede obse a , el cálculo de es os pa áme os es pu amen e geomé ico. Es os pa áme-
os de in e és son la longi ud has a el bo de on al del campo de isión (
dl
), ambién conocido
como leading edge; la longi ud has a el ex emo pos e io del campo de isión (
d
) o ambién ailing
edge y, po úl imo, el ancho del campo de isión o wid h (dw).
En los p óximos desa ollos, se conside a á que el campo de isión end á geome ía de ec ángulo
32 Capí ulo 2. Algo i mo
caso de u iliza una o ma de in ini o en la ayec o ia, se dedujo que se necesi a ía o a ae ona e en
el caso en el que el adio de gi o co espondien e al iempo impues o, sea meno que el adio de
gi o mínimo. Cuando ocu a es o, se á necesa io in oduci o a ae ona e en la ayec o ia.
Pos e io men e, según se desa ollaba el código, se io con enien e desca a es a idea del pa ón
en o ma de in ini o, y ol e a la o ma de hipód omo. El mo i o de es o es que e a mucho más
sencillo con ola los iempos con las dis ancias que se ala gaban o aco aban en el pa ón de espe a.
Es o ocu ía, ya que e an amos ec ilíneos y no consis ían en cu as dónde calcula la longi ud
que se eco ía no e a an i ial. Además, el pa ón de in ini o no es aba compues o po amos
que o masen ci cun e encias pe ec as, sino que combinaba amos de ci cun e encia con amos
ec ilíneos.
Asimismo, ambién se podía cumpli el úl imo de los obje i os. El obje i o de iden i ica cuán as
ae ona es e an necesa ias pa a cumpli las especi icaciones de iempo. Es o e a posible ya que, en
ez de medi lo con el adio de gi o mínimo, se medía con la longi ud del amo de ap oximación. Se
ecue da, que el iempo po uel a se con olaba ala gando o aco ando el amo de ap oximación al
pun o de inspección. Si es e amo, no se pudie a aco a más po que ese alo se hicie a nega i o,
signi ica ía que se necesi a un nue o UAV pa a cumpli la condición de iempo. En la Figu a 2.27,
se puede obse a como queda ía una ayec o ia donde el amo de ap oximación sea mínimo y si
se disminuye a el iempo de inspección, hab ía que añadi o a ae ona e.
Figu a 2.27 Inspección con espe a en hipód omo y iempo mínimo.
Finalmen e, es os ue on odos los obje i os que se ue on p oponiendo y que le daban o ma a
la esolución del p oblema plan eado. A con inuación, se a a explica el código comple o donde
quedan e lejado odas las cosas de las que se ha es ado hablando.
2.2.2 Desa ollo en MATLAB
A gumen os de en ada
En es a sección del documen o se a a comen a el código comple o que calcula las ayec o ias
co espondien e a la inspección de un pun o. P ime o se an a comen a cuales son las a iables
que se in oducen en la unción como a gumen os de en ada. Además, se an a indica los alo es
que pueden y no pueden oma . Es os da os son los siguien es:
•
Es a opue os. Como ya se ha explicado, los es a opue os son ins alaciones con pis as
adecuadas pa a el despegue y a e izaje de HAPS (High Al i ude Pseudo-Sa elli e). Es e da o
se in oduci á en el algo i mo como una se ie de pun os de 3 coo denadas.

2.2 Caso de uso 1: Inspección de un pun o 33
Las dos p ime as coo denadas co esponde án con su posición en el plano
xy
. Es as coo dena-
das pueden se indicadas en cualquie unidad de dis ancia mien as sea cohe en e con el es o
de da os, aunque lo habi ual es u iliza me os. La e ce a coo denada se á la o ien ación de la
ae ona e espec o al eje x en o ma de ángulo en g ados. Se i án incluyendo es os ec o es de
coo denadas en una ma iz. Es a ma iz se á el da o a p opo ciona como en ada al algo i mo.
Se pueden inclui odos los es a opue os que el usua io quie a. Aunque, el algo i mo ha á uso
solo de los necesa ios según el núme o de UAVs que ayan a ola . Además, si el núme o de
es a opue os es meno que el de ae ona es necesi adas, se ol e án a usa los es a opue os
en el o den en el que se hayan in oducido.
•
Pun o de inspección. En es e p ime caso de uso, se conside a á un solo pun o con el mismo
o ma o que las coo denadas de los es a opue os
[x,y,θ]
. Sob e es e pun o se ealiza á
la inspección. También cabe des aca que la o ien ación que se in oduzca en el pun o de
inspección se i á como di ección del ci cui o de espe a. Al igual que en los es a opue os,
las coo denadas
x
e
y
se deben in oduci con las mismas unidades que las del pun o an e io ,
y la o ien ación en adianes.
•
Velocidad de la ae ona e. Como su p opio nomb e indica, el e ce o de los a gumen os de
en ada de la unción co esponde con la elocidad que lle a á la ae ona e en uelo. Es e
alo se conside a á cons an e a lo la go de la ayec o ia. Las unidades de es a elocidad
deben co esponde con las unidades de dis ancia u ilizadas an e io men e y con las unidades
de iempo que quie an u iliza se en el u u o. Lo habi ual es que la elocidad de la ae ona e
sea me os po segundo.
Los alo es ípicos de los HAPS ondan los 30 m/s y nunca se admi i án alo es nega i os
pa a la elocidad. En caso de que se in oduzca un alo nega i o, el código mos a á po
pan alla un mensaje de e o indicando el o igen del mismo.
•
Radio de gi o mínimo de la ae ona e. Es e adio se á el da o que se in oduci á en las cu as
de Dubins pa a que las ayec o ias espe en es e alo al ealiza gi os y cu as. Es e alo no
iene que se el alo mínimo que puede alcanza la ae ona e al ealiza un gi o, ya sea po
allo es uc u al o pa a e i a en adas en pe didas du an e el uelo. Ya que, ambién se puede
con igu a pa a que es e alo ep esen e el adio que se quie e segui a la ho a de ealiza un
i aje.
Al igual que con la elocidad de la ae ona e, es e alo no puede oma alo es nega i os ya
que no end ía un sen ido lógico. Es po ello, que si el usua io in oduce un alo que no sea
posi i o, el algo i mo lanza á un mensaje con un e o comen ando que es o no es posible.
•
Tiempo o al de uelo. Es e alo de iempo co esponde con el iempo que se quie e que
la ae ona e es é en el ai e. Realizando una se ie de cálculos que se e án más adelan e, se
ob iene el núme o de uel as al ci cui o necesa ias que ep esen an es e iempo o al de uelo.
Pa a el cálculo de es e núme o de uel as no se iene en cuen a el iempo que la ae ona e
a da en llega o en ol e al es a opue o, únicamen e el uelo en el ci cui o de inspección.
Es e alo empo al ob iamen e no puede ene alo es meno es o iguales a 0. Po lo an o,
en cuan o el código de ec a que se ha in oducido un alo que no es el adecuado, al igual
que en los pun os an e io es, mos a á un mensaje indicando que hay que cambia el alo del
iempo o al debido a que no es adecuado pa a el caso de uso.
•
Tiempo de inspección. Es e alo de iempo, a di e encia del an e io , co esponde con la
ecuencia con la que se quie e que la ae ona e pase po el pun o a inspecciona . Es deci , el
iempo que se quie e que la ae ona e a de en da una uel a comple a al ci cui o.
Sabiendo el iempo de uelo o al y el iempo de uel a, se puede ob ene el núme o de uel as
34 Capí ulo 2. Algo i mo
que se á necesa io da pa a espe a el iempo o al de uelo. Es os dos alo es empo ales
se ienen que da con las unidades co espondien es a las que se u iliza on con la elocidad,
no malmen e se á en segundos. En es a ocasión uel e a ocu i que un alo 0 o nega i o de
iempo no es adecuado y, po an o, se manda á un mensaje de e o al usua io.
•
Campo de isión. El siguien e de los a gumen os de en ada es el campo de isión o Field o
View. Los pa áme os que se iban a usa ya se explica on en el apa ado an e io donde se
hablaba sob e el campo de isión de una ae ona e. Es e da o se in oduci á como un ec o
de 3 componen es, donde la p ime a componen e co esponde con el ancho del campo de
isión (
dw
). La segunda de las componen e se ía la longi ud del ex emo pos e io del campo
de isión (
d
). Po úl imo, la e ce a componen e del ec o es la longi ud del ex emo on al
del campo de isión (dl).
Como ya se comen ó, la longi ud del bo de in e io puede ene alo es an o posi i os como
nega i os, a di e encia de el ancho del campo de isión o de la longi ud del bo de supe io que
solo pueden oma alo es supe io es a 0. En los casos en los que no sea así, al igual que en los
a gumen os an e io es, se lanza á un mensaje de e o con las indicaciones co espondien es.
•
Al i ud. La al i ud de la ae ona e se indica en es e momen o y se conside a cons an e du an e
odo el uelo. Es o es debido a que es as ayec o ias se cen an simplemen e en la u a que se
ealiza sob e el plano. Aun así, se in oduce la al i ud de la ae ona e la cual ue necesa ia en
p uebas eales que se mos a án más adelan e. Sob e la al i ud ambién se comp ueba que
enga alo es posi i o ya que no end ía sen ido da una coo denada nega i a en el eje z que
indique la al i ud de la ae ona e. Po an o, se comp ueba es e da o y se emi e un mensaje de
e o en caso de que no se cumpla el eque imien o.
•
S epsize. Como ya se comen ó en el desa ollo de los algo i mos co espondien es a las cu as
de Dubins, el s epsize se denomina como la dis ancia que exis e en e pun o y pun o de la
ayec o ia. Cuando meno sea el alo del mismo mayo se á la p ecisión de la ayec o ia,
es o se e e lejado sob e odo en las cu as.
Aunque un alo del s epsize muy pequeño hace que los esul ados a den más en ob ene se y
que el núme o de pun os en la ayec o ia c ezca mucho. Es e alo ambién iene unidades de
longi ud como los luga es donde se si úan los es a opue os o el pun o de inspección. Es po
ello, que es con enien e que sean cohe en es las unidades en e ellos. También es necesa io
que es e alo sea mayo que 0. Aunque en es e caso, es el algo i mo de las cu as de Dubins
quien se asegu a de comp oba que es a condición se cumpla.
•
Di e encial de iempo o imes amp. Es a in o mación co esponde con el paso de iempo que
el usua io quie a ene en e los pun os. Como pa a una elocidad cons an e y ijada no se
puede ene un s epsize y un imes amp conc e os, se an a calcula p ime o las ayec o ias
u ilizando el s epsize co espondien e pa a después se modi icadas po el algo i mo pa a que
espe en el imes amp indicado.
De es a mane a se end á un ec o de iempo más con olado aunque las dis ancias en e
los pun os no sea siemp e la misma. Es a si uación es p e e ible ya que los ehículos no
ipulados suelen ene una ecuencia de abajo a la que eciben los da os. Po an o, se le
puede a ibui a es e da o de iempo el alo co espondien e a es a ecuencia. Po lo gene al,
y como es lógico, es e alo es siemp e mayo que 0. Es a condición se comp ueba en el
algo i mo, dando un mensaje de e o en el caso de que no se cumpla.
•
Visualización. En es e a gumen o de en ada iene que in oduci se una a iable ipo booleano,
es deci , que ome alo es
ue/ alse
. En caso a i ma i o o ue, se ha ía una ep esen ación
de las ayec o ias que se han calculado con una leyenda que indique los dis in os elemen os
que se pueden encon a en la igu a. Po o o lado, si se le da un alo de alse, no se ob end ía
2.2 Caso de uso 1: Inspección de un pun o 35
ninguna igu a al ejecu a el algo i mo pe o sí se segui ían ob eniendo los esul ados en o ma
de ma iz de pun os.
•
Simulación. Al igual que el a gumen o an e io , es a a iable ambién es de ipo booleano. En
es e caso, ealiza ía una simulación encima de la ep esen ación en la que se obse a ía a una
ae ona e eco e la ayec o ia dibujada. De es a o ma podemos comp oba que la ayec o ia
iene los obje i os que se buscaban. Además, la simulación con iene una ep esen ación del
Field o View de la ae ona e. Cabe des aca que en el caso de que la isualización no se haya
ealizado po que no se haya solici ado, ampoco se ha ía la simulación.
Una ez se ienen las en adas de la unción, se ese a la p ime a pa e del código pa a gua da
es os da os en nue as a iables pa a a a con ellos. Además, se c ea el a gumen o de salida que
co esponde á con una es uc u a denominada
esul s
. Un a eglo de es uc u a es un ipo de da o
que ag upa da os elacionados median e con enedo es de da os llamados campos. Cada campo
puede con ene cualquie ipo de da os. Pa a accede a los da os de una es uc u a, es posible usa
una no ación pun o con el o ma o s uc Name. ieldName [7].
Cálculo de la ayec o ia mínima
T as el análisis de los da os iniciales in oducidos, el algo i mo p osigue ealizando el cálculo de
las ayec o ias con el o ma o conocido en 2 dimensiones de
[x,y,θ]
. Donde como siemp e,
x
co esponde con la coo denada en el eje x e
y
es la coo denada sob e el eje y. Po úl imo,
θ
es la
o ien ación de la ae ona e en el pun o conc e o. Pa a hace es e cálculo, p ime o hay que halla
cual es el camino más co o que puede ealiza una ae ona e sin ninguna especi icación de iempo.
Es o se consigue con lo expues o en el Código 2.11.
Código 2.11 Cálculo de la ayec o ia más co a.
1% Minimum pa h
2s = dl + 0.001;
3pAux = [pIns(1) - s*cos(pIns(3)), pIns(2) - s*sin(pIns(3)), pIns(3)];
4pAux_FoV_pos = [pIns(1) - d *cos(pIns(3)), pIns(2) - d *sin(pIns(3)),
pIns(3)];
5pAux_FoV_p e = [pIns(1) - dl*cos(pIns(3)), pIns(2) - dl*sin(pIns(3)),
pIns(3)];
6i d > 0
7p = [pAux_FoV_p e; pAux_FoV_pos ; pIns; pAux; pAux_FoV_p e];
8elsei d < 0
9p = [pAux_FoV_p e; pIns; pAux_FoV_pos ; pAux; pAux_FoV_p e];
10 else
11 p = [pAux_FoV_p e; pIns; pAux; pAux_FoV_p e];
12 end
13 PATH = [];
14 o j = 1:leng h(p)-1
15 pa h = dubins_cu e(p(j,:), p(j+1,:), , s epsize, ue);
16 PATH = [PATH; pa h];
17 end
La a iable
s
que se encuen a en la línea 2 co esponde con la longi ud del amo de ap oximación
del ci cui o de espe a que ealiza la ae ona e. Es a a iable se modi ica á pos e io men e pa a
con ola el iempo que a da la ae ona e en da una uel a. Pa a en ende es a a iable hay que
en ende los di e en es pun os auxilia es o waypoin s que se usa án en el cálculo de la ayec o ia.
36 Capí ulo 2. Algo i mo
Figu a 2.28 Ejemplos pun os auxilia es (1).
En la Figu a 2.28 se obse a un ci cui o de espe a gené ico. Los símbolos co esponden con los
pun os auxilia es y el pun o de inspección. El cuad ado na anja cen al es el pun o de inspección, el
iángulo ama illo de la izquie da es el pun o denominado
pAux_FoV_p e
y el iángulo mo ado de
la de echa es el pun o denominado
pAux_FoV_pos
. El iángulo ama illo indica en qué momen o
el pun o de inspección en a en el ango de isión de los senso es. Po o o lado, el iángulo mo ado
indica en que momen o el pun o de inspección sale del campo de isión. Es o nos indica que el
alo de
d
es nega i o y, po an o, el campo de isión incluye zonas de ás del paso de la ae ona e.
Lo que lle a a que se enga que sob epasa el pun o de inspección pa a ealiza una isualización
comple a del obje i o du an e odo el iempo posible, de ahí la si uación del pun o mo ado.
Una ez quede es o cla o, se puede en ende la es uc u a condicional de las líneas 6-12. Es a
líneas que se p oponen, compa an si la longi ud al bo de pos e io
d
es mayo , meno o igual a
0. De es a mane a sabemos si cuando el pun o de inspección sale del ango de inspección, nos
encon amos po de ás, po delan e o sob e el mismo pun o a inspecciona espec i amen e.
Po an o, sabiendo como se si úan los pun os según el campo de isión de la ae ona e, los pun os
se eo ganizan pa a pasa po odos ellos en o den. Po ejemplo, supóngase que
d
es nega i o y, po
an o, se encuen a pasado el pun o de inspección, como en la Figu a 2.28. Es po ello que el o den
de los pun os se ía el siguien e. P ime o el pun o co espondien e a la en ada del obje i o en el
campo de isión, es deci ,
pAux_FoV_p e
. En segundo luga se pasa ía po el pun o de inspección.
Y, en úl imo luga , se pasa ía po el pun o co espondien e a la salida del obje i o del campo de
isión, es deci , pAux_FoV _pos .
Toda ía no se ha mencionado ni explicado que posición co esponde al pun o
p_Aux
. Es e úl imo
se á el con olado o desplazado po la a iable
s
y lo ha á de la siguien e mane a. Si se obse a
cómo se han o denado los ec o es, odos ellos acaban pasando po el
p_Aux
y pos e io men e po
pAux_FoV_p e
. Es o se debe a que es os son los pun os que en odos los casos se an a encon a
al inicio del ci cui o de espe a y, po an o, siemp e hay que ol e a ellos.
En la línea 2 se de ine el alo de
s
como un poco más g ande que
dl
, el cual es el la dis ancia al
bo de on al. Es po ello que en el dibujo, Figu a 2.28, el pun o
p_Aux
se encon a ía jus o an es
del iángulo ama illo, siendo es e el nue o pun o más a la izquie da de ayec o ia de ap oximación.
Es o pe mi e que
p_Aux
pueda ala ga se a su an ojo (en es e caso no pod ía aco a se po que es
la ayec o ia con mínima dis ancia) sin sob epasa los lími es que ma can los o os dos pun os
auxilia es, ya que se ala ga en la di ección opues a.
Finalmen e, de la línea 13 a la 17, se ealiza un simple bucle donde se ealizan cu as de Dubins
en e los waypoin s c eados y gua dados en el ec o
p
. Los esul ados de es os caminos de Dubins
2.2 Caso de uso 1: Inspección de un pun o 37
se gua dan en la a iable PATH en o ma o [x,y,θ].
El Código 2.12 con inúa con los cálculos de la ayec o ia más co a posible según los pa áme os
dados. Es e calculan el iempo que se a da en ealiza la u a a la elocidad p opues a po el usua io.
Código 2.12 Tiempos de la ayec o ia más co a.
18 % Pa ame e s minimum pa h
19 dis _min = leng h(PATH) * s epsize;
20 _min = dis _min/ ;
21 p in (’Minimum ask ime in seconds is % n’, _min);
22
23 % Usua io check
24 p omp = ’Would you like o keep on wi h he un? (Yes = 1 | No = 0) n’;
25 x = inpu (p omp );
26 i ~(x == 0 || x == 1)
27 e o (’E o . Answe mus be 0 o 1’)
28 elsei x == 0
29 e u n
30 end
Pa a ob ene el iempo que se a da en eco e el camino más co o según los pa áme os
in oducidos, p ime o hay que calcula la longi ud de la ayec o ia. Es a longi ud se calcula de
mane a sencilla, ya que se conocen el núme o de pun os que componen la ayec o ia y la dis ancia
en e ellos, el s epsize. Mul iplicando ambos alo es, se ob iene la longi ud de la ayec o ia mínima
(línea 2).
Pos e io men e, pa a ob ene el iempo que se a da en eco e es a dis ancia a una elocidad
cons an e, u ilizamos la ecuación
=e·
. En es a ecuación,
ep esen a la elocidad del obje o,
e
es la dis ancia que se eco e y
el iempo que se a da en eco e esa dis ancia. Se despeja el
iempo y se calcula su alo (línea 3).
Las siguien es líneas de código co esponden a una e i icación pa a que el usua io elija si quie e
cambia algún da o. P ime o se in o ma po pan alla de cuál se á el iempo que se a da en eco e
el ayec o mínimo. Más adelan e, se le da a elegi al usua io si quie e segui con la ejecución del
algo i mo. Es o se ha in oducido ya que una ez se sabe el iempo mínimo que se a da en da una
uel a, el usua io iene una idea de si le in e esa in oduci un iempo supe io o in e io . Es e úl imo
ha ía que u ie a que in oduci se un UAV adicional.
Cálculo del núme o de UAVs necesa ios y sus zonas de despegue
A con inuación se mues a el código co espondien e al cálculo del núme o de ae ona es necesa ias
pa a cumpli las especi icaciones, Código 2.13. Es as especi icaciones son la posición de los
es a opue os, la posición del pun o de inspección, la elocidad de la ae ona e, el adio de gi o
de la misma y la pe iodicidad de las inspecciones. Todos es os pa áme os in luyen a la ho a de
iden i ica cuán os UAVs son necesa ios.
Código 2.13 Cálculo del núme o de UAVs necesa ios.
31 % Inspec ion equency cons ain
32 i _ eq ~= 0
33 dis _new = * _ eq;
34 s = (dis _new - dis _min)/2;

38 Capí ulo 2. Algo i mo
35 end
36
37 % s<0? Need mo e UAVs
38 nUAV = 1;
39 _aux = _ eq;
40 while s < 0
41 _aux = (nUAV + 1) * _aux;
42 dis _new = * _aux;
43 s = (dis _new - dis _min)/2;
44 nUAV = nUAV + 1;
45 end
Lo p ime o que se hace en es a pa e es calcula cuál es la dis ancia que se eco e ía si se ola a
du an e un iempo igual a la ecuencia de inspección. A es a dis ancia se la ha denominado
dis _new
(línea 3). En la siguien e línea de código se obse a una a iación del alo del pa áme os
s
. El
nue o pa áme o
s
co esponde con la di e encia de dis ancias en e la nue a a iable
dis _new
y
la
dis _min
calculada an e io men e. Es a es a co esponde con la dis ancia que al a po eco e
pa a alcanza el iempo de uel a po inspección. Es e alo se di ide en e 2 po que si ala gamos el
amo de ap oximación, ambién se ala ga el amo con a io del ci cui o.
Figu a 2.29 Ejemplos pun os auxilia es (2).
Lo comen ado an e io men e se ep esen a en la Figu a 2.29. Los iángulos neg os co esponden
con los pun os ya conocidos
pAux_FoV_p e
y
pAux_FoV_pos
. El iángulo ama illo es el nue o
pun o auxilia donde
s
es un alo mayo al mínimo is o en el Código 2.11. Como se puede obse a ,
en ojo queda ep esen ada la dis ancia que aumen a la ayec o ia espec o a la ayec o ia mínima.
Es a dis ancia aumen a el doble de lo que aumen a
s
po que a ec a al amo supe io y al in e io del
ci cui o.
En el caso en el que el nue o pa áme o
s
sea mayo que 0, no hay ningún p oblema. Ya que,
el amo se puede ala ga an o como quie a pa a consegui espe a la condición de iempo. La
di icul ad apa ece cuando el alo nue o de
s
es meno que 0, es deci , la ayec o ia mínima es más
la ga de lo que debe ía de se si se quisie a cumpli la es icción de iempos.
La solución p opues a pa a es a cues ión es la que se mues a en las líneas 7-15 del Código 2.13.
Dónde en el caso en el que
s
sea nega i o, se aumen a en uno el núme o de UAVs necesa ios y, po
an o, la ayec o ia mínima se eco e en la mi ad de iempo. Más adelan e se mos a á como se
in oducen los UAVs pa a que la sepa ación en e ellos sea una acción de la ayec o ia o al. Una
2.2 Caso de uso 1: Inspección de un pun o 39
ez aumen ado el núme o de UAVs se uel e a hace el cálculo del pa áme os
s
y si se comp ueba
si ya es posi i o o hay que añadi más ae ona es.
Una ez conocido el núme o de ae ona es que an a se necesa ias pa a ejecu a la ayec o ia
espe ando odas las es icciones impues as, se p ocede a analiza si hay su icien es es a opue os
desde los que despega , pudiéndose usa un mismo es a opue o pa a más de un UAV. Aun así,
en caso de que no haya spo s su icien es pa a despega , el algo i mo se enca ga de epe i los
es a opue os que ya iene egis ados pa a que se u ilicen en el despegue de más de una ae ona e.
Es o se puede obse a a con inuación en el Código 2.14.
Código 2.14 Reo ganización de zonas de despegue.
46 % UAVs ake o spo s
47 p in (’You need %d HAPS o achi e he ime cons ain n’, nUAV);
48 i size(p1,1) < nUAV
49 p in (’No enough ake o spo s n’)
50 p omp = ’Would you like o use he same spo o each UAV? (Yes = 1
| No = 0) n’;
51 x = inpu (p omp );
52 i ~(x == 0 || x == 1)
53 e o (’E o . Answe mus be 0 o 1’)
54 elsei x == 0
55 e u n
56 end
57 while size(p1,1) < nUAV
58 p1 = [p1; epma (p1,1)];
59 end
60 end
61
62 % O de ake o spo s by close s o inspec ion
63 d = ze os(size(p1,1),1);
64 o i = 1:size(p1,1)
65 d(i) = dis (p1(i,:), pIns);
66 end
67 [~, I] = so (d);
68 p1 = p1(I,:);
Como se puede obse a , el código le p egun a al usua io si quie e u iliza los es a opue os
indicados en las en adas de mane a ei e ada pa a odos los UAVs necesa ios. Si el usua io esponde
a i ma i amen e, se epi en las coo denadas de las zonas de despegue an as eces como UAVs
sean necesa ios. Po úl imo en es e ozo de código, se o denan los es a opue os po ce canía al
pun o de inspección, de es a mane a se minimiza la dis ancia eco ida po los UAVs y se elije el
es a opue o más ce cano.
Cálculo de la ayec o ia o al en 2D
A con inuación, en el Código 2.15 se a a mos a el cálculo de la ayec o ia o al.
Código 2.15 Cálculo de la ayec o ia 2D (1).
69 % Pa h calcula ion
70 pAux = [pIns(1) - s*cos(pIns(3)), pIns(2) - s*sin(pIns(3)), pIns(3)];
40 Capí ulo 2. Algo i mo
71 i d > 0
72 p = [pAux_FoV_p e; pAux_FoV_pos ; pIns; pAux; pAux_FoV_p e];
73 elsei d < 0
74 p = [pAux_FoV_p e; pIns; pAux_FoV_pos ; pAux; pAux_FoV_p e];
75 else
76 p = [pAux_FoV_p e; pIns; pAux; pAux_FoV_p e];
77 end
78 n_laps = ound( _ ime/ _ eq); % Inspec ion ime cons ain
79 p in (’UAV is going o do %d laps n’, n_laps);
80 PATH = [];
81 ajec o y_2D = s uc ;
82 o i = 1:n_laps
83 o j = 1:(leng h(p) - 1)
84 pa h = dubins_cu e(p(j,:), p(j+1,:), , s epsize, ue);
85 PATH = [PATH; pa h];
86 end
87 end
Una ez se sepan el núme o de UAVs necesa ios, las zonas de las que despega án y los waypoin s
po los que pasa án, se comienza el desa ollo del cálculo de la ayec o ia o al. Es e cálculo se a
a ealiza po amos. P ime o se a a calcula de mane a independien e la ayec o ia de inspección
que ealiza á la ae ona e.
Pa a calcula es a ayec o ia, se ha á de la misma mane a que el cálculo de la ayec o ia de
inspección mínima ya mos ada. A di e encia de que el pun o auxilia
p_Aux
, se encuen a en su
nue a posición según el pa áme o
s
. Pos e io men e, se calcula á el núme o de uel as a da según
el iempo po uel a y el iempo o al de uelo que in odujo el usua io. Finalmen e, se c ea á un
bucle donde se encadenen los waypoin s c eados en el o den co ec o y se den an as uel as como
se hayan calculado. Todos los esul ados se án gua dados en la a iable PATH po el momen o.
Es e
PAT H
se á común pa a odas las ae ona es, pe o el es o de la ayec o ia no iene po qué
coincidi . Po an o, a con inuación en el Código 2.16 se ealiza un bucle que calcule el es o de la
ayec o ia pa a cada UAV.
Código 2.16 Cálculo de la ayec o ia 2D (2).
88 o i = 1:nUAV
89 % Ini ial
90 pa h_ini = dubins_cu e(p1(i,:), p(1,:), , s epsize, ue);
91 ajec o y_2D(i).pa h_ o = pa h_ini;
92 ajec o y_2D(i).pa h_leng h = leng h(pa h_ini);
93 ajec o y_2D(i).pa h_ ime = leng h(pa h_ini)*s epsize/ ;
94
95 % Holding pa e n
96 ajec o y_2D(i).pa h_ o = [ ajec o y_2D(i).pa h_ o ; PATH];
97 ajec o y_2D(i).pa h_leng h = [ ajec o y_2D(i).pa h_leng h; leng h
(PATH)];
98 ajec o y_2D(i).pa h_ ime = [ ajec o y_2D(i).pa h_ ime; leng h(
PATH)*s epsize/ ];
Como ya se ha mencionado, se ealiza un bucle pa a cada UAV donde se gua den las ayec o ias
de cada uno. Las p ime as ayec o ias que se c ean en el bucle, co esponden a los amos del
2.2 Caso de uso 1: Inspección de un pun o 41
camino o al que an desde los es a opue os has a el p ime o pun o den o del ci cui o de espe a.
Es e pun o, denominado
pAux_FoV_p e
, es el que se encuen a en el ins an e donde el obje i o o
pun o de inspección, apa ece po p ime a ez en el ango de isión.
Es a ayec o ia inicial se gua da en la es uc u a llamada
a jec o y_2D
en el campo
pa h_ o
.
Se c ean dos campos más llamados
pa h_leng h
y
pa h_ ime
donde se gua da án las longi udes
de las ayec o ias y el iempo que se a da en eco e los amos, espec i amen e. Todas las
ayec o ias pos e io es, se i án acumulando en es a es uc u a una as o a.
El siguien e amo a gua da co esponde con la ayec o ia ya calculada del ci cui o de espe a.
Las ayec o ias se gua dan de la misma mane a que se han gua dado las iniciales. Gua dando
además de la ayec o ia en sí, su longi ud y el iempo que se a da en eco e .
Se sabe que la ayec o ia en el ci cui o de espe a, acaba en el pun o donde empezó, es deci ,
pAux_FoV_p e
. Po an o, es con enien e ealiza una pasada más sob e el pun o de inspección
an es de e i a se de la misión. Po lo que se c eó es e amo de inspección inal con ese obje i o,
Código 2.17.
Código 2.17 Cálculo de la ayec o ia 2D (3).
99 % Final Inspec ion
100 PATH_ins = [];
101 i d > 0
102 o j = 1:2
103 pa h_ins = dubins_cu e(p(j,:), p(j+1,:), , s epsize, ue);
104 PATH_ins = [PATH_ins; pa h_ins];
105 end
106 elsei d < 0
107 o j = 1:2
108 pa h_ins = dubins_cu e(p(j,:), p(j+1,:), , s epsize, ue);
109 PATH_ins = [PATH_ins; pa h_ins];
110 end
111 else
112 j = 1;
113 pa h_ins = dubins_cu e(p(j,:), p(j+1,:), , s epsize, ue);
114 PATH_ins = [PATH_ins; pa h_ins];
115 end
116 ajec o y_2D(i).pa h_ o = [ ajec o y_2D(i).pa h_ o ; PATH_ins];
117 ajec o y_2D(i).pa h_leng h = [ ajec o y_2D(i).pa h_leng h; leng h
(PATH_ins)];
118 ajec o y_2D(i).pa h_ ime = [ ajec o y_2D(i).pa h_ ime; leng h(
PATH_ins)*s epsize/ ];
Al igual que en momen os an e io es, cuando se hace uso del ec o que con iene los waypoin s,
es necesa io e i ica el o den de es os pun os auxilia es según el da o
d
. Pos e io men e, se ealizan
bucles que acaben cuando se haya e isado po comple o el pun o de inspección.
A con inuación de es o, se gua da la ayec o ia de la misma mane a que se ha hecho has a aho a
y se p ocede a comenza el amo de uel a al pun o de inicio o amo inal, Código 2.18.
Código 2.18 Cálculo de la ayec o ia 2D (4).
119 % Final
48 Capí ulo 2. Algo i mo
que es os casos de uso se han elegido po que ienen bas an e aplicación en el ámbi o de los UAVs o
HAPS. Po ejemplo, se habló en la inspección del pun o sob e la igilancia de una zona pequeña
como pod ía se un campo de placas sola es o un e eno ag a io.
O as posibles aplicaciones que pueden ene es as ayec o ias se ían po ejemplo una misión de
búsqueda y esca e o amplia las comunicaciones en una zona más aislada. Póngase el p ime caso
como ejemplo. Un caso muy ecuen ado en España son los incendios o es ales. Es os ocu en
sob e la gas ex ensiones de ie a como puede se la zona de Cas illa y León, Ex emadu a o A agón.
Cuando se p oduce un incendio, cabe la posibilidad de que haya pe sonas a apadas en él o
simplemen e quie a obse a se las dimensiones del mismo. Pa a ello, se ía con enien e ene
capacidad de moni o ización de la zona y que las ae ona es puedan despega desde dis in os si ios,
in en ando elegi siemp e el más ce cano. Además, según el campo de isión de las ae ona es, es as
end án que eco e mayo es dis ancias o menos. Po lo que ambién se ía con enien e, dis ibui
oda la zona o á ea a e isa en dis in as secciones las cuales sean igiladas po dis in os UAVs.
Todas es as ideas, se án aplicadas a lo la go del algo i mo de inspección de un á ea. A con inuación,
y al como se hizo en la sección an e io , se mos a á una pa e del p oceso y de los obje i os que se
ue on ma cando. Es os obje i os moldea on y le die on o ma a la ayec o ia inal. Además, como
pasó con la inspección de pun o, se impond án una se ie de cons icciones que haya que espe a a
la ho a de ealiza las u as.
La inspección del á ea, se plan eó cuando el caso de un pun o conc e o es aba ya bas an e
desa ollado. Es o acili ó la elocidad de uncionamien o, ya que ya se enía bas an e expe iencia
abajando con las cu as de Dubins. El p ime o de los obje i os o de las in enciones que se enían
con es a inspección de á ea, e a ec ea la misión que se ejecu aba en el a ículo [19].
En esa misión, se comenzaba con un á ea ci cula que enía que e isa se. Además, se disponía de
un pun o inicial desde el cual la ae ona e despegaba. Una ez despegase, su p opósi o e a ace ca se
a la zona po la pa e más al Es e en es e caso y eco e el cí culo de inspección de No e a Su
y ice e sa al e nando amos ec ilíneos. Pa a ello, las cu as de Dubins ayudaban bas an e en
la a ea, ya que el obje i o p incipal consis ía en encon a los waypoin s de en ada y salida del
á ea a inspecciona . Los amos pa alelos se sepa aban en e sí, g acias al campo de isión de la
ae ona e. De es a mane a, se ap o echa odo el Field o View posible, aunque exis ía un pequeño
solapamien os en e pasadas con olado po un ac o alpha. Todo es o se encuen a ep esen ado en
la Figu a 2.33.
Figu a 2.33 Ejemplo búsqueda en á ea (1).
El mé odo u ilizado pa a esol e es e p oblema, queda de allado en el a ículo y consis e en

2.3 Caso de uso 2: Inspección de un á ea 49
calcula los pun os de en ada al á ea y de salida de ella en una pasada de No e a Su , o ice e sa.
Además, el algo i mo incluye una posible o ación de la ayec o ia en el caso de que al usua io le
in e ese, Figu a 2.34.
Figu a 2.34 Ejemplo búsqueda en á ea (2).
El código co espondien e a es e cálculo se explica á cuando se comen e el algo i mo. También,
se p obó la c eación de es as ayec o ias pa a mapas con di e en es o mas. Ya que un mapa con
o ma de ci cun e encia no in oducía muchas di icul ades y no daba pie a halla e o es en el código.
Po ejemplo, en la Figu a 2.35 se mues an dos á eas dis in as. La p ime a iene o ma de ec ángulo
y la segunda iene la o ma del con o no de Andalucía. Se puede comp oba que en ambas se ejecu a
el código co ec amen e.
(a) Á ea ec angula . (b) Á ea Andalucía.
Figu a 2.35 O os ejemplos de búsqueda en á ea.
Finalmen e, cuando se consiguió ep oduci y mejo a el p ocedimien o hallado en el a ículo
mencionado, se comenzó a pensa en dis in as si uaciones que pudie an en oca el p oblema de o a
mane a según las necesidades del mismo.
El siguien e obje i o, de la misma mane a que sucedió en la inspección del pun o, iene que e
con ce a la u a. Ya que, cuando se e mina de ejecu a la ayec o ia, lo lógico es que el luga
inal co esponda con un es a opue o o una zona adecuada pa a el a e izaje. Es po ello, que se
plan ea on dis in as o mas de ce a la u a. Sin emba go, u iliza el pun o inal que se iene en la
Figu a 2.33 pa a desde ahí ol e al inicio, no pa ece se una solución muy óp ima. Po an o, la
50 Capí ulo 2. Algo i mo
solución p opues a ue modi ica de mane a sucin a los pun os de en ada y salida, pa a que deja an
un pasillo en la zona in e io del á ea sin igila . La ae ona e ap o echa ía la u a de uel a pa a
eco e esa zona sin inspecciona has a el momen o, Figu a 2.36.
Figu a 2.36 Ejemplo búsqueda en á ea ce ada.
Una ez conseguido con éxi o es e p opósi o de ce a la u a y ap o echa el camino de uel a.
Se plan eó como pod ía in e esa in oduci más de una ae ona e, pa a los casos en los que el á ea
sea an g ande que un solo UAV no consiga igila la zona con mucha apidez.
Una de las p ime as ideas que su gie on, ue eco e el camino o al in oduciendo un UAV as
o o, man eniendo una dis ancia de segu idad en e ellos. De es a mane a, se podían da uel as
siguiendo la ayec o ia, y siemp e es a ía la mayo pa e de la misma igilada po ae ona es.
Cuan as más ae ona es se u ie a, menos zonas no moni o izadas se end ía.
Es a iloso ía, es pa ecida a la que se empleó en el cálculo de las ayec o ias pa a la inspección
del pun o. Aunque en es a ocasión, una ez conseguido el p opósi o, se obse ó que esa pod ía no
se la mejo solución al p oblema. Po an o, se pensó en o a posible espues a a la p egun a.
O a de las ideas ue comp oba p ime o la ex ensión del mapa, si es e ue a demasiado g ande en
compa ación con el campo de isión de la ae ona e, se di idi ía en secciones. Es a idea esul ó se
mejo pa a igila más can idad de e eno en menos iempo. Ya que, el e eno o al se di ide en
pequeñas po ciones. Un incon enien e que se encon ó ue di idi e enos con o mas i egula es.
Es o desembocaba en una mayo di icul ad y, po an o, se op ó po lo siguien e.
En una p ime a es ancia, el á ea a igila se sus i ui ía po un ec ángulo que enga la zona a
inspecciona insc i a en él. Pa a cons ui es e ec ángulo se ha ía uso de los pun os del á ea que se
encuen en más al No e, Su , Es e y Oes e. Una ez se enga el ec ángulo mencionado, se p ocede
a di idi es e ec ángulo en secciones según las dimensiones del campo de isión del UAV. De es a
mane a, el usua io se asegu a de lo la go que se á el eco ido que haga cada UAV.
Pos e io men e, una ez se sepa cuan as di isiones de la zona se ienen, se manda a una ae ona e
a cada zona. Es as ae ona es sald án de los es a opue os más ce canos a su zona co espondien e
y ealiza án la inspección odas las ae ona es al mismo iempo como se obse aba en la Figu a 2.36.
De es a mane a se ap o echa á al máximo las ayec o ias ealizadas.
A con inuación se comen a á el código que esuel e en MATLAB es e p oblema y se i án
de allando los obje i os desc i os en es e apa ado.
2.3 Caso de uso 2: Inspección de un á ea 51
2.3.2 Desa ollo en MATLAB
A gumen os de en ada
Como se hizo en la inspección de pun o, se i á explicando el código paso po paso indicando en
qué consis e cada ozo del mismo y lo que hace. P ime o se a a comenza con los a gumen os de
en ada o inpu s. La mayo ía de ellos coinciden con las en adas del o o caso, pe o se ol e á a
comen a su uso.
•
Es a opue os. Como ya se mencionó en el o o algo i mo, los es a opue os si en como
pun os de despegue y a e izaje pa a las ae ona es que an a ealiza es a misión. Se pueden
in oduci odos los que el usua io quie a y el algo i mo se enca ga á de o ganiza los y
selecciona el más con enien e pa a cada caso. De la misma mane a que en la inspección de
pun o, es e da o se in oduce como una ma iz de 3 columnas con el o ma o
[x,y,θ]
. En cada
ila se in oduci á un nue o es a opue o.
•
Á ea de inspección. Es e ipo de da o es nue o en el abajo, ya que en el caso an e io solo
se p opo cionaba un pun o. En es e caso, la en ada debe se una ma iz de 2 columnas que
co esponde a las coo denadas en el eje x y en el eje y espec i amen e. Es a ma iz iene que
comenza y acaba en el mismo pun o pa a que se pueda conside a un á ea ce ada.
Además, en los inicios del código, e a necesa io que es a ma iz ue a bas an e p ecisa y
u ie a muchos pun os con poca dis ancia en e ellos. Pe o con la e olución del algo i mo,
eso ya no es necesa io po que el p opio código se enca ga de c ea un á ea adecuada pa a el
análisis.
•
Velocidad de la ae ona e. Mismo da o que en el caso an e io . Es a elocidad se á u ilizada a
la ho a de in oduci la a iable empo al. También, cabe des aca que no se admi i án alo es
nega i os o 0 en el algo i mo. Po pan alla, se mos a á un mensaje de e o en caso de que
es o suceda.
•
Radio de gi o mínimo de la ae ona e. O a ez se epi e es e da o que es básico pa a ealiza
los caminos de Dubins co espondien es a la ayec o ia. No es necesa io, como ya se comen ó,
que sea el adio mínimo de gi o que pueda ealiza la ae ona e po su esis encia es uc u al o
po emo es de en a en pé dida. También hay que comen a que, al igual que con la elocidad,
no se pe mi i án alo es que no sean posi i os.
•
Tiempo o al de uelo. En es e caso, las es icciones empo ales di ie en un poco de la
inspección del pun o. Es o es debido a que no se p e ende eco e el á ea en e a en un cie o
iempo. Po an o, es a a iable indica á cual es el iempo o al de uelo que quie e el usua io
que es é la ae ona e ealizando su misión. Con es e alo , se ha á un cálculo del núme o
de uel as a ealiza sob e el á ea. Como es lógico, un alo que no sea posi i o de iempo
mos a á un mensaje de e o diciendo que es o no es posible.
•
Campo de isión. El Field o View en es a ocasión, oma una g an impo ancia. Es o es debido
a que, según las dimensiones de es e, se ealiza á una di isión del á ea o al en sub-á eas más
g andes o más chicas. Además, ambién a ec a a la sepa ación la e al en e pasadas pa alelas
a lo la go del á ea. Es os concep os se e án más adelan e en la explicación de sus códigos
co espondien es.
Po úl imo, en es e caso se in oduce un nue o da o den o de es e ec o . Has a aho a, el
ec o incluía los alo es del campo de isión:
[dw,d ,dl]
. En es e caso, se a a u iliza ambién
un da o que se a a denomina ac o de solapamien o o
alpha
. Es e da o se in oduci á con
los an e io es como una componen e más del Field o View. Es e ac o de solapamien o
se i á, como su p opio nomb e indica, pa a sabe cuan a pa e del campo de isión solapa á
52 Capí ulo 2. Algo i mo
una pasada hecha con an e io idad. El alo de es e ac o debe encon a se en e 0 y 1.
Igual que en los ejemplos an e io es, en los da os del Field o View no se acep a án alo es
nega i os de la longi ud has a el bo de supe io (dl) o del ancho del campo de isión (dw).
•
Al i ud. Es a cons an e, se u iliza á de la misma mane a que en el algo i mo de la inspección
de pun o. Se in oduci á pos e io men e como da os adicional a la ayec o ia pa a que pueda
ealiza se una simulación más ealis a y algunas p uebas en un en o no eal. Tampoco admi i á
alo es nega i os, dando un mensaje de e o en el caso en el que suceda.
•
S epsize. El s epsize en es a ocasión iene el mismo p opósi o que en los casos an e io es.
Si e como dis ancia que exis i á en e pun o y pun o a la ho a de c ea las ayec o ias en
2D. Aunque es os pun os se án sus i uidos po o os que man engan en e ellos un iempo
de e minado conocido como imes amp. En es e caso, si no se in oduce un alo adecuado
del mismo, el p opio código de los caminos de Dubins se enca ga á de co egi lo.
•
Times amp. Como se acaba de comen a , el imes amp es el iempo co espondien e al cambio
de las ayec o ias al 4D. Es e iempo se u iliza á con enien emen e según la ecuencia a
la que abajen los ehículos no ipulados. Valo es nega i os no se án adecuados pa a es a
a iable empo al.
•
Visualización. Funcionando de la misma mane a que se hizo en el caso an e io , es a a iable
de ipo booleano se i á pa a que el usua io decida si quie e una ep esen ación de la ayec-
o ia sob e el mapa o no. Si el usua io quisie a una simulación, es obliga o io que ma que
es a a iable como ue pa a pode ob ene la. Ya que, no iene sen ido hace una simulación
sin una ep esen ación.
•
Simulación. Es a a iable ambién es de ipo booleano como la an e io . En caso de que
el usua io así lo decida, se ealiza á una simulación de las ayec o ias eco idas po las
ae ona es que sean necesa ias.
Es as se ían odas las en adas co espondien e al nue o algo i mo de la inspección del á ea. Una
ez se hayan gua dado es os a gumen os en las a iables co espondien es y habe modi icado las
unidades, po ejemplo de los ángulos, se p ocede a comenza con el algo i mo de esolución del
p oblema.
Cálculo de á ea y sus di isiones
En es e apa ado del código se a a con e i , como ya se comen ó con an e io idad, el á ea a
inspecciona en un ec ángulo que incluya de mane a insc i a es a zona obje i o. Una ez se haga
eso, según las dimensiones de es e ec ángulo, se di idi á el mismo en secciones ec angula es más
pequeñas a las cuales se les asigna á un único UAV.
Pa a pode hace es o, p ime o se a a comen a una unción que se encuen a sepa ada del código
o al, Código 2.25. Es a unción es la enca gada de, a pa i de los pun os ex emos de la zona a
in es iga , c ea el ec ángulo ex e io a la misma. A es a unción se la ha denominado
ec_aIns.m
.
Código 2.25 Función ec ángulo de inspección.
1 unc ion ap = ec_aIns(xW, xE, yN, yS, s epsize)
2V_leng h = loo ((yN-yS)/s epsize)+1;
3H_leng h = loo ((xE-xW)/s epsize)+1;
4ap = [xW*ones(V_leng h,1), (yS:s epsize:yN)’;
5(xW:s epsize:xE)’, yN*ones(H_leng h,1);
6xE*ones(V_leng h,1), (yN:-s epsize:yS)’;
7(xE:-s epsize:xW)’, yS*ones(H_leng h,1)];
2.3 Caso de uso 2: Inspección de un á ea 53
8end
Es a unción necesi a de los a gumen os de en ada ya mencionados. Es os a gumen os co es-
ponden con los siguien es. P ime o se solici a la coo denada
x
si uada más al Oes e del á ea a
inspecciona , después se pide la misma coo denada pe o más al Es e. Pos e io men e, del eje
y
se
necesi an los coo denadas más al No e y más al Su . Además, ambién es una en ada un alo que
co esponde á al s epsize, es deci , la dis ancia en e pun o y pun o del á ea a c ea .
Una ez se hayan leído los da os, la unción calcula las dis ancias e ical y ho izon al que o ma án
el ec ángulo o al. A es as dis ancias se les ha denominado
V_leng h
y
H_leng h
. Finalmen e,
se ealiza un ec ángulo cuyas dimensiones sean las calculadas y su posición sea eniendo los
a gumen os de en ada como ex emos. La can idad de pun os se á an a como el s epsize lo pe mi a.
Vol iendo al código gene al de la inspección del pun o, encon amos que comienza con las líneas
que se obse an en el Código 2.26 ealizando un cálculo de los pun os ex e io es al á ea. Es os
se án usados pos e io men e pa a c ea el ec ángulo adecuado.
Código 2.26 Di isión del á ea (1).
1ap = aIns;
2xE = max(ap(:,1));
3xW = min(ap(:,1));
4yN = max(ap(:,2));
5yS = min(ap(:,2));
6
7% A ea di ision
8c1 = 3.5; % How many ep dw
9c2 = 5; % How many ep dl-d
10 nH_len = loo ((xE-xW)/(dw*c1));
11 xW_ ec = xW*ones(nH_len+1,1);
12 xE_ ec = xE*ones(nH_len+1,1);
13 o i = 1:nH_len
14 xW_ ec(i+1) = xW+i*(xE-xW)/nH_len;
15 xE_ ec(i) = xW+i*(xE-xW)/nH_len;
16 end
17 nV_len = loo ((yN-yS)/((dl-d )*c2));
18 yS_ ec = yS*ones(nV_len+1,1);
19 yN_ ec = yN*ones(nV_len+1,1);
20 o i = 1:nV_len
21 yS_ ec(i+1) = yS+i*(yN-yS)/nV_len;
22 yN_ ec(i) = yS+i*(yN-yS)/nV_len;
23 end
Los pun os ex emos a cualquie á ea dada, coinciden con los máximos y mínimos en cada
eje. Después de calcula es os pun os, se comienza el p oceso de di idi el ec ángulo mayo en
ec ángulos más pequeños. Las cons an es que apa ecen c eadas en las líneas 8 y 9, co esponden
con unas cons an es modi icables cuyos alo es ienen el siguien e signi icado.
La p ime a de las cons an es decide el núme o de pasadas que se quie e da con un mismo UAV
de No e a Su o ice e sa. Lo que co esponde con el núme o de eces que se epi e el ancho del
campo de isión en la subdi isión y apo a la longi ud ho izon al del nue o ec ángulo. La segunda
de las cons an es es el equi alen e e ical del alo an e io . Es deci , es el núme o de eces que se

54 Capí ulo 2. Algo i mo
epi e el la go del campo de isión. Es e alo se calcula con la es a en e la longi ud has a el bo de
supe io y la longi ud has a el in e io .
Una ez se haya decidido el alo de es as cons an es, se calculan las coo denadas de los pun os
más al Oes e y al Es e de es as nue as subdi isiones, y se gua dan odas en los ec o es
xW_ ec
y
xE_ ec
. Se ealiza la misma ope ación pa a ob ene las coo denadas de los pun os más al No e y
al Su de las nue as subdi isiones, y es os se gua dan en los ec o es yN_ ec eyS_ ec.
Código 2.27 Di isión del á ea (2).
24 ajec o y_2D = s uc ;
25 k = nH_len*nV_len;
26 k_aux = 1;
27 o i = 1:nH_len
28 o j = 1:nV_len
29 ajec o y_2D(k_aux).a ea = ec_aIns(xW_ ec(i), xE_ ec(i),
yN_ ec(j), yS_ ec(j), s epsize);
30 ajec o y_2D(k_aux).coo d = [xW_ ec(i), xE_ ec(i), yS_ ec(j),
yN_ ec(j)];
31 k_aux = k_aux + 1;
32 end
33 end
34 nUAV = k;
35 p in ([’To al a ea has been di ided in %d pa s. ’ ...
36 ’Each o hem is going o be inspec ed by one UAV. n’], nUAV);
A con inuación, se p ocede a calcula y gua da en una es uc u a es os nue os ec ángulos.
El mé odo elegido es i c eando ec ángulos con la unción ya explicada
ec_aIns
de izquie da a
de echa y de abajo a a iba, Figu a 2.37. Es o ha sido posible u ilizando los ec o es calculados y
dos bucles conca enados eco iendo sus longi udes.
Figu a 2.37 Ejemplo á ea ec angula di idida.
Todas las á eas y coo denadas de los ex emos que se an calculando, se in oducen en una
es uc u a denominada
a jec o y_2D
. También se le asigna una posición a cada subdi isión
con olada po la a iable
k_aux
. Finalmen e, se mues a un mensaje po pan alla que dice en
cuán as pa es se ha di idido el á ea o al y se comunica que odas se án eco idas po un único
UAV.
2.3 Caso de uso 2: Inspección de un á ea 55
El siguien e paso se á iden i ica las dis in as zonas de despegue in oducidas como a gumen os
de en ada. Pos e io men e, se analiza á la necesidad de inclui más o epe i alguna. El código
co espondien e a lo comen ado coincide con el que se ealizó pa a la inspección del pun o y es á
esc i o en el Código 2.28.
Código 2.28 Reo ganización de zonas de despegue.
37 % UAVs ake o spo s
38 i size(p1,1) < nUAV
39 p in (’No enough ake o spo s n’)
40 p omp = ’Would you like o use he same spo o each UAV? (Yes = 1
| No = 0) n’;
41 x = inpu (p omp );
42 i ~(x == 0 || x == 1)
43 e o (’E o . Answe mus be 0 o 1’)
44 elsei x == 0
45 e u n
46 end
47 while size(p1,1) < nUAV
48 p1 = [p1; epma (p1,1)];
49 end
50 end
Al igual que en la inspección de un pun o en el mapa, en el caso de que no hubie a su icien es
zonas de despegue, se le p egun a ía al usua io si quie e eu iliza las que ya se in oduje on.
En es e caso, se segui ían in oduciendo las coo denadas de los es a opue os a eu iliza , pa a
pos e io men e se eo ganizadas y elegidas según la p oximidad a la u a.
Cálculo de la ayec o ia o al 2D
En es a sección, se calcula án las ayec o ias que enga que ealiza cada HAPS según el á ea que se
le asigne. De es a mane a, se asegu a que cada zona a inspecciona enga una ayec o ia calculada.
Pa a hace es o p ime o hay que elegi una subdi isión y gua da sus coo denadas, Código 2.29.
Código 2.29 Cálculo de ayec o ia 2D (1).
51 % Pa h calcula ion
52 o k_aux = 1:nUAV
53 xW = ajec o y_2D(k_aux).coo d(1);
54 xE = ajec o y_2D(k_aux).coo d(2);
55 yS = ajec o y_2D(k_aux).coo d(3);
56 yN = ajec o y_2D(k_aux).coo d(4);
57 ap = ajec o y_2D(k_aux).a ea;
58 ap ox_ ac o = (-1)*log10(s epsize);
59 coun = 0;
60
61 % Ini ial
62 pAux = [xW, yS, 0];
63
64 % Selec ake o spo s by close s o ini ial poin
65 d = ze os(size(p1,1),1);
56 Capí ulo 2. Algo i mo
66 o i = 1:size(p1,1)
67 d(i) = dis (p1(i,:), pAux);
68 end
69 [~, I] = so (d);
70 p_ini = p1(I(1),:);
71
72 pa h_ o = [];
73 PATH = dubins_cu e(p_ini, pAux, R, s epsize, ue);
74 ajec o y_2D(k_aux).leng h_ini = leng h(PATH);
75 pa h_ o = [pa h_ o ; PATH];
Una ez c eado el bucle y gua dado las coo denadas de la zona co espondien e, se elije el pun o
más al su oes e como pun o inicial de la ayec o ia. Pos e io men e, se selecciona de oda la lis a de
zonas de despegue, la más ce cana a es e pun o inicial. El siguien e paso se á calcula la ayec o ia
inicial que a desde el es a opue o más ce cano a la zona has a el pun o más al su oes e de la misma.
El siguien e paso es comenza el bucle que aya calculando pasadas de No e a Su y ice e sa
has a llega al inal de la subdi isión.
Código 2.30 Cálculo de ayec o ia 2D (2).
76 while 1
77 p_lap = [];
78 i = 0;
79
80 % Inspec ion
81 while alpha*dw*(i+1/2) < xE-xW
82 xi = ound(xW + (i+1/2)*alpha*dw,ap ox_ ac o );
83 ind = [ ind( ound(ap(:,1),ap ox_ ac o ) == xi)];
84 i ap(ind(1),2) < ap(ind(end),2)
85 yni = ap(ind(end),2);
86 ysi = ap(ind(1),2);
87 else
88 yni = ap(ind(1),2);
89 ysi = ap(ind(end),2);
90 end
91 p_lap = [p_lap; xi ysi pi];
El mé odo pa a eco e el á ea es el que se u ilizó en los p ime os in en os de es as ayec o ias.
A con inuación se a a explica es e mé odo cuyo código queda esc i o en el Código 2.30.
P ime o, se elije una coo denada en el eje x que se encuen e a una dis ancia equi alen e a la
mi ad del ancho del campo de isión. Una ez se calcule es a coo denada, se busca en el á ea los
pun os co espondien es a ese alo . Se ob end á un pun o en la pa e supe io del ec ángulo y o o
en la pa e in e io . La Figu a 2.38 mues a un dibujo explica i o de lo plan eado.
2.3 Caso de uso 2: Inspección de un á ea 57
Figu a 2.38 Selección de coo denadas de pasadas de inspección (1).
Como se ha comen ado, los pun os en g is se i án como e e encias pa a calcula los pun os
de en ada y de salida a la zona de inspección. Cabe des aca que el pun o que se encuen a en el
Su del á ea, se gua da á en una ma iz de pun os denominada
p_lap
con la que se eg esa á a la
posición inicial como se explicó en la sección de in oducción de es e algo i mo. Los pun os de
en ada y de salida, se calculan como iene desc i o en el Código 2.31.
Código 2.31 Cálculo de ayec o ia 2D (3).
92 i mod(i,2) == 1
93 pAuxSi = [xi, yni+dl, -pi/2];
94 pAuxEi = [xi, ysi-(1-alpha*dw/(4*d ))*d , -pi/2];
95 else
96 pAuxSi = [xi, ysi+(1+dw/(4*dl))*dl, pi/2];
97 pAuxEi = [xi, yni-d , pi/2];
98 end
99 p = [pAux; pAuxSi; pAuxEi];
100 o j = 1:leng h(p)-1
101 PATH = dubins_cu e(p(j,:), p(j+1,:), R, s epsize, ue);
102 pa h_ o = [pa h_ o ; PATH];
103 end
104 pAux = p(3,:);
105 i = i + 1;
106 end
A los pun os de en ada a la zona se les ha denominado
pAuxSi
y
pAuxEi
, los nomb es p o ienen
de inicio, S a y in, End. Los amos se ealiza án comenzando en el úl imo pun o calculado
pAux
,
pa a pos e io men e di igi se al pun o de inicio y acaba en el pun o inal. El pun o inal se con e i á
as e mina el bucle en el nue o pun o auxilia pAux.
El cálculo de los pun os de en ada y salida se ealiza eniendo en cuen a el campo de isión.
El obje i o es que se eco a oda la zona de inspección con un amo ec ilíneo de pun a a pun a
encon ándose es a siemp e en el ango de isión de la ae ona e, al igual que se hizo con la inspección
del pun o.
Una ez se engan es os pun os, se cons uye una cadena que con enga las posiciones calculadas
y se ealizan cu as de Dubins en e los dis in os pun os al igual que como se ha hecho has a el
momen o. Es e bucle de ope aciones con inua á has a que se llegue al inal de la zona a in es iga ,
Figu a 2.39.
64 Capí ulo 2. Algo i mo
De es a mane a inaliza el segundo algo i mo co espondien e con las inspección del á ea. A
con inuación se explica á de o ma b e e como se han unido es os dos algo i mos pa a c ea una
sola unción que iden i ique cuál de los dos es más con enien e pa a la si uación que p opone el
usua io que in oduce los da os.
2.4 Algo i mo comple o
Po úl imo, en es a sección se an a comen a los dis in os modos de uso de es as unciones. Es os
modos se di idi án en ejecu a los algo i mos a a és de sc ip s de MATLAB o hace uso de una
aplicación c eada con MATLAB App Designe . Aunque an es de es o, se á necesa io uni ica ambos
algo i mos en una única unción que seleccione cual de los dos a a ejecu a .
Es a nue a unción gene al ecibi á como en adas una se ie de da os gua dados en una es uc u a.
Es os alo es co esponden a odas las a iables necesa ias pa a iden i ica cual se ía la mejo u a.
Es a es uc u a se descompond á gua dando los alo es en a iables conc e as que se in oduci án
como inpu s en los p opios algo i mos. Además, se c ea á una unción den o de la p opia unción
gene al con el p opósi o de iden i ica cuál de los dos algo i mos es el que hay que u iliza . Pa a ello,
se analiza á el da o de la es uc u a co espondien e a la inspección. Según si es e da o con iene una
se ie de pun os los cuales o men un á ea o si es un único pun o a inspecciona , se selecciona á un
caso de uso u o o.
2.4.1 Función uni icado a
Ambos algo i mos de plani icación de ayec o ias se pueden ejecu a de mane a indi idual in odu-
ciendo los da os solici ados en ellas. Hay que ene en cuen a que la en ada pa a la inspección de
pun o debe se un único pun o con las coo denadas co espondien es y que los da os in oducidos
de elocidad, iempo, posición engan unidades adecuadas y lógicas.
Aunque puedan ejecu a se las unciones in oduciendo los da os di ec amen e en la en ana de
comandos, es más con enien e ealiza un a chi o a pa e donde se puedan modi ica los da os e
in oduci los en las unciones. Es po ello que se c eó una nue a unción de MATLAB. Es a unción
se la denominó inspec ion.m.
Es a unción ecibe los da os que el usua io quie a in oduci en o ma de es uc u a de da os.
Pos e io men e, analiza es os da os pa a comp oba si los alo es de las a iables ienen las unidades
co ec as y son magni udes lógicas. Finalmen e, elige la unción que más se adecua a los da os
p opo cionados y ejecu a el algo i mo co espondien e. Si el usua io lo solici ase, saca ía po
pan alla una ep esen ación de las ayec o ias, una simulación y gua da ía los esul ados en o ma o
.cs
pa a ealiza p uebas en un en o no eal. El Código 2.41 mues a la unción que se ha comen ado.
Código 2.41 Algo i mo de inspección gené ico (1).
1%%INSPECTION
2% This unc ion will choose be ween he a ea sea ching ask o he poin
3% inspec ask, basing on he ini ial da a. Also i will sa e in cs
4% o ma he ob ained ajec o ies.
5
6 unc ion esul s = inspec ion(da a)
7% Selec ask
8selec o = ask_selec o (da a);
9i selec o

2.4 Algo i mo comple o 65
En es a pa e del código se obse a una b e e desc ipción de lo que a a hace la unción además
del inicio de la misma. En el comienzo de es a se puede obse a que se hace uso de una unción
in e na del algo i mo llamada
ask_selec o
. Es a unción elige en e los algo i mos de la inspección
de un pun o o la inspección de un á ea cuál se á ejecu ado. La unción selec o a se analiza á al inal
de es a sección.
Código 2.42 Algo i mo de inspección gené ico (2).
10 % Sa e Inpu s
11 p1 = da a.Ini ialPoin s;
12 pIns = da a.Inspec da a;
13 = da a.UAVspeed;
14 = da a.UAV adius;
15 _ eq = da a.Task equency;
16 _ ime = da a.Task ime;
17 dw = da a.FoV(1);
18 d = da a.FoV(2);
19 dl = da a.FoV(3);
20 al i ude = da a.al i ude;
21 s epsize = da a.s epsize;
22 d ime = da a.d ime;
23 doPlo = da a.Plo ;
24 doSim = da a.Simula ion;
A con inuación, Código 2.42, se gua dan los da os de la es uc u a, in oducida como único
a gumen o de la unción, en una se ie de a iables pa a analiza sus alo es y emi i mensajes de
e o en caso de que sea necesa io.
Código 2.43 Algo i mo de inspección gené ico (3).
25 % Check inpu s
26 i ~(size(p1,2) == 3)
27 e o (’E o . Ini ial poin s ha e non alid o ma ’)
28 end
29 i ~(size(pIns,2) == 3)
30 e o (’E o . Inspec ion poin has non alid o ma ’)
31 end
32 i ~( > 0)
33 e o (’E o . UAV speed mus be posi i e’)
34 end
35 i ~( > 0)
36 e o (’E o . UAV u ning adius mus be posi i e’)
37 end
38 i ~( _ eq >= 0)
39 e o (’E o . Task inspec ion equency has non alid alue’)
40 end
41 i ~( _ ime > 0)
42 e o (’E o . Task inspec ion ime has non alid alue’)
43 end
44 i _ ime < _ eq
66 Capí ulo 2. Algo i mo
45 e o (’E o . Task inspec ion ime mus be g ea e han ask
inspec ion equency’)
46 end
Código 2.44 Algo i mo de inspección gené ico (4).
47 i ~(dw > 0)
48 e o (’E o . FoV wid h mus be posi i e’)
49 end
50 i ~(dl > 0)
51 e o (’E o . FoV leading edge mus be posi i e’)
52 end
53 i ~(dl > d )
54 e o (’E o . FoV leading edge (dl) mus be g ea e han FoV
ailing edge (d )’)
55 end
56 i ~(al i ude > 0)
57 e o (’E o . UAV al i ude mus be posi i e’)
58 end
59 i ~(s epsize > 0)
60 e o (’E o . S epsize mus be posi i e’)
61 end
62 i ~(d ime > 0)
63 e o (’E o . Times amp mus be posi i e’)
64 end
65 i ~(doPlo == ue || doPlo == alse || doSim == ue || doSim ==
alse)
66 e o (’E o . Plo and Simula on da a mus be logical alue’)
67 end
68 i doPlo == alse && doSim == ue
69 e o (’E o . Canno do a simula ion wi hou he g aphic
ep esen a ion’)
70 end
Como se explicó en los algo i mos de ambos casos de uso, se comp ueba que las en adas engan
alo es lógicos, como son núme os posi i os pa a a iables de iempo o elocidad, o ec o es de
es coo denadas pa a indica posiciones, Código 2.43. También se comp ueba que las a iables
que se u ilizan pa a indica si se quie e una ep esen ación o una simulación sean a iables de ipo
booleano, Código 2.44.
Código 2.45 Algo i mo de inspección gené ico (5).
71 % Run ask
72 p in (’The Poin Inspec Task will be pe o med n’)
73 esul s = poin _inspec (p1, pIns, , , _ ime, _ eq, da a.FoV,
al i ude, s epsize, d ime, doPlo , doSim);
Finalmen e, as comp oba que odos los alo es de las en adas ienen alo es adecuados, se
p ocede a in o ma del algo i mo que se a a u iliza y se ejecu a el mismo, Código 2.45. De o ma
2.4 Algo i mo comple o 67
análoga, se hace lo mismo en el caso de la inspección del á ea, Códigos 2.46, 2.47, 2.48 y 2.49.
A di e encia que en la inspección del pun o, en el á ea no se comp ueba ningún iempo de uel a
ya que no se apo a como da os. Aunque si hay que e i ica o as a iables como el ac o de
solapamien o alpha.
Código 2.46 Algo i mo de inspección gené ico (6).
74 else
75 % Sa e Inpu s
76 p1 = da a.Ini ialPoin s;
77 aIns = da a.Inspec da a;
78 = da a.UAVspeed;
79 = da a.UAV adius;
80 _ ime = da a.Task ime;
81 dw = da a.FoV(1);
82 d = da a.FoV(2);
83 dl = da a.FoV(3);
84 al i ude = da a.al i ude;
85 alpha = da a.FoV(4);
86 s epsize = da a.s epsize;
87 d ime = da a.d ime;
88 doPlo = da a.Plo ;
89 doSim = da a.Simula ion;
Código 2.47 Algo i mo de inspección gené ico (7).
90 % Check inpu s
91 i ~(size(p1,2) == 3)
92 e o (’E o . Ini ial poin s ha e non alid o ma ’)
93 end
94 i ~(size(aIns,2) == 2)
95 e o (’E o . Inspec ion a ea has non alid o ma ’)
96 end
97 i ~( > 0)
98 e o (’E o . UAV speed mus be posi i e’)
99 end
100 i ~( > 0)
101 e o (’E o . UAV u ning adius mus be posi i e’)
102 end
103 i ~( _ ime > 0)
104 e o (’E o . Task inspec ion ime mus be posi i e’)
105 end
106 i ~(dw > 0)
107 e o (’E o . FoV wid h mus be posi i e’)
108 end
109 i ~(dl > 0)
110 e o (’E o . FoV leading edge mus be posi i e’)
111 end
112 i ~(dl > d )
68 Capí ulo 2. Algo i mo
113 e o (’E o . FoV leading edge (dl) mus be g ea e han FoV
ailing edge (d )’)
114 end
Código 2.48 Algo i mo de inspección gené ico (8).
115 i ~(al i ude > 0)
116 e o (’E o . UAV al i ude mus be posi i e’)
117 end
118 i ~(alpha > 0 && alpha <= 1)
119 e o (’E o . Lane spacing mus be be ween 0 and 1’)
120 end
121 i ~(s epsize > 0)
122 e o (’E o . S epsize mus be posi i e’)
123 end
124 i ~(d ime > 0)
125 e o (’E o . Times amp mus be posi i e’)
126 end
127 i ~(doPlo == ue || doPlo == alse || doSim == ue || doSim ==
alse)
128 e o (’E o . Plo and Simula on da a mus be logical alue’)
129 end
130 i doPlo == alse && doSim == ue
131 e o (’E o . Canno do a simula ion wi hou he g aphic
ep esen a ion’)
132 end
Código 2.49 Algo i mo de inspección gené ico (9).
133 % Sa e ajec o ies as .cs
134 doCSV = da a.Sa eCSV;
135 i doCSV
136 o i = 1:leng h( esul s)
137 id = num2s (i);
138 name = ’ ajec o y_ua _XXX.cs ’;
139 swi ch leng h(id)
140 case 1
141 name(16:17)=’0’;
142 name(18)=id;
143 case 2
144 name(16)=’0’;
145 name(17:18)=id;
146 case 3
147 name(16:18)=id;
148 end
149 cs w i e(name, esul s(i). ajec o y);
150 end
151 end
152 end
2.4 Algo i mo comple o 69
A con inuación, se an a indica las líneas de código co espondien es a la selección del algo i mo a
u iliza , Código 2.50. Es o se ealiza comp obando si el da o co espondien e al obje o a inspecciona
es un único pun o o es una se ie de pun os que con o man un á ea comple a. Según el esul ado de
es a comp obación se le da un alo de 0 o 1 a una a iable que se in oduci á como condición de la
es uc u a condicional mos ada en los códigos an e io es.
Código 2.50 Algo i mo de inspección gené ico (10).
153 unc ion selec o = ask_selec o (da a)
154 aux = da a.Inspec da a;
155 i size(aux,1) == 1
156 selec o = 1;
157 else
158 selec o = 0;
159 end
160 end
Una ez explicado el código co espondien e al algo i mo comple o, se a a expone las mane as
dos mane as que se han pensado pa a in oduci los da os en es a unción. Como ya se comen ó al
p incipio de la sección, una mane a consis i á en c ea un sc ip de MATLAB donde se in oduzcan
los da os en una es uc u a de o ma di ec a pa a pos e io men e ejecu a la unción en el p opio
a chi o. La o a de las mane as consis i á en c ea una aplicación con el App Designe de MATLAB
como se comen a á más adelan e.
2.4.2 En adas a a és de un sc ip
La p ime a de las opciones mencionadas consis e en c ea de o ma indi idual una es uc u a que
con enga los campos que se solici an en la unción
inspec ion.m
. Es a es la mane a más sencilla
pa a ealiza p uebas, ob ene esul ados y ha sido la u ilizada du an e la c eación del algo i mo.
Pa a acili a cuales son es os da os se ha c eado un a chi o
.m
de MATLAB que comen a y explica
es os campos. En el Código 2.51 se mues an los da os mencionados.
Código 2.51 Sc ip de da os iniciales (1).
1% UAV speed: da a.UAVspeed [m/s]
2% UAV u ning adius: da a.UAV adius [m]
3% Take O spo : da a.Ini ialPoin s [x y yaw] [m, o
¯]
4% Field o View: da a.FoV [dw d dl alpha] [m]
5% Al i ude: da a.al i ude [m]
6% Inspec ion da a: da a.Inspec da a [x y yaw] Pun o [1x3] o á ea [mx3]
7% To al ligh ime: da a.Task ime [s]
8% Inspec ion equency: da a.Task equency [s]
9% G aphic ep esen a ion: da a.Plo [ ue o alse]
10 % Simula ion o he esul s: da a.Simula ion [ ue o alse]
11 % Sa e esul s as CSV: da a.Sa eCSV [ ue o alse]
12 % Dis ance be ween poin s: da a.s epsize [m]
13 % Time be ween WP: da a.d ime [s]
14
15 clc, clea all, close all

70 Capí ulo 2. Algo i mo
P ime o se c ean unas líneas comen adas donde se explica cuales son los da os que hay que
in oduci , después se indica el o ma o pa a in oduci los en una es uc u a llamada
da a
y, po
úl imo, se indican las unidades de cada en ada. Después de es o, se elimina po segu idad odos los
da os, g á icas y líneas de código exis en es pa a que no exis a acumulación de da os an iguos y se
p oduzcan e o es.
Código 2.52 Sc ip de da os iniciales (2).
16 da a.UAVspeed = 0.75;
17 da a.UAV adius = 0.15;
18 da a.Ini ialPoin s = [0 -3.5 -90; -4.5 -2 0];
19 da a.FoV = [0.5 -0.3 0.3 0.9];
20 da a.al i ude = 1;
21 da a.Inspec da a = ec_aIns(-3, 3, 2, -2.5, 0.1);
22 da a.Task ime = 40;
23 da a.Task equency = 6;
24 da a.Plo = ue;
25 da a.Simula ion = alse;
26 da a.Sa eCSV = alse;
27 da a.s epsize = 0.01;
28 da a.d ime = 0.1;
29
30 esul s = inspec ion(da a);
Una ez in oducidos, como se indicaba en los comen a ios, odos los da os en la es uc u a y en
los campos co espondien es, se ejecu a la unción inspec ion.mexplicada en el apa ado an e io
la cual ealiza las ayec o ias que co esponden con la si uación in oducida, Código 2.52.
2.4.3 En adas a a és de MATLAB App Designe
La segunda mane a que se u iliza pa a el almacenamien o de los da os y la ejecución del algo i mo
se ía u iliza el módulo de App Designe de MATLAB. App Designe pe mi e c ea aplicaciones
p o esionales de mane a cómoda e in ui i a. Es e mé odo acili a el en endimien o de los da os
in oducidos sin sabe sob e la es uc u a de da os necesa ia pa a la ejecución del código. Es á
plan eada pa a u u os usos del mismo dónde o os usua ios no engan po qué sabe sob e las
en añas del algo i mo [1].
En es e p oyec o no se a a mos a el p oceso de c eación de la aplicación, aunque si se comen a án
los elemen os que se han in oducido y como se u ilizan pa a ob ene los da os solici ados po
el algo i mo. El nomb e que se le ha dado a la aplicación es
Inspec ionApp.mlapp
. Cuando es e
a chi o se ejecu a, apa ece una en ana como la que se mues a en la Figu a 2.42.
2.4 Algo i mo comple o 71
Figu a 2.42 Aplicación del algo i mo comple o (1).
En la imagen se puede obse a los dis in os da os que se menciona on en los pun os an e io es.
En es a ocasión es án expues os como campos a los que in oduci les los alo es numé icos que
el usua io quie a. Además, se añade un dibujo que mues an los pa áme os co espondien es al
campo de isión. Es o se ha decidido así pa a acili a el en endimien os de los alo es a in oduci .
Se pueden obse a los campos co espondien es a la elocidad de la ae ona e, el adio de gi o,
los pa áme os que de e minan el campo de isión y los pa áme os de iempos. También apa ecen
una se ie de casillas donde se puede selecciona si se quie e la ep esen ación de las ayec o ias,
la simulación de una ae ona e sob e ellas y si se quie e ob ene las ayec o ias en o ma o
.cs
.
O os pa áme os impo an es son el s epsize y el imes amp, es os se encuen an a pa e po su
impo ancia y delicadeza a la ho a de se in oducidos.
Po úl imo, se puede obse a un cuad o y unas casillas pa a in oduci coo denadas de es a-
opue os. El mé odo de u ilización de es a sección consis e en añadi unas coo denadas con el
o ma o indicado y pulsa el bo ón co espondien e. De es a mane a se in oduce el es a opue o
indicado de mane a sencilla e in ui i a como se obse a en la Figu a 2.43.
Figu a 2.43 Aplicación del algo i mo comple o (2).
El módulo de App Designe c ea un código co espondien e a odos los elemen os que se an
in oduciendo en u en ana de abajo. Aunque ambién se pueden in oduci líneas de código en
72 Capí ulo 2. Algo i mo
caso necesa io. Po ejemplo, en es a ocasión ha sido necesa io esc ibi unas cuan as líneas pa a
asigna los alo es que se in oducen en la en ana inicial a las a iables co espondien es en la
es uc u a de da os, Código 2.43. También ha sido necesa io añadi una unción que ejecu e el
algo i mo comple o cuando se pulse el bo ón "play". Y, po úl imo, o a unción ue necesa ia pa a
ealiza la adición de los dis in os es a opue os, Código 2.54.
Código 2.53 Código App Designe (1).
1% Bu on pushed unc ion: PlayBu on
2 unc ion PlayBu onPushed(app, e en )
3
4% Ge he alues o each da a
5da a.UAVspeed = app.SpeedEdi Field.Value;
6da a.UAV adius = app.Tu ning a iusEdi Field.Value;
7da a.FoV = [app.Wid hdwEdi Field.Value app.T ailingedged Edi Field.
Value app.LeadingedgedlEdi Field.Value app.Alpha ac o Edi Field.
Value];
8da a.al i ude = app.Al i udeEdi Field.Value;
9da a.Task ime = app.Fligh imeEdi Field.Value;
10 da a.Task equency = app.Inspec ion imeEdi Field.Value;
11 da a.Plo = app.Plo CheckBox.Value;
12 da a.Simula ion = app.Simula ionCheckBox.Value;
13 da a.Sa eCSV = app.Sa eCSVCheckBox.Value;
14 da a.s epsize = app.S epsizeEdi Field.Value;
15 da a.d ime = app.Times ampEdi Field.Value;
16
17 % Ge ini ial poin s alues
18 cell = app.Sa eCoo d.Value;
19 da a.Ini ialPoin s = s 2double(s spli (cell{2,1},’,’));
20 o i = 3:leng h(cell)
21 da a.Ini ialPoin s = [da a.Ini ialPoin s; s 2double(s spli (
cell{i,1},’,’))];
22 end
23 % da a.Inspec da a = ec_aIns(-3, 3, 2, -2.5, 0.1);
24 da a.Inspec da a = [1 1 0];
25
26 % Do inspec ion unc ion
27 inspec ion(da a);
28 end
Código 2.54 Código App Designe (2).
1% Bu on pushed unc ion: Adds a opo sBu on
2 unc ion Adds a opo sBu onPushed(app, e en )
3
4% Add new poin o able
5newPoin = app.S a opo Edi Field.Value;
6 ex = "[" + newPoin + "]";
7app.S a opo sCoo d.Value = [app.S a opo sCoo d.Value; ex ];
2.4 Algo i mo comple o 73
8app.Sa eCoo d.Value = [app.Sa eCoo d.Value; newPoin ];
9end
Finalmen e, cuando se hayan decido los da os iniciales, el usua io iene que pulsa el bo ón con la
palab a "play". Es o ha á que se ejecu e la unción comple a ya explicada con los da os in oducidos.
Los cuad os de diálogos co espondien es segui án apa eciendo en la en ana de comandos de
MATLAB. Pos e io men e se ob end án las ayec o ias y la ep esen ación co espondien e en caso
de que se haya solici ado. Es e o ma o en o ma de aplicación es un p o o ipo inicial. Tiene muchas
posibles mejo as en cuan o a su o ma o que se comen a án más adelan e en las conclusiones.
80 Capí ulo 3. Simulación
3.1.2 Ejemplo 2
En es e segundo ejemplo de ayec o ia pa a la inspección de un pun o, se a a complica un poco
más la si uación espec o al p ime ejemplo. En es a ocasión, se in oduci á un iempo de uel a
meno al iempo mínimo. Es o p o oca á que el algo i mo enga que u iliza más de un UAV pa a
cumpli es a condición de iempo. Al igual que en el p ime ejemplo, a con inuación, en la Figu a 3.6,
se expond án dos imágenes con los da os de la nue a ayec o ia. La p ime a imagen co esponde á
con el código co espondien e a es os da os y la segunda con end á la es uc u a que se c ea al
ejecu a es e código.
(a) Código de los da os. (b)
Wo kspace de los da os.
Figu a 3.6 Da os del ejemplo 2.
En es a ocasión se han modi icado los da os iniciales a excepción de las especi icaciones de
las ae ona es, que se han man enido los da os de elocidad y adio de gi o. El pun o inicial es el
mismo, pe o el pun o obje i o se ha modi icado pa a que se encuen e en la posición
[2,1]
y enga
que se inspeccionado con un ángulo de 30 g ados espec o del eje x en sen ido ho a io. El campo
de isión y la al i ud a la que ola án los ehículos ambién se han conside ado los mismos. Las
cons icciones de iempo se han modi icado, ya que, como se obse a á en la en ana de comandos,
se ha in oducido un iempo de uel a meno que el iempo mínimo pa a inspecciona . Es o p o oca á
que se enga que añadi un segundo UAV. Además, el iempo o al de uelo se ha in oducido de
mane a que se den dos uel as al ci cui o de inspección.
En la Figu a 3.7 se puede obse a el mensaje que sale po pan alla cuando se ejecu a el algo i mo
en la imagen de la izquie da. La g á ica de la de echa mues a la ayec o ia inal una ez con es adas
las p egun as eme gen es.
(a) Mensajes eme gen es. (b) Rep esen ación.
Figu a 3.7 Ru a comple a del ejemplo 2.

3.1 Inspección de un pun o 81
En es e caso exis en algunas di e encias espec o al ejemplo pasado. Se puede obse a que de la
misma mane a que en el p ime ejemplo, se a a ealiza la inspección del pun o. El iempo mínimo
de uel a es supe io al iempo indicado, y po an o, el algo i mo señala que se necesi a án dos
ae ona es pa a pode cumpli la condición. Además, como en los da os únicamen e se indicó un
solo pun o de despegue o es a opue o, el algo i mo p egun a si se desea u iliza el mismo pun o de
despegue pa a ambos UAVs. Finalmen e se indica que sí y se in o ma de que se da án dos uel as.
Si se obse a la ep esen ación de la u a que se a a ealiza desde una is a aé ea de la misma,
se pueden e los 30 g ados de inclinación del ci cui o de espe a espec o al eje x en sen ido ho a io.
Se ha omi ido la leyenda pa a isualiza mejo oda la u a, ya que los elemen os son los mismos que
en el ejemplo an e io . A con inuación, se a a mos a una se ie de ins an es, Figu a 3.8y Figu a 3.9,
en los que se obse a á a la lo a de dos ae ona es eco e es as ayec o ias con una dis ancia de
segu idad en e ellas.
(a) Despegue UAV 1. (b) Despegue UAV 2. (c) Inspección UAV 1.
Figu a 3.8 Despegues y ap oximación. Ejemplo 2.
(a) Inspección equidis anciada. (b) Reg eso UAV 1. (c) Reg eso UAV 2.
Figu a 3.9 Inspección y a e izajes. Ejemplo 2.
En es e conjun o de igu as se encuen an seis momen os impo an es a lo la go de la simulación.
El p ime momen o co espondien e con el despegue de la p ime a ae ona e mien as que la segunda
pe manece en espe a. La segunda imagen mues a como el UAV 1 ya es á ap oximándose al pun o
de inspección mien as que el UAV 2 espe a el momen o exac o pa a ealiza su despegue. Es a
espe a pe mi i á que ambas ae ona es man engan una dis ancia de segu idad equi alen e a la mi ad
de la longi ud del ci cui o de espe a.
En la e ce a imagen, el UAV 1 ya ha ealizado la p ime a inspección y p ocede a eco e
el ci cui o de espe a. El segundo UAV se encuen a en una ap oximación al pun o obje i o. La
82 Capí ulo 3. Simulación
cua a imagen mues a a ambos UAVs eco iendo la u a de inspección man eniendo una dis ancia
especí ica como ya se ha comen ado. T as da dos uel as al ci cui o, el p ime UAV eg esa al
es a opue o pa a ealiza su a e izaje como se mues a en la quin a imagen. Finalmen e, una ez
a e izado el p ime o UAV, se encuen a el UAV 2 de eg eso al pun o inicial.
Al igual que en el p ime ejemplo, una ez e mina la simulación, el algo i mo gua da en una
es uc u a odas es as ayec o ias plan eadas. En es e caso se end án dos elemen os den o de
la es uc u a que co esponde án a las dos ae ona es espec i amen e. Además, se an a mos a
algunos de los da os de ambas ae ona es pa a compa a los esul ados.
Figu a 3.10 Resul ados ob enidos del ejemplo 2 (1).
(a) UAV 1. (b) UAV 2.
Figu a 3.11 Resul ados ob enidos del ejemplo 2 (2).
Como ya se ha comen ado, en la Figu a 3.10 se obse a la es uc u a que con iene las dos
ayec o ias. La ila 1 co esponde al p ime UAV y la ila 2 co esponde al segundo. El UAV 2
iene más elemen os, como se puede comp oba . Es o es debido a que iene que ealiza una espe a
inicial mien as el p ime UAV ya es á eco iendo pa e de la u a. Es a si uación que se menciona
se puede obse a en la Figu a 3.11.
La p ime a columna de las dos ma ices de pun os co esponde con el iempo de uelo. En es e
caso las imágenes mues an las posiciones donde se encuen an ambos UAVs en e los ins an es
de 1.2 segundos y 1.8 segundos. Como se acaba de comen a , mien as que el UAV 1 comienza su
ayec o ia as el despegue en el segundo 1.5, el UAV 2 se encuen a ealizando una espe a has a
que llegue el momen o adecuado.
3.1.3 Ejemplo 3
En es e e ce ejemplo se a a mos a una lo a de es UAVs saliendo desde es a opue os dis in os.
Al igual que en el ejemplo an e io , es a lo a man end á una dis ancia de segu idad en e ellos
g acias a las espe as iniciales que ealizan. Las es ubicaciones de los es a opue os se án apo adas
en los da os iniciales, de es a mane a se e i an diálogos adicionales. También cabe des aca que se
pond á un iempo de uelo bas an e supe io al es o de iempos pa a comp oba que el algo i mo
unciona co ec amen e independien emen e del núme o de uel as. Los nue os da os in oducidos
3.1 Inspección de un pun o 83
son los que se mues an en la Figu a 3.12.
(a) Código de los da os. (b)
Wo kspace de los da os.
Figu a 3.12 Da os del ejemplo 3.
Como se puede obse a en las imágenes, se ha uel o a man ene la misma elocidad y adio
de gi o de las ae ona es po simplicidad. A di e encia de los o os ejemplos, en es e caso se han
añadido dos es a opue os adicionales ya que se p e ende usa una lo a de 3 ehículos no ipulados
que salgan desde dis in as localizaciones. Las posiciones y los ángulos se han elegido pa a que la
ayec o ia desc i a sea ag adable isualmen e y que sea ácilmen e legible.
Los da os co espondien es al campo de isión, a la al i ud, y los da os más a anzados como el
s epsize o el imes amp se han man enido con los mismos alo es. Finalmen e, se ha modi icado
el iempo o al y el iempo po uel a pa a ob ene una ayec o ia eco ida po es UAVs y que
ealicen la u a diez eces. A con inuación se a a mos a los cuad os de diálogos esul an es jun o
con una ep esen ación de la u a c eada, Figu a 3.13.
(a) Mensajes eme gen es. (b) Rep esen ación.
Figu a 3.13 Ru a comple a del ejemplo 3.
En la imagen de la izquie da se obse an unos mensajes simila es a los ya ob enidos. En es os
se uel e a menciona cual es el ipo de inspección que se a a u iliza , que en es e caso es de
pun o. Además, a di e encia que en el ejemplo an e io , aunque se aya a u iliza más de un UAV,
no se p egun a si se quie en u iliza los es a opue os de o ma epe ida ya que hay el mismo
núme o de es a opue os que UAVs a u iliza . Si algún p oyec o quisie a epe i algún es a opue o,
solo bas a ía con in oduci lo de o ma ei e ada en los da os iniciales. Finalmen e, se in o ma po
pan alla de que se necesi a án es HAPS y de que da án un o al de diez uel as pa a cumpli con
las es icciones o condiciones impues as.
En la ep esen ación podemos e las ayec o ias co espondien es a los es UAVs. La p ime a
84 Capí ulo 3. Simulación
ae ona e despega á desde el pun o más al su es e, ya que es e pun o es el más ce cano a la inspección,
y el algo i mo elige po p oximidad. El segundo UAV sald á desde el pun o más al no oes e. Cabe
des aca que aunque la dis ancia de es os dos es a opue os al pun o de inspección sea la misma,
las ae ona es sald án en iempos dis in os pa a man ene una dis ancia de segu idad adecuada.
Finalmen e, la e ce a y úl ima ae ona e sald á desde el es a opue o si uado en el
[−1,−1]
en el
mapa.
Po úl imo, en es a ocasión la u a de inspección o ci cui o de espe a se ealiza con un ángulo de
90 g ados en sen ido an iho a io espec o del eje x. A con inuación, se an a mos a una se ie de
ins an es, a lo la go de la simulación, Figu a 3.14 y Figu a 3.15. Pos e io men e se explica á que
ocu e en cada imagen.
(a) Despegue UAV 1. (b) Ap oximación UAVs 1 y 2. (c) Ap oximación UAV 3.
Figu a 3.14 Despegues y ap oximación. Ejemplo 3.
(a) Inspección equidis anciada. (b) Reg eso UAV 1. (c) Reg eso UAVs 2 y 3.
Figu a 3.15 Inspección y a e izajes. Ejemplo 3.
Es e ejemplo es muy comple o. En la p ime a igu a se pueden dis ingui los 3 UAVs si uados
cada uno en sus pun os de despegue. El UAV 1 es á ep esen ado en colo ojo, el UAV 2 en colo
e de y el UAV 3 en colo azul. Las es ae ona es se di igi án hacia el ci cui o de inspección como
siemp e, espe ando las es icciones de ángulos de en ada y adios de gi o g acias a las cu as de
Dubins.
P ime o despega á el UAV ojo y se ap oxima á al obje i o. Cuando se haya hecho la espe a
co espondien e, el UAV e de sald á de ás del ojo pa a in oduci se ambién en el ci cui o de
inspección. Po úl imo, sald á el UAV azul de la misma mane a que el UAV 2, es deci , espe ando la
dis ancia de segu idad. Todo es o se obse a en la segunda imagen donde oda ía no ha despegado
el UAV 3 y los o os dos ya se encuen an en la ap oximación.
3.1 Inspección de un pun o 85
En la e ce a imagen se puede obse a como el UAV 1 ya es á en el ci cui o, al igual que el UAV
2, que es á alcanzando el obje i o po p ime a ez. Además, el UAV 3 se encuen a ap oximando a
una dis ancia p udencial al obje i o.
Pos e io men e, en la cua a g á ica se encuen an los es UAVs ealizando la inspección. G acias
a la dis ancia que man ienen cons an e en e ellos, nunca se choca án. Además, consiguen que
siemp e haya un UAV iendo el pun o de inspección cada 3 segundos, que es el iempo de inspección
in oducido. Y, po úl imo, en la quin a y sex a igu a la lo a de ehículos no ipulados ya ha
e minado de da las 10 uel as de inspección. A con inuación, p oceden a ol e a sus espec i os
es a opue os pa a inaliza la u a comple a.
T as explica como se ha ejecu ado la simulación en es e ejemplo, se a a ealiza una ecopilación
y análisis de los esul ados inales, Figu a 3.16 y Figu a 3.17, como se ha hecho an e io men e.
Figu a 3.16 Resul ados ob enidos del ejemplo 3 (1).
(a) UAV 1. (b) UAV 2. (c) UAV 3.
Figu a 3.17 Resul ados ob enidos del ejemplo 3 (2).
En es e ejemplo se iene una es uc u a con es ilas las cuales co esponden a las ayec o ias
de cada uno de los UAVs como se puede obse a en la Figu a 3.16. Es a u a iene muchas más
coo denadas que los an e io es dos ejemplos. Es o se debe a que en es e caso se han dado un o al
de 10 uel as al ci cui o y, po an o, ha sido necesa io almacena una g an can idad de pun os.
Al igual que en el ejemplo 2, en es e caso se iene que los UAVs 2 y 3 ienen más pun os que
el UAV 1. Es o ocu e po que ienen que espe a al momen o adecuado pa a despega desde el
es a opue o como se obse a en la Figu a 3.17. En es e conjun o de imágenes se mues a el mismo
in e alo de iempo comp endido en e 2.1 y 2.7 segundos. Se obse a en las imágenes que, mien as
el p ime UAV ya es á en mi ad del uelo y en mo imien o, el segundo UAV es á e minando de
despega y comenzando su u a; y el úl imo UAV oda ía no ha a comenzado su despegue. Po es e
mo i o, se iene una mayo can idad de pun os en los UAVs que despegan más a de.

86 Capí ulo 3. Simulación
3.1.4 Ejemplo 4
El úl imo de los ejemplos de la inspección del pun o se i á pa a mos a el po encial del algo i mo.
Pa a es o se añadi án una g an can idad de ae ona es despegando desde pun os di e en es. El
algo i mo end á que calcula odas las ayec o ias y los iempos de espe a, pa a que las dis ancias
en e las ae ona es se man enga siemp e igual. En es a ocasión solo se mos a án los da os u ilizados
y algunos momen os in e esan es de es a u a.
(a) Código de los da os. (b) Wo kspace de los da os.
Figu a 3.18 Da os del ejemplo 4.
En es e caso, Figu a 3.18, se ha cambiado po p ime a ez el adio de gi o ya que se a a
abaja en un en o no más g ande. La elocidad se ha man enido la misma y es o se e á e lejado
en la simulación. Ya que, las ae ona es al ene que eco e g andes dis ancias a una elocidad
ela i amen e pequeña, hace que la simulación a de más iempo.
Se han si uado cinco es a opue os que se usa án según su p oximidad al pun o de inspección.
Más adelan e se obse a á que se an a necesi a 9 UAVs y, po an o, es os pun os iniciales no se án
su icien es. Además de los es a opue os, ambién se a ha modi icado el pun o obje i o pa a que
haya cie a dis ancia con las zonas de despegue. Además, el iempo de inspección se ha disminuido
mucho pa a que puedan in oduci se más ae ona es. Es a ecuencia a la que se quie e inspecciona
hace que engan que es a las ae ona es ce canas pa a que se pueda cumpli la especi icación.
A con inuación, Figu a 3.19, se a a mos a como queda ía la u a inal jun o con los dis in os
mensajes que se ob ienen en la en ana de comandos de MATLAB.
(a) Mensajes eme gen es. (b) Rep esen ación.
Figu a 3.19 Ru a comple a del ejemplo 4.
En es a ocasión hay una g an can idad de ayec o ias que se mezclan po causa del g an núme o
3.1 Inspección de un pun o 87
de ehículos en la lo a y de los dis in os es a opue os u ilizados. Es o se e e lejado en la imagen
de la u a comple a. Además, se puede obse a que el núme o de ae ona es que an a ealiza el
eco ido es de 9 UAVs como ya se comen ó. También se sabía que los pun os de inicio no iban a
se su icien es y, po an o, se le iene que indica al algo i mo que epi a los que sean necesa ios.
Aho a se an a mos a seis nue as imágenes, Figu a 3.20 y Figu a 3.21, donde se obse a án
dis in os momen os de la simulación comple a. Se le ha asignado un colo di e en e a cada UAV
pa a dis ingui los du an e la ayec o ia.
(a) Despegues iniciales. (b) Ap oximación UAVs. (c) Comienzo de inspección.
Figu a 3.20 Despegues y ap oximación. Ejemplo 4.
(a) Inspección equidis anciada. (b) Reg eso UAVs. (c) A e izajes inales.
Figu a 3.21 Inspección y a e izajes. Ejemplo 4.
Se mues a en es e conjun o de imágenes la p og esión de la simulación a lo la go del iempo.
Todas las ae ona es comienzan en sus espec i os es a opue os, como se puede obse a en la
p ime a imagen. Pos e io men e, los ehículos an despegando po zonas man eniendo una dis ancia
de segu idad mien as el es o de la lo a espe a al ins an e co ec o como se puede e en la segunda
igu a. En la e ce a igu a se mues a como ya han salido odos los ehículos de sus zonas de
despegue y algunos ya han comenzado el ci cui o de inspección. Cabe des aca que las ae ona es no
colisionan en ningún momen o g acias a las dis ancias de segu idad que se man ienen en e ellos.
En el segundo ío de o os se obse an los siguien es aspec os. En la p ime a o o se mues a de
o ma muy ep esen a i a la sepa ación que exis e en e las ae ona es. Es o pe mi e se cons an e
con la inspección del pun o espe ando las condiciones iniciales. Una ez se han dado odas las
uel as co espondien es, que en es e caso e a una única pasada, la lo a de ehículos no ipulados
p ocede a eg esa a sus coo denadas iniciales. Es o se puede obse a en las dos úl imas igu as del
conjun o, dónde los UAVs an eg esando de mane a p og esi o en el mismo o den en el que se
desplega on.
88 Capí ulo 3. Simulación
Finalmen e, una ez e minada la simulación se ob ienen los esul ados de las ayec o ias en
o ma o de es uc u a, Figu a 3.22, como en los an e io es ejemplos.
Figu a 3.22 Resul ados ob enidos del ejemplo 4.
Como ya se sabía, en es a ocasión ha sido necesa io desplega una lo a de 9 ehículos no
ipulados. Las ayec o ias de cada ae ona e queda egis ada pa a su uso en la es uc u a que se
obse a en la imagen. Al igual que en los ejemplos an e io es, a medida que el UAV despega más
a de en el iempo, es necesa io que enga más pun os en la ayec o ia que co esponden con las
espe as necesa ias. Es po ello, que las úl imas ae ona es ienen más pun os que las p ime as. Se
obse a una si uación cu iosa. La ayec o ia del UAV 5 es más co a, en núme o de pun os, que
la de las ae ona es 3 y 4. Es o se debe a que aunque el es a opue o de los UAV 3 y 4 es u ie an
más p óximos al obje i o, enían que da una uel a más g ande debido al ángulo de salida desde el
es a opue o.
3.2 Inspección de un á ea
En es a sección se expond án a ios ejemplos de la misma mane a que se hizo con la inspección del
pun o. Es os ejemplos con end án los da os u ilizados pa a ob ene las ayec o ias además de una
se ie de imágenes que mues en las simulaciones co espondien es. Los ejemplos que se expond án
i án aumen ando en di icul ad pa a en ende co ec amen e la inalidad de las ayec o ias.
En la sección an e io se enseñó el código co espondien e a la simulación de la inspección de un
pun o. En es e segundo ipo de inspección, el algo i mo pa a consegui la simulación es el mismo
que se encuen a en los Código 3.1 y 3.2 de la sección an e io . De la misma mane a se mos a án
las ae ona es ep esen adas como un pun o de colo en el espacio y el campo de isión como un
ec ángulo con las dimensiones co espondien es.
3.2.1 Ejemplo 1
Es e p ime ejemplo de la inspección de á ea se á el más sencillo. En el se mos a á una única
ae ona e sob e olando un á ea ec angula de dimensiones dadas. El UAV únicamen e ealiza á una
inspección y ol e á al es a opue o del que despegó. Al igual que en los ejemplos de la inspección
de un pun o, se omi i á la u ilización del ángulo de guiñada debido al p opósi o de u iliza es as
3.2 Inspección de un á ea 89
ayec o ias en un en o no eal.
(a) Código de los da os. (b)
Wo kspace de los
da os.
Figu a 3.23 Da os del ejemplo 1.
P ime a se a a explica los da os u ilizados pa a es e p ime ejemplo, Figu a 3.23. La elocidad
de la ae ona e se á de 1 me o po segundo a lo la go de odos los ejemplos po comodidad. Al
adio de gi o de la ae ona e se le ha dado un alo de 0.25 me os pa a que se obse e de una
mane a más cla a las ayec o ias como se mos a á más adelan e. El es a opue o del que sald á la
ae ona e es a á si uado en las coo denadas
[−3,−3.5]
y el UAV despega á en di ección No e, es
deci , o mando un ángulo de 90 g ados con el eje x en sen ido an iho a io.
El campo de isión en es e caso se á un ec ángulo o mado po 1 me o de ancho y 0.6 me os
de la go. En es e mé odo de inspección se ha á uso ambién del ac o de solapamien o
alpha
.
Como su p opio nomb e indica, es e pa áme o pe mi i á con ola cuan o po cen aje del campo de
isión e isa á zonas ya isi adas. La al i ud de las ae ona es se á cons an e a lo la go de odas las
ayec o ias y con alo de 1 me o.
La zona de inspección en es e caso se á un ec ángulo con dimensiones de
6×5.4
me os, donde
los ex emos se encon a án a las siguien es dis ancias del o igen de coo denadas: el No e es a á
a 2 me os del o igen, el Su se encon a á a 2.5 me os del eje x en di ección hacia abajo, el es e
y el oes e se encuen an ambos a 3 me os del eje y en di ecciones con a ias. El iempo o al de
uelo se ha indicado a 40 segundos eniendo en cuen a como se e á en las siguien es imágenes
que el iempo que a da la ae ona e en da una uel a es de ap oximadamen e 39 segundos. En es a
inspección de un á ea, el da o co espondien e a la ecuencia de inspección no se aplica.
A con inuación se mos a án o as dos imágenes en la Figu a 3.24. La p ime a co esponde á con
los cuad os de diálogos que apa ecen en la en ana de comandos de MATLAB cuando se ejecu a
el código. La segunda de las imágenes es una ep esen ación de la ayec o ia sob e la que se a a
ealiza la simulación.
96 Capí ulo 3. Simulación
(a) Despegue. (b) Ap oximación a la u a. (c) Inspección (1).
Figu a 3.36 Despegue, ap oximación e inspección. Ejemplo 3.
(a) Inspección (2). (b) Inspección (3). (c) Ap oximación inal.
Figu a 3.37 Inspección, eg eso y a e izaje. Ejemplo 3.
En es a se ie de seis g á icas, se mues an dis in os momen os de la simulación. En es e caso
pa ece que no concue da el o den pe o es o es debido a que se dan dos uel as en es e ejemplo y, po
an o, se uel en a e isa zonas ya isi adas. La p ime a imagen co esponde con el despliegue de
la lo a. En p ime luga despega á la ae ona e 1 que eco e á la u a azul. Po ce canía, el siguien e
ehículo que despega á se á el que eco a la u a ama illa. Po úl imo, el UAV 2 que se enca ga de
inspecciona la zona na anja se á el úl imo en despega .
En la segunda imagen se obse a como los es UAVs han llegado al inicio de sus espec i as
zonas y p oceden a inspecciona las al mismo iempo. Es o es muy ú il de ca a a e i a colisiones en
las ayec o ias y pa a man ene a la lo a de ehículos o ganizada. En la e ce a imagen se obse a
como siguen e isando oda la zona sin deja ningún espacio sin inspecciona g acias al campo de
isión que queda ep esen ado encima de los ehículos.
En la cua a imagen se obse a como han e minado la p ime a inspección y las ae ona es se
encuen an ealizando una úl ima pasada po el in e io de la zona. Aunque en los ejemplos p e ios
se di igían al inal as es a e isión, en es e caso an a da dos uel as de inspección. Po an o, una
ez llegado al ex emo de la zona obje i o se encauzan a da o a uel a como queda ep esen ado
en la quin a g á ica.
Finalmen e, as habe hecho las dos inspecciones como se espe aba, la lo a de ehículos no
ipulados se dispone a eg esa a los pun os de pa ida y a a e iza en sus es a opue os co es-
pondien es. A con inuación se an a mos a los esul ados que se ob ienen una ez haya e minado
la simulación del uelo, Figu a 3.38.

3.2 Inspección de un á ea 97
Figu a 3.38 Resul ados ob enidos del ejemplo 3.
De la misma mane a que en el es o de casos, los esul ados quedan gua dados en una es uc u a
de es elemen os donde cada uno de ellos ep esen a una de las ayec o ias desc i as. Cabe des aca
que en es os casos el núme o de coo denadas es muy pa ecido en e UAVs, es o es debido a que las
dis ancias a los pun os de inicio son muy p óximas unas a o as.
3.2.4 Ejemplo 4
Po úl imo, se a a p esen a un ejemplo que supe a en complejidad a los an e io es. En es e úl imo
ejemplo se a a e el po encial que iene el algo i mo pa a o ganiza una lo a de ehículos mucho
más g ande que en los an e io es ejemplos. En es e caso se an a inclui unas especi icaciones que
necesi en de una lo a de 12 ehículos pa a cumpli se. Los da os co espondien es son los que se
obse an el la Figu a 3.39.
Figu a 3.39 Da os del ejemplo 4.
Como se puede obse a , se han añadido has a seis es a opue os en dis in as posiciones. De es a
mane a se ue za al algo i mo a que enga que elegi el es a opue o más con enien e pa a cada
zona e isada. Además, se ha aumen ado el á ea o al a e isa pa a e los esul ados de una o ma
más cla a y epa ida. También se ha modi icado el iempo o al de uelo, es e se ha disminuido
pa a que únicamen e den una única uel a de inspección.
98 Capí ulo 3. Simulación
(a) Mensajes eme gen es. (b) Rep esen ación.
Figu a 3.40 Ru a comple a del ejemplo 4.
Los mensajes que se obse an en es a ocasión son muy simila es a los de los ejemplos pasados. En
es os mensajes se uel e a menciona que se a a ealiza la inspección de á ea y que la di isión de la
zona comple a se ha hecho en 12 pa es di e en es. Como siemp e, es as pa es se án inspeccionadas
cada una po un único UAV. Además, se menciona que no hay es a opue os su icien es y, po an o,
solici a pode eu iliza alguno de los es a opue os p opo cionados. Po úl imo, se des aca que
el iempo que se a da en ealiza la inspección es de 20.85 segundos. Como se ha in oducido un
iempo o al de 21 segundos, el algo i mo de e mina que solo se pod á da una uel a al ci cui o.
Po o o lado, en el lado de echo se encuen a una ep esen ación del mapa o al con sus a-
yec o ias. La o ma de las ayec o ias es la misma que en los ejemplos an e io es, donde en es e
caso se han di e enciado con una g an a iedad de colo es pa a isualiza las co ec amen e. Los
es a opue os uel en a es a ep esen ados como cí culos de colo azul. Es os se encuen an en los
al ededo es de la zona obje i o. Se i án eligiendo su uso según p oximidad al inicio de cada ozo a
inspecciona . Algunos se án usados po un único UAV y o os puede que has a po es ae ona es
dis in as. Las dos imágenes que se han comen ada se encuen an ecogidas en la Figu a 3.40. A
con inuación se an a mos a seis imágenes que co esponden con la simulación de las ayec o ias,
odas ellas se encuen an en la Figu a 3.41 y en la Figu a 3.42.
(a) Despegue. (b) Ap oximación a la u a. (c) Inspección (1).
Figu a 3.41 Despegue, ap oximación e inspección. Ejemplo 4.
3.2 Inspección de un á ea 99
(a) Inspección (2). (b) Inspección (3). (c) Ap oximación inal.
Figu a 3.42 Inspección, eg eso y a e izaje. Ejemplo 4.
La p ime a de las imágenes mues a la posición de odas las ae ona es an es del despegue. En
es a si uación hab á algunas que comiencen su mo imien o an es y o as después. Es o depende á
de lo ce ca o lejos que se si úe el es a opue o de la zona a in es iga . En la segunda imagen
ya se empiezan a ace ca algunas de los UAVs a sus zonas de in es igación. Se obse a que las
ae ona es que salen desde es a opue os más alejados, han enido que sali con más iempo ya
que la inspección se ealiza á de o ma simul ánea pa a odas. Po eso, se pueden obse a algunos
ehículos que oda ía no han comenzado su uelo, ya que es a án más ce ca de sus espec i as
zonas.
En la e ce a imagen ya se puede obse a una si uación in e esan e donde odas las ae ona es se
encuen an olando de una o ma o ganizada eco iendo las mismas zonas en los mismos iempos.
Se ha podido comp oba que aunque se incluya una lo a con un mayo núme o de ae ona es, es o no
p o oca ningún ipo de incon enien e sob e el algo i mo. Sob e la cua a imagen se sigue obse ando
es e uelo an sinc onizado. La ayec o ia es á llegando a su in y las ae ona es se p epa an pa a
ealiza su úl imo amo de inspección sob e el bo de in e io de la zona a inspecciona . Es o que se
comen a se mues a en la quin a imagen donde odas las ae ona es ealizan es e amo que pe mi e
eg esa a la base mien as se e mina de e isa la zona.
Finalmen e, cada ehículo de la lo a eg esa a su es a opue o co espondien e después de habe
comple ado con éxi o la misión como se puede e en la sex a g á ica. Po úl imo, una ez inalizada
la simulación, se ob ienen los esul ados de las ayec o ias de odas las ae ona es, Figu a 3.43.
Figu a 3.43 Resul ados ob enidos del ejemplo 4.
100 Capí ulo 3. Simulación
Como en los ejemplos an e io es, es os esul ados ienen exp esados como una es uc u a que
con iene doce elemen os. Cada uno de es os elemen os ep esen a una de las ae ona es u ilizadas
pa a la inspección de las doce zonas. En es as ayec o ias se ienen cada una de las coo denadas en
las que iene que si ua se cada ae ona e en cada ins an e de iempo sepa adas po un imes amp
in oducido en los da os. Además de las coo denadas, ambién se indica la o ien ación de es as en
odo momen o.
4 P uebas Reales
En
es a úl ima sección del abajo, se a a ealiza una demos ación donde una lo a de ehículos
no ipulados eco a alguna de las ayec o ias que se han p esen ado en ejemplos an e io es
o simila es. P ime o se an a comen a las posibles aplicaciones eales que pueden ene las
ayec o ias y se ha á una b e e explicación del en o no donde se an a p oba las ayec o ias
simuladas. Pos e io men e se ealiza án es casos dis in os donde se mos a á la ayec o ia, se
ealiza á la simulación co espondien e y se p oba án en un en o no ealis a.
4.1 In oducción
La plani icación de ayec o ias es un ecu so con mucho u u o en el sec o ag a io que poco a
poco se a digi alizando más y más. Además, o os muchos sec o es se desa olla ían más haciendo
uso de d ones que op imicen las inspecciones de sus equipos de abajo como pod ía se una plan a
de placas sola es. Es po ello que a es as ayec o ias que se han plan eado en es e abajo se les ha
buscado una aplicación. También es impo an e que pa iendo de las ayec o ias c eadas, se pueda
ealiza una simulación donde se comp uebe el compo amien o que end á la lo a de ehículos
que eco e án es as u as. Po an o, se a a u iliza un ejemplo con aplicación eal pa a demos a
la aplicabilidad del algo i mo c eado.
El ejemplo que se a a a a se basa á en una misión de igilancia a a és de dis in os e i o ios
de la comunidad au ónoma de Andalucía. Es a misión se di idi á en es casos de uso dis in os.
En el p ime o de los casos se ealiza á una inspección de un pun o si uado en los al ededo es de
la p o incia de Có doba. Pa a el siguien e de los casos de uso se p e ende ealiza una misión de
inspección sob e odo el e i o io de Andalucía u ilizando an solo 3 ae ona es. Po úl imo, en el
e ce ejemplo se ealiza á la misma inspección que se hizo en el segundo pe o se pod án u iliza
más ae ona es has a un o al de 6 ehículos en la lo a.
Pa a p oba es as misiones p ime o hab á que c ea las ayec o ias que esuel an el p oblema de
la o ma más e icien e. Pos e io men e, se ha á una simulación pa a comp oba que las ayec o ias
cumplen con lo espe ado y obse a como eco en las ayec o ias, como ealizan los despegues
y como espe an las dis ancias en e las ae ona es. Finalmen e, se e mina á el caso p obando las
ayec o ias en una p ueba eal y compa ando los esul ados ob enidos con la simulación.
Los algo i mos que ealiza án es as ayec o ias y las simulaciones co espondien es ya han sido
explicados a lo la go del abajo. Es po ello que a con inuación se explica á únicamen e el en o no
eal donde se a a abaja .
101

102 Capí ulo 4. P uebas Reales
4.1.1 Banco de p uebas
Pa a ealiza es as p uebas se ha hecho uso de un espacio, Figu a 4.1, pe enecien e a la emp esa
CATEC (Cen o A anzado de Tecnologías Ae oespaciales) dónde se pueden ealiza p uebas como
la coope ación y coo dinación de lo as de ehículos [2].
Figu a 4.1 Banco de p uebas.
Es e banco de p uebas dispone de 20 cáma as VICON que o man un sis ema de posicionamien o
en in e io es. Es e sis ema ob iene la posición y la ac i ud de los obje os que se encuen e en un
olumen de 15x15x5 me os.
Es e es el mo i o po el que las ayec o ias c eadas en los ejemplos mos ados en capí ulos
an e io es u ilizaban angos meno es a 10 me os de dis ancia y a unas elocidades bajas, ya que se
p e endían ealiza p uebas sob e el banco de p uebas mencionado.
4.1.2 C azy lies
Es e concep o co esponde con un pequeño d on de cua o mo o es que cabe en la palma de la mano,
Figu a 4.2. Es e d on es muy u ilizado pa a ealiza p uebas sob e algo i mos en desa ollo, ya que
po su pequeño amaño, su peso an lige o de an solo 27 g amos y las elocidad bajas a las que
se usan, p opo cionan mucha segu idad en los casos en los que alguna pa e de los algo i mos en
desa ollo allen. Además, es e d on es muy esis en e a los golpes y las colisiones a las que pueden
se some idos en es as p uebas [4].
Figu a 4.2 C azy lies.
4.2 1ª Aplicación 103
Es os d ones se u iliza án como una lo a pa a ealiza las p uebas que se e án en los siguien es
apa ados del abajo. En es e abajo no se a a explica como se u ilizan los mismos ya que se sale
de las líneas de abajo de inidas.
4.2 1ª Aplicación
4.2.1 Simulación
En es a p ime a aplicación se a a ealiza una inspección sob e una zona que se encuen a al No e
de la ciudad de Có doba. Es a inspección se ealiza á con una lo a de es ae ona es que man engan
una dis ancia de segu idad en e ellos. Es a dis ancia ambién pe mi e que se ealice la inspección
espe ando el iempo que se quie e man ene en e inspección e inspección.
Pa a c ea el en o no se ha impo ado una imagen del mapa de Andalucía. Ha sido necesa io
modi ica la posición de la imagen pa a que se encuen e adecuadamen e o ien ada a la ho a de
hace una igu a con ella en MATLAB. Además, se obse a á en las siguien es imágenes que las
ayec o ias ealizadas es án gi adas espec o los ejemplos mos ados en la sección an e io . Es o es
debido al en o no donde se ealiza án las p uebas que iene su p opio sis ema de coo denadas y se
han adap ado las ayec o ias al mismo. Todo es o se i á comen ando a lo la go de la sección.
Figu a 4.3 T ayec o ia 1ªaplicación.
En la Figu a 4.3 se obse a el mapa de Andalucía donde se han si uado es es a opue os dis in os
bas an e dis anciados unos de o os. El pun o de inspección queda ma cado con un cuad ado na anja
al No e de Có doba en el cen o de la imagen. Las u as que se encuen an ep esen adas en ama illo
son las ayec o ias que i án eco iendo las ae ona es. Po o o lado, el ci cui o ep esen ado en
colo e de mues a la ayec o ia de inspección que ealiza a la lo a de ehículos no ipulados. A
con inuación se a a mos a en la Figu a 4.4, como se hizo en las secciones an e io es, una se ie de
imágenes que co esponde án a momen os dis in os a lo la go de la simulación.
104 Capí ulo 4. P uebas Reales
(a) Despegue y ap oximación. (b) Inspección. (c) Reg eso y a e izaje.
Figu a 4.4 Simulación 1ªaplicación.
En es e caso se obse an es imágenes las cuales co esponden a dis in os ins an es esal ados a
lo la go de la simulación. En la p ime a de las igu as se mues a como la lo a se es á ap oximando
en o den al ci cui o de inspección. La ae ona e de que comenzó más al su oes e de la imagen ue
la p ime a en despega ya que e a el UAV que iba a comenza la inspección y pa ía desde un
pun os bas an e lejano. Pos e io men e salió el UAV si uado más al su que ambién pa e desde
un es a opue o alejado de la zona de inspección. Po úl imo, desde el es a opue o si uado en la
pa e supe io de echa de la imagen salió el e ce UAV que se á el segundo en llega al pun o de
inspección po ce canía al mismo.
En la imagen cen al se obse a ya a la lo a de ehículos no ipulados ealizando las inspecciones
en el ci cui o de colo e de. En es e ci cui o oda la lo a man iene una dis ancia de sepa ación
igual a un e cio de la dis ancia o al de la u a, ya que se a a de una lo a de es ae ona es. A
lo la go de la simulación se an a ealiza 4 uel as al ci cui o an es de eg esa a los espec i os
es a opue os.
Po úl imo, en la e ce a imagen la lo a de ehículos ya ha ealizado odas las uel as de inspección
y p ocede a eg esa a sus pun os de pa ida y a e iza en ellos.
4.2.2 En o no eal
La úl ima ase de es a aplicación se ía p oba las ayec o ias en una lo a de d ones eales pa a
e i ica que la simulación ealizada co esponde con los esul ados que se ob end ían en una
aplicación eal. Pa a ello se han elegido los d ones c azy lies en el banco de p uebas del que se ha
hablado en la in oducción de es a sección. G acias a es os dos se han podido p oba las ayec o ias
que se han c eado y se ha comp obado que la simulación unciona de o ma sa is ac o ia.
A con inuación, se an a mos a es imágenes, en la Figu a 4.5, las cuales co esponden a
dis in os momen os a lo la go de la p ueba eal que se g abó en ídeo.
(a) Despegue. (b) Inspección. (c) Reg eso y a e izaje.
Figu a 4.5 P ueba eal 1ªaplicación.
4.3 2ª Aplicación 105
Es as es imágenes mues as momen os ce canos a los ep esen ados en la simulación. En la
p ime a imagen la ae ona e que se encuen a en la pa e supe io izquie da es la p ime a en despega
mien as que las o as es án espe ando que que llegue su momen o pa a despega y ap oxima se
al ci cui o de inspección. Cabe des aca que como se dijo en los apa ados que comen aban las
simulaciones, las ayec o ias se han c eado en base a es as p uebas en las que las ae ona es despegan
e icalmen e ponde ando su posición en cada ins an e. Una ez e minado el a e izaje, se puede
comp oba que el iempo anscu ido es el mismo que se indicaba en los esul ados de la simulación.
En la segunda imagen la lo a ya se encuen a ealizando la inspección man eniendo la dis ancia
de segu idad co espondien e. En es e ci cui o se ealizan 4 uel as como es aba indicado an es
de eg esa a los pun os desde los que despega on. En ningún momen o de la p ueba los ehículos
se salen de la u a indicada. Finalmen e, una ez ealizada las uel as de inspección, p oceden a
eg esa po las u as especí icas pa a cada UAV a los pun os desde los que despega on. En la e ce a
imagen se obse a ese momen o en el que el p ime UAV es á a e izando (a la izquie da de la
imagen) y los o os dos es án ap oximándose a sus es a opue os co espondien es.
Una ez inalizada es a p ueba se e i ica que los esul ados ob enidos en el en o no eal co-
esponden con los que se ob u ie on en la simulación y espe an las ayec o ias c eadas con el
algo i mo co espondien e.
4.3 2ª Aplicación
4.3.1 Simulación
En es e segundo ejemplo de posibles aplicaciones de las ayec o ias se a p esen a una se ie de
u as pa a es UAVs dis in os. Es as ae ona es se enca ga án de ealiza una inspección de oda la
supe icie de Andalucía. Pa a consegui es e p opósi o ap o echa án que disponen de un g an campo
de isión que les pe mi e moni o iza g an pa e de Andalucía en pocas pasadas. Pa a disminui
el iempo o al se han in oducido un o al de 3 ehículos en la lo a. Es os ehículos eco e án
Andalucía en di ección de Es e a Oes e y ice e sa. Además, una ez c eadas las ayec o ias se
ealiza á una simulación de las mismas con el algo i mo diseñado y po úl imo una demos ación
eal de como se compo a ían las ae ona es.
P ime o se a a mos a en la Figu a 4.6 las dis in as u as que eco e á cada ae ona es. Es as
ayec o ias se pueden obse a en la siguien e imagen.
Figu a 4.6 T ayec o ia 2ªaplicación.

Índice de Figu as
1.1 High Al i ude Pseudo Sa elli es 2
1.2 His ó ico de p oyec os con HAPS 2
1.3 Tipos de HAPS 3
1.4 Aplicaciones pa a las ayec o ias [10] 4
1.5 Algo i mos plani icado es 5
1.6 Algo i mo RRT 5
1.7 Posibles á eas a inspecciona 6
2.1 Cu a de Dubins. Ejemplo básico 9
2.2 Cu a de Dubins. Ejemplo de un es acionamien o en coche 10
2.3 Cu a de Dubins. Ejemplo de i aje en ba co 11
2.4 Cu a de Dubins. Ejemplo de gi o de 180◦en a ión (1) 11
2.5 Cu a de Dubins. Ejemplo de gi o de 180◦en a ión (2) 12
2.6 Posibles cu as de Dubins 12
2.7 Cálculo cu a de Dubins RSL (1) 13
2.8 Cálculo cu a de Dubins RSL (2) 13
2.9 Cálculo cu a de Dubins RSL (3) 14
2.10 Cálculo cu a de Dubins RSL (4) 14
2.11 Cálculo cu a de Dubins RSL (5) 15
2.12 Cálculo cu a de Dubins RSL (6) 16
2.13 Cálculo cu a de Dubins RSL (7) 16
2.14 Ejemplo en MATLAB de cu a de Dubins 17
2.15 Ejemplo modi icado en MATLAB de cu as de Dubins (1) 18
2.16 Ejemplo modi icado en MATLAB de cu as de Dubins (2) 19
2.17 Ejemplo del código de Hsin-Yi 20
2.18 Mensaje del código de Hsin-Yi 20
2.19 Campo de isión de una pe sona 24
2.20 Campo de isión de una ae ona e 25
2.21 Cu a ce ada con caminos de Dubins 27
2.22 Inspección básica de un pun o 29
2.23 Inspección con des ío 29
2.24 Inspección con espe a en hipód omo 30
2.25 Ejemplo de pa ón de espe a 30
2.26 Inspección con espe a en o ma de in ini o 31
2.27 Inspección con espe a en hipód omo y iempo mínimo 32
2.28 Ejemplos pun os auxilia es (1) 36
113
114 Índice de Figu as
2.29 Ejemplos pun os auxilia es (2) 38
2.30 Cálculo de ayec o ia espe ando imes amp (1) 46
2.31 Cálculo de ayec o ia espe ando imes amp (2) 46
2.32 Ejemplo de ayec o ia gené ica 47
2.33 Ejemplo búsqueda en á ea (1) 48
2.34 Ejemplo búsqueda en á ea (2) 49
2.35 O os ejemplos de búsqueda en á ea 49
2.36 Ejemplo búsqueda en á ea ce ada 50
2.37 Ejemplo á ea ec angula di idida 54
2.38 Selección de coo denadas de pasadas de inspección (1) 57
2.39 Selección de coo denadas de pasadas de inspección (2) 58
2.40 Ejemplo de ayec o ia gené ica (1) 63
2.41 Ejemplo de ayec o ia gené ica (2) 63
2.42 Aplicación del algo i mo comple o (1) 71
2.43 Aplicación del algo i mo comple o (2) 71
3.1 Da os del ejemplo 1 77
3.2 Ru a comple a del ejemplo 1 78
3.3 Despegue y p ime a inspección. Ejemplo 1 78
3.4 Segunda inspección y a e izaje. Ejemplo 1 79
3.5 Resul ados ob enidos del ejemplo 1 79
3.6 Da os del ejemplo 2 80
3.7 Ru a comple a del ejemplo 2 80
3.8 Despegues y ap oximación. Ejemplo 2 81
3.9 Inspección y a e izajes. Ejemplo 2 81
3.10 Resul ados ob enidos del ejemplo 2 (1) 82
3.11 Resul ados ob enidos del ejemplo 2 (2) 82
3.12 Da os del ejemplo 3 83
3.13 Ru a comple a del ejemplo 3 83
3.14 Despegues y ap oximación. Ejemplo 3 84
3.15 Inspección y a e izajes. Ejemplo 3 84
3.16 Resul ados ob enidos del ejemplo 3 (1) 85
3.17 Resul ados ob enidos del ejemplo 3 (2) 85
3.18 Da os del ejemplo 4 86
3.19 Ru a comple a del ejemplo 4 86
3.20 Despegues y ap oximación. Ejemplo 4 87
3.21 Inspección y a e izajes. Ejemplo 4 87
3.22 Resul ados ob enidos del ejemplo 4 88
3.23 Da os del ejemplo 1 89
3.24 Ru a comple a del ejemplo 1 90
3.25 Despegue, ap oximación e inspección. Ejemplo 1 90
3.26 Inspección, eg eso y a e izaje. Ejemplo 1 91
3.27 Resul ados ob enidos del ejemplo 1 91
3.28 Da os del ejemplo 2 92
3.29 Ru a comple a del ejemplo 2 92
3.30 Despegue, ap oximación e inspección. Ejemplo 2 93
3.31 Inspección, eg eso y a e izaje. Ejemplo 2 93
3.32 Resul ados ob enidos del ejemplo 2 (1) 94
3.33 Resul ados ob enidos del ejemplo 2 (2) 94
3.34 Da os del ejemplo 3 95
Índice de Figu as 115
3.35 Ru a comple a del ejemplo 3 95
3.36 Despegue, ap oximación e inspección. Ejemplo 3 96
3.37 Inspección, eg eso y a e izaje. Ejemplo 3 96
3.38 Resul ados ob enidos del ejemplo 3 97
3.39 Da os del ejemplo 4 97
3.40 Ru a comple a del ejemplo 4 98
3.41 Despegue, ap oximación e inspección. Ejemplo 4 98
3.42 Inspección, eg eso y a e izaje. Ejemplo 4 99
3.43 Resul ados ob enidos del ejemplo 4 99
4.1 Banco de p uebas 102
4.2 C azy lies 102
4.3 T ayec o ia 1ª aplicación 103
4.4 Simulación 1ª aplicación 104
4.5 P ueba eal 1ª aplicación 104
4.6 T ayec o ia 2ª aplicación 105
4.7 Simulación 2ª aplicación 106
4.8 P ueba eal 2ª aplicación 107
4.9 T ayec o ia 3ª aplicación 107
4.10 Simulación 3ª aplicación 108
4.11 P ueba eal 3ª aplicación 109
Índice de Códigos
2.1 Función de cu a de Dubins de MATLAB 16
2.2 Función de cu a de Dubins de MATLAB modi icada 18
2.3 Ejemplo del código de Hsin-Yi 20
2.4 Función dubins_cu e.m (1) 21
2.5 Función dubins_cu e.m (2) 21
2.6 Función dubins_co e.m (1) 22
2.7 Función dubins_co e.m (2) 22
2.8 Función dubins_co e.m (3) 23
2.9 Cu a ce ada con caminos de Dubins 27
2.10 Inspección básica de un pun o 28
2.11 Cálculo de la ayec o ia más co a 35
2.12 Tiempos de la ayec o ia más co a 37
2.13 Cálculo del núme o de UAVs necesa ios 37
2.14 Reo ganización de zonas de despegue 39
2.15 Cálculo de la ayec o ia 2D (1) 39
2.16 Cálculo de la ayec o ia 2D (2) 40
2.17 Cálculo de la ayec o ia 2D (3) 41
2.18 Cálculo de la ayec o ia 2D (4) 41
2.19 Cálculo del momen o de despegue pa a cada UAV 42
2.20 Cálculo de la ayec o ia 4D (1) 43
2.21 Cálculo de la ayec o ia 4D (2) 44
2.22 Cálculo de la ayec o ia 4D (3) 44
2.23 Cálculo de la ayec o ia 4D (4) 45
2.24 Rep esen ación de la ayec o ia 46
2.25 Función ec ángulo de inspección 52
2.26 Di isión del á ea (1) 53
2.27 Di isión del á ea (2) 54
2.28 Reo ganización de zonas de despegue 55
2.29 Cálculo de ayec o ia 2D (1) 55
2.30 Cálculo de ayec o ia 2D (2) 56
2.31 Cálculo de ayec o ia 2D (3) 57
2.32 Cálculo de ayec o ia 2D (4) 58
2.33 Cálculo del núme o de uel as (1) 58
2.34 Cálculo del núme o de uel as (2) 59
2.35 Cálculo de ayec o ia 2D (5) 59
117

118 Índice de Códigos
2.36 Cálculo de ayec o ia 4D (1) 60
2.37 Cálculo de ayec o ia 4D (2) 60
2.38 Cálculo de ayec o ia 4D (3) 61
2.39 Cálculo de ayec o ia 4D (4) 61
2.40 Rep esen ación de la ayec o ia 62
2.41 Algo i mo de inspección gené ico (1) 64
2.42 Algo i mo de inspección gené ico (2) 65
2.43 Algo i mo de inspección gené ico (3) 65
2.44 Algo i mo de inspección gené ico (4) 66
2.45 Algo i mo de inspección gené ico (5) 66
2.46 Algo i mo de inspección gené ico (6) 67
2.47 Algo i mo de inspección gené ico (7) 67
2.48 Algo i mo de inspección gené ico (8) 68
2.49 Algo i mo de inspección gené ico (9) 68
2.50 Algo i mo de inspección gené ico (10) 69
2.51 Sc ip de da os iniciales (1) 69
2.52 Sc ip de da os iniciales (2) 70
2.53 Código App Designe (1) 72
2.54 Código App Designe (2) 72
3.1 Simulación del UAV 75
3.2 Simulación del campo de isión 76
Bibliog a ía
[1]
App designe — The Ma h Wo ks, Inc.,,h ps:// es.ma hwo ks.com/ p oduc s/ ma lab/ app-
designe .h ml.
[2]
Banco de p uebas,h p:// www.ca ec.ae o/ es/ a iónica-y-sis emas/ equipamien o/ banco-de-
p uebas-o- es bed-en-in e io es.
[3]
Campo isual — wikipedia, la enciclopedia lib e,h ps:// es.wikipedia.o g/ w/ index.php? i le=
Campo_ isual&oldid=143021389.
[4] C azy lie 2.1,h ps:// www.bi c aze.io/ p oduc s/ c azy lie-2-1/ .
[5]
Dubins pa h — Wikipedia, he ee encyclopedia,h ps:// en.wikipedia.o g/ w/ index.php? i le=
Dubins_pa h&oldid=1097724697.
[6]
dubinsconnec ion — The Ma h Wo ks, Inc.,,h ps:// es.ma hwo ks.com/ help/ na / e /
dubinsconnec ion.h ml.
[7]
Es uc u as — The Ma h Wo ks, Inc.,,h ps:// es.ma hwo ks.com/help/ ma lab/ s uc u es.h ml.
[8] Je s eam — Wikipedia, he ee encyclopedia,h ps:// en.wikipedia.o g/ w/ index.php? i le=
Je _s eam&oldid=1106515485.
[9] Al an, global leade in inno a ion en ajas y u ilidades u u as de las haps, 2017.
[10]
Eu opean Highe Ai space, S a obus p ojec by hales alenia space, 2021, h ps://
highe ai space.eu/ s a obus-p ojec -by- hales-alenia-space.
[11]
José Ayala, Leng h minimising bounded cu a u e pa hs in homo opy classes, Topology and
i s Applica ions 193 (2015), 140–151.
[12]
José Ayala, Da id Ki szenbla , and J Hyam Rubins ein, A geome ic app oach o sho es
bounded cu a u e pa hs, a Xi p ep in a Xi :1403.4899 (2014).
[13]
Tes o SE & Co, Campo de isión, obje o isible más pequeño y zona de medición, (Consul ado
en 2022).
[14]
RPAS D ones, S a obus: una pla a o ma es a os é ica a medio camino en e un d on y un
sa éli e, (2018).
[15]
Les e E Dubins, On cu es o minimal leng h wi h a cons ain on a e age cu a u e, and
wi h p esc ibed ini ial and e minal posi ions and angen s, Ame ican Jou nal o ma hema ics
79 (1957), no. 3, 497–516.
[16]
Ha old H Johnson, An applica ion o he maximum p inciple o he geome y o plane cu es,
P oceedings o he Ame ican Ma hema ical Socie y 44 (1974), no. 2, 432–435.
119
120 Bibliog a ía
[17]
Hsin-Yi Kang, A ma lab e sion o dubins cu e based on and ew walke ’s wo k, 2016,
h ps:// gi hub.com/ EwingKang/ Dubins-Cu e-Fo -MATLAB.
[18] Ke in Chmiela, Dubins pa h, 2016, h ps:// www.you ube.com/ wa ch? =N 6EX_0V8wM.
[19]
De ek Kings on, S e en Rasmussen, and Lau a Humph ey, Au oma ed ua asks o sea ch and
su eillance, 2016 IEEE Con e ence on Con ol Applica ions (CCA), IEEE, 2016, pp. 1–8.
[20] S e en M LaValle, Planning algo i hms, Camb idge uni e si y p ess, 2006.
[21]
Anna Ma í, Haps, los híb idos en e sa éli e y d on que usa á la esa pa a amplia la explo a-
ción y mejo a las comunicaciones, (2017).
[22]
In e na ional Vi ual A ia ion O ganisa ion, Pe o m an holding pa e n en y - di ec en y,
2022, h ps:// mediawiki.i ao.ae o/ index.php? i le=Pe o m_an_Holding_pa e n_en y_-_
di ec _en y.
[23]
José Rica do Sánchez-Ibáñez, Ca los J Pé ez-del Pulga , and Al onso Ga cía-Ce ezo, Pa h
planning o au onomous mobile obo s: A e iew, Senso s 21 (2021), no. 23, 7898.
[24]
And ei M Shkel and Vladimi Lumelsky, Classi ica ion o he dubins se , Robo ics and Au o-
nomous Sys ems 34 (2001), no. 4, 179–202.
[25]
ESA Space Solu ions, Se ices enabled by high al i ude pseudo sa elli es (haps) complemen ed
by sa elli es, (2017).
[26]
And ew Walke , Dubins-cu es: an open implemen a ion o sho es pa hs o he o wa d
only ca , 2008–, h ps:// gi hub.com/ And ewWalke / Dubins-Cu es.
[27] Ángel Alle , Ap ende a bene icia e del campo de isión en us ideojuegos, (2021).