scieee Science in your language
[es] (orig)

Sistema de comunicaciones IOT para vehículos autónomos

Abstract

El objetivo de este trabajo es el desarrollo de un sistema de comunicaciones IoT para vehículos autónomos e integración de éste en entornos reales, así como las pruebas de rendimiento y la robustez del propio sistema. Se ha utilizado una arquitectura basada en protocolos de comunicación IoT, en concreto, el protocolo MQTT, que permite la comunicación entre vehículo-vehículo (V2V) o vehículo-infraestructura (V2I) y como consecuencia una red de comunicación entre diferentes vehículos y la infraestructura. Entre las tareas realizadas está la adaptación del sistema de comunicación a diferentes vehículos autónomos, ensayos de transmisión de datos, determinación del rendimiento de las comunicaciones, y la validación del sistema para su uso en el control de los vehículos y operación en entornos reales. Sobre el sistema de comunicaciones es el que permite el envío y recepción de datos entre cada uno de los nodos de la estructura de la red, por lo que un sistema fiable y robusto es indispensable para que los vehículos sean capaces de realizar la tarea encomendada.

Read accessible full text

Sistema de comunicaciones IOT para vehículos autónomos

Author: López de la Torre Ortego, Carlos; Sanz Rodríguez, Gonzalo
Year: 2021
Source: https://docta.ucm.es/bitstreams/c574a0f0-443e-4b2a-b8e9-84d55c5a6ec2/download
SISTEMA DE COMUNICACIONES IOT
PARA VEHÍCULOS AUTÓNOMOS
IOT COMMUNICATIONS SYSTEM FOR AUTONOMOUS VEHICLES
TRABAJO FIN DE GRADO
CURSO 2020-2021
AUTORES
CARLOS LÓPEZ DE LA TORRE ORTEGO
GONZALO SANZ RODRÍGUEZ
DIRECTORES
JOSÉ ANTONIO LÓPEZ OROZCO
JESÚS CHACÓN SOMBRÍA
GRADO EN INGENIERÍA INFORMÁTICA
FACULTAD DE INFORMÁTICA
UNIVERSIDAD COMPLUTENSE DE MADRID
Sis ema de comunicaciones IoT pa a ehículos au ónomos
i
Au o ización de di usión
Los au o es de es e p oyec o au o izan a la Uni e sidad Complu ense de
Mad id a di undi y u iliza el p esen e T abajo Fin de G ado, an o la
aplicación como la memo ia, únicamen e con ines académicos, no
come ciales y mencionando exp esamen e a sus au o es. También au o iza
a la Biblio eca de la UCM a deposi a el abajo en el A chi o Ins i ucional E-
P in s Complu ense.
Au o es:
• Ca los López de la To e O ego.
• Gonzalo Sanz Rod íguez.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
ii
Ag adecimien os
“Dedicado a nues as amilias y amigos que siemp e han c eído en
noso os, y nos han apoyado du an e odos es os años.”
Sis ema de comunicaciones IoT pa a ehículos au ónomos
iii
Resumen
El obje i o de es e abajo es el desa ollo de un sis ema de
comunicaciones IoT pa a ehículos au ónomos e in eg ación de és e en
en o nos eales, así como las p uebas de endimien o y la obus ez del
p opio sis ema.
Se ha u ilizado una a qui ec u a basada en p o ocolos de comunicación
IoT, en conc e o, el p o ocolo MQTT, que pe mi e la comunicación en e
ehículo- ehículo (V2V) o ehículo-in aes uc u a (V2I) y como
consecuencia una ed de comunicación en e di e en es ehículos y la
in aes uc u a.
En e las a eas ealizadas es á la adap ación del sis ema de
comunicación a di e en es ehículos au ónomos, ensayos de ansmisión de
da os, de e minación del endimien o de las comunicaciones, y la
alidación del sis ema pa a su uso en el con ol de los ehículos y ope ación
en en o nos eales.
Sob e el sis ema de comunicaciones es el que pe mi e el en ío y
ecepción de da os en e cada uno de los nodos de la es uc u a de la ed,
po lo que un sis ema iable y obus o es indispensable pa a que los
ehículos sean capaces de ealiza la a ea encomendada.
Palab as cla e: UAV, MQTT, IoT.

Sis ema de comunicaciones IoT pa a ehículos au ónomos
i
Abs ac
The objec i e o his wo k is he de elopmen o an IoT communica ion
sys em o au onomous ehicles and i s in eg a ion in eal en i onmen s, as
well as pe o mance es s and he obus ness o he sys em i sel . This sys em,
a an ini ial poin , was in a semi- unc ional s a e wi h se e al ailu es, because
i could no be es ed in a eal si ua ion, only in simula ion.
An a chi ec u e based on IoT communica ion p o ocols has been used,
speci ically he MQTT p o ocol has been used, which allows communica ion
be ween ehicle- ehicle (V2V) o ehicle-in as uc u e (V21) and in his way
allows a communica ion ne wo k be ween di e en ehicles and he
in as uc u e.
Among he asks ca ied ou is he adap a ion o he communica ion
sys em o di e en au onomous ehicles, da a ansmission es s and
de e mina ion o he communica ion pe o mance, and he alida ion o he
sys em o i s use in he con ol o ehicles and ope a ion in eal
en i onmen s.
The communica ion sys em allows he sending and ecei ing o da a
be ween each o he nodes o he ne wo k s uc u e, so a eliable and obus
sys em is essen ial o he ehicles o be able o ca y ou he ask en us ed
o hem.
Keywo ds: UAV, MQTT, IoT.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
Tabla de Con enidos
Tabla de ac ónimos .............................................................. ii
1 In oducción y obje i os .................................................. 1
1.1 In oducción ......................................................................................... 1
1.2 Obje i os ............................................................................................... 2
1.3 Me odología ......................................................................................... 3
2 Es ado del a e .................................................................. 5
2.1 P o ocolo: ca ac e ís icas, en ajas y des en ajas ........................... 7
2.1.1 Message Queue Teleme y T anspo .......................................... 9
3 Sis ema de comunicaciones pa a ehículos............... 13
3.1 A qui ec u a de la ed de senso es .................................................. 13
3.1.1 Comunicación Vehicle- o-Vehicle (V2V) ................................. 13
3.1.2 Comunicaciones Vehicle- o-In aes uc u e (V2I) .................... 15
3.2 Topologías de ed .............................................................................. 16
4 Elemen os Ha dwa e y So wa e empleados ............... 20
4.1 Ha dwa e ............................................................................................ 20
4.1.1 XBee Wi i ...................................................................................... 21
4.1.2 XBee 3G ....................................................................................... 23
4.1.3 Raspbe y Pi 2 y 3B+: ................................................................... 24
4.2 So wa e .............................................................................................. 26
4.2.1 Esquema de comunicaciones ................................................... 27
4.2.2 Clien MQTT .................................................................................. 28
4.2.3 MQTT_API ..................................................................................... 31
4.2.4 P oxy ............................................................................................. 38
5 Rendimien o y e aluación del sis ema ........................ 49
5.1 Medidas de alcance ......................................................................... 52
Sis ema de comunicaciones IoT pa a ehículos au ónomos
i
5.1.1 Medidas es á icas....................................................................... 56
5.1.2 Medidas dinámicas .................................................................... 62
5.2 Medida de e a do con el amaño de paque e ........................... 66
5.2.1 Medidas de pé didas con QoS 0 .............................................. 66
5.2.2 Medida de e a do en QoS 1 y 2 .............................................. 67
5.3 Medidas de conges ión .................................................................... 69
5.4 Medidas con módulo 3G .................................................................. 72
5.4.1 Medidas según el pe iodo de en ío ......................................... 73
6 Ejemplo de caso de uso ................................................. 80
7 Conclusiones y abajo u u o ........................................ 85
7.1 Conclusiones ...................................................................................... 85
7.2 T abajo u u o ..................................................................................... 87
8 Con ibuciones ................................................................ 91
• Ca los López de la To e O ego: ......................................................... 91
• Gonzalo Sanz Rod íguez: ...................................................................... 91
8.1 T abajo conjun o ................................................................................ 92
Bibliog a ía ............................................................................ 94
Sis ema de comunicaciones IoT pa a ehículos au ónomos
ii
Tabla de ac ónimos
Ab e ia u a
Signi icado
UAV
Vehículo aé eo no ipulado (Unmanned
Ae ial Vehicle).
UGV
Vehículo e es e no ipulado (Unmanned
G ound Vehicle).
Topic
Se a a de una cadena de ex o
ca ego izada po un nomb e y que si e pa a
es ablece la conexión en e el publicado y el
susc ip o . Se iden i ica po el nomb e y en un
opic pueden exis i subca ego ías
denominadas sub opics.
U.A.R. T
Se a a de un disposi i o que con ola los
pue os y disposi i os se ie. Po lo gene al se
encuen a in eg ado en una placa base.
B oke
Den o de la es uc u a de comunicaciones,
el B oke , es el se ido den o de las
comunicaciones, acep ando mensajes
publicados po clien es y ansmi iendo es os a
los clien es susc ip o es. Es e ipo de en ío y
ecepción de da os se ealiza a a és de un
opic.
IoT
Conjun o de ecnologías que comunican
dis in os ipos de disposi i os en e sí, en e es as
ecnologías se encuen an p o ocolos y ipos de
in e conexión en e disposi i os, In e ne o
Things.
MQTT
P o ocolo de comunicaciones IoT, que u iliza
opics.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
2
1.2 Obje i os
El obje i o de es e abajo es la pues a en uncionamien o de un sis ema de
comunicaciones pa a ehículos no ipulados, con una a qui ec u a basada
en p o ocolos MQTT, pe enecien e a las ecnologías IoT (In e ne o Things),
que se a a de un conjun o de ecnologías que comunican dis in os ipos de
disposi i os en e sí, que pe mi a en ia y ecibi in o mación ehículo- ehículo
(V2V) o ehículo-in aes uc u a (V2I). Dicho sis ema, en un pun o inicial, se
encon aba en un es ado semi- uncional con di e sos allos, debido a que no
se pudo es ea en una si uación eal, solamen e en simulación
En e las a eas a ealiza se incluyen como se ha mencionado
p e iamen e:
(1) La adap ación del sis ema de comunicaciones a di e en es ehículos
au ónomos median e una API (Applica ion P og amming In e az) que pe mi a
su in eg ación en dis in as ecnologías de comunicación sin e se a ec ado o
pe judicado po el cambio, como puede se la comunicación basada en
módulos con ecnologías Wi i o ecnologías 3G indis in amen e.
(2) Realiza una se ie de ensayos de ansmisión exhaus i os omando da os
pa a un pos e io análisis del endimien o de las comunicaciones que pe mi a
con o al libe ad oma decisiones dependiendo del uso que quie a da se
según di e sos ac o es como el en o no, ci cuns ancias conc e as...
(3) Validación del sis ema pa a su uso en el con ol de los ehículos y
ope ación en escena ios eales.

Sis ema de comunicaciones IoT pa a ehículos au ónomos
3
1.3 Me odología
Empezamos el p oyec o eniendo euniones p esenciales en la medida de
lo posible pa a la comp ensión del código he edado del TFM mencionado
p e iamen e, así como la en ega del ha dwa e necesa io pa a el desa ollo
del p oyec o. La o ganización que se plan eó po medio de un desa ollo
di idido en ases inc emen ales en las que se iban sol en ando las dis in as
ca encias que enía el sis ema.
En cuan o al abajo de los dos componen es del g upo, nos apoyamos en
el eposi o io de Gi Hub pa a i gua dando el p og eso del p oyec o y los
posibles cambios que íbamos es eando. Dado que en un p ime momen o no
disponíamos del ma e ial pa a pode abaja de mane a independien e,
decidimos abaja ambos en emo o (pai -p og amming).
Independien emen e de es o cada uno ue lib e de p oba modi icaciones y
a eglos, pe o en úl imo caso se ponían en común de mane a sínc ona en una
ideollamada dia ia a lo la go del desa ollo del abajo. Po o o lado, pa a
epo a los a ances de cada ase y así ene un seguimien o y con ol del
p oyec o, se hicie on múl iples euniones ía Google Mee con los u o es del
TFG.
Las dis in as ases en las que se de allan las mejo as del sis ema del
p oyec o son las siguien es:
Fase 1:
Comp ensión de los concep os e ins alación del en o no de abajo en los
dis in os componen es del p oyec o an o ha dwa e como so wa e.
Fase 2:
Análisis, in es igación e iden i icación de allos de comunicación en el
sis ema pa a odas las casuís icas posibles.
Fase 3:
Sol en a odos los p oblemas de comunicación y mejo a la obus ez del
sis ema.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
4
Fase 4:
Adap ación a MQTT y desa ollo de un código legí imo y gene alizado que
cub a un mayo ango de casos y si uaciones.
Fase 5:
P uebas en en o no eal y de endimien o de las comunicaciones.
Fase 6:
In e p e ación y análisis de esul ados.
Fase 7:
Conclusiones y abajo u u o.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
5
2 Es ado del a e
La indus ia au omo iz y del con ol in eligen e es á expe imen ando ue es
cambios con la in oducción de nue as ecnologías que nos b indan la
capacidad de conec a dis in os disposi i os en e sí.
La ecnología o el conjun o de ecnologías escogidas en es e p oyec o se
denominan IoT (In e ne o Things), las cuales hacen e e encia a p o ocolos e
in e conexión en e disposi i os, y de es os úl imos con In e ne .
P incipalmen e el ipo de in e conexión p esen e es la in e conexión en e
máquinas, M2M (Machine o machine), en las que, la in e ención humana no
suele es a p esen e.
Los equisi os pa a hace posible la comunicación a a és de IoT son los
siguien es:
- Uso de un ha dwa e y so wa e que pe mi an la conexión con in e ne :
en es e p oyec o se ha abajado con módulos XBee, conc e amen e
una se ie de módulos basados en el es ánda IEEE 802.15.4 de edes
inalámb icas.
- P o ocolo de comunicaciones: es muy impo an e escoge un
p o ocolo que se adecue a los equisi os de implemen ación y que sea
lo su icien emen e conocido como pa a que exis an in aes uc u as
pa a abaja con él. El p o ocolo escogido inalmen e ha sido MQTT ya
que coincidía mucho con la es uc u a de edes de senso es que se
p opone.
- Sopo e pa a la in aes uc u a: conjun o de o denado es con sis ema
ope a i o Linux que pe mi an la implemen ación y diseño del sis ema
de comunicaciones.
- Diseño de una API: Conjun o de lib e ías que nos pe mi an aslada el
abajo ealizado a cualquie p og ama en código abie o.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
6
Es e conjun o de ecnologías esul a in e esan e ya que nos pe mi e
moni o iza y ges iona ehículos de mane a emo a, po ejemplo, ealiza el
seguimien o del gas o ene gé ico o consumo en ehículos. En de ini i a, nos
pe mi e ansmi i y ecibi in o mación con mayo o meno la encia
dependiendo de las ecnologías so wa e y ha dwa e u ilizadas.
Como podemos e en la Figu a 2-1. Topología nodos, se dispone en onces
una ed de disposi i os que ansmi en in o mación en e sí mismos, gene ando
una ed en las que los nodos son es os disposi i os p esen es en la
comunicación.
Si nos abs aemos de cada uno de los componen es que con o man los
disposi i os, podemos en ende la ed de disposi i os como edes de senso es,
pues o que la impo ancia de los disposi i os en nues a ed es la de ansmi i
in o mación, a ea que ealizan a a és de los senso es, las edes de senso es
ienen nume osas aplicaciones en ámbi os muy di e sos. Po ejemplo, en el
isiológico pa a el seguimien o de pulsaciones ca diacas de un pacien e a
a és de senso es co po ales, en el sec o indus ial pa a ealiza el con ol de
calidad de la maquina ia o en la ag icul u a pa a hace mediciones p ecisas
sob e los cul i os. Es deci , nos pe mi en a a una g an can idad de da os y
sus aplicaciones son p ác icamen e ilimi adas.
Figu a 2-1. Topología nodos
Sis ema de comunicaciones IoT pa a ehículos au ónomos
7
2.1 P o ocolo: ca ac e ís icas, en ajas y des en ajas
A la ho a de desa olla un sis ema de comunicaciones con ecnologías IoT
hay que en ende muy bien cuál es el p oduc o inal que se quie e
implemen a , ya que dependiendo de las ca ac e ís icas que necesi emos
desa olla , se debe escoge un p o ocolo u o o.
La impo ancia del p o ocolo del sis ema de comunicaciones puede
pa ece en un p ime momen o más in ascenden e de lo que ealmen e es,
pe o a medida que amos conociendo la es uc u a que que emos lle a a
cabo, nos damos cuen a de que hay que conside a cie as ca ac e ís icas
que an a se necesa ias en nues a es uc u a.
Si po en pa icula que emos que en la ed de senso es cie os nodos
ealicen una acción dis in a del es o [2] (ejemplo en el que unos eciben y
o os emi en in o mación). Si además, los nodos deben de conoce la
in o mación que p e iamen e ha ci culado po la ed pa a ealiza una acción
especi ica o si, po el con a io, la in o mación en la ed simplemen e se
ansmi e y los nodos no ienen que dispone de memo ia.
Es en onces cuando debemos de escoge el p o ocolo a segui . Los
modelos básicos de comunicaciones p esen es en p oyec os de eleme ía y
más ap os pa a es e p oyec o son los siguien es:
- Pe ición- espues a: Se a a de un modelo que u iliza la me odología
clien e-se ido , en es e modelo el clien e ealiza una pe ición sob e
in o mación y el se ido ealiza una espues a ansmi iendo esa
in o mación. Es e modelo puede ga an iza cie as ga an ías a la ho a
de la en ega de in o mación.
Po ejemplo, HTTP (Hype Tex T anpo P o ocol), el p o ocolo p incipal
pa a el desa ollo web, unciona con el modelo pe ición espues a,
ealizando pe iciones a se ido es web.
- Publicado -susc ip o : Se a a de un en ío de in o mación de una
uen e a un des ino a a és de un asun o o opic, una ca ac e ís ica de
es e modelo es que los publicado es ansmi en in o mación sin
conoce el des ino al que es án ansmi iendo y de la misma mane a los

Sis ema de comunicaciones IoT pa a ehículos au ónomos
8
susc ip o es desconocen la uen e de la in o mación. Además, un nodo
pode es a susc i o a dis in os opic.
Po ejemplo, MQTT (Mensaje Queue Teleme y T anspo ) o STOMP
uncionan con el modelo publicado -susc ip o como se ha
mencionado p e iamen e el papel del opic es undamen al en es e
ipo de p o ocolos.
- Colas de mensajes: Se a a de un modelo asínc ono que se ealiza de
se icio a se icio, los mensajes se almacenan en una cola y es os se
an p ocesando uno a uno, una ez leídos son eliminados. Cada uno
de los mensajes se p ocesa una única ez, po un solo consumido . Es e
modelo pe mi e acumula un cie o núme o de mensajes y clasi ica los.
Po ejemplo, AMQP (Ad anced Menssage Queuing P o ocol) u ilizando
la cola de mensajes, pese a que MQTT ambién u ilice encolamien o de
mensaje MQTT, se a a de un p o ocolo más ep esen a i o den o del
modelo publicado -susc ip o po lo que se ha colocado en la sección
p e ia.
Es os modelos de e mina an la es uc u a y los oles que deben de segui los
nodos de la ed, el modelo inalmen e escogido en es e p oyec o ha sido el
modelo publicado - susc ip o , ya que p esen a una en aja en e al es o y es
la posibilidad del en ío de in o mación de un nodo al es o. O a en aja que
p esen a es e modelo es en el nodo susc ip o ya que es e, puede selecciona
la in o mación más ele an e de la que el publicado ansmi e y después
espe a a ecibi más in o mación del publicado . Es e ipo de es uc u a es la
óp ima pa a la ed que que emos implemen a en el p oyec o, ya que los
nodos además posee conexiones M2M, ambién es necesa io que exis a un
nodo que pueda ecaba la in o mación del es o pa a pode en ia la a la
in aes uc u a y que se pueda ex ae es a in o mación.
Exis iendo una g an can idad de p o ocolos posibles den o del modelo
publicado -susc ip o pa a desa olla un sis ema de comunicaciones, el
p o ocolo escogido po a inidad al p oyec o es Message Queue Teleme y
T anspo (MQTT).
Sis ema de comunicaciones IoT pa a ehículos au ónomos
9
2.1.1 Message Queue Teleme y T anspo
Es el p o ocolo en el que es á basado el p oyec o, sigue el modelo de
comunicaciones p e iamen e explicado de publicado -susc ip o , siendo uno
de los p o ocolos más lige os haciéndolo, po es a azón, es el p o ocolo ideal
pa a la ed que que emos p esen a . Es e p o ocolo es á basado en la pila
TCP (T ansmission Con ol P o ocol) como base de sus comunicaciones, sob e
su es uc u a hay una di e encia espec o al modelo base que sigue y es el
papel del B oke , eje cen al de las comunicaciones, que es el que conec a a
los clien es en e sí.
El B oke [3] es el enca gado de ges iona la ed y de ansmi i los mensajes
en e los clien es, quienes son publicado es o susc ip o es espec i amen e.
Además, posee el egis o de los clien es conec ados a la ed, man eniendo la
conexión abie a has a que el clien e la inaliza.
Figu a 2-2. Es uc u a MQTT con modelo Publicado - Susc ipción [4]
La es uc u a que p esen a es e p o ocolo e lejado en la Figu a 2-2.
Es uc u a MQTT con modelo Publicado - Susc ipción, no es más que una ed
en la que el publicado en ía in o mación al es o de nodos, es a
comunicación es posible ya que los nodos es án susc i os a a és de un opic,
es e se a a de un canal de in o mación p i ado que u ilizan los clien es pa a
el aspaso de in o mación y como se ha ci ado an e io men e en el modelo
publicado -susc ip o , en el que únicamen e eciben in o mación de un
publicado , los clien es susc i os al opic po el que es á ci culando la
in o mación.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
10
Po lo que los nodos, an o los nodos publicado es como susc ip o es
conec ados a a és de un cie o opic, pueden ecibi in o mación sob e es e
ema al momen o que un publicado pe mi iendo una comunicación abie a,
es deci , la comunicación en e dos nodos no se cie a una ez han en iado
in o mación, sino que la comunicación se queda abie a, pe mi iendo que en
caso de que se publiquen nue os mensajes en un opic los susc ip o es sigan
ecibiendo esa in o mación.
Los nodos publicado es no conocen el núme o de susc ip o es de un opic,
únicamen e se enca gan de ecibi la in o mación ansmi ida po es e. O a
de las en ajas de es e p o ocolo, es que los susc ip o es pueden da se de
baja del opic en cualquie momen o, de es a mane a dejan de ecibi
in o mación, y en caso de que lo deseen, eniendo la posibilidad en onces de
susc ibi se a o o opic.
Es impo an e menciona que los nodos en la es uc u a pueden ealiza
ambas acciones, es deci , un nodo puede se publicado en un ema, y al
mismo iempo, es a susc i o a un opic.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
11
2.1.1.1 Calidad del se icio
El p o ocolo MQTT posee 3 ni eles di e en es de calidad de se icio
denominado QoS (Quali y o Se ice), de es e alo depende á la obus ez de
las comunicaciones an e posibles allos y la ecuencia de en ío de mensajes:
• Qos 0: El mensaje se en ía una única ez, po lo que en caso de allo
el mensaje no llega ía a su des ino. Tampoco se ealizan
comp obaciones, odas es as ca encias espec o a la calidad del
se icio apo an al o a io de mensajes además un bajo consumo.
• QoS 1: El mensaje se en ia á en nume osas ocasiones has a que se
pueda con i ma que ha llegado el mensaje, como incon enien e
exis e la posibilidad de que el clien e eciba el mensaje a ias eces.
• QoS 2: Simila al an e io , pe o con es a calidad de se icio se
ga an iza que el mensaje ha llegado una única ez, es deci , sin
mensajes duplicados. Es e ipo de calidad p o oca á una la encia
más len a en las comunicaciones y po lo an o un mayo consumo,
es e ipo de calidad se u iliza en sis emas donde los da os son de al o
iesgo.
Figu a 2-3. Con i maciones espec o a la calidad de se icio [5]
Sis ema de comunicaciones IoT pa a ehículos au ónomos
18
incon enien es como exclusi idad de conexiones ipo V2I, o un g an núme o
de in aes uc u as lo que a ec a ía en g an medida al cos e.
Figu a 3-2. A qui ec u a cen alizadas y descen alizadas [8]
La a qui ec u a descen alizada ambién ecibe el nomb e de FANET (Flying
ad hoc Ne wo k), es a pe mi e un mayo g ado de mo ilidad pa a los
ehículos que o as a qui ec u as, además de posee p o ocolos que pe mi en
una g an la encia de mensajes.
Es a a qui ec u a en la opología de ed ha sido la seleccionada en es e
p oyec o po sus g andes en ajas espec o a la a qui ec u a cen alizada, po
se la que más se adecuaba a la es uc u a que se deseaba con una única
in aes uc u a, un o denado y además de pe mi i un mayo ango de
comunicaciones y o o ga mayo segu idad a la misma.
Den o de la a qui ec u a descen alizada, exis en dis in os ipos de
opología dependiendo de la es uc u a de coo dinación que sigan el es o
de ehículos espec o del GAU: po ejemplo, si los ehículos se dis ibuyen
o ien ados de mane a ho izon al, gene ando en onces dos subg upos,
eniendo como pun o medio de es os a la in aes uc u a, exis i á un Ga eway
po cada ex emo únicamen e, es e ipo de opología puede da luga a

Sis ema de comunicaciones IoT pa a ehículos au ónomos
19
pé dida de da os ya que si ese GAU espec i o de uno de los subg upos alla,
la in o mación del es o de ehículos conec ados a él se pe de ía.
Pa a e i a es e ipo de si uaciones se es ablece una sub ed en e los
ehículos GAU, es ableciendo un nodo ce ojo a a és del cual, en caso de
que uno de los ex emos alle, exis i á un e ce ehículo que ecibi á es a
in o mación, de esa mane a sol en amos la posibilidad de la pé dida de
da os.
Figu a 3-3. A qui ec u a FANET Segu a [8]
Sis ema de comunicaciones IoT pa a ehículos au ónomos
20
4 Elemen os Ha dwa e y So wa e empleados
En es a sección se de allan los ecu sos écnicos an o so wa e como
ha dwa e, que se han empleado pa a el desa ollo de las p uebas en la pa e
p ác ica de expe imen ación. Es os ecu sos incluyen especi icaciones
écnicas, pa áme os de con igu ación, esquemas de conexión, así como su
espec i o azonamien o explíci o de su inclusión en el p oyec o.
4.1 Ha dwa e
En cuan o al ha dwa e se ha man enido la es uc u a de comunicación
p esen e en el TFM [1] del que pa e el p oyec o compues o po 1 o 2 módulos
dependiendo de la ecnología de comunicación escogida, en p ime
momen o compues a po 2 módulos de conexión XBee [7] pa a p opo ciona
conexión inalámb ica en e los disposi i os conec ados. Po un lado, se ha
usado una Raspbe y Pi que hace el papel de ehículo mó il, en el que iba
conec ado uno de los módulos XBee pa a ealiza el en ío de in o mación a la
in aes uc u a. Po o o lado, una in aes uc u a en nues o caso, un
o denado po á il, enca gado ecolec a los da os de la comunicación.
Figu a 4-1. Esquema de comunicaciones de dos módulos XBee [9]
Sis ema de comunicaciones IoT pa a ehículos au ónomos
21
4.1.1 XBee Wi i
Figu a 4-2. Módulo XBee Wi i
Al inicio del p oyec o, y e omando la es uc u a ha dwa e seguida en el
an e io p oyec o, se empezó a abaja u ilizando dos módulos XBee Wi i
e sión S2C, que son unos módulos que p opo cionan conexión inalámb ica a
a és de conexión Wi i.
Los módulos se conec an al mic ocon olado (Raspbe y Pi) o al o denado
a a és de un pue o se ie asínc ono de ni el lógico usando UART (T ansmiso -
Recep o Asínc ono Uni e sal).
La e sión PRO S2C iene un alcance eó ico ap oximado de 1,6 kilóme os
en condiciones ideales, ob eniendo una mayo dis ancia de comunicación
que la e sión egula , con la des en aja asumible en el p oyec o de consumi
más po encia. A pesa de ello en el apa ado de p uebas se comp oba a
como en condiciones eales el alcance es bas an e meno al no da se las
condiciones ideales. Es os módulos u ilizan el p o ocolo de comunicación IEEE
802.15.4 a 2,4GHz pa a c ea edes pun o a pun o, o pun o a mul ipun o.
Pa a ealiza las comunicaciones con los módulos Wi i se ha u ilizado una
an ena de 2,4 GHz, que pe mi e la comunicación an o po ía Wi i como po
Blue oo h, con una po encia máxima de 50 W.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
22
Figu a 4-3. An ena Wi i 2,4 GHz
Con igu ación:
Los módulos, pueden unciona an o de mane a anspa en e como po
medio de comandos ía API. Se llega a la conclusión de que es e módulo
cumple con los eque imien os del p oyec o po su acilidad de uso y
sus i ución en caso de eque i lo sin ningún ipo de iesgo.
En cuan o a la con igu ación, se ha man enido la que es aba
implemen ada en un p ime momen o, la cual se explica el pa áme o elegido
con su uncionalidad ela ada en la abla a con inuación:
Pa áme o
Desc ipción
API 0
Módulo en modo anspa en e.
PAN ID
La misma ed en ambos módulos pa a pode
comunica se.
CH
El mismo canal de ope ación.
CE
Uno de los módulos end á el alo “CE=1” (coo dinado ) y
el o o el alo “CE=0” ( ou e ).
DH/DL
a) El coo dinado se con igu a como “0x0000FFFF”, que
ansmi e a odos los disposi i os.
b) El ou e se con igu a como “0x00000000”, que
ansmi e solamen e al coo dinado de la ed.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
23
4.1.2 XBee 3G
Figu a 4-4. Módulo XBee Cellula 3G
La di e encia más eseñable de es e módulo espec o al módulo
an e io men e mencionado es que es e posee conec i idad 3G/2G: HSPA y
GSM (pa a su uso se equie e una a je a Nano SIM). Es o pe mi e ene una
mayo lexibilidad al e nando en e p o ocolos inalámb icos LTE-M o NB-IoT sin
ningún ipo de p oblema. Además, ienen almacenamien o enc ip ado
SSL/TLS 1.2 y ce i icaciones FCC/IC, PTCRB y AT&T po lo que aho a en cos e
el p oceso de ce i icación además de sopo a bandas de 0,8 a 2,1 GHz.
Figu a 4-5. An ena de adio ecuencia XBee
Es e módulo a conec ado a una an ena in eg ada de adio ecuencia que
p opo ciona una ue e señal omnidi eccional con una conec i idad obus a
de 8 bandas, pe ec a pa a ambien es no con olados.

Sis ema de comunicaciones IoT pa a ehículos au ónomos
24
4.1.3 Raspbe y Pi 2 y 3B+:
Se a a de una compu ado a [10] de bajo cos o y de amaño compac o,
un modelo muy u ilizado pa a ealiza una amplia a iedad de p oyec os
como, po ejemplo: ep oduc o es de música, ideo, es ación me eo ológica,
e c. G acias a dicha e sa ilidad nos pe mi e conec a di e en es módulos
pa a amplia su uncionalidad y pe mi i nos ealiza p oyec os de dis in os
ámbi os. En e las ca ac e ís icas más eseñables de es e modelo es que posee
un p ocesado B oadcom BCM2837B0 de 1,4 He cios, memo ia RAM de 1
Gigaby e (LPDDR2 SDRAM) o GPIO de 40 pines (donde se conec a an los
módulos de conexión inalámb ica o los senso es del ehículo).
Figu a 4-6. Raspbe y Pi 2
En es e caso se ha man enido el modelo 3B+ que iene las ca ac e ís icas
an e io men e desc i as, p eins alado con Raspbian de sis ema ope a i o.
Pos e io men e se en egó o a Raspbe y, en es e caso el modelo Raspbe y Pi
2 pa a pode ealiza p uebas de mane a concu en e.
Conexiones:
El esquema de conexiones con los módulos XBee pa a p opo ciona le
conexión 3G o Wi i se ía el siguien e (asociando pines de ambos disposi i os):
Sis ema de comunicaciones IoT pa a ehículos au ónomos
25
Figu a 4-7. Esquema de conexión Raspbe y Pi - Módulo XBee
PIN RASPBERRY PI (desc ipción)
PIN XBEE (desc ipción)
1 (VCC de 3,3V)
1 (VCC)
8 (GPIO14)
3 (DIN/CONFIG)
10 (GPIO15)
2 (DOUT)
14 (GND)
10 (GND)
Sis ema de comunicaciones IoT pa a ehículos au ónomos
26
Como se puede obse a en la abla an e io se ha conec ado el pin de
alimen ación (VCC de 3,3V) de la Raspbe y Pi a la alimen ación del módulo
XBee pa a p opo ciona le alimen ación, al igual que una de las múl iples
conexiones a ie a (GND), que en es e caso se ha elegido el “pin 14”, que i á
conec ado a ie a en el módulo XBee. En cuan o a lo que se e ie e al pue o
UART, se ha usado los “pines 8 y 10” gené icos (GPIO) de la Raspbe y Pi pa a
con ola la en ada y salida de los da os que an conec ados a sendos pines
(DIN y DOUT) en el módulo XBee.
Con igu ación:
Se ha ealizado una comunicación a a és de cable de E he ne con el pc
deseado pa a pode accede al sis ema de iche os de la Raspbe y Pi 2, a
a és de SSH (Acceso emo o a un se ido ). Se ha u ilizado un ca gado con
salida mic o USB con una alimen ación meno de 5V. Po o o lado, se ha
colocado en la banda de pines los módulos XBee necesa ios pa a la conexión
inalámb ica y el senso IMU pa a la ealización del caso p ác ico.
4.2 So wa e
En cuan o al so wa e, el lenguaje de p og amación escogido en es e
p oyec o ha sido “C” debido a su es echa inculación con el mundo IoT,
donde se hace uso de uno o múl iples mic ocon olado es o disposi i os de
compu ación, en es e caso a qui ec u a pun o a pun o; además de ene un
al o g ado de compa ibilidad con las dis in as lib e ías MQTT exis en es.
Pa a encapsula el uso del módulo se ha empleado la lib e ía Eclipse Paho.
La cual es u o de un p oyec o IoT de Eclipse en el que se p opo ciona
implemen aciones de código abie o de MQTT y MQTT-SN en mul i ud de
lenguajes de p og amación, cen ándose en el lado del clien e.
Como en o no de desa ollo se ha empleado Mic oso Visual S udio Code
po su acilidad y e sa ilidad de uso, así como po su modula idad con la
posibilidad de in eg a con di e sos complemen os que han sido de u ilidad
pa a el p oyec o como son:
Sis ema de comunicaciones IoT pa a ehículos au ónomos
27
- La he amien a de con ol de e siones (Gi Hub): U ilizada pa a lle a un
con ol del lujo de abajo del p oyec o en un eposi o io u ilizando
di e en es amas de desa ollo y con ol de los cambios ealizados.
- Sis ema de a chi os emo o (SSHFS): U ilizado pa a mon a un sis ema
de a chi os que nos posibili a in e ac ua con los iche os emo os,
usando el p o ocolo SFTP pa a pode p og ama concu en emen e en
la Raspbe y Pi esc ibi el código alojado en ella di ec amen e. De es a
mane a no hay que es a en cons an e ac ualización de es a,
pudiendo con ola y al e a los alo es de las a iables in e nas del
p og ama ejecu ado di ec amen e.
- Depu ado (GDB): O ece la posibilidad de modi ica y aza la
ejecución de un p og ama.
A con inuación, se p esen a el esquema pa a las comunicaciones, que se
compone de es componen es. Un clien e, un se ido y un p oxy que los
in e conec a los disposi i os encapsulando ía API odos los p ocesos de
comunicación en e ellos.
4.2.1 Esquema de comunicaciones
El sis ema de comunicaciones cons a de es capas in e nas, como se
mues an en la Figu a 4-8. Esquema de comunicaciones. Es as capas son: la
conexión con el p oxy como capa más in e na, la API y po úl imo el clien e.
De es a mane a el clien e emiso MQTT en ía da os haciendo uso de las
unciones de lib e ía de la API a a és de un pue o local. En el pue o local,
se encuen a un socke que ealiza la unción de puen e con los pines del
pue o se ie (UART), como ex emo de la comunicación. Los dos módulos XBee
se comunican en e ellos a a és del es ánda IEE 802.15.2 y en el ecep o se
p oduce a la in e sa has a llega al des ino.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
34
Recepción del mensaje: Es a unción callback, se ejecu a cuando el B oke
de ec a la ecepción de un mensaje, además mues a el mensaje po
pan alla, asignando el p opio mensaje a una a iable payload y a un bu e .
Después ese a la memo ia pa a esc ibi en el bu e y la libe a pos e io y
inalmen e elimina el mensaje. Es a unción a su ez llama a la unción
callback de mensaje ecibido del p opio clien e, que se u iliza pa a egis a el
momen o en el que ha llegado el mensaje, mos ando el iden i icado del
mensaje y el con enido de es e.
/* ****************************************
* Func ion name: msga d()
*
* Desc ip ion:
* Recei es he message and
* show i
*
*************************************** */
in msga d( oid *con ex , cha * opicName, in opicLen,
MQTTClien _message *message) {
in i;
cha * payloadp ;
double a;
cha bu [10096];
memse (&bu , '0', sizeo (bu ));
p in ("Message a i ed n");
p in (" opic: %s n", opicName);
p in (" message: ");
payloadp = message->payload;
o (i=0; i<message->payloadlen; i++)
{
a=*payloadp ++;
pu cha (a);
bu [i]=a;
}
bu [message->payloadlen]=' 0';
pu cha (' n');
lush(s din);
lush(s dou );
msg_a i ed( opicName, message->payload);
memse (bu , ' 0', sizeo (bu ));
memcpy(bu , message->payload, message->payloadlen);
MQTTClien _ eeMessage(&message);
MQTTClien _ ee( opicName);
e u n 1;
}
Figu a 4-14. Message A i ed callback

Sis ema de comunicaciones IoT pa a ehículos au ónomos
35
Conexión MQTT: En p ime luga , se c ea la conexión con el clien e MQTT a
a és de una di ección IP escogida p e iamen e, es ableciéndose la
conexión con el B oke con los pa áme os p ede inidos. Además de es o se
de inen unos “callbacks” o unciones de acción, es as unciones se lanza án
cuando se haya pe dido la conexión, haya llegado un mensaje al B oke o se
con i me la llegada de un mensaje a su des ino.
/* ****************************************
* Func ion name: MQTT_connec ()
*
* Desc ip ion:
* Func ion connec s o MQTT B oke
* wi h he clien name and pa ame e s
* se be o e
*
*************************************** */
oid MQTT_connec (cha name[], oid (* on_mess)(cha * opic, cha *
payload)){
in c;
s cpy(CLIENTID, name);
/* MQTT ini ializa ion */
i (( c = MQTTClien _c ea e(&clien , ADDRESS, CLIENTID,
MQTTCLIENT_PERSISTENCE_NONE, NULL))!= MQTTCLIENT_SUCCESS)
{
p in ("Failed o c ea e clien , e o %d n", c);
exi (-1);
}
p in ("Clien c ea ed n");
msg_a i ed = on_mess;
/* MQTT callback o subsc ip ion */
MQTTClien _se Callbacks(clien , NULL, connlos , msga d,
deli e ed);
i (( c = MQTTClien _connec (clien , &conn_op s)) !=
MQTTCLIENT_SUCCESS) {
p in ("Failed o connec , e u n code %d n", c);
exi (-1);
}
}
Figu a 4-15. Conexión MQTT
Sis ema de comunicaciones IoT pa a ehículos au ónomos
36
Susc ipción a un ema: Función de susc ipción a un ema a és del
iden i icado del clien e y la calidad de se icio de inida p e iamen e, pa a
pode ecibi mensajes de dicho opic. Po úl imo, no i ica la susc ipción del
clien e al opic con un mensaje mos ado po pan alla.
/* ****************************************
* Func ion name: MQTT_subs()
*
* Desc ip ion:
* Func ion subsc ibes o MQTT opic
* o ecei e he messages pos on i
*
*************************************** */
oid MQTT_subs(cha *TOPIC, cha name[], h _ *h ) {
MQTTClien _subsc ibe(clien , TOPIC, QOS);
p in ("Subsc i o a %s n", TOPIC);
}
Figu a 4-16. MQTT subsc ip ion
Publicación en un ema: Es a unción ealiza la publicación del mensaje
desde el clien e al B oke , pa a ello se de ine un mensaje MQTT que dispone
de a ios campos como son el cue po del mensaje, la longi ud del mensaje, la
calidad de se icio con la que se ha hecho la publicación, además se
desac i a el bi e ained, cuya unción es en caso de que no haya ningún
clien e susc i o al opic se desca a el mensaje pa a e i a sa u ación en el
sis ema. Después se publica el mensaje y se espe a que es e llegue al B oke .
Po úl imo, en caso de que la calidad de se icio sea mayo que 0, se llama
a la unción callback del clien e, gua dando la longi ud de es e y asociando
la calidad del se icio ijado, de es a mane a puede llama a la unción Figu a
4-13 con los da os necesa ios.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
37
/* ****************************************
* Func ion name: MQTT_publish()
*
* Desc ip ion:
* Func ion ecei es MQTT opic and message
* and send i o he B oke
*
*************************************** */
s a ic MQTTClien _message pubmsg = MQTTClien _message_ini ialize ;
oid MQTT_publish(cha *PAYLOAD, cha *TOPIC, cons h _ *h , oid (*
on_deli )(cha * payloadlen)){
/* Publish message */
pubmsg.payload = PAYLOAD;
pubmsg.payloadlen = s len(PAYLOAD);
pubmsg.qos = QOS;
pubmsg. e ained = 0;
MQTTClien _publishMessage(clien , TOPIC, &pubmsg, & oken);
MQTTClien _wai Fo Comple ion(clien , oken, TIMEOUT);
i (QOS > 0){
p in ("Message wi h oken alue %d deli e y
con i med n", oken);
msg_deli e ed = on_deli ;
msg_deli e ed(pubmsg.payload);
}
}
Figu a 4-17. MQTT Publish
Finalización de la conexión MQTT: Una ez que ha inalizado la conexión se
ejecu a es a unción, en la que el clien e se desconec a y se des uye el
obje o clien e u ilizado du an e la comunicación. En o o caso si se supe a
Keep Ali e an e io men e mencionado, ambién se ealiza la desconexión del
clien e.
/* ****************************************
* Func ion name: MQTT_end()
*
* Desc ip ion:
* MQTT clien des oy
*
*************************************** */
oid MQTT_end(cha *TOPIC, cha name[]){
/* Disconnec */
MQTTClien _disconnec (clien , 10000);
MQTTClien _des oy(&clien );
}
Figu a 4-18. MQTT end
Sis ema de comunicaciones IoT pa a ehículos au ónomos
38
4.2.4 P oxy
El p oxy es la úl ima capa de las Comunicaciones o capa in e na, es el
enca gado de ealiza la comunicación con el B oke . El p oxy ha sido
implemen ado con dos hilos pa a ga an iza la ges ión de la lec u a y esc i u a
de los da os.
Figu a 4-19. Esquema P oxy sc ip
El esquema mos ado an e io men e es el que se implemen a en es e p oxy,
pa a pe mi i la ansmisión de da os en e el módulo de conexión XBee y el
Clien e MQTT se u ilizan dos hilos pa a ello:
- Th ead Socke : se enca ga de en ia o ecibi da os del clien e MQTT y
en ia los al pue o se ie.
- Th ead UART: se enca ga de en ia o ecibi da os del pue o se ie y
en ia los al clien e MQTT.
Pa a la u ilización de dicha lib e ía es necesa io el desa ollo de un p oxy
que ans ie a una ca ga ú il ecibida a a és del conec o del clien e MQTT al
pue o se ie o COM en el que es á ac i o el módem celula XBee, así como al
e és; ans e encia de una ca ga ú il ecibida en el pue o se ie o COM del
módulo XBee al pue o del clien e MQTT.
Pa a no inc emen a la ca ga del p ocesamien o con código ex a pa a
analiza o c ea mac os API que pone en la cola p ocesamien o, se decide
hace lo en modo anspa en e, como se menciona an e io men e en la
con igu ación de los módulos XBee, y de es a mane a queda desacoplada la
pa e de comunicaciones del módulo del sis ema, con la pa e de la API. Es e
p oxy, simplemen e se limi a a e ansmi i lo que le llega po el pue o se ie del
módulo conec ado al B oke , sin ene que hace ninguna modi icación en la
API.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
39
Po o o lado, el B oke que se ha empleado pa a el in e cambio de
mensajes usa u iliza una biblio eca en “C” pa a clien es MQTT llamada Eclipse
Mosqui o, el cual se a a de o o p oyec o de IOT de Eclipse que ges iona
mensajes a a és de opics u ilizando un modelo de publicación/susc ipción.
4.2.4.1 Diag ama de conexión p oxy
A con inuación, se mues a la igu a con los dos diag amas de conexión del
socke (clien e TCP y se ido TCP), pe enecien es a cada uno de los dos hilos
exis en es:
Figu a 4-20. Esquema de uncionamien o de los socke s
Como obse amos en la Figu a 4-20. Esquema de uncionamien o de los
socke s, se mues a la es uc u a in e na del se ido y clien e TCP, ambos
p oxys ealizan la comunicación in e na en e los dos componen es,
pe mi iendo acep a nue as conexiones en an es.

Sis ema de comunicaciones IoT pa a ehículos au ónomos
40
En las p óximas secciones se p ocede a explica de alles écnicos sob e la
implemen ación de del p oxy, explicando desde su ejecución como usua io e
implemen ación so wa e donde se p esen an odas las uncionalidades del
p oxy, además de explica su co espondencia con la es uc u a in e na
p esen ada en la igu a p e ia.
4.2.4.2 P oxy sc ip :
El sc ip de publicación se ejecu a a a és de la conexión a In e ne del
o denado ya que no u iliza el módulo XBee. Se puede e que el mensaje
publicado apa ece en la salida del sc ip de susc ipción una ez que se ecibe
del B oke a a és del módulo XBee además de pode se obse a las
ecepciones y ansmisiones que se es án ealizando en ese p eciso momen o.
En un p ime momen o el sc ip de p oxy debía es a ejecu ándose an es de
ejecu a los sc ip s de susc ipción y publicación. Si se de enía el sc ip de
susc ipción, el socke se ce aba y el sc ip de p oxy mos aba un e o . Si po
o o lado se in en aba inicia el sc ip de p oxy después de inicia el sc ip de
susc ipción, ambién se podía obse a en es e caso un e o de socke .
Todo es o obligaba a inicia lo en un de e minado o den pa a e i a es os
e o es (p oxy, luego susc ibi se y luego publica ).
Es o suponía un con lic o con los obje i os plan eados de es e p oyec o po
lo an o se plan eó en es e abajo el uso de a iables de es ado con oladas
po mu ex o ce ojos, de mane a que se pueda ealiza una sinc onización po
pa e de los dos hilos en odos los casos dados de o ma que es én
ejecu ándose independien e a la ez que engan libe ad de comunicación
en e ellos, y en caso de desconexiones se econec en de mane a adecuada.
4.2.4.3 Implemen ación so wa e
A con inuación, se a a desc ibi el desa ollo de la unción main() que
inicializa y ges iona los hilos del p og ama como una máquina de es ados
ini os que son con olados po el hilo p incipal que los ges iona.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
41
El compo amien o es ges ionado po medio de unas a iables globales
que deciden el cu so del lujo del p og ama calculando el es ado siguien e al
que debe pasa .
Figu a 4-21. Esquema de es ados
En p ime luga , se p ocede a la inicialización del p oxy. Pa a ello, se c ean
los dos hilos co espondien es al ex emo del socke y del UART, h ead_socke
y h ead_ua , además de es ablece se el es ado inicial a “DISCONNECTED” y
a su ez inicializa el mu ex que con ola á dichos es ados.
/* ****************************************
* Func ion name: main()
*
* Desc ip ion:
* C ea e bo h h eads and call
* se up unc ion
*
*************************************** */
in main() {
p h ead_ h1, h2;
s a e = DISCONNECTED;
p h ead_mu ex_ini (&mu ex, NULL);
p h ead_c ea e(&h1, NULL, h ead_socke , NULL);
p h ead_c ea e(&h2, NULL, h ead_ua , NULL);
Figu a 4-22. Main p oxy
Seguidamen e se p ocede a c ea el bucle que se á ejecu ado po ambos
hilos, el cambio de es ado se modi ica según el alo de la a iable “s a e”.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
42
- Es ado desconec ado (DISCONNECTED):
Se p o egen las a iables globales s a e, desconec ado y accep ed. Se
ejecu a la con igu ación inicial de los desc ip o es de iche o que con olan la
en ada y salida de los da os a ansmi i , median e las unciones se up_ua y
se up_socke .
o (;;) {
swi ch (s a e)
{
case DISCONNECTED:
// Inicia la comunicacion
p h ead_mu ex_lock(&mu ex);
in ua = se up_ua ();
in socke = se up_socke ();
i (ua == 0 && socke == 0){
s a e = CONNECTED;
}
desconec ado = alse;
accep ed = alse;
p h ead_mu ex_unlock(&mu ex);
b eak;
Figu a 4-23.Es ado disconnec ed
En el caso de se up_ua en el clien e, al es a conec ado en unos pines
conc e os de la Raspbe y Pi no es necesa io de ec a el pue o se ie al que
es á conec ado el módulo de comunicación (xBee). Po an o, a endiendo a
la con igu ación an e io men e desc i a en la Figu a 4-7. Esquema de
conexión Raspbe y Pi - Módulo XBee, la u a de ape u a del enlace simbólico
al pue o “AMA” ap opiado co espondiendo al desc ip o de iche o del
pue o se ie, se ía la siguien e:
cons cha se ial_po [] = "/de /se ial0";
Figu a 4-24. Pue o se ie UART
Sin emba go, en el caso de se up_ua en el se ido al a a se de un USB
conec ado a un compu ado , el pue o del disposi i o de en ada de da os
po el pue o se ie no es el mismo, ya que dependiendo del núme o de
pue os se ie abie os se asigna a uno u o o según la disponibilidad del
compu ado . Po odo ello, la necesidad de ealiza una búsqueda en el que
independien e de nume o de disposi i os conec ados al compu ado , se ab a
un desc ip o de iche o co espondien e al ipo de disposi i os “ yUSB” (USB
Se ial Po s), pe mi iendo así asigna le un pue o al USB de mane a dinámica.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
43
/* ****************************************
* Func ion name: se up_ua ()
*
* Desc ip ion:
* Open UART communica ion
*************************************** */
in se up_ua () {
in se up_ua () {
cha de _po [15] = "/de /";
DIR *mydi ;
s uc di en *my ile;
mydi = opendi (de _po );
while((my ile = eaddi (mydi )) != NULL)
{
i (s ncmp(my ile->d_name, " yUSB",5) == 0){
s ca (de _po , my ile->d_name);
/* S a UART communica ion */
s cpy(de Po , de _po );
i (( d = open(de _po , O_RDWR)) < 0) {
p in (s de , "Canno open %s n", de _po );
e u n 1; // Exi
}
}
}
closedi (mydi );
Figu a 4-25. De ección de pue o se ie
Pa a inaliza la unción se up_ua , se es ablece la con igu ación del pue o
“ yUSB” en el se ido , “ yAMA” en el clien e. Como pa áme os más
ele an es cabe ema ca la a io de baudios es ablecido en “115.200”.
/* Con igu e Po */
s uc e mios y;
memse (& y, 0, sizeo y);
/* E o Handling */
i ( cge a ( d, & y) != 0) {
p in ("[ERROR] esul %i om cge a : %s n", e no,
s e o (e no));
}
y.c_c lag &= ~PARENB; // Clea pa i y bi , disabling pa i y
(mos common)
y.c_c lag &= ~CSTOPB; // Clea s op ield, only one s op bi
used in communica ion (mos common)
y.c_c lag |= CS8; // 8 bi s pe by e (mos common)
y.c_c lag &= ~CRTSCTS; // Disable RTS/CTS ha dwa e low
con ol (mos common)
y.c_c lag |= CREAD | CLOCAL; // Tu n on READ & igno e c l
lines (CLOCAL = 1)
y.c_l lag &= ~ICANON;
y.c_l lag &= ~ECHO; // Disable echo
y.c_l lag &= ~ECHOE; // Disable e asu e
y.c_l lag &= ~ECHONL; // Disable new-line echo
y.c_l lag &= ~ISIG; // Disable in e p e a ion o INTR, QUIT
Sis ema de comunicaciones IoT pa a ehículos au ónomos
50
Figu a 5-1. Round T ip Time
Como podemos obse a en la Figu a 5-1, si el clien e quisie a en ia un
mensaje con el con enido “Ping” a el se ido , el se ido esponde con el
mensaje “Pong” (equi ale a la con i mación de que ha llegado el mensaje a
el se ido ) y po úl imo el clien e ecibe el mensaje del se ido . Es e iempo
en e el p ime en ío po pa e del clien e has a la ecepción del mensaje
“Pong” es lo que se denomina RTT.
El mé odo de ecogida de da os ha sido g acias a la ecogida de cie os
iempos emi idos du an e la comunicación, analizando es os en los 3 ipos de
calidad de se icio. Los iempos ecabados han sido los siguien es: el
momen o en el que un clien e publica un mensaje, en el que el B oke ha
ecibido el mensaje y po úl imo en el que un clien e susc i o a el opic en el
que se es án ansmi iendo los da os, emi e la con i mación de que ha llegado
inalmen e el mensaje. Los iempos que se han ecogido en las p uebas, han
sido exp esados en segundos y mic osegundos, además pa a un mejo a o
de los da os se ha o o gado a cada mensaje de iden i icado del mensaje,
especi icado en cada uno si se a a de un en ío, ecepción o con i mación y
en cie os escena ios la longi ud del mensaje.

Sis ema de comunicaciones IoT pa a ehículos au ónomos
51
Figu a 5-2. Tiempos ecogidos du an e las comunicaciones
Lo mencionado an e io men e se puede ap ecia en la Figu a 5-2. Tiempos
ecogidos du an e las comunicaciones, en la que emos ep esen ados los
iempos cap u ados po el p og ama. Es os son el iempo de en ío “S”, de
ecepción “R” y de con i mación del mensaje o deli e ed “D”.
Si nos ijamos en el p ime pun o (S), el iempo de en ío se cap u a cuando
un clien e publica un mensaje, es a acción llega el B oke y pos e io men e se
gua da el mensaje. Respec o al segundo pun o (R), una ez gua dado el
mensaje, an o el clien e como en el B oke , es e úl imo ealiza la publicación
sob e odos los susc ip o es del opic y en ese momen o se ealiza la cap u a
del iempo.
S = Tiempo de en ío
R = Tiempo de ecepción
D = Con i mación del mensaje
Sis ema de comunicaciones IoT pa a ehículos au ónomos
52
Po úl imo, una ez el B oke ha ealizado la publicación del mensaje, se
no i ica la con i mación de que el mensaje ha llegado a su des ino/s, es e es
een iado al clien e y se cap u a el ins an e de iempo del en ío de la
con i mación.
Pa a pode ealiza un es udio del RTT iel, se han diseñado di e sos
expe imen os sob e el RTT en e a o as componen es: así como la dis ancia
en e el emiso y el ecep o , la longi ud del mensaje, el iempo en e en íos, el
núme o de publicado es, e c.
5.1 Medidas de alcance
El p ime expe imen o ealizado, ha sido es udia cómo a ec a al RTT la
dis ancia en e ambos clien es (publicado y susc ip o ). Como se ha indicado
en la desc ipción écnica del módulo XBee el alcance máximo de
comunicaciones ob enido po el módulo XBee-WIFI, en un escena io
o almen e despejado es supe io al kilóme o y medio en condiciones ideales,
pe o debido a las complicaciones encon adas en un ambien e u bano la
dis ancia máxima ob enida ha sido de unos 160 me os.
Figu a 5-3. Escena io u ilizado pa a ealiza los ensayos p ác icos
Sis ema de comunicaciones IoT pa a ehículos au ónomos
53
Las p uebas de las medidas de alcance se han ealizado en el escena io
mos ado en la Figu a 5-3. Escena io u ilizado pa a ealiza los ensayos
p ác icos, ya que en es e se p esen an condiciones simila es a las ideales pa a
ealiza la comunicación en e los ehículos, además en él, pod íamos
expone los ehículos a con unden es sob e dis ancias ce canas al lími e
es udiado.
• Es ablecimien o de una can idad de en íos ija:
Pa a ealiza es a se ie de expe imen os se han ealizado en íos de 500
paque es po cada una de las p uebas, es o nos pe mi e ene un g an
amaño de mues a, en iendo mues a como la o alidad de los mensajes
ansmi idos en la comunicación. Todas las p uebas, se han ealizado p uebas
en las dis in as calidades de se icio (QoS 0, 1 y 2) con un amaño de paque e
de 18 By es ijo, aunque es e se e á inc emen ado pos e io men e pa a
es udia cómo a ec a su aumen o al RTT.
• Es ablecimien o de un pe iodo de en ío ijo:
Figu a 5-4. Pe iodo de ecepción
Sis ema de comunicaciones IoT pa a ehículos au ónomos
54
Se ha es ablecido en una ase inicial, un pe iodo de en ío de paque e
(delay) de 600 milisegundos, ya que es e empo izado debe se lo
su icien emen e amplio, como pa a comp ende las con i maciones que
deben de ealiza calidades supe io es a la 0. Si es e empo izado uese
meno , p o oca ía en p ime luga pé didas de paque es y pos e io men e la
pé dida de la conexión.
Pa a ello se ha analizado el en ío el ins an e de la ecepción de los
paque es, an o en el publicado (que se á ambién susc i o ) como en el
ecep o . pa a obse a la luc uación de la ecepción de los paque es.
La Figu a 5-5. Fluc uación del delay de en ío en el ecep o , mues a el
in e alo de luc uación expe imen ado en la ecepción de mensajes espec o
al emiso . El in e alo, a ía en o no a pe iodos de 560 y 640 milisegundos
debido a la dis ancia exis en e en e el emiso y el ecep o .
Figu a 5-5. Fluc uación del delay de en ío en el ecep o
Es necesa io eco da que MQTT u iliza como p o ocolo de comunicaciones
TCP, lo que g acias al es udio ealizado nos ha pe mi ido obse a , como el
encolamien o de mensajes p opio de es e p o ocolo a ec a di ec amen e al
in e alo de publicaciones y al delay en las comunicaciones.
El mo i o de es o es que, si la asa de publicación no es lo su icien emen e
al a, hace que TCP aya encolando p og esi amen e los paque es que le
Sis ema de comunicaciones IoT pa a ehículos au ónomos
55
llegan, aumen ando el iempo de ecepción del paque e. Es udiando los
esul ados ob enidos a a és de los da os cap u ados, hemos podido
obse a que 1 de cada 3 paque es, es encolado po TCP, p o ocando un
aumen o del RTT, de has a en ocasiones del iple espec o al p ime en ió.
Es e in e alo se epe ía du an e odas las p uebas ealizadas, siendo
cla amen e ap eciable en QoS pues o que su pe iodo de publicación es el
más bajo espec o al es o.
Figu a 5-6. In luencia en del pe iodo de en ío en el compo amien o de TCP [8]
Si nos ijamos en la imagen, ob enida a pa i de un es udio denominado “A
S udy o IoT MQTT Con ol Packe Beha io and i s E ec on Communica ion
Delays” [8], podemos obse a cómo TCP ealiza el encolamien o de
paque es, a a és de una a iación del in e alo de publicación.
De igual o ma que ocu e en QoS 0, si la calidad del se icio es supe io ,
ambién pueden exis i con lic os, es o es p o ocado po las con i maciones
de los paque es, que ambién queda án e asadas. Sin emba go, en
calidades supe io es a la 0, es e aumen o no es an no o io como en la
calidad 0, debido a que iempo de en ío, es mayo en la calidad más básica.

Sis ema de comunicaciones IoT pa a ehículos au ónomos
56
En es a sección se expond á al sis ema en dos ipos de si uaciones, la
p ime a con los ehículos en posición es á ica, en el e emos da os que
a ojan in o mación sob e cómo a ec a el aumen o de la dis ancia en la
o alidad de la p ueba. Y una segunda si uación donde se ealiza án p uebas
dinámicas, en ellas uno de los ehículos pe manece á en posición es á ica
haciendo el papel de in aes uc u a, mien as que el o o ehículo ealiza á
un mo imien o uni o me aumen ando, po an o, la dis ancia en e a la
in aes uc u a.
5.1.1 Medidas es á icas
En es a p ime a ase de expe imen ación se es udió el compo amien o de
la comunicación con los módulos Wi i, y en posición es á ica.
Se ealiza án di e sas p uebas inc emen ando la dis ancia en e los
disposi i os en amos de 25 me os (se ha p escindido de una segunda
dis ancia de 25 me os de dis ancia pues o que pudimos comp oba que los
esul ados no son signi ica i os espec o a 1 me o y 50 me os). El obje i o es
comp ende el compo amien o del sis ema, compa ando la elación
exis en e en e el iempo de ida y uel a, la dis ancia de ansmisión espec o a
los cambios en la calidad de se icio. Se mues an po lo an o los esul ados
ob enidos al ealiza las p uebas:
• Dis ancia 1m: En un expe imen o inicial (Figu a 5-7), pa a una calidad
QoS 0 podemos ap ecia que los iempos de ida y uel a se dis ibuyen
en dos g upos cla amen e di e enciados: un p ime g upo de mensajes
con una media 22,7 milisegundos y un segundo g upo con una media
de RTT, más len a, de 63.5 milisegundos. La p ime a ag upación que
ep esen a un 62,25 % espec o a la mues a o al, es donde se
encuen a el mayo núme o de mensajes en iados, po lo que
podemos conclui que esa ag upación es una mues a ep esen a i a
del compo amien o en calidad 0 pues o que el iempo de en ío debe
se ín imo. Respec o a la segunda ag upación (33.4%), es p o ocada
po lo que se mencionó en la Figu a 5-6. In luencia en del pe iodo de
en ío en el compo amien o de TCP, además en QoS 1 es o a ec a a
Sis ema de comunicaciones IoT pa a ehículos au ónomos
57
las con i maciones de los mensajes publicados haciendo las menos
con iables.
Es e es ado gene a g an ines abilidad en los iempos de en ío du an e
las comunicaciones, p o ocado a las aglome aciones de paque es po
con i ma , Figu a 5-6. In luencia en del pe iodo de en ío en el
compo amien o de TCP.
Figu a 5-7. Compa ación de calidades a 1m
Respec o a la QoS 1 podemos obse a unos da os más ag upados
con un alo medio de 65 milisegundos, pe o con cie a dispe sión
como se puede e en Figu a 5-8. Diag ama de cajas 1m, al aumen a
la calidad de se icio el iempo de ida y uel a se á mayo . Po úl imo,
espec o a la calidad 2 obse amos en p ime luga que el iempo de
ida y uel a ha inc emen ado en g an medida, oscilando en e 130 y
150 milisegundos.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
58
Figu a 5-8. Diag ama de cajas 1m
• Dis ancia 50m: Podemos obse a una no o ia e olución de los
conjun os espec o de la mues a an e io , pe sis en las dos
ag upaciones de QoS 0 como se ha explicado p e iamen e. En es e
pun o se puede plan ea una hipó esis inicial, ya que podemos deduci ,
que, al aumen a la dis ancia en e el emiso y ecep o , aumen a á el
iempo de ida y uel a, ya que es amos exponiendo al sis ema a una
si uación más des a o able. Obse amos que pa a QoS 1 exis e una
no o ia ag upación, 26% lige amen e mayo que en QoS 0, ambién
obse amos que en la calidad de se icio 2, se mues a un RTT mayo
debido a que, al igual que en la igu a an e io , se ealizan un mayo
núme o de comp obaciones con el B oke , pa a con i ma la ecepción
de los mensajes en iados ( éase en la Figu a 2-3), po lo an o su
iempo de en ío y ecepción iene un aumen o di ec amen e
p opo cional espec o al núme o de comp obaciones ealizadas en
cada una de las calidades.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
59
Figu a 5-9. Compa ación de calidades a 50 m
• Dis ancia 75m: A es a dis ancia obse amos cómo e oluciona los
iempos de ida y uel a pa a las dis in as calidades de se icio. De
nue o, QoS 0 posee una doble ag upación con una mayo ía de
mensajes ansmi idos a un RTT muy pequeño 23 milisegundos. En el
caso de QoS 1, podemos obse a que, a di e encia de los da os
omados a 50m an e io men e, se ag upan en g an pa e de ellos en un
iempo mayo , debido a la in luencia de TCP.
En QoS 2, se puede con empla como el iempo de ida y uel a
comp ende un ango en o no a los 90-110 milisegundos en una p ime a
ag upación, y una segunda en o no a 110-150 milisegundos. Como ya
se comen aba con an e io idad, el mo i o del aumen o del alo del
RTT en es a calidad, es a p o ocado po el aumen o en el núme o de
con i maciones que ealiza es a calidad y la in luencia del p o ocolo
TCP.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
66
5.2 Medida de e a do con el amaño de paque e
El segundo es udio ealizado, consis e en pode obse a en cómo a ec a al
RTT la longi ud de paque e ansmi ida, inc emen ando cada en cada p ueba
la longi ud del paque e, con el obje i o de conoce los lími es pe mi idos en la
comunicación, pa a ello se ijó una longi ud de paque e inicial de 18 by es.
5.2.1 Medidas de pé didas con QoS 0
Es a p ueba se ha ealizado en p ime luga en una dis ancia (A = 40m) sin
pé didas, en el obse amos un compo amien o idén ico exp esado en la
sección an e io . En segundo luga , se ha expues o el sis ema a una dis ancia
(B = 75m) con pé didas de paque es signi ica i as. En es e segundo escena io
las pé didas de paque es e an en o no a un 20 %.
En cada dis ancia, se ealiza on en íos de 500 paque es con una longi ud
de mensaje ija du an e cada p ueba, inc emen ando has a que el núme o
de paque es sin ecibi sea ce cano al 50%.
Figu a 5-17. Re a do de amaño de paque e QoS 0
Como ap eciamos en la Figu a 5-17. Re a do de amaño de paque e QoS
0, el amaño de paque e ue inc emen ando desde los 18 By es has a los 750,
es os alo es no han sido exp esado en las g a ica ya que no se expe imen ó
pé dida de paque es, po lo que se decidió inc emen a la longi ud del

Sis ema de comunicaciones IoT pa a ehículos au ónomos
67
paque e en un p ime momen o a 1024 By es (1KB), llegando a es e pun o y
obse ando la apa ición de la pé dida de paque es, el aumen o de la
longi ud disminuyo en aumen o de 250 By es. Si nos ijamos en el segundo y
e ce in e alo, obse amos un inc emen o del 1,2% al 8,4% en la dis ancia A,
po lo que podemos llega a la conclusión que el po cen aje de pé didas se
dispa a en e 1100 y 1200 By es, a pa i de es e momen o las pé didas supe an
el 50 %.
5.2.2 Medida de e a do en QoS 1 y 2
Conocida en el escena io p e io la dis ancia B en donde la pé dida de
mensajes e a del 20%, se ealiza on en íos de 500 mensajes pa a las dos
calidades supe io es es udiando cómo a ec a al aumen o del RTT, has a llega
al lími e de pé dida de paque es del 50 %. Conside amos que un mayo
po cen aje de pé didas es inasumible pa a pode ga an iza el co ec o
uncionamien o del sis ema
Figu a 5-18. Compa ación del RTT espec o a di e en es QoS
Como podemos ap ecia en la imagen con longi udes de paque e
supe io es a 250 by es las di e encias en e QoS 1 y 2 son bas an e no ables,
es o es p o ocado po las con i maciones que se ealizan dependiendo de la
calidad escogida, ep esen ado en la Figu a 2-3. Con i maciones espec o a la
calidad de se icio, concluyendo po an o que un aumen o de la longi ud de
Sis ema de comunicaciones IoT pa a ehículos au ónomos
68
paque e supond á una mayo p obabilidad de e o en él en ío o ecepción
de los paque es.
Figu a 5-19. Po cen aje de pé dida de mensajes espec o a dis in as QoS
Conclusión medidas amaño de paque e:
Como podemos obse a en la Figu a 5-19. Po cen aje de pé dida de
mensajes espec o a dis in as QoS, esume en g an medida el
compo amien o del sis ema espec o al aumen o de la longi ud del mensaje.
El po cen aje de pé dida es an no o io en calidades supe io es a 0, que
llegan a pe de se ap oximadamen e el 70 y 80 % de los paque es en iados. Si
nos ijamos en el po cen aje de pé dida con longi ud 1200 by es, podemos
e o za las conclusiones ob enidas a pa i de un aumen o de la longi ud de
los paque es, pues o que a mayo calidad de se icio mayo po cen aje de
pé didas, es o es p o ocado como se ha mencionado p e iamen e, a dos
p incipales mo i os.
El p ime o es que el aumen o de la longi ud del mensaje y dis ancia
p o oca án un aumen o de la p obabilidad de allo de en ío, debido a que
es as exponiendo al sis ema a una si uación más hos il espec o a las
condiciones ideales, en segundo luga y más impo an e, el aumen o de la
calidad de se icio supone una duplicación en caso de QoS 1 o
Sis ema de comunicaciones IoT pa a ehículos au ónomos
69
cuad uplicación en caso de QoS 2 sob e los mensajes ansmi idos po el
sis ema, pues o que el núme o de con i maciones es di ec amen e
p opo cional al aumen o de la calidad de se icio, éase en la Figu a 2-3.
5.3 Medidas de conges ión
En es e expe imen o lo que se in en a es udia es la obus ez del sis ema
an e una comunicación bidi eccional po pa e de dos ehículos (A y B),
ambos ehículos publica án y ecibi án da os con inuamen e du an e las
comunicaciones, en es e ensayo se ealiza á una comunicación c uzada a
a és de dos canales, en la que el ehículo A en ía da os al “B” y se susc ibe
al “B”, asimismo el ehículo B ealiza á la acción con a ia, es deci , publica á
da os en el opic “B” y es a á susc i o en el opic “A”.
Figu a 5-20. Esquema de las medidas de conges ión
El obje i o de es e expe imen o es ap ecia cuan obus o es el sis ema de
comunicaciones en un en o no eal y obse a cómo a ec a la comunicación
bidi eccional al in e alo de publicación y al delay de ansmisión.
Los en íos po pa e de los dos ehículos se han ealizado e omando las
condiciones iniciales a adas en la sección 5.1, omando una mues a de
en íos de 500 paque es y es ableciendo un pe iodo de ansmisión o delay de
600 milisegundos.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
70
Además, se ha a iado la longi ud del paque e es udiando cómo a ec a su
aumen o a el RTT, como en secciones p e ias. Sin emba go, debido a que la
comunicación bidi eccional conges iona mucho la comunicación con el
B oke , ha sido imposible e oma las longi udes expues as p e iamen e, es
deci de un ango de 250- 1500 By es, ya que la can idad de pé dida de
mensajes e a casi o al. Po lo que se ha p opues o unos angos en e 18 a 150
by es.
Con los esul ados ob enidos se ha compa ado, en p ime luga , el aumen o
del RTT espec o a un aumen o de la longi ud de paque e, en las dis in as
calidades de se icio. Cabe menciona que en el “eje x” se con empla el
aumen o de la ca ga ex a que se suma a la del paque e que inicialmen e en
odas las p uebas es de 18 by es.
Figu a 5-21. Medidas de conges ión según dis in as QoS
En la Figu a 5-21. Medidas de conges ión según dis in as QoS, podemos
ap ecia un compo amien o que es habi ual du an e el es o de los ensayos
p ác icos ealizados. Si nos ijamos como a ía la media del RTT según un
amaño de paque e, emos unos iempos de ida y uel a simila es espec o a
QoS 0 y 1.
Como se ha mencionado en la sección 5.1, la a iación en e es as dos
calidades se ía más no o ia aun si no uese po las acumulaciones de
paque es p opias de TCP. Respec o a la QoS 2, p esen a un iempo de ida y
uel a muy supe io al del es o de calidades, llegando a se más del doble
Sis ema de comunicaciones IoT pa a ehículos au ónomos
71
espec o a QoS 1 o más del iple en el caso de QoS 0. Media de RTT en con
amaño de paque e 18 by es [QoS 0 = 38.44 ms, QoS 1 = 68.82 ms, QoS 2 =
139.62ms].
En segundo luga , se decidió analiza , la di e encia exis en e en e la
comunicación bidi eccional y la unidi eccional. Pa a el es udio se analiza on
los da os en las mismas condiciones ( amaño de paque e, dis ancia, e c.) en
QoS 0, ya que es la calidad donde un lige o cambio, puede a oja más
pe u bación.
Figu a 5-22. Compa ación comunicación unidi eccional y bidi eccional
pa a QoS 0
Pese a se una mues a en la que se compa a pa a un amaño de paque e
meno que el es udiado p e iamen e en la comunicación unidi eccional,
obse amos un aumen o de la di e encia en e ambas comunicaciones
espec o de la longi ud de paque e exponencial del 4,12 %.
Conclusión medidas de conges ión:
De la misma mane a que el aumen o de la longi ud del paque e aumen a
la p obabilidad de allo, el paso de una comunicación unidi eccional a

Sis ema de comunicaciones IoT pa a ehículos au ónomos
72
bidi eccional sa u a mucho la comunicación, conges ionando en g an
medida al B oke .
Es o se aslada a la le e pe misibilidad que iene el B oke , sob e una
longi ud de paque e mayo de 150 By es, p o ocando una can idad de
pé didas supe io al 90 % en longi udes de 250 By es.
Po lo que podemos conclui que odos los cambios expues os
an e io men e (aumen o de la dis ancia, aumen o de la longi ud, de paque e,
e c.) a ec an en g an medida a la comunicación, y el caso del aumen o de
publicado es en la comunicación no iba a se la excepción.
Sin emba go, si se quisie a aumen a el núme o de ehículos publicado es,
pasa de 2 a 10, una solución posible pa a p e eni la pé dida de conexión
se ia en p ime luga la educción de la longi ud de paque e, es o obliga ía en
un en o no eal a escoge muy bien los da os que debe de publica cada
ehículo y po an o la ecuencia de en ío. En segundo luga , se pod ía
au oma iza un pe iodo de publicación po cada uno de los ehículos,
pe mi iendo po an o la comunicación de odos los ehículos con el B oke ,
pe o ges ionando y asegu ando de que no publiquen a ios de ellos a la ez.
5.4 Medidas con módulo 3G
Pa a palia la limi ación que supone el módulo Wi i ela ada en el an e io
apa ado, se ap ecia que el mayo incon enien e de es a ecnología es la
dis ancia a la que se exponen los módulos. En las p uebas p e ias se ha enido
que ga an iza pa a ob ene una comunicación e ec i a, la opología del
e eno, eniendo que, en e o as condiciones, es a a la misma al u a ambos
módulos y su icien emen e despegados del suelo.
Po ello es in e esan e obse a el compo amien o u ilizando una
ecnología al e na i a que posea una mayo libe ad espec o a la dis ancia
en e los módulos, únicamen e eniendo que ga an iza la exis encia de una
buena cobe u a pa a el módulo. U ilizándolo como suje o de compa ación,
pudiéndose ealiza un análisis exhaus i o de las en ajas y des en ajas que
puede apo a el uso de una u o a ecnología, dependiendo de la si uación y
el con ex o.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
73
5.4.1 Medidas según el pe iodo de en ío
En el caso del módulo Wi i se ha usado un pe iodo ijo de en ío de
paque es a 600 milisegundos pa a pode compa a los di e en es esul ados en
las mismas condiciones. En es e caso al no depende del ac o dis ancia sino
de la cobe u a que enga la an ena. Uno de los ac o es que puede esul a
ele an es, es el hecho de pode hace una in es igación sob e el pe iodo de
en ío. Asumiendo como ideal, aquel que consigue se el más bajo posible con
el meno núme o de pé didas de paque es (a se posible sin pé didas).
A con inuación, se a a p ocede al análisis del iempo según el pe iodo del
en ío en las di e en es calidades:
En las dos p ime as g á icas Figu a 5-23. Medidas según la ecuencia QoS 0
y Figu a 5-24. Compa ación RTT segun dis in os pe iodos en QoS 0), se mues an
las medias de RTT pa a pe iodos muy pequeños, obse ando ambién el
his og ama pa a cada calidad omando en cuen a la dispe sión que posee
cada mues a.
Sin emba go, en la úl ima de ellas, se ecogen las medias de RTT pa a
pe iodos más g andes con ayuda de una ec a de eg esión. Es a se calcula
con sus co espondien es medias, pa a pode obse a la p og esión de
mejo a de las medias de RTT, a medida que se inc emen a el pe iodo de
en ío.
• QoS 0:
En los siguien es g á icos podemos e como se dis ibuye el núme o de
paque es ecibidos según el RTT en QoS 0 según el pe iodo de en ío de
paque es. De ellos, se puede in e i que el pe iodo de en ío es un ac o
de e minan e a la ho a de ene una asa de en ío uni o me y más ápida
posible. A medida que se inc emen a el pe iodo de en ío, meno es el RTT, ya
que pe mi e p ocesa los paque es sin ene que encola los, e i ando que se
p oduzca alguna sa u ación. Es o sucede en los pe iodos mayo es a 425
milisegundos (425, 600 y 1000) que quedan p ác icamen e solapados en el
g a ico en o no a una media de 400 milisegundos de RTT. En el caso de
Sis ema de comunicaciones IoT pa a ehículos au ónomos
74
pe iodos meno es a 425, como se puede obse a en la Figu a 5-24.
Compa ación RTT segun dis in os pe iodos en QoS 0, exis e una mayo
dispe sión de los da os que se a educiendo a medida que se aumen a el
pe iodo de en ío.
Figu a 5-23. Medidas según la ecuencia QoS 0
Figu a 5-24. Compa ación RTT segun dis in os pe iodos en QoS 0
Podemos comp oba la uni o midad an e io men e mencionada más en
de alle pa a pe iodos mayo es a 425, en los que la educción de la media de
RTT es mucho meno . Es a educción del RTT es de 5 milisegundos po cada 250
milisegundos que se inc emen e la ecuencia de en ío. Pa a obse a la
Sis ema de comunicaciones IoT pa a ehículos au ónomos
75
endencia dec ecien e, se ha plasmado la ec a de eg esión, pe o no
signi ica i a de la media de los alo es RTT ob eniendo una mejo a de 25
milisegundo si se inc emen a el pe iodo de 750 a 2000.
Figu a 5-25. Medias RTT en QoS 0
Sis ema de comunicaciones IoT pa a ehículos au ónomos
82
• Disposición del módulo de con ol
El ul imo, es el enca gado de moni o iza los da os y ealiza el con eo de la
o ien ación del ehículo, cuando la o ien ación supe a el lími e es ablecido, el
ehículo 2 en ía un comando al 1.
Figu a 6-3. Disposición del modulo de con ol apagado

Sis ema de comunicaciones IoT pa a ehículos au ónomos
83
• Ejemplo de uso cuando se sob epasa el umb al
Figu a 6-4. Compo amien o al sob epasa el umb al
Los o os dos leds, de colo ojo, se iluminan cuando el ehículo 1, ecibe el
comando de la ec i icación, es o hace que el ehículo 1 encienda los leds ojos
izquie do o de echo dependiendo del comando ecibido, es os segui án
encendidos has a que el ehículo se eo ien e en una posición cen ada, donde el
ehículo no co e pelig o.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
84
Figu a 6-5. IMU y LEDS
Debido a la impo ancia que puede ae consigo el en ío de un comando
ue a de iempo, en es e ejemplo la ecuencia de en ío de los da os es
mucho más al a que en las aplicaciones de IoT, ealizando una medida cada
100 milisegundos, po que la ecuencia y moni o ización del senso iene que
se al a (po la dinámica del ehículo), ya que si la ecuencia de en ío no
uese lo su icien emen e al a el ehículo co e ía iesgo choque.
Po úl imo, si se a ase de una aplicación donde se ealizase un es udio del
aumen o de la empe a u a en los íos, una ecuencia de en ío muy al a
da ía luga a una sa u ación en el sis ema de comunicaciones, cap u ando en
g an can idad de ocasiones a iaciones insigni ican es.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
85
7 Conclusiones y abajo u u o
7.1 Conclusiones
Se ha implemen ado una comunicación en e ehículo mó iles basadas en
el p o ocolo MQTT y se han analizado sus ca ac e ís icas más des acables
desde el pun o de is a de la comunicación en e ehículos (dis ancia,
ecuencia de en ío, longi ud del mensaje, e c.). En el p oyec o se han
log ado cumpli a ios obje i os y esul ados:
1. Hemos conseguido ealiza y amilia iza nos con di e en es a eas como la
p og amación en C, con igu ación e ins alación del en o no en Linux y en
Raspbian, así como la amilia ización del p o ocolo MQTT y de los dis in os
módulos XBee u ilizados du an e el p oyec o.
2. Se ha log ado desa olla un sis ema de comunicaciones obus o,
sol en ando odos los p oblemas de econexión del B oke MQTT,
pe mi iendo es ablece una conexión es able sin impo a el o den de
ejecución, desa ollando un sis ema de de ección de pue o se ie (UART)
que de ec a au omá icamen e el pue o a a és del cual se es á
ealizando la conexión, además de co egi se los p oblemas de
desconexión epen inos que apa ecían de mane a cons an e du an e el
desa ollo de las comunicaciones. Todos es os a ances do an a la API de
una g an obus ez, que pe mi e el desa ollo de comunicaciones en un
escena io eal.
3. Se han implemen ado di e sos de clien es MQTT, que pe mi en la
adecuación del clien e al ensayo p ac ico deseado (dis ancia, longi ud de
paque e, comunicación en e a ios ehículos, ecuencia de en ío). Es o
pe mi e la sepa ación o al del compo amien o del clien e del sis ema de
comunicaciones en capas, pudiendo escoge en e los dis in os p o o ipos
ya p esen ados.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
86
4. Los esul ados ob enidos en los ensayos p ác icos han pe mi ido
escla ece dudas sob e la impo ancia del aumen o del QoS, llegando
a la conclusión de que el aumen o de la calidad de se icio lle a
consigo un aumen o de la conges ión del sis ema, ya que los mensajes
ansmi idos se duplican o cuad iplican debido a las con i maciones
necesa ias pa a ges iona el núme o de eces que ha llegado un
paque e a su des ino. De la misma mane a el aumen o sob e la
dis ancia, longi ud de paque e y ecuencia de en ío, han aído
consigo conclusiones sospechadas, pues o que a condiciones más
des a o ables pa a las comunicaciones mayo pé dida de mensajes y
mayo p obabilidad de allo du an e la comunicación. De igual o ma
los ensayos p ác icos, han a ojado mucha in o mación sob e el
compo amien o del sis ema de comunicaciones, esul ados que han
sido co obo ados g acias a a ios es udios, en e ellos [8] , pe mi iendo
es ablece dis ancias no espe adas, op imiza la ecuencia de en ío
pa a que sea la meno posible sin a ec a al desa ollo de las
comunicaciones, conoce las en ajas y des en ajas de usa módulos
Wi i o 3G y en conjun o conoce lími es del sis ema de comunicaciones.
5. Se ha log ado simula el compo amien o del sis ema de
comunicaciones en un escena io eal, pe mi iendo la comunicación
en e el núme o deseado de ehículos, pe mi iéndonos ap ecia la
comunicación en e ehículos u ilizando dis in as ecnologías.
6. Finalmen e, las p uebas ealizadas y el ejemplo de caso de uso, nos ha
pe mi ido conoce las posibles limi aciones ( is as en las conclusiones
expues as en las secciones 5.1 5.2, 5.3 y 5.4), de la aplicación en un
sis ema eal, en endiendo la impo ancia de la calidad de se icio,
dis ancia en e ehículos, ecuencia de en ío, e c., pe mi iéndonos
in e p e a , cuáles de es os alo es, son más con enien es dependiendo
de las ad e sidades p opias del escena io.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
87
7.2 T abajo u u o
T as hace el es udio de di e sas ecnologías, ecaba los da os y analiza los
esul ados, se plan ean di e en es posibilidades a la ho a de amplia y mejo a
la uncionalidad de la aplicación.
Una de las posibilidades es mejo a la uncionalidad de la API de mane a
que se puedan ob ene di e en es da os de la conexión MQTT. Se llegó
implemen a un dicciona io hash modi icado pa a almacena en un opic
(cla e) la lis a de clien es que es án susc i os ( alo ). Sin emba go, no se ha
llegado a aplica a la API en úl imo caso. Es o pe mi i ía en e o as cosas
almacena el núme o de ehículos conec ados en una conexión en iempo
eal. También pod ía u iliza se pa a almacena di e sos pa áme os de cada
ehículo alojándolos en dicha es uc u a.
Resul a ía in e esan e ambién, la ealización de ensayos p ác icos con una
opa de obo s eales, en donde se encuen en di e en es ipos de ehículos
e es es, ma inos o aé eos. De es a mane a, pod íamos obse a di e en es
compo amien os en las comunicaciones debido a las a iaciones b uscas del
mo imien o y la di e encia de al u a espec o a dis in os disposi i os.
Siguiendo es e hilo, se pod ían ac ualiza las ecnologías de los disposi i os
u ilizando ecnologías más po en es como el 4G y 5G obse ando cuan o se
educe el RTT espec o al es udio hecho con 3G.
Pa a mejo a la isualización, ecopilación y segu idad de los da os se
pod ía u iliza un B oke online MQTT, como puede se el caso de Hi eMQ, de
mane a que habili e la conexión de dis in os clien es simul áneamen e.
G acias a ello, los mensajes ansmi idos se ían almacenados en la nube,
pe mi iendo así su a o pos e io de una mane a ácil y cen alizada.

Sis ema de comunicaciones IoT pa a ehículos au ónomos
88
Conclussions
A communica ion be ween mobile ehicles based on he MQTT p o ocol
has been implemen ed and i s mos ou s anding cha ac e is ics ha e been
analyzed om he poin o iew o communica ion be ween ehicles
(dis ance, sending equency, message leng h, e c.). In he p ojec , se e al
objec i es and esul s ha e been achie ed:
1. We ha e managed o pe o m and become amilia wi h di e en
asks such as p og amming in C, con igu a ion and ins alla ion o he
en i onmen in Linux and Raspbian, as well as amilia iza ion wi h he
MQTT p o ocol and he di e en XBee modules used du ing he
p ojec .
2. A obus communica ions sys em has been de eloped, sol ing all he
MQTT B oke econnec ion p oblems, allowing a s able connec ion o
be es ablished ega dless o he o de o execu ion, de eloping a
se ial po de ec ion sys em (UART) ha au oma ically de ec s he
po . h ough which he connec ion is being made, in addi ion o
co ec ing he sudden disconnec ion p oblems ha appea ed
cons an ly du ing he de elopmen o communica ions. All hese
ad ances p o ide he API wi h g ea obus ness, which allows he
de elopmen o communica ions in a eal se ing.
3. Se e al MQTT clien s ha e been implemen ed, which allow he
adap a ion o he clien o he desi ed p ac ical es (dis ance,
packe leng h, communica ion be ween se e al ehicles, sending
equency). This allows he o al sepa a ion o he clien 's beha io
om he laye ed communica ion sys em, being able o choose
be ween he di e en p o o ypes al eady p esen ed.
4. The esul s ob ained in he p ac ical es s ha e cla i ied doub s abou
he impo ance o he inc ease in QoS, eaching he conclusion ha
he inc ease in he quali y o se ice leads o an inc ease in sys em
conges ion, since he messages ansmi ed a e They double o
Sis ema de comunicaciones IoT pa a ehículos au ónomos
89
quad uple due o he con i ma ions necessa y o manage he
numbe o imes a package has a i ed a i s des ina ion. In he same
way, he inc ease in dis ance, packe leng h and sending equency,
ha e b ough suspicious conclusions, since he mo e un a o able
condi ions o communica ions, g ea e loss o messages and g ea e
p obabili y o ailu e du ing communica ion. In he same way,
p ac ical es s ha e yielded a lo o in o ma ion on he beha io o
he communica ions sys em, esul s ha ha e been co obo a ed
hanks o wo s udies [8], allowing o es ablish unexpec ed dis ances,
op imizing he equency o sending so ha i is he smalles possible
wi hou a ec he de elopmen o communica ions, know he
ad an ages and disad an ages o using Wi-Fi o 3G modules and
collec i ely know he limi s o he communica ions sys em.
5. I has been possible o simula e he beha io o he communica ion
sys em in a eal scena io, allowing communica ion be ween he
desi ed numbe o ehicles, which allow us o app ecia e he
communica ion be ween ehicles using di e en echnologies.
6. Finally, he es s ca ied ou and he use case example ha e allowed
us o know he possible limi a ions (seen in he conclusions se ou in
sec ions 5.1 5.2, 5.3 and 5.4), o he applica ion in a eal sys em,
unde s anding he impo ance o he quali y o se ice, dis ance
be ween ehicles, shipping equency, e c., allowing us o ge know
which o hese alues a e mo e sui able depending on he ad e si ies
shown on he scena io.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
90
Fu u e wo k
A e s udying se e al echnologies, he collec ed da a and analyzing he
esul s, di e en possibili ies a ise when i comes o expanding and imp o ing
he unc ionali y o he applica ion.
One o he possibili ies is o add new unc ionali ies o he API so ha
di e en da a can be ob ained om he MQTT connec ion. A modi ied hash
dic iona y was implemen ed o s o e in a opic (key), he clien lis ha a e
subsc ibed ( alue). Howe e , i has no been applied o he API in he la e
case. This would allow, among o he hings, o s o e he numbe o connec ed
ehicles in a eal- ime connec ion. I could also be used o s o e a ious
pa ame e s o each ehicle by housing hem in said s uc u e.
I would also be in e es ing o ca y ou p ac ical es s wi h a obo ´s oop,
whe e di e en ypes o land, sea o ai ehicles exis . In his way, we could
obse e di e en beha io s in he communica ion due o sudden a ia ions in
mo emen and he di e ence in heigh wi h espec o di e en de ices.
Along hese lines, he echnologies use on he de ices could be upda ed
using mo e powe ul echnologies such as 4G and 5G, obse ing how much
he RTT is educed compa ed o he s udy done wi h 3G.
To imp o e he isualiza ion, collec ion, and secu i y o he da a, an MQTT
online b oke could be used, such as Hi eMQ, which enables he connec ion
o di e en clien s simul aneously. Hence, he ansmi ed messages would be
s o ed in he cloud, hus allowing hei subsequen ea men in an easy and
cen alized way.
Sis ema de comunicaciones IoT pa a ehículos au ónomos
91
8 Con ibuciones
La dis ibución y con ibuciones de los in eg an es del p oyec o, se desc ibe
según los siguien es pun os cla e, donde hubo pa icipación po pa e de los
dos in eg an es:
• Implemen ación So wa e (C).
• Redacción de la memo ia.
• Implemen ación Py hon (G á icas).
• Ca los López de la To e O ego:
• Redacción de la memo ia.
Pa icipé en la edacción de dis in as secciones de la memo ia como
son: obje i os, elemen os ha dwa e y so wa e, endimien o y
e aluación del sis ema, diseño de imágenes y maque ado, y de
mane a conjun a edac amos el esumen, ejemplo de caso de uso,
conclusiones y abajo u u o.
• Implemen ación Py hon (G á icas).
He pa icipado en el desa ollo de cie as g a icas a la ho a de
plasma los esul ados ob enidos en los ensayos p ác icos.
Implemen ando código en Py hon como lenguaje de p og amación
escogido pa a el desa ollo, u ilizando la lib e ía Pandas. Se ha
u ilizado el eposi o io de Google Colab un no ebook Jupy e pa a
hace el desa ollo de las g á icas de mane a conjun a.
• Gonzalo Sanz Rod íguez:
• Redacción de la memo ia.
Pa icipé en la edacción de dis in as secciones de la memo ia como
son: la in oducción, ha dwa e, so wa e, endimien o y e aluación
del sis ema, y de mane a conjun a edac amos el esumen, ejemplo
de caso de uso, conclusiones y abajo u u o.