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
en Ingenie ía de las Tecnologías de
Telecomunicación
E aluación de la dis o sión no lineal
p oducida
po ampli icado es de po encia en
señales Wi-Fi
Au o : Ma ía Jesús Ruiz González
Tu o es: Ma ía José Made o Ayo a y Elías Ma qués Valde ama
Dp o. Teo ía de la Señal y Comunicaciones
Escuela Técnica Supe io de Ingenie ía
Uni e sidad de Se illa
Se illa, 2025
T abajo Fin de G ado
en Ingenie ía de las Tecnologías de Telecomunicación
E aluación de la dis o sión no lineal p oducida
po ampli icado es de po encia en señales Wi-Fi
Au o :
Ma ía Jesús Ruiz González
Tu o es:
Ma ía José Made o Ayo a y Elías Ma qués Valde ama
P o eso a Ti ula y P o eso Sus i u o
Dp o. Teo ía de la Señal y Comunicaciones
Escuela Técnica Supe io de Ingenie ía
Uni e sidad de Se illa
Se illa, 2025
T abajo Fin de G ado:
E aluación de la dis o sión no lineal
p oducida
po ampli icado es de
po encia en señales Wi-Fi
Au o : Ma ía Jesús Ruiz González
Tu o es: Ma ía José Made o Ayo a y Elías Ma qués Valde ama
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
Si quie es i ápido, e solo. Si quie es llega lejos, e acompa-
ñado
Robe Waldinge
C
on es e abajo inalizo una de las e apas más impo an es de ida, un camino en el que no solo me
he o mado académicamen e, sino que ambién he c ecido como pe sona. Hoy puedo mi a a ás, y
con i ma lo que dice la ase inicial: he llegado lejos, pe o no lo hice sola.
En p ime luga , ag adece a mis pad es y a mi he mano, que han sido mi pila undamen al. Su apoyo
incondicional, su paciencia y su con ianza en mí han sido cla es pa a no endi me en los momen os más
di iciles, dándome siemp e la mano pa a no deja me sola. G acias po enseña me que el e dade o éxi o se
compa e en amilia.
Mi mad e solía deci me: "Cuando en es en la ca e a, as a encon a a us amigas de e dad". ¡Y cuan a
azón enía! Du an e es os años he enido la sue e de compa i el camino con pe sonas inc eíbles (Ana,
Lau a, Vic o ia, Ma ía, Nu ia, Paula y Ma ina) que me han demos ado el e dade o signi icado de la amis ad.
Siemp e hemos encon ado la mane a de saca nos una son isa y de segui adelan e jun as. G acias chicas.
Po úl imo, ag adece a odos los p o eso es que han sido pa e de la o mación alcanzada en es a e apa.
En especial, a Ma ía José, po su ce canía y po hace que es e abajo inal, lejos de con e i se en una ca ga,
ue a una opo unidad de ap ende y supe a mis lími es.
Ma ía Jesús Ruiz González
Se illa, 2025
I
Resumen
L
a ecnología WiFi se ha con e ido en una he amien a undamen al pa a el acceso a In e ne en hoga es,
cen os educa i os, o icinas y o os en o nos. G acias a su e olución con inua, es a ecnología ha log ado
adap a se a las c ecien es demandas de mo ilidad, capacidad y e iciencia, siendo una de las soluciones más
u ilizadas en edes de á ea local.
Den o de un sis ema WiFi, el ampli icado de po encia cumple una unción cla e al aumen a el ni el de
señal pa a que es a pueda se ansmi ida e izcamen e a a és del medio inalámb ico. Sin emba go, cuando
es os disposi i os ope an ce ca de su pun o de sa u ación, pueden in oduci un enómeno conocido como
dis o sión no lineal, que en algunos casos a ec a nega i amen e a la calidad de la señal. Po ello, es e abajo
se cen a en e alua el compo amien o de un ampli icado de po encia de clase J al se exci ado con señales
co espondien es a dis in as e siones del es ánda IEEE 802.11. Pa a e alua dicho compo amien o, se
analizan y compa an di e en es igu as de mé i o, con el in de de mina en qué medida la dis o sión no lineal
comp ome e o no la calidad de la señal de salida.
III
XÍndice
4.2.3 PAPR 24
4.2.4 Sinc onización de las señales 24
4.2.5 NMSE 25
4.2.6 Ca ac e ís ica AM-AM y AM-PM 25
4.2.7 EVM y cons elación de la señal 26
5 Resul ados expe imen ales 27
5.1 Mon aje expe imen al 27
5.1.1 Ca ac e ización del camino de en ada 27
5.1.2 Ca ac e ización del camino de salida 27
5.2 Ampli icado de Po encia de Doble Banda Clase J 28
5.3 Resul ados expe imen ales 29
5.3.1 IEEE 802.11g 29
5.3.2 IEEE 802.11n 35
5.3.3 IEEE 802.11ac 38
5.3.4 IEEE 802.11ax 40
5.3.5 IEEE 802.11be 41
6 Conclusiones y líneas u u as de abajo 45
Apéndice A Códigos u ilizados 47
Índice de Figu as 157
Índice de Tablas 159
Índice de Códigos 161
Bibliog a ía 163
No ación
PA Powe Ampli ie
IEEE Ins i u e o Elec ical and Elec onics Enginee s
IoT In e ne o Things
WLAN Wi eless Local A ea Ne wo k
OFDM O hogonal F equency Di ision Mul iplexing
MAC Medium Access Con l
PHY Physical Laye
QAM Quad a u e Ampli ude Modula ion
MIMO Mul iple Inpu Mul iple Ou pu
SISO Single Inpu Single Ou pu
CSMA/CA Ca ie Sense Mul iple Access wi h Collision A oidance
DIFS Dis ibu ed In e ame Space
RTS Reques To Send
CTS Clea To Send
ACK Acknowledgemen
QoS Quali y o Se ice
FCS F ame Check Sequence
HT High Th oughpu
VHT Ve y High Th oughpu
HE High E iciency
EHT Ex emely High Th oughpu
PLCP Physical Laye Con e gence P o ocol
PMD Physical Medium Dependen
IFFT In e se Fas Fou ie T ans o m
FFT Fas Fou ie T ans o m
PSK Phase Shi Keying
ISI In e Symbol In e e ence
OFDMA O hogonal F equency Di ision Mul iple Access
PSD Powe Spec al Densi y
ACPR Adjacen Channel Powe Ra io
PAPR Peak- o-A e age Powe Ra io
EVM E o Vec o Magni ude
NMSE No malised Mean Squa e E o
MCS Modula ion and Coding Scheme
RU Resou ce Uni s
CCDF Complemen a y Cumula i e Dis ibu ion Func ion
MPDU MAC P o ocol Da a Uni
PSDU PLCP Se ice Da a Uni
XI
1 In oducción
L
a e olución de las comunicaciones inalámb icas ha ans o mado adicalmen e la o ma en que las
pe sonas y disposi i os in e ac úan con el en o no. Desde sus o ígenes, es as ecnologías han buscado
o ece conec i idad lexible, eliminando la necesidad de conexiones ísicas y pe mi iendo una ansmisión
de da os más ágil y ubicua. En es e con ex o, las edes WiFi, basadas en el es ánda IEEE 802.11, se han
con e ido en una he amien a indispensable en la ida co idiana, o eciendo desde el acceso a In e ne en
hoga es has a aplicaciones a anzadas en en o nos indus iales, po ejemplo.
El a ac i o de las edes inalámb icas adica en su acilidad de despliegue, lexibilidad y bajo cos e ela i o
en e a soluciones cableadas como la ib a óp ica, cuyos al os cos es de ins alación y man enimien o suponen
una ba e a impo an e en en o nos u ales o de di ícil acceso [
11
]. Po es e mo i o, el uso del espec o
adioeléc ico pa a es ablece enlaces de al a capacidad se ha con e ido en una al e na i a cada ez más
ele an e, pe mi iendo una conec i idad ágil y escalable en escena ios donde an es esul aba in iable.
Desde la publicación de su p ime a e sión en 1997, el es ánda IEEE 802.11 ha sido obje o de una
e olución con inua, inco po ando mejo as en la modulación y codi icación, en écnicas de acceso múl iple
y el uso e icien e del espec o. La inco po ación de modulación OFDM (O hogonal F equency Di ision
Mul iplexing) ha supues o un sal o cuali i a i o en é minos de elocidad y obus ez, especialmen e en
en o nos con in e e encia y mul i ayec o.
No obs an e, es a complejidad ambién plan ea nue os e os en la e apa de ansmisión. En pa icula , las
señales OFDM p esen an una al a PAPR (Peak- o-A e age Powe Ra io), lo que exige a los ampli icado es
de po encia a ope a con má genes amplios si se desea e i a la dis o sión no lineal. Es e disposi i o es
el esponsable de ampli ica la señal, ga an izando an o la e iciencia ene gé ica como la idelidad de la
ansmisión [
14
]. Pe o cuando el ampli icado ope a ce ca de su pun o de sa u ación pa a maximiza la
e iciencia, comienza a in oduci e ec os no lineales que deg adan la señal y gene an emisiones ue a de
banda, lo que puede pe judica a canales adyacen es e incumpli los lími es es ablecidos. Es e ipo de
dis o sión no lineal esul a especialmen e p oblemá ico en sis emas inalámb icos mode nos y pa a e alua su
compo amien o es necesa io ealiza un es udio de allado de las medidas expe imen ales.
Po consiguien e, en es e abajo, se abo da á el análisis de la dis o sión no lineal in oducida po un ampli-
icado de po encia de clase J cuando es exci ado con señales WiFi gene adas con o me a dis in as e siones
del es ánda . El disposi i o, diseñado pa a ope a en las bandas ISM de 2.4 GHz y 5.8 GHz, ecuencias
comunmen e u ilizadas en comunicaciones WiFi, ha sido cedido pa a es e es udio po la p o eso a Mónica
Fe nández-Ba ciela, de la Uni e sidad de Vigo. El obje i o es e alua expe imen almen e su compo amien o
an e señales moduladas y analiza su impac o en la calidad de la ansmisión.
Pa a es e es udio ha sido necesa io gene a las o mas de onda en MATLAB
®
, u ilizando especí icamen e
el WLAN Toolbox y la aplicación in e ac i a Wi eless Wa e o m Gene a o . Una ez gene adas, las señales
se han ansmi ido y medido en el labo a o io median e el uso de los equipos co espondien es, lo que ha
pe mi ido e alua las espues as del sis ema en dis in as condiciones. El análisis de los esul ados se ha
lle ado a cabo a pa i de las igu as de mé i o, como el ACPR (Adjacen Channel Powe Ra io), PAPR,
NMSE (No malised Mean Squa e E o ), EVM (E o Vec o Magni ude) y las cu as AM-AM y AM-PM,
que pe mi en cuan i ica los e ec os de la dis o sión no lineal. Pa a ello, se han compa ado las señales en
es escena ios dis in os: la señal ideal, la señal as pasa po un cable coaxial y la señal as pasa po el
ampli icado .
1
2Capí ulo 1. In oducción
1.1 Es uc u a del abajo
Es e abajo se o ganiza en seis capí ulos, es uc u ados de o ma que pe mi a una comp esión de los concep os
écnicos y expe imen ales necesa ios pa a el desa ollo del es udio:
•Capí ulo 1: p esen a el con ex o gene al del es udio y los obje i os que se quie en alcanza .
•
Capí ulo 2: desc ibe las dis in as e siones del es ánda de comunicaciones inalámb icas IEEE 802.11,
en especial a aquellas que emplean OFDM. Se explica an o la capa de acceso al medio como la capa
ísica, y se analizan los pa ame os écnicos ele an es pa a la gene ación de las señales u ilizadas.
•
Capí ulo 3: in oduce los undamen os eó icos de la dis o sión no lineal en ampli icado es de po encia,
así como las igu as de mé i o empleadas en es e abajo pa a e alua dicho e ec o.
•
Capí ulo 4: de alla el p ocedimien o pa a gene a las señales WiFi con di e en es con igu aciones en
MATLAB®y la o ma de calcula las mé icas u ilizadas en es a he amien a.
•
Capí ulo 5: p esen a y analiza los esul ados ob enidos en el labo a o io pa a cada una de las señales
gene adas, compa ándolas en los es escena ios es udiados, y di idiendo los esul ados po es ánda ,
des acando el impac o de la dis o sión no lineal en cada caso.
•
Capí ulo 6: esume las conclusiones ex aídas del es udio, alo ando el compo amien o del ampli ica-
do de po encia u ilizado, y se p oponen posibles líneas u u as de abajo.
2 El es ánda IEEE 802.11
E
n la ac ualidad, las edes inalámb icas desempeñan un papel esencial en la ida co idiana, pe mi iendo
una conec i idad ubicua y lexible que impulsa desde aplicaciones domés icas has a in aes uc u as
c í icas. En e es as edes, la ecnología WiFi, basada en el es ánda IEEE 802.11, se ha con e ido en la
p incipal ía de acceso a In e ne pa a millones de disposi i os en odo el mundo. Su e olución cons an e ha
pe mi ido no solo una mejo a en la elocidad y e iciencia de ansmisión, sino ambién una adap ación a
nue as necesidades ecnológicas como el In e ne de las Cosas (IoT, In e ne o Things), las comunicaciones
en en o nos de al a densidad y la c ecien e demanda de mo ilidad.
Es e capí ulo se cen a en el análisis del es ánda IEEE 802.11, undamen o écnico de las edes WiFi. En
p ime luga , se p esen a una isión gene al de las edes inalámb icas, clasi icadas según su alcance y aplica-
ción, pa a con ex ualiza el papel de las WLAN den o del ecosis ema de comunicaciones. A con inuación,
se in oduce el es ánda desde una pe spec i a his ó ica y écnica, desc ibiendo su es uc u a, e olución y
p incipales e siones, con especial a ención a aquellas que u ilizan modulación OFDM, ya que se án obje o
de análisis en es e abajo.
También se desc iben en de alle las dos capas p incipales del es ánda : la capa de acceso al medio (MAC),
esponsable de la egulación del acceso al canal compa ido y del con ol de e o es, y la capa ísica (PHY),
enca gada de la ansmisión e ec i a de las señales en el medio adioeléc ico. Finalmen e, se p o undiza en
la écnica de modulación OFDM, cla e en las úl imas gene aciones de WiFi, y se explican sus p incipios
de uncionamien o, en ajas, desa íos y pa áme os ca ac e ís icos. Es e ma co eó ico esul a undamen al
pa a comp ende cómo se e a ec ada la calidad de la señal al a a esa un ampli icado de po encia, aspec o
p incipal en los capí ulos pos e io es.
2.1 Redes inalamb icas
Las edes inalámb icas han cob ado una impo ancia undamen al en la sociedad ac ual, ya que pe mi en la
ansmisión de da os sin necesidad de conexiones ísicas. Es e ipo de edes o ece una g an lexibilidad y
acilidad de despliegue, lo que las hace ideales pa a una amplia a iedad de en o nos, desde el hoga y la
o icina has a espacios públicos, hospi ales o zonas u ales. La mo ilidad, la escalabilidad y el acceso ubicuo
que o ecen han sido cla e en el c ecimien o de ecnologías como el IoT, la domó ica y las comunicaciones
mó iles.
Las edes inalámb icas pueden clasi ica se según su cobe u a y el alcance de sus señales. A con inuación,
se p esen an las p incipales ca ego ías [2]:
•
WBAN (Wi eless Body A ea Ne wo k): son edes inalámb icas de á ea co po al, con un alcence
in e io a los 30 cm. Es án diseñadas pa a conec a senso es o disposi i os elec ónicos colocados sob e
o al ededo del cue po humano. Su uso es común en aplicaciones médicas, como el moni o eo con inuo
de la salud en pacien es c ónicos o pe sonas mayo es, median e pulse as, senso es implan ables o
disposi i os po á iles.
•
WPAN (Wi eless Pe sonal A ea Ne wo k): ienen un alcance ap oximado de 10 m y se u ilizan pa a
conec a disposi i os ce canos a una pe sona, como elé onos mó iles, au icula es, eclados, e c. Suelen
emplea ecnologías como Blue oo h o Zigbee. Es as edes pe mi en el in e cambio de in o mación de
o ma ápida, sencilla y sin necesidad de in aes uc u a compleja.
3
4Capí ulo 2. El es ánda IEEE 802.11
•
WLAN (Wi eless Local A ea Ne wo k): las edes inalámb icas de á ea local, como las basadas en
el es ánda IEEE 802.11, pe mi en la conexión de disposi i os den o de un á ea limi ada, como un
hoga , una o icina o un edi icio. Su alcance ípico onda los 100 m o incluso a ios kilóme os. Es án
diseñadas pa a p opo ciona acceso a ecu sos compa idos, como imp eso as o conexiones a In e ne ,
y son ges ionadas gene almen e po los p opios usua ios o en idades p opie a ias.
•
WMAN (Wi eless Me opoli an A ea Ne wo k): es e ipo de edes cub en á eas u banas ex ensas,
conec ando edi icios o in aes uc u as den o de una ciudad. Se u ilizan pa a in e conec a a ias edes
LAN dispe sas geog á icamen e y o ece se icios de ed a ni el me opoli ano. Son implemen adas
ecuen emen e po ope ado es de elecomunicaciones y pueden u iliza ecnologías como WiMAX o
edes de mic oondas.
•
WWAN (Wi eless Wide A ea Ne wo k) o WRAN (Wi eless Regional A ea Ne wo k): es as edes
conec an disposi i os a g an escala, aba cando dis ancias que an desde a ios kilóme os has a los
miles de kilóme os. Pe mi en la in e conexión de ciudades, países e incluso con inen es. Ac ualmen e,
se apoyan en ecnologías como la ansmisión po sa éli e, la ed mó il (3G, 4G y 5G) o enlaces
inalámb icos de al a elocidad, siendo undamen ales pa a el uncionamien o global de In e ne .
Figu a 2.1 Alcance de las edes inalámb icas. Fuen e [22].
En los p óximos apa ados se analiza á con más p o undidad el es ánda IEEE 802.11, abo dando su e olución
his ó ica, las dis in as e siones que han su gido a lo la go del iempo y las p incipales ca ac e ís icas écnicas.
Se p es a á especial a ención a aquellos es ánda es que se han u ilizado pa a el desa ollo de es e abajo.
2.2 In oducción al es ánda IEEE 802.11
El es ánda IEEE 802.11 de ine las bases eó icas pa a la comunicación en edes de á ea local inalámb icas
(WLAN). Fue desa ollado po el Ins i u e o Elec ical and Elec onics Enginee s (IEEE) como pa e de la
amilia de es ánda es IEEE 802, o ien ada al diseño y uncionamien o de edes de á ea local y me opoli ana.
Su p opósi o gene al es ga an iza la in e ope abilidad en e disposi i os de dis in os ab ican es, de iniendo
un conjun o común de p o ocolos y especi icaciones pa a la ansmisión de da os a a és del espec o
adioeléc ico.
Desde la publicación de su p ime a e sión en 1997, el es ánda ha sido obje o de cons an es e isiones,
ampliaciones y mejo as écnicas con el in de adap a se a las nue as necesidades de conec i idad, elocidad
de ansmisión, e iciencia ene gé ica y sopo e pa a nue os se icios. La e isión más ecien e, IEEE S d
802.11-2024, inco po a odas las enmiendas ap obadas en e 2021 y 2024, incluyendo a ances en á eas como
se icios de localización, acceso ehicula (V2X) y comunicaciones po luz isible (LiFi), en e o as [9].
IEEE 802.11 de ine en de alle an o el uncionamien o de la capa de acceso al medio (MAC, Medium Access
Con ol), como el compo amien o de la capa ísica (PHY, Physical Laye ). En es e con ex o, especi ica el
uso de ecnologías a anzadas, como OFDM, QAM o MIMO, lo que ha pe mi ido una e olución cons an e en
é minos de capacidad y endimien o de la ed. Es a a qui ec u a p opo ciona la base ecnológica del sis ema
conocido come cialmen e como WiFi, una ma ca egis ada po la asociación in e nacional WiFi Alliance,
o mada po las p incipales compañías líde es en ecnología de edes inalámb icas con el obje i o de asegu a
la compa ibilidad e in e ope abilidad de los dis in os p oduc os WLAN basados en el es ánda IEEE 802.11,
ampliamen e adop ado en en o nos domés icos, emp esa iales e indus iales.
En el p esen e abajo se abo da án especí icamen e las e siones del es ánda que emplean modulación
OFDM, ya que sob e ellas se cen a á el análisis de la dis o sión no lineal in oducida po el ampli icado de
po encia du an e la ansmisión de la señal. Los es ánda es conside ados son: 802.11g, 802.11n, 802.11ac,
802.11ax y 802.11be, po se los que inco po an dicha modulación en dis in as gene aciones de WiFi.
2.3 Capa de Acceso al Medio (MAC) 5
2.3 Capa de Acceso al Medio (MAC)
La capa MAC (Medium Access Con ol) iene como obje i o egula el acceso al medio de ansmisión
compa ido, es deci , al canal adioeléc ico po el que se comunican los usua ios. A di e encia de las
edes cableadas, donde las colisiones pueden de ec a se ísicamen e, en un en o no inalámb ico es o no es
posible, po lo que la capa MAC inco po a mecanismos especí icos pa a e i a colisiones y ga an iza una
comunicación e icien e y o denada. Además, es a capa se enca ga de unciones como la agmen ación de
amas, el con ol de e o es y la sinc onización en e es aciones [16].
2.3.1 Acceso múl iple CSMA/CA
El mecanismo que se u iliza en el es ánda IEEE 802.11 es el CSMA/CA (Ca ie Sense Mul iple Access
wi h Collision A oidance) y su uncionamien o se basa en "escucha an es de habla ". Es e es á diseñado pa a
e i a colisiones.
El p oceso unciona del siguien e modo: cuando una es ación desea ansmi i da os, p ime o escucha el
canal pa a comp oba si es á lib e. Si no de ec a ninguna ansmisión en cu so, espe a un in e alo de iempo
denominado DIFS (Dis ibu ed In e ame Space), y si el canal con inúa desocupado, inicia un con ado de
backo , eligiendo un núme o alea o io den o de una en ana de con ienda. Es e con ado disminuye mien as
el canal pe manezca lib e; si du an e es e iempo o a es ación comienza a ansmi i , el con ado se de iene y
se eanuda una ez que el medio uel a a es a acío. Cuando el con ado llega a ce o, la es ación ansmi e
su ama.
Pa a mejo a la iabilidad y e i a el p oblema del nodo ocul o, se u iliza el in e cambio de mensajes RTS
(Reques To Send) y CTS (Clea To Send) an es de en ia los da os. Si el ecep o ecibe co ec amen e la
in o mación, esponde con un ACK (Acknowledgemen ). En caso con a io, el emiso en ende á que hubo una
colisión y einicia á el p oceso, ampliando la en ana de con ienda pa a educi la p obabilidad de nue as
colisiones. En la Figu a 2.2 se puede obse a un ejemplo del mecanismo de con ol de acceso con RTS/CTS
pa a e i a colisiones.
Figu a 2.2 Mecanismos de acceso al medio. Fuen e [2].
2.3.2 Fo ma o de las amas MAC
Las amas MAC del es ánda IEEE 802.11 cons i uyen la unidad básica de comunicación en edes inalám-
b icas. Su es uc u a es á diseñada pa a pe mi i la ansmisión de da os, y ambién el con ol del acceso al
medio, la ges ión de conexiones y la implemen ación de unciones a anzadas como la calidad de se icio
(QoS) o ansmisiones de al a e iciencia (HT, VHT, HE). Cada ama es á compues a po es g andes bloques,
como se mues a en la Figu a 2.3: la cabece a MAC, el cue po de la ama y la secuencia de e i icación
(FCS) [24].
Cabece a de la ama MAC
La cabece a MAC con iene la mayo pa e de la in o mación de con ol. Es e se inicia con el campo F ame
Con ol, de 2 oc e os, que indica el ipo y sub ipo de la ama, la e sión del p o ocolo y di e sos indicado es
como la di ección (To Do / F om DS), la p esencia de más agmen os, e ansmisiones, con ol de ene gía,
da os pendien es, amas p o egidas y la inclusión del campo HT Con ol.
6Capí ulo 2. El es ánda IEEE 802.11
Figu a 2.3 Fo ma o de la ama MAC. Fuen e [9].
La es uc u a del campo F ame Con ol depende del ipo y sub ipo de ama; po ejemplo, en amas que
no son de con ol (Type
=
1), incluye subcampos como Re y, Mo e F agemn s y +HTC. En cambio, algunas
amas de con ol especializadas como RTS+HTC u ilizan una es uc u a ex endida a a és de Con ol
W appe .
También incluye el campo Du a ion/ID, que indica el iempo de ocupación del canal, y en e dos y cua o
campos de di ección. En IEEE 802.11 se con emplan has a cua o di ecciones MAC po ama: la di ección
1 (Add ess 1) siemp e iden i ica al ecep o inmedia o; la di ección 2 (Add ess 2) ep esen a al emiso ; la
di ección 3 puede con ene el BSSID o la di ección de des ino inal; y la di ección 4 se emplea únicamen e en
edes de dis ibución inalámb ica (WDS). Las di ecciones pueden se indi iduales, asignadas a una es ación
especí ica o g upales, como las di ecciones mul icas o b oadcas , u ilizadas pa a comunica con múl iples
disposi i os simul áneamen e.
En amas que sopo an calidad de se icio, como los QoS Da a, se inco po a opcionalmen e el campo
QoS Con ol, de 2 oc e os. Asimismo, amas a anzadas pueden inclui el campo HT Con ol, de 4 oc e os,
cuya p esencia se señala con el bi +HTC en el campo F ame Con ol. Es e campo es u ilizado en amas
de al o endimien o con o me a los es ánda es IEEE 802.11n/ac/ax, y su o ma o a ía según la a ian e
(HT, High Th oughpu ; VHT, Ve y High Th oughpu ; HE, High E iciency). Las unciones especí icas de
es e campo incluyen con ol de ag egación, espues a a bloques y es icciones de ca ego ía de acceso (AC
Cons ain ) [9].
Cue po de la ama MAC
El cue po de la ama, o F ame Body, con iene la in o mación ú il que se ansmi e. Puede a a se de
da os de usua io, in o mación de ges ión (po ejemplo, solici udes de asociación) o ins ucciones de con ol,
dependiendo del ipo de ama. Es e campo es de longi ud a iable y es á p ecedido po odos los campos de
encabezado.
F ame Check Sequence (FCS)
El campo FCS iene como unción la de ección de e o es median e un CRC (Cyclic Redundancy Check)
de 32 bi s. El alo del FCS se calcula sob e odos los bi s del encabezado MAC y del cue po de la ama,
u ilizando el polinomio gene ado de g ado 32 de inido po el es ánda (Ecuación 2.1). El esul ado es el
complemen o a uno del esiduo de la di isión polinomial [
9
]. Al ecibi una ama, el ecep o ealiza el
mismo cálculo y e i ica si el esiduo coincide con el alo espe ado; en caso con a io, la ama se desca a.
G(x) = x32 +x26 +x23 +x22 +x16 +x12 +x11 +x10 +x8+x7+x5+x4+x2+x+1(2.1)
2.4 Capa Física (PHY)
La capa ísica del es ánda IEEE 802.11 de ine cómo se ansmi en las señales a a és del medio inalámb ico,
ans o mando los da os digi ales en señales elec omagné icas. Es a capa especi ica aspec os como el o ma o
de la señal, la modulación, la codi icación, la po encia de ansmisión y el uso del espec o. A lo la go
del iempo, el es ánda IEEE 802.11 ha e olucionado pa a adap a se a las nue as demandas de elocidad,
e iciencia y cobe u a.
En cuan o a su a qui ec u a, se o ganiza en dos subcapas: el PLCP (Physical Laye Con e gence P o ocol),
que adap a los da os p o enien es de la capa MAC al o ma o necesa io pa a la ansmisión ísica; y el PMD
(Physical Medium Dependen ), que se enca ga de de ini cómo se ansmi e y ecibe la señal a a és del
medio ísico, es ableciendo las ca ac e ís icas écnicas como las ecuencias, modulaciones y po encias [
15
].
2.5 Modulación OFDM 7
Es a es uc u a modula pe mi e que múl iples a ian es ísicas puedan coexis i bajo una misma in e az
MAC, acili ando la e olución y compa ibilidad en e e siones del es ánda .
A lo la go del iempo, la capa ísica ha e olucionado a a és de dis in as e siones del es ánda , adap ándose
a nue as ecnológicas:
•
802.11 (1997): p ime a e sión. O ece elocidades de 1-2 Mbps en la banda de 2.4 GHz usando
espec o enchanchado DSSS (Di ec Sequence Spead Spec um) con modulaciones DBPSK/DQPSK o
FHSS (F equency Hopping Spead Spec um) con modulación FSK.
•
802.11b (1999): mejo a la asa has a 11 Mbps usando DSSS con codi icación CCK en la banda de 2.4
GHz. Popula izó el uso de WiFi.
•
802.11a (1999): u iliza la banda de 5 GHz y modulación OFDM pa a alcanza has a 54 Mbps, aunque
u o meno adopción debido a su meno alcance.
•
802.11g (2003): combina la banda de 2.4 GHz con OFDM, alcanzando 54 Mbps y asegu ando la
compa ibilidad con 802.11b.
•
802.11n (WiFi 4, 2009): in oduce MIMO y canales de 40 MHz en las bandas de 2.4 y 5 GHz, con
elocidades eó icas de has a 600 Mbps. U iliza el o ma o de ama HT (High Th oughpu ).
•
802.11ac (WiFi 5, 2013): mejo a el endimien o con MU-MIMO (MIMO Mul iusua io), canales de
has a 160 MHz y modulación 256-QAM en 5 GHz, supe ando los 6.9 Gbps. In oduce la a ian e del
o ma o de la ama de la capa ísica VHT (Ve y High Th oughpu ).
•
802.11ax (WiFi 6, 2019): añade OFDMA (Acceso Múl iple basado en OFDM), mejo a la e iciencia
en en o nos densos y u iliza has a 1024-QAM, alcanzando 9.8 Gbps. U iliza el o ma o de ama HE
(High E iciency). Además, se amplía al uso de la banda de 6 GHz con la modalidad de WiFi 6E.
•
802.11be (WiFi 7, 2024): alcanza asas de 46 Gbps uncionando en las bandas de 2.4, 5 y 6 GHz,
u ilizando OFDMA con has a 16 lujos simul áneos, anchos de banda de has a 320 MHz y modulación
has a 4096-QAM. Emplea el o ma o de ama EHT (Ex emely High Th oughpu ).
•802.11ah (WiFi HaLow): usa bandas sub-GHz pa a IoT, o eciendo bajo consumo y g an alcance.
•802.11ad/ay (WiGig): ope a en la banda de 60 GHz, con asas de has a 7 Gbps (ad) y 176 Gbps (ay)
pa a aplicaciones de co o alcance como ealidad i ual.
G acias a es as mejo as, la capa ísica ha pe mi ido a la ecnología WiFi e oluciona desde edes básicas
de bajo endimien o has a pla a o mas a anzadas capaces de sa is ace las exigencias de conec i idad de
hoga es in eligen es, aplicaciones indus iales, s eaming en al a esolución y en o nos IoT.
Como ya se mencionó, el obje i o de es e abajo es es udia las e siones del es ánda IEEE 802.11 que
u ilizan la écnica de modulación OFDM, con el in de de e mina el compo amien o que iene es e ipo
de señales cuando se hacen pasa po un ampli icado de po encia. La elección de OFDM esponde a su
c ecien e p o agonismo en las e siones más ecien es del es ánda , debido a su al a e iciencia espec al y
obus ez en e a in e e encias y mu i ayec o. Sin emba go, su al a PAPR plan ea desa íos impo an es en la
e apa de ampli icación, que se án abo dados en el desa ollo de es e es udio.
2.5 Modulación OFDM
La modulación po di isión de ecuencias o ogonales, conocida como OFDM, es una écnica que pe mi e
ansmi i da os de mane a e icien e y obus a en en o nos donde la señal puede e se a ec ada po in e e-
encias o múl iples ayec o ias de p opagación. A di e encia de los esquemas de modulación adicionales,
que ansmi en un lujo de da os de al a elocidad po un único canal, OFDM di ide ese lujo en múl iples
sub lujos de baja elocidad, en iándolos simul áneamen e a a és de subpo ado as o ogonales, lo que hace
que sea muy sencillo de ecualiza . Es a ca ac e ís ica la hace especialmen e adecuada pa a canales de al a
dispe sión, como los que se encuen an en en o nos inalámb icos [17] [7].
2.5.1 P incipio de uncionamien o
En OFDM, el canal o al se di ide en
N
subpo ado as, cada una si uada a una ecuencia di e en e, espacidadas
uni o memen e. La cla e es á en que es as subpo ado as son o ogonales en e sí, lo que signi ica que,
aunque sus espec os se solapan, la in e e encia mu ua es nula. Es a o ogonalidad de log a seleccionando
cuidadosamen e la sepa ación en e subpo ado as: si cada símbolo iene una du ación
T
, la sepa ación en e
ecuencias debe se de
1/T
[
23
]. Además, se emplean pulsos ec angula es en el dominio del iempo, lo que
da luga a pulsos de Nyquis sob e cada una de las subpo ado as. G acias a es o, cuando una subpo ado a
14 Capí ulo 3. Dis o sión no lineal. Figu as de mé i o
Es as emisiones no deseadas suelen gene a se, en e o as causas, po el compo amien o no lineal del
ampli icado de po encia. En la Figu a 3.4 se puede e cómo la señal de en ada solo con iene un único canal,
pe o al pasa po el PA, da luga a componen es adicionales en los canales adyacen es, pudiendo p o oca
in e e encias sob e o os usua ios que es én u ilizando el espec o.
Figu a 3.4 E ec o de la no linealidad del PA. Fuen e [18].
3.2.3 EVM (E o Vec o Magni ude)
La magni ud del ec o e o es o a medida que se suele u iliza pa a cuan i ica la dis o sión no lineal de los
ampli icado es de po encia. El EVM es la di e encia en e el pun o de la cons elación dis o sionada de la
señal de salida y el pun o ideal de la señal de en ada, es deci , mide la al e ación que su e la cons elacion
de la señal debido a las no linealidades del sis ema [
4
]. Es a mé ica se puede exp esa ma emá icamen e
median e la siguien e ecuación:
EVM(%) = 100 ·
u
u
∑N−1
k=0|y(k)−yideal(k)|2
∑N−1
k=0|y(k)|2.(3.2)
La dis o sión del ansmiso pueden clasi ica se en es ipos p incipales: dis o siones de ase, de ampli ud
y la combinación de la dis o sión de ase y de ampli ud. Es as al e aciones a ec an di ec amen e a la calidad
de la señal modulada y pueden obse a se cla amen e en el diag ama de la cons elación de una modulación
QPSK (Figu a 3.5). Cuando se p oduce una dis o sión de ase, los pun os de la cons elación se desplazan
angula men e espec o a su posición ideal, gene ando un e o de ase ca ac e izado po una o ación del
conjun o de símbolos. Po o o lado, las dis o siones de ampli ud p o ocan un cambio en la magni ud de los
ec o es que ep esen an los símbolos, haciendo que algunos pun os apa ezcan más alejados o más ce canos
del o igen espec o a lo espe ado, sin modi ica su ángulo. En si uaciones más complejas, pueden p esen a se
simul áneamen e e o es an o en la ase como en la ampli ud, lo que esul a una des iación gene alizada de
los pun os espec o a su posición ideal [
5
]. Es e ipo de dis o sión combinada e leja de o ma más se e a
el impac o sob e la calidad de la señal, ya que al e a an o la di ección como la in ensidad de los símbolos
ecibidos. Todos es os e ec os con ibuyen al aumen o del EVM.
Figu a 3.5
E ec o de la dis o sión de ase y de ampli ud en una cons elación QPSK. (a) E ec o de la dis o sión
de ase. (b) E ec o de la dis o sión de ampli ud. (c) E ec o de la dis o sión de ase y de ampli ud.
Fuen e [5].
3.2 Figu as de mé i o 15
3.2.4 NMSE (No malised Mean Squa e E o )
El E o Cuad á ico Medio No malizado (NMSE, po sus siglas en inglés) es una igu a de mé i o empleada
pa a cuan i ica la p ecisión con la que un modelo o sis ema ep oduce la señal medida. Pa a ello, se calcula
el e o en e la señal de en ada (o p edicha po el modelo) y la señal medida, no malizada con espec o a la
po encia de la señal medida.
En con ex os como el modelado con se ies de Vol e a, donde la salida del sis ema puede ep esen a se
linealmen e en unción de sus coe icien es, el NMSE esul a especialmen e ú il pa a alida la idelidad del
modelo en el dominio empo al, al compa a di ec amen e las mues as de la señal expe imen al con las
es imadas po el modelo.
Po o o lado, el NMSE ambién puede emplea se pa a e alua ápidamen e has a qué pun o el compo a-
mien o del sis ema eal se des ía del ideal [
4
]. Con es e úl imo obje i o se emplea á el NMSE en es e abajo,
compa ando las mues as de la señal expe imen al con las de la señal ideal gene ada. La ó mula ma emá ica
de es a exp esión es:
NMSE(dB) = 10 ·log10 ∑N−1
k=0|y(k)−yideal(k)|2
∑N−1
k=0|y(k)|2!.(3.3)
3.2.5 Ca ac e ís icas AM/AM y AM/PM
Una o ma p ecisa de ca ac e iza el compo amien o no lineal de un PA cuando se exci a con señales
moduladas es median e sus ca ac e ís icas AM/AM y AM/PM. Es as cu as pe mi en analiza cómo a ían,
espec i amen e, la ampli ud y la ase de la señal de salida en unción de la ampli ud de la señal de en ada.
A di e enciade un sis ema lineal, en el que la salida es p opo cional a la en ada [
5
], los disposi i os no
lineales p esen an una espues a más compleja, en la que an o la ganancia como la ase se en a ec adas
cuando a a iesan el PA. Es a in o mación es undamen al pa a en ende y mi iga los e ec os de dis o sión
en sis emas de comunicaciones de al a e iciencia espec al.
Ca ac e ís ica AM/AM
La ca ac e ís ica AM/AM desc ibe la elación en e la ampli ud de la señal de en ada y la ampli ud de la
señal de salida. Mues a cómo e oluciona la ganancia en unción de la po encia de en ada. A ni eles bajos, el
ampli icado ope a en la egión lineal, pe o al aumen a la po encia, se obse a una comp esión de ganancia,
lo que signi ica que el inc emen o en la salida no es p opo cional al aumen o de la en ada. Es a no linealidad
se uel e e iden e en la egión ce cana al pun o de comp esión de 1 dB, un alo de e e encia ampliamen e
u ilizado que indica cuándo la ganancia ha disminuido 1 dB espec o a su alo en pequeña señal [
4
]. En
la Figu a 3.6, se ap ecia cla amen e es a ansición desde el compo amien o lineal has a la sa u ación del
disposi i o, señalando además cómo se de ine el pun o de comp esión de 1 dB.
Figu a 3.6 De inición g á ica de pun o de comp esión de 1 dB en la ca ac e ís ica AM/AM. Fuen e [5].
Pa a acili a el análisis, ambién es común ep esen a la ganancia en unción de la po encia de en ada.
En la Figu a 3.7, se con empla cómo la ganancia se man iene cons an e en la egión lineal y luego disminuye
con o me se inc emen a la po encia de en ada, lo que e leja el inicio de la no linealidad del ampli icado .
16 Capí ulo 3. Dis o sión no lineal. Figu as de mé i o
Figu a 3.7 Ganancia del sis ema en e a la po encia de en ada. Fuen e [5].
Ca ac e ís ica AM/PM
Po o o lado, la ca ac e ís ica AM/PM ep esen a la a iación de la ase de salida en unción de la ampli ud
de en ada. Es a dis o sión de ase ocu e debido a la combinación ec o ial de la componen e undamen al
con las componen es de dis o sión gene adas po el compo amien o no lineal. A di e encia de la con e sión
AM/AM, que puede obse a se incluso en sis emas sin memo ia, la con e sión AM/PM es ca ac e ís ica de
sis emas dinámicos o con e ec os de memo ia [4].
En la Figu a 3.8, se puede obse a cómo la ase comienza a des ia se de su alo nominal a medida
que se inc emen a el ni el de en ada, lo cual puede ene un impac o impo an e en la calidad de la señal
ansmi ida.
Figu a 3.8 Ca ac e ís ica AM/PM. Fuen e [5].
3.2.6 PAPR (Peak- o-A e age Powe Ra io)
La PAPR es un pa áme o impo an e en la e aluación del endimien o de un sis ema de ansmisión.
Es a mé ica mide la elación en e la po encia ins an ánea máxima de la señal y su po encia media [
3
].
Ma emá icamen e, se de ine como:
PAPR (dB) =10log10 Pmáx(w)
Pa g(w)!.(3.4)
Las señales OFDM suelen p esen a alo es de PAPR ele ados, ípicamen e en el ango de 10 a 13 dB [
5
],
debido al núme o de subpo ado as que pueden gene a picos de ampli ud ele ados. Un alo al o de PAPR
3.2 Figu as de mé i o 17
implica que el PA debe ope a con un ma gen conside able en su zona lineal pa a e i a la dis o sión [
10
].
Si el PA en a en sa u ación, se p oduce una dis o sión no lineal que, aunque puede p o oca una apa en e
educción de la PAPR, no ep esen a una mejo a en el endimien o del sis ema. Es a disminución se debe
a que los picos de la señal se eco an (clipping), al e ando su o ma o iginal. En la Figu a 3.9 se puede
obse a lo desc i o an e io men e. La cu a en colo ojo ep esen a la o ma de onda en el iempo de la
señal ansmi ida y la cu a de colo azul mues a la señal ecibida, una ez que ha pasado po el ampli icado .
Se puede ap ecia cómo los picos de la señal o iginal han sido eco ados como consecuencia de la dis o sión
no lineal, lo que conlle a á a una disminución de la PAPR, como se analiza á en el Capí ulo 5.
Figu a 3.9 Espec o de las señales en el dominio del iempo.
4
Gene ación de o mas de onda de señales
WiFi con MATLAB®
P
a a la gene ación de las di e en es o mas de onda u ilizadas en es e abajo, co espondien es al es ánda
IEEE 802.11, se ha empleado la he amien a Wi eless Wa e o m Gene a o de MATLAB
®
. Es a
aplicación pe mi e gene a las señales de o ma in e ac i a y isual, lo que acili a la con igu ación p ecisa
de los pa áme os deseados.
El p ime paso en el uso de es a he amien a consis e en selecciona el es ánda IEEE con el que se a a
abaja , que se á adop ado po la co espondien e gene ación WiFi. En es e es udio se han diseñado un o al
de 16 o mas de onda empleando di e en es es ánda es de la amilia IEEE 802.11: 802.11a/g/j, 802.11n/ac,
802.11ax y 802.11be, cada uno con igu ado con dis in os pa áme os. Cabe des aca que odos es os es ánda es
se basan en la écnica de modulación OFDM, conocida po su obus ez en e a in e e encias y e ec os de
mul i ayec o.
Una ez seleccionado el es ánda co espondien e, se p ocede a con igu a los p incipales pa áme os de la
señal, en e los cuales des acan:
•Ancho de banda del canal.
•MCS (Modula ion and Coding Scheme).
•Núme o de paque es ansmi idos.
•Fuen e de bi s (alea o ia o de inida).
•Fac o de sob emues eo, que de e mina la asa de mues eo de la señal ansmi ida.
Es e úl imo pa áme o es á condicionado po la capacidad de los equipos de medida u ilizados en el
labo a o io, cuya asa de mues eo máxima es de 100 MHz. Pa a ga an iza que las señales gene adas no
supe en es a limi ación, se ajus a el ac o de sob emues o en unción del ancho de banda de la señal: pa a
un ancho de banda de 20 MHz, se emplea un ac o de sob emues eo de 5; pa a 40 MHz, el ac o se á de 2;
y pa a un ancho de banda de 80 MHz, se educe a 1 el ac o de sob emues eo. Es a con igu ación pe mi e
man ene la señal den o de los má genes pe mi idos po el ha dwa e disponible.
En las ablas que se mues an a con inuación, se esumen las posibles con igu aciones del pa áme o
MCS en cada uno de los es ánda es u ilizados: IEEE 802.11a/g/j (Tabla 4.1), IEEE 802.11n (Tabla 4.2),
IEEE 802.11ac (Tabla 4.3), IEEE 802.11ax (Tabla 4.4) y IEEE 802.11be (Tabla 4.5).
En el caso de los es ánda es WiFi que pe mi en la ansmisión simul ánea de múl iples usua ios, como
IEEE 802.11ax y 802.11be, se ha con igu ado la señal de mane a que sólo un usua io es é ac i o en cada
ansmisión, ajus ando los pa áme os elacionados con el acceso múl iple, como es la asignación de ecu sos
(RU, Resou ce Uni s); y sin hace uso de múl iples lujos espaciales median e MIMO, a pesa de que el
es ánda lo con emple, asegu ando que oda la capacidad del canal es é des inada a un solo usua io en cada
caso.
Una ez de inidos odos los pa ame os, se p ocede a la gene ación de la señal. La aplicación o ece
dis in as opciones de isualización que esul an ú iles pa a el análisis de la señal gene ada. En e ellas, se
encuen a la isualización del espec o en el dominio de la ecuencia, que pe mi e analiza la dis ibución de
po encia de la señal y comp oba que cumple con la másca a espec al es ablecida po cada especi icación.
Asimismo, es posible isualiza el espec o en el dominio empo al, lo cual acili a el es udio de la e olución
empo al de la señal. También incluye la ep esen ación de la cu a CCDF (Complemen a y Cumula i e
19
20 Capí ulo 4. Gene ación de o mas de onda de señales WiFi con MATLAB®
Tabla 4.1 Con igu ación MCS según el es ánda IEEE 802.11a/g/j.
MCS Modulación Tasa de código ( )
0 BPSK 1/2
1 BPSK 3/4
2 QPSK 1/2
3 QPSK 3/4
4 16-QAM 1/2
5 16-QAM 3/4
6 64-QAM 2/3
7 64-QAM 3/4
Tabla 4.2 Con igu ación MCS según el es ánda IEEE 802.11n.
MCS Modulación Tasa de código ( )
0 BPSK 1/2
1 QPSK 1/2
2 QPSK 3/4
3 16-QAM 1/2
4 16-QAM 3/4
5 64-QAM 2/3
6 64-QAM 3/4
7 64-QAM 5/6
Tabla 4.3 Con igu ación MCS según el es ánda IEEE 802.11ac.
MCS Modulación Tasa de código ( )
0 BPSK 1/2
1 QPSK 1/2
2 QPSK 3/4
3 16-QAM 1/2
4 16-QAM 3/4
5 64-QAM 2/3
6 64-QAM 3/4
7 64-QAM 5/6
8 256-QAM 3/4
9 256-QAM 5/6
Dis ibu ion Func ion), que apo a in o mación es adís ica ele an e sob e la ampli ud de la señal. En el
siguien e capí ulo (Capí ulo 5), dedicado a los esul ados ob enidos, se mos a án ejemplos de g á icas de
es e ipo.
Po úl imo, cada señal gene ada puede expo a se a un sc ip de MATLAB
®
, que al ejecu a se ep esen a la
misma señal y p opo ciona acceso a a iables ú iles en el Wo kspace, como el núme o de mues as gene adas.
Es e núme o suele oscila en e 300.000 y 700.000, y puede ajus a se modi icando el núme o de paque es
ansmi idos numPacke s.
Tene el código MATLAB
®
asociado a cada señal gene ada pe mi e calcula y ep esen a las igu as de
mé i o desc i as en el capí ulo an e io pa a analiza de alladamen e la dis o sión no lineal en señales WiFi.
En los apa ados siguien es, se especi ica á cómo se ha lle ado a cabo el cálculo de cada una de las mé icas
u ilizadas, explicando su o mulación y su aplicación sob e las señales gene adas.
4.1 Con igu ación de la señal ideal 21
Tabla 4.4 Con igu ación MCS según el es ánda IEEE 802.11ax.
MCS Modulación Tasa de código ( )
0 BPSK 1/2
1 QPSK 1/2
2 QPSK 3/4
3 16-QAM 1/2
4 16-QAM 3/4
5 64-QAM 2/3
6 64-QAM 3/4
7 64-QAM 5/6
8 256-QAM 3/4
9 256-QAM 5/6
10 1024-QAM 3/4
11 1024-QAM 5/6
Tabla 4.5 Con igu ación MCS según el es ánda IEEE 802.11be.
MCS Modulación Tasa de código ( )
0 BPSK 1/2
1 QPSK 1/2
2 QPSK 3/4
3 16-QAM 1/2
4 16-QAM 3/4
5 64-QAM 2/3
6 64-QAM 3/4
7 64-QAM 5/6
8 256-QAM 3/4
9 256-QAM 5/6
10 1024-QAM 3/4
11 1024-QAM 5/6
12 4096-QAM 3/4
13 4096-QAM 5/6
15 BPSK-DCM 1/2
4.1 Con igu ación de la señal ideal
En es a sección se desc ibe el p oceso de gene ación de una señal con o me al es ánda IEEE 802.11n, la cual
se emplea como e e encia pa a e alua la dis o sión no lineal in oducida po el ampli icado de po encia
u ilizado en el labo a o io.
En p ime luga se c ea el obje o
h C g
u ilizando
wlanHTCon ig
, que es una unción pa a con igu a
el o ma o de paque e de al a elocidad HT, de inido en el es ánda IEEE 802.11. Es e obje o inicializa los
pa áme os necesa ios pa a gene a una ama en dicho o ma o. En es e caso, se con igu a un ancho de
banda de 20 MHz, una sola an ena ansmiso a y un único lujo espacio- empo al, lo que co esponde a una
con igu ación SISO. También se es ablece el MCS en 1. Se selecciona un iempo de gua da la go (800 ns), se
desac i a la ag egación de amas MPDU y se aplica el sua izado espec al ecomendado pa a mejo a el
compo amien o en ecuencia de la señal. Se ija una longi ud de PSDU de 1024 by es, que ep esen a la
ca ga ú il de los da os a ansmi i . Es o se ecoge en el Código 4.1.
Código 4.1 Fo ma o del paque e a ansmi i .
%% Gene a ing 802.11n/ac (OFDM) wa e o m
% 802.11n/ac (OFDM) con igu a ion
h C g = wlanHTCon ig(’ChannelBandwid h’, ’CBW20’, ...
22 Capí ulo 4. Gene ación de o mas de onda de señales WiFi con MATLAB®
’NumT ansmi An ennas’, 1, ...
’NumSpaceTimeS eams’, 1, ...
’Spa ialMapping’, ’Di ec ’, ...
’MCS’, 1, ...
’Gua dIn e al’, ’Long’, ...
’ChannelCoding’, ’BCC’, ...
’Agg ega edMPDU’, alse, ...
’RecommendSmoo hing’, ue, ...
’PSDULeng h’, 1024);
En el Código 4.2, se gene a la secuencia de bi s que se a a u iliza como en ada pa a gene a la señal
OFDM. Pa a ello, se c ea una secuencia pseudoalea o ia bina ia (PN) usando un polinomio gene ado de
g ado 15 y una condición inicial con un único bi ‘1’. La longi ud de la secuencia se calcula mul iplicando el
núme o de bi s po paque es (8 bi s po cada uno de los 1024 by es de la PSDU) po el núme o de paque es
que se desean ansmi i .
Código 4.2 Gene ación secuencia de bi s.
% inpu bi sou ce:
pn = comm.PNSequence(’Polynomial’, ’x15+x14+1’, ’Ini ialCondi ions’, [ze os(1,
14) 1]);
pn.SamplesPe F ame = 8*h C g.PSDULeng h*numPacke s;
in = pn();
Finalmen e, en el Código 4.3 se gene a la o ma de onda OFDM co espondien e a la ansmisión 802.11n
(WiFi 4) u ilizando la unción de MATLAB
®wlanWa e o mGene a o
. Es a unción ecibe como en-
ada la secuencia de bi s
in
y el obje o de con igu ación del paque e
h C g
. Además, se especi ica que
deben gene a se 6 paque es consecu i os sin iempo de inac i idad en e ellos, u ilizando un ac o de so-
b emues eo de 5 pa a ob ene una mayo esolución empo al de la señal. La señal gene ada se gua da en
la a iable
w _wi i4_BW20_MCS1
. Finalmen e, se calcula la ecuencia de mues eo u ilizando la unción
wlanSampleRa e, que iene en cuen a an o la con igu ación HT como el ac o de sob emues eo.
Código 4.3 Gene ación o ma de onda.
o s = 5;
numPacke s = 6;
% Gene a ion
w _wi i4_BW20_MCS1 = wlanWa e o mGene a o (in, h C g, ...
’NumPacke s’, numPacke s, ...
’IdleTime’, 0, ...
’O e samplingFac o ’, o s, ...
’Sc amble Ini ializa ion’, 93, ...
’WindowT ansi ionTime’, 1e-07);
Fs = wlanSampleRa e(h C g, ’O e samplingFac o ’, o s);
Cuando ya se iene la señal ideal c eada con los pa áme os seleccionados, se p ocede a ealiza las medidas
co espondien es en el labo a o io. El mon aje u ilizado se desc ibe con de alle en el siguien e capí ulo.
Median e el uso del gene ado ec o ial de señal y del analizado ec o ial de señal, conec ados a un PC, se ha
ob enido y almacenado en es uc u as de MATLAB
®
la in o mación ela i a a la po encia de en ada y salida
del sis ema, así como las señales ansmi ida y ecibida. La señal ansmi ida ha sido p e iamen e ajus ada en
ampli ud pa a iguala la a la po encia que el equipamien o de labo a o io aplica du an e el p oceso de medida.
Po o o lado, la señal ecibida co esponde con la que ha sido medida di ec amen e po el analizado de
señal, a la que se le ealiza un escalado pa a es a el e ec o de las pé didas en el camino que a desde el
disposi i o has a el equipo en los casos en que es necesa io. En el Código 4.4 se mues an las ins ucciones
pa a ca ga las medidas asociadas a una con igu ación en la que la señal se ansmi e a a és de un cable
coaxial, y una segunda con igu ación en la que se emplea un ampli icado de po encia.
4.2 Figu as de mé i o 23
Código 4.4 Medidas ecogidas po los equipos del labo a o io.
medidas_cable = load(’Ma ia Jesus/measu emen s/
cable_RMSin_20_w _wi i4_BW20_MCS1.ma ’);
medidas_ampli = load(’Ma ia Jesus/measu emen s/
ampli icado _RMSin_16_w _wi i4_BW20_MCS1.ma ’);
4.2 Figu as de mé i o
En es a sección se de allan las mé icas u ilizadas pa a ca ac e iza la dis o sión no lineal y que no se limi a
únicamen e a las señales gene adas idealmen e en MATLAB
®
. Es as mismas écnicas se aplican ambién
cuando se ealiza el análisis de las señales medidas expe imen almen e, an o as el paso po el cable coaxial
como a la salida del ampli icado de po encia.
4.2.1 Másca a espec al
Una ez gene ada la o ma de onda co espondien e a un de e minado es ánda WiFi, se analiza su espec o
pa a e i ica que cumple con los equísi os egula o ios en cuan o a emisión ue a de banda. Pa a ello
se cons uye una másca a espec al basada en los lími es de inidos po la especi icación co espondien e,
y se supe pone sob e el espec o de la señal. Es a ope ación se ealiza a pa i del sc ip gene ado po la
he amien a Wi eless Wa e o m Gene a o , ac i ando en p ime luga el de ec o de picos en el analizado de
espec o pa a localiza el alo máximo de po encia de la señal. Es e alo , exp esado en dBm, si e como
e e encia pa a de ini los ni eles de po encia pe mi idos en di e en es angos de ecuencia.
A con inuación, se c ea una másca a simé ica cen ada en la ecuencia po ado a, es ableciendo las
ecuencias lími e y sus co espondien es ni eles máximos de po encia. En el Código 4.5 se mues a en
los ec o es llamados
mask_ eq
y
mask_powe
que signi ican, espec i amen e, los desplazamien os en
ecuencia (en Hz) y los ni eles máximos admi idos de po encia (en dBm). Finalmen e, se aplica la másca a
al analizado de espec o ac i ando la opción
Uppe Mask
, lo que pe mi e ep esen a isualmen e los lími es
espec ales sob e el espec o de la señal gene ada.
Código 4.5 Implemen ación de la másca a espec al sob e la señal ideal.
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
spec um_ideal(w _wi i4_BW20_MCS1);
% MÁSCARA ESPECTRAL
spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_ideal);
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
4.2.2 ACPR
El ACPR es una mé ica pa a e alua el ni el de in e e encia que una señal puede gene a en los canales
adyacen es, como se explica en el Capí ulo 3.
30 Capí ulo 5. Resul ados expe imen ales
el PA, el espec o se expande como consecuencia de la dis o sión no lineal in oducida po el disposi i o. No
obs an e, la señal con inúa cumpliendo los lími es es ablecidos po la másca a espec al del es ánda .
Figu a 5.2 Espec o de la señal ideal. IEEE 802.11g BW20 MCS0.
Figu a 5.3 Espec o de la señal as pasa po el cable. IEEE 802.11g BW20 MCS0.
Figu a 5.4 Espec o de la señal as pasa po el ampli icado . IEEE 802.11g BW20 MCS0.
5.3 Resul ados expe imen ales 31
El mismo análisis se ha ealizado pa a el caso de
MCS =7
, cuyos esul ados se mues an en la Figu a 5.5,
la Figu a 5.6 y la Figu a 5.7. En es e caso ambién se obse a el cumplimien o con la másca a espec al, a
pesa del mayo o den de modulación.
Figu a 5.5 Espec o de la señal ideal. IEEE 802.11g BW20 MCS7.
Figu a 5.6 Espec o de la señal as pasa po el cable. IEEE 802.11g BW20 MCS7.
Figu a 5.7 Espec o de la señal as pasa po el ampli icado . IEEE 802.11g BW20 MCS7.
32 Capí ulo 5. Resul ados expe imen ales
Al analiza conjun amen e ambas con igu aciones, se concluye que el o den del MCS no a ec a signi ica i-
amen e a la dis ibución espec al de la señal. Es deci , an o los esquemas de baja como de al a complejidad
cumplen con la másca a espec al impues a po la no ma i a, incluso as el paso po el ampli icado .
Po an o, con el obje i o de simpli ica la p esen ación de esul ados en los siguien es es ánda es, se educi á
el núme o de igu as mos adas, ya que en odos los casos se obse a el mismo compo amien o espec al y
se ga an iza el cumplimien o de los equisi os eglamen a ios. Se mos a án solo igu as co espondien es a
dis in os anchos de banda u ilizados, con el in de o ece una isión ep esen a i a de las di e en es señales.
Pa a las señales que u ilizan un ancho de banda de 20 MHz, se ha calculado el ACPR, que cuan i ica la
elación en e la po encia que se p oduce en los canales adyacen es y la po encia del canal p incipal. Es os
esul ados se ecogen en la Tabla 5.1 y en la Tabla 5.2, que ep esen a la elación en e las po encias, exp esada
en dBc, pa a cada uno de los escena ios analizados.
Tabla 5.1 ACPR de la señal IEEE 802.11g BW=20 MHz y MCS = 0.
Escena io Canales
−40 MHz −20 MHz 20 MHz 40 MHz
Ideal −75.40 dBc −47.25 dBc −47.80 dBc −75.32 dBc
T as el cable −67.34 dBc −47.21 dBc −47.93 dBc −67.75 dBc
T as el ampli icado −55.79 dBc −33.56 dBc −33.24 dBc −55.61 dBc
Tabla 5.2 ACPR de la señal IEEE 802.11g BW = 20 MHz y MCS = 7.
Escena io Canales
−40 MHz −20 MHz 20 MHz 40 MHz
Ideal −76.15 dBc −49.80 dBc −47.15 dBc −75.24 dBc
T as el cable −67.56 dBc −49.80 dBc −47.36 dBc −68.13 dBc
T as el ampli icado −53.37 dBc −33.01 dBc −32.47 dBc −54.31 dBc
Los esul ados de PAPR pa a las dis in as con igu aciones se ecogen en la Tabla 5.3. Se puede obse a
una educción signi ica i a del alo de es a mé ica as el paso po el PA, indicando la comp esión de los
picos.
Tabla 5.3 PAPR. IEEE 802.11g.
BW MCS
PAPR de la señal
ideal (dB)
PAPR de la señal
as el cable (dB)
PAPR de la señal
as el PA (dB)
20 MHz 0 11.82 11.56 4.91
20 MHz 7 11.43 11.60 5.73
O o aspec o ele an e en los esul ados es la sinc onización de las señales. En la Figu a 5.8 se mues a
un caso en el que las señales es án co ec amen e sinc onizadas, e idenciado po la coincidencia mues a a
mues a. Además, en la sub igu a (b), se puede obse a cla amen e la comp esión de los picos mencionada
an e io men e, esponsable de la educción en el alo del PAPR.
Sin emba go, en la Figu a 5.9 (b) se obse a cómo las señales no es án comple amen e sinc onizadas.
En es e caso, se han mos ado odos los esul ados ob enidos pa a ilus a cómo a ec a es e desajus e a las
mé icas de calidad. No obs an e, a pa i de es e pun o, se exclui án del análisis aquellas señales que no es én
co ec amen e alineadas.
Los alo es ob enidos pa a el NMSE en las dos con igu aciones, se mues an en la Tabla 5.4. Pa a el caso
del
MCS =0
, se ob iene un NMSE
=−18.70
dB, un alo ele ado que e leja cla amen e la dis o sión no
lineal in oducida al a a esa el PA. En cambio, pa a
MCS =7
, se ob iene un NMSE de
−13.02
dB, ambién
ele ado, pe o en es e caso es debido p incipalmen e a la desinc onización en e la señal ansmi ida y la
ecibida, lo que in alida la in e p e ación de es e esul ado.
5.3 Resul ados expe imen ales 33
(a) (b)
Figu a 5.8 Sinc onización de las señales. IEEE 802.11g BW20 MCS0.
(a) (b)
Figu a 5.9 Sinc onización de las señales. IEEE 802.11g BW20 MCS7.
Tabla 5.4 NMSE. IEEE 802.11g.
BW MCS NMSE de la señal
as el cable (dB)
NMSE de la señal
as el PA (dB)
20 MHz 0 −30.29 −18.69
20 MHz 7 −30.34 −13.02
Tabla 5.5 EVM. IEEE 802.11g.
BW MCS EVM de la señal
ideal (%)
EVM de la señal
as el cable (%)
EVM de la señal
as el PA (%)
20 MHz 0 0.16 4.22 11.13
20 MHz 7 0.17 4.26 10.69
Pa a e alua el EVM en es as con igu aciones, los esul ados se ecogen en la Tabla 5.5. Como puede
obse a se, el alo de EVM aumen a de o ma signi ica i a as el paso po el PA, e lejando la deg adación de
la señal. Además, en la Figu a 5.10 se mues an las cons elaciones de las señales co espondien es a
MCS =0
en dos de los escena ios es udiados: as el cable y as el ampli icado . En dicha igu a, que co esponde a
una modulación BPSK, ambién se incluye en colo ojo y con el símbolo ‘+’, la cons elación ideal como
e e encia. Se obse a cómo los pun os de la cons elación es án pe ec amen e de inidos en el escena io ideal,
34 Capí ulo 5. Resul ados expe imen ales
y apenas su en al e aciones as pasa po el cable, aunque es posible que se haya in oducido un lige o o se
en ecuencia. Sin emba go, as el paso po el ampli icado , los pun os mues an una dispe sión simila al
e ec o del uido AWGN, como esul ado de la dis o sión no lineal in oducida po el mismo.
(a) (b)
Figu a 5.10 Cons elación de la señal en los escena ios expe imen ales. IEEE 802.11g BW20 MCS0.
Po úl imo, en la Figu a 5.11 y la Figu a 5.12 se ep esen an las ca ac e ís icas AM-AM y AM-PM pa a
ambas con igu aciones analizadas de IEEE 802.11g. Cada igu a incluye cua o subg á icas: la sub igu a
(a) mues a la ca ac e ís ica AM-AM, donde se ep esen a la ampli ud de la po encia de salida en unción
de la ampli ud de la po encia de en ada; la sub igu a (b) ep esen a la ca ac e ís ica AM-AM no malizada;
(a) (b)
(c) (d)
Figu a 5.11 Ca ac e ís icas AM-AM y AM-PM. IEEE 802.11g BW20 MCS0.
5.3 Resul ados expe imen ales 35
la sub igu a (c) mues a la po encia de en ada en e a la ganancia del sis ema, lo que pe mi e iden i ica
isualmen e el pun o de comp esión; y la sub igu a (d) ep esen a la ca ac e ís ica AM-PM, es deci , la
a iación de ase in oducida po el ampli icado en unción de la po encia de en ada.
En el caso
MCS =0
(Figu a 5.11), se obse a en las sub igu as (a) y (b) una comp esión p og esi a
con o me aumen a la po encia de la señal de en ada, indica i a del égimen no lineal del ampli icado . La
sub igu a (c) con i ma es e e ec o con una caída de ganancia. G acias a es as igu as se puede iden i ica el
pun o de sa u ación ap oximadamen e cuando la po encia de en ada alcanza los
−15
dBm y la de salida los
35
dBm. A pa i de es e pun o, pa a el es o de señales es udiadas en es e abajo, es as igu as p esen a án
una o ma simila , siemp e que las señales es én co ec amen e sinc onizadas.
Po o o lado, pa a la con igu ación
MCS =7
(Figu a 5.12), las señales no se encuen an sinc onizadas,
po lo que los esul ados no e lejan con iabilidad la espues a eal del sis ema. La dispe sión obse ada en
las cua o g á icas no puede a ibui se con ce eza a la dis o sión no lineal del PA, sino que es esul ado de
la al a de alineación empo al en e la señal ansmi ida y la ecibida. Dado es e p oblema, los esul ados
ob enidos pa a es a con igu ación deben conside a se no ep esen a i os. Las igu as con i man que, en es as
condiciones, el sis ema no es á uncionando co ec amen e.
(a) (b)
(c) (d)
Figu a 5.12 Ca ac e ís icas AM-AM y AM-PM. IEEE 802.11g BW20 MCS7.
5.3.2 IEEE 802.11n
Pa a es e es ánda IEEE 802.11n, se han gene ado y analizado señales con anchos de banda de 20 MHz y
40 MHz, u ilizando dis in as con igu aciones de MCS.
Se ha incluido el espec o de la señal con un ancho de banda de 20 MHz, ya que la de inición de la másca a
espec al cambia con espec o al es ánda an e io . Es e caso, se mues a en la Figu a 5.13 y en la Figu a 5.14.
Asimismo, en la Figu a 5.15 y la Figu a 5.16 se ep esen a el espec o de la señal con un ancho de banda
de 40 MHz y MCS = 2, an o en condiciones ideales como as a a esa el ampli icado . En la igu a ideal,
la ocupación espec al es cla a y se ajus a a lo espe ado pa a es e ipo de señal. Sin emba go, as el paso
36 Capí ulo 5. Resul ados expe imen ales
po el PA, se ap ecia una expansión no able del espec o, especialmen e en los bo des, como esul ado de la
dis o sión no lineal, pe o sin sob epasa los lími es es ablecidos pa a la másca a espec al.
Figu a 5.13 Espec o de la señal ideal. IEEE 802.11n BW20 MCS7.
Figu a 5.14 Espec o de la señal as pasa po el ampli icado . IEEE 802.11n BW20 MCS7.
Figu a 5.15 Espec o de la señal ideal. IEEE 802.11n BW40 MCS2.
5.3 Resul ados expe imen ales 37
Figu a 5.16 Espec o de la señal as pasa po el ampli icado . IEEE 802.11n BW40 MCS2.
En la Tabla 5.6 y en la Tabla 5.7 se p esen an los esul ados de ACPR pa a las señales que emplean el ancho
de banda de 20 MHz y con igu aciones
MCS =1
y
MCS =7
, espec i amen e. En ambos casos, se puede
obse a un aumen o signi ica i o de po encia en los canales adyacen es as el paso po el ampli icado , en
compa ación con los escena ios ideal y con el cable.
Tabla 5.6 ACPR de la señal WiFi 4 BW = 20 MHz y MCS = 1.
Escena io Canales
−40 MHz −20 MHz 20 MHz 40 MHz
Ideal −74.90 dBc −47.07 dBc −46.03 dBc −74.36 dBc
T as el cable −68.15 dBc −47.00 dBc −46.16 dBc −68.48 dBc
T as el ampli icado −52.72 dBc −31.27 dBc −31.84 dBc −53.52 dBc
Tabla 5.7 ACPR de la señal WiFi 4 BW = 20 MHz y MCS = 7.
Escena io Canales
−40 MHz −20 MHz 20 MHz 40 MHz
Ideal −75.11 dBc −46.67 dBc −46.34 dBc −75.18 dBc
T as el cable −67.06 dBc −46.82 dBc −46.58 dBc −67.42 dBc
T as el ampli icado −53.16 dBc −32.06 dBc −31.82 dBc −54.09 dBc
Los alo es de PAPR ob enidos pa a es e es ánda se ecogen en la Tabla 5.8. Al igual que en el es ánda
an e io , se obse a una educción signi ica i a del alo de PAPR as el paso po el PA, indicando la
comp esión de los picos de la señal. Además, es e e ec o se ap ecia ambién a ni el numé ico, ya que los
alo es es imados de PAPR en condiciones ideales suele si ua se en e los 10 y 13 dB, mien as que as
la ampli icación descienden a un ango medio comp endido en e los 5 y 6 dB, con i mando así que el
ampli icado limi a la dinámica de la señal.
Tabla 5.8 PAPR. IEEE 802.11n.
BW MCS
PAPR de la señal
ideal (dB)
PAPR de la señal
as el cable (dB)
PAPR de la señal
as el PA (dB)
20 MHz 1 10.38 10.33 4.84
20 MHz 7 10.95 10.85 5.01
40 MHz 2 11.47 11.72 5.40
40 MHz 7 10.92 10.88 6.36
38 Capí ulo 5. Resul ados expe imen ales
Los esul ados de NMSE ob enidos pa a las dis in as con igu aciones del es ánda IEEE 802.11n se ecogen
en la Tabla 5.9. De o ma gene al, se obse a una deg adación signi ica i a del alo de NMSE as el paso
po el ampli icado , en compa ación con el escena io in e medio ( as el cable). Es a endencia se man iene
an o pa a señales con anchos de banda de 20 MHz como de 40 MHz, siendo el alo de es a igu a de mé i o
ap oximadamen e de −18 dB.
Tabla 5.9 NMSE. IEEE 802.11n.
BW MCS NMSE de la señal
as el cable (dB)
NMSE de la señal
as el PA (dB)
20 MHz 1 -30.26 -18.79
20 MHz 7 -24.49 -17.98
40 MHz 2 -29.84 -18.11
Del mismo modo, en la Tabla 5.10 se mues an los alo es de EVM co espondien es. Al igual que con el
NMSE, se obse a un aumen o conside able del EVM después de la ampli icación, lo que e leja una pé dida
de p ecisión en la ep esen ación de los símbolos modulados.
Tabla 5.10 EVM. IEEE 802.11n.
BW MCS EVM de la señal
ideal (%)
EVM de la señal
as el cable (%)
EVM de la señal
as el PA (%)
20 MHz 1 0.40 4.21 11.69
20 MHz 7 0.44 4.23 11.00
40 MHz 2 0.02 4.32 11.79
5.3.3 IEEE 802.11ac
En es a sección se analizan los esul ados ob enidos pa a las señales co espondien es al es ánda IEEE
802.11ac. es e es ánda in oduce mejo as en el endimien o median e la u ilización de anchos de banda
mayo es, como 80 MHz, y esquemas de modulación más a anzados. Al igual que en los casos an e io es, se
han e aluado dis inas combinaciones de anchos de banda y MCS, con el obje i o de es udia cómo se en
a ec adas po la dis o sión no lineal p oducida po el PA.
En la Figu a 5.17 y en la Figu a 5.18 se ep esen a el espec o de una señal de WiFi 5 con un ancho de
banda de 80 MHz y
MCS =9
, an o en condiciones ideales como as pasa po el ampli icado . En es os
casos en los que el ancho de banda es mayo de 20 MHz, no es posible obse a los canales adyacen es en el
espec o, ya que la máxima asa de mues eo del analizado ec o ial de señal, de 100 MHz, no lo pe mi e.
Po ello, ampoco es posible calcula el ACPR en es os casos.
Los alo es de PAPR ob enidos pa a las dis in as con igu aciones se ecogen en la Tabla 5.11. Al igual que
en los es ánda es an e io es y po el mismo mo i o, se obse a una educción de es a mé ica as el paso po
el PA.
Tabla 5.11 PAPR. IEEE 802.11ac.
BW MCS
PAPR de la señal
ideal (dB)
PAPR de la señal
as el cable (dB)
PAPR de la señal
as el PA (dB)
40 MHz 3 10.99 11.01 5.50
40 MHz 9 11.06 10.99 5.60
80 MHz 4 10.69 10.67 7.30
80 MHz 9 10.49 10.58 6.71
En cuan o a los esul ados de NMSE, que se p esen an en la Tabla 5.12, se obse a un aumen o gene alizado
del e o as la ampli icación. Las con igu aciones con modulación de o den supe io y mayo ancho de
5.3 Resul ados expe imen ales 39
Figu a 5.17 Espec o de la señal ideal. IEEE 802.11ac BW80 MCS9.
Figu a 5.18 Espec o de la señal as pasa po el ampli icado . IEEE 802.11ac BW80 MCS9.
banda mues an los mayo es ni eles de e o , lo que con i ma la mayo ulne abilidad de es as señales an e
e ec os no lineales.
Tabla 5.12 NMSE. IEEE 802.11ac.
BW MCS NMSE de la señal
as el cable (dB)
NMSE de la señal
as el PA (dB)
40 MHz 3 -29.84 -17.79
40 MHz 9 -29.84 -17.81
80 MHz 9 -19.78 -16.91
En la Tabla 5.13 se ecogen los alo es de EVM ob enidos expe imen almen e pa a dis in as con igu aciones
de es e es ánda . A modo de ejemplo, pa a in e p e a adecuadamen e es os esul ados, se deben conside a
los lími es máximos de e o ela i o de la cons elación de inidos po la no ma i a del es ánda [
8
], los cuales
a ían en unción del ipo de modulación y esquema de codi icación u ilizado. Es a mé ica es equi alen e
al EVM, ya que ambas cuan i ican el mismo e ec o, la dispe sión de los símbolos ecibidos espec o a sus
posiciones ideales en la cons elación [19].
Apéndice A
Códigos u ilizados
Pa a complemen a la in o mación de los capí ulos an e io es, se incluyen los códigos de las 16 señales
gene adas en MATLAB®.
Código A.1 wi i802_11ag_BW20_MCS0.m.
clea , close all
%% Gene a ing 802.11a/g/j (OFDM) wa e o m
% 802.11a/g/j (OFDM) con igu a ion
nonHTC g = wlanNonHTCon ig(’Modula ion’, ’OFDM’, ...
’ChannelBandwid h’, ’CBW20’, ...
’MCS’, 0, ...
’PSDULeng h’, 1000);
o s = 5;
numPacke s = 3;
% inpu bi sou ce:
pn = comm.PNSequence(’Polynomial’, ’x9+x5+1’, ’Ini ialCondi ions’, [ze os(1, 8)
1]);
pn.SamplesPe F ame = 8*nonHTC g.PSDULeng h*numPacke s;
in = pn();
% Gene a ion
w _wi i802_11ag_BW20_MCS0 = wlanWa e o mGene a o (in, nonHTC g, ...
’NumPacke s’, numPacke s, ...
’IdleTime’, 0, ...
’O e samplingFac o ’, o s, ...
’Sc amble Ini ializa ion’, 93, ...
’WindowT ansi ionTime’, 1e-07);
Fs = wlanSampleRa e(nonHTC g, ’O e samplingFac o ’, o s); % Speci y
he sample a e o he wa e o m in Hz
% sa e(’ o mas de onda/w _wi i802_11ag_BW20_MCS0.ma ’, ’
w _wi i802_11ag_BW20_MCS0’)
% SENAL IDEAL
% Spec um Analyze
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
spec um_ideal(w _wi i802_11ag_BW20_MCS0);
% % MÁSCARA ESPECTRAL
47
48 Appendix A. Códigos u ilizados
% spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
% da a = ge Measu emen sDa a(spec um_ideal);
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% %De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9; 11; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% % ACPR
spec um_ideal.ChannelMeasu emen s.Type = "acp ";
spec um_ideal.ChannelMeasu emen s.Enabled = ue;
spec um_ideal.ChannelMeasu emen s.NumO se s = 2;
spec um_ideal.ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_ideal);
acp aluesLowe _ideal = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _ideal = da a.ChannelMeasu emen s.ACPRUppe ;
spec um_ideal.Name = ’Espec o de la señal 802.11a/g ideal. BW = 20 MHz. MCS =
0.’;
spec um_ideal.Ti le = ’Espec o de la señal 802.11a/g ideal. BW = 20 MHz. MCS
= 0.’;
show(spec um_ideal)
% PAPR
PAPR_ideal = 20*log10(max(abs(w _wi i802_11ag_BW20_MCS0))/ ms(
w _wi i802_11ag_BW20_MCS0));
p in (’El alo de PAPR es %.4 n’, PAPR_ideal)
%% SENAL TRAS EL CABLE
medidas_cable = load(’Ma ia Jesus/measu emen s/
cable_RMSin_20_w _wi i802_11ag_BW20_MCS0.ma ’);
% Spec um Analyze
spec um_cable = spec umAnalyze (’SampleRa e’, Fs);
spec um_cable(medidas_cable.y);
% MÁSCARA ESPECTRAL
% spec um_cable.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
% da a = ge Measu emen sDa a(spec um_cable);
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% %De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9; 11; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_cable.Spec alMask.EnabledMasks = ’Uppe ’;
49
% spec um_cable.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% %ACPR
spec um_cable.ChannelMeasu emen s.Type = "acp ";
spec um_cable.ChannelMeasu emen s.Enabled = ue;
spec um_cable.ChannelMeasu emen s.NumO se s = 2;
spec um_cable.ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_cable);
acp aluesLowe _cable = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _cable = da a.ChannelMeasu emen s.ACPRUppe ;
spec um_cable.Name = ’Espec o de la señal 802.11a/g as el cable. BW = 20
MHz. MCS = 0’;
spec um_cable.Ti le = ’Espec o de la señal 802.11a/g as el cable. BW = 20
MHz. MCS = 0’;
show(spec um_cable)
% PAPR
PAPR_cable = 20*log10(max(abs(medidas_cable.y))/ ms(medidas_cable.y));
p in (’El alo de PAPR as el cable es %.4 n’, PAPR_cable)
% Sinc onización de las señales cable
y_sync_cable = coa se_sync(medidas_cable.y,medidas_cable.x);
y_sync_cable = ( ine_sync(y_sync_cable,medidas_cable.x)).’;
yn = y_sync_cable/no m(y_sync_cable) * no m(medidas_cable.x);
igu e()
plo (129776:130671, eal(medidas_cable.x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el cable’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
%% SENAL TRAS EL AMPLIFICADOR
medidas_ampli = load(’Ma ia Jesus/measu emen s/
ampli icado _RMSin_16_w _wi i802_11ag_BW20_MCS0.ma ’);
% Spec um Analyze
spec um_ampli = spec umAnalyze (’SampleRa e’, Fs);
spec um_ampli (medidas_ampli .y);
% MÁSCARA ESPECTRAL
% spec um_ampli .PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los m
áximos de la señal
% da a = ge Measu emen sDa a(spec um_ampli );
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% %De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9; 11; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_ampli .Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_ampli .Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% %ACPR
50 Appendix A. Códigos u ilizados
spec um_ampli .ChannelMeasu emen s.Type = "acp ";
spec um_ampli .ChannelMeasu emen s.Enabled = ue;
spec um_ampli .ChannelMeasu emen s.NumO se s = 2;
spec um_ampli .ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_ampli );
acp aluesLowe _ampli = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _ampli = da a.ChannelMeasu emen s.ACPRUppe ;
p in (’ACPR ideal: -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz= %.4
n ’, ...
acp aluesLowe _ideal(1), acp aluesLowe _ideal(2), ...
acp aluesUppe _ideal(1), acp aluesUppe _ideal(2));
p in (’ACPR cable: -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz= %.4
n ’, ...
acp aluesLowe _cable(1), acp aluesLowe _cable(2), ...
acp aluesUppe _cable(1), acp aluesUppe _cable(2));
p in (’ACPR ampli icado : -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz
= %.4 n ’, ...
acp aluesLowe _ampli (1), acp aluesLowe _ampli (2), ...
acp aluesUppe _ampli (1), acp aluesUppe _ampli (2));
spec um_ampli .Name = ’Espec o de la señal 802.11a/g as el ampli icado . BW
= 20 MHz. MCS = 0’;
spec um_ampli .Ti le = ’Espec o de la señal 802.11a/g as el ampli icado .
BW = 20 MHz. MCS = 0’;
show(spec um_ampli )
% PAPR
PAPR_ampli icado = 20*log10(max(abs(medidas_ampli .y))/ ms(medidas_ampli .y));
p in (’El alo de PAPR as el ampli icado es %.4 n’, PAPR_ampli icado )
%
% Sinc onización de las señales
y_sync_ampli = coa se_sync(medidas_ampli .y,medidas_ampli .x);
y_sync_ampli = ( ine_sync(y_sync_ampli ,medidas_ampli .x)).’;
yn = y_sync_ampli /no m(y_sync_ampli ) * no m(medidas_ampli .x);
igu e()
plo (129776:130671, eal(medidas_ampli .x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el ampli icado ’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% Ca ac e ís ica AM-AM
dibuja_AMAM_AMPM(medidas_ampli .x, y_sync_ampli );
% NMSE cable
NMSE_cable = 20*log10(no m(medidas_cable.x/no m(medidas_cable.x)- y_sync_cable/
no m(y_sync_cable))/no m(y_sync_cable/no m(y_sync_cable)));
p in (’El alo de NMSE as el cable es %.4 n’, NMSE_cable)
% NMSE ampli icado
NMSE_ampli = 20*log10(no m(medidas_ampli .x/no m(medidas_ampli .x)-
y_sync_ampli /no m(y_sync_ampli ))/no m(y_sync_ampli /no m(y_sync_ampli )))
;
p in (’El alo de NMSE as el ampli icado es %.4 n’, NMSE_ampli )
51
% EVM ideal
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW20’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(nonHTC g);
LenSymbol = s _index.NonHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,w _wi i802_11ag_BW20_MCS0(1+((i-1)*LenSymbol):(i*LenSymbol
)),chanBW,s );
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ideal = 100*10.^(e mdB/20);
alo _medio_EVM_ideal = mean(e m_ideal);
p in (’El alo medio de EVM de la señal ideal %.4 n’, alo _medio_EVM_ideal
)
52 Appendix A. Códigos u ilizados
igu e,
plo (IQ_comple o(:),’.b’); hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’, 1.5)
i le(’Cons elación de la señal ideal’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5, 1.5]);
%
% EVM cable
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW20’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(nonHTC g);
LenSymbol = s _index.NonHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_cable(1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s )
;
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
53
end
e m_cable = 100*10.^(e mdB/20);
alo _medio_EVM_cable = mean(e m_cable);
p in (’El alo medio de EVM de la señal as pasa po el cable %.4 n’,
alo _medio_EVM_cable)
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el cable’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5, 1.5]);
% EVM ampli icado
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW20’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(nonHTC g);
LenSymbol = s _index.NonHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_ampli (1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s
);
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
54 Appendix A. Códigos u ilizados
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ampli = 100*10.^(e mdB/20);
alo _medio_EVM_ampli = mean(e m_ampli );
p in (’El alo medio de EVM de la señal as pasa po el ampli icado es
%.4 n’, alo _medio_EVM_ampli )
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el ampli icado ’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5, 1.5]);
Código A.2 wi i802_11ag_BW20_MCS7.m.
clea , close all
%% Gene a ing 802.11a/g/j (OFDM) wa e o m
% 802.11a/g/j (OFDM) con igu a ion
nonHTC g = wlanNonHTCon ig(’Modula ion’, ’OFDM’, ...
’ChannelBandwid h’, ’CBW20’, ...
’MCS’, 7, ...
’PSDULeng h’, 1000);
o s = 5;
numPacke s = 24;
% inpu bi sou ce:
pn = comm.PNSequence(’Polynomial’, ’x9+x5+1’, ’Ini ialCondi ions’, [ze os(1, 8)
1]);
pn.SamplesPe F ame = 8*nonHTC g.PSDULeng h*numPacke s;
in = pn();
% Gene a ion
w _wi i802_11ag_BW20_MCS7 = wlanWa e o mGene a o (in, nonHTC g, ...
’NumPacke s’, numPacke s, ...
’IdleTime’, 0, ...
’O e samplingFac o ’, o s, ...
’Sc amble Ini ializa ion’, 93, ...
’WindowT ansi ionTime’, 1e-07);
Fs = wlanSampleRa e(nonHTC g, ’O e samplingFac o ’, o s); % Speci y
he sample a e o he wa e o m in Hz
%sa e(’ o mas de onda/w _wi i802_11ag_BW20_MCS7.ma ’, ’
w _wi i802_11ag_BW20_MCS7’)
%% SENAL IDEAL
% Spec um Analyze
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
55
spec um_ideal(w _wi i802_11ag_BW20_MCS7);
% MÁSCARA ESPECTRAL
% spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
% da a = ge Measu emen sDa a(spec um_ideal);
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% %De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9; 11; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% ACPR
spec um_ideal.ChannelMeasu emen s.Type = "acp ";
spec um_ideal.ChannelMeasu emen s.Enabled = ue;
spec um_ideal.ChannelMeasu emen s.NumO se s = 2;
spec um_ideal.ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_ideal);
acp aluesLowe _ideal = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _ideal = da a.ChannelMeasu emen s.ACPRUppe ;
spec um_ideal.Name = ’Espec o de la señal 802.11a/g ideal. BW = 20 MHz. MCS =
7’;
spec um_ideal.Ti le = ’Espec o de la señal 802.11a/g ideal. BW = 20 MHz. MCS
= 7’;
show(spec um_ideal)
% PAPR
PAPR_ideal = 20*log10(max(abs(w _wi i802_11ag_BW20_MCS7))/ ms(
w _wi i802_11ag_BW20_MCS7));
p in (’El alo de PAPR es %.4 n’, PAPR_ideal)
%
% SENAL TRAS EL CABLE
medidas_cable = load(’Ma ia Jesus/measu emen s/
cable_RMSin_20_w _wi i802_11ag_BW20_MCS7.ma ’);
% Spec um Analyze
spec um_cable = spec umAnalyze (’SampleRa e’, Fs);
spec um_cable(medidas_cable.y);
% MÁSCARA ESPECTRAL
% spec um_cable.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
% da a = ge Measu emen sDa a(spec um_cable);
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% %De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9; 11; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
62 Appendix A. Códigos u ilizados
%% SENAL IDEAL
% Spec um Analyze
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
spec um_ideal(w _wi i4_BW20_MCS1);
% % MÁSCARA ESPECTRAL
% spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
% da a = ge Measu emen sDa a(spec um_ideal);
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% % De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% ACPR
spec um_ideal.ChannelMeasu emen s.Type = "acp ";
spec um_ideal.ChannelMeasu emen s.Enabled = ue;
spec um_ideal.ChannelMeasu emen s.NumO se s = 2;
spec um_ideal.ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_ideal);
acp aluesLowe _ideal = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _ideal = da a.ChannelMeasu emen s.ACPRUppe ;
spec um_ideal.Name = ’Espec o de la señal WiFi 4 ideal. BW = 20 MHz. MCS = 1’
;
spec um_ideal.Ti le = ’Espec o de la señal WiFi 4 ideal. BW = 20 MHz. MCS = 1
’;
show(spec um_ideal)
% PAPR
PAPR_ideal = 20*log10(max(abs(w _wi i4_BW20_MCS1))/ ms(w _wi i4_BW20_MCS1));
p in (’El alo de PAPR es %.4 n’, PAPR_ideal)
%% SENAL TRAS EL CABLE
medidas_cable = load(’Ma ia Jesus/measu emen s/
cable_RMSin_20_w _wi i4_BW20_MCS1.ma ’);
% Spec um Analyze
spec um_cable = spec umAnalyze (’SampleRa e’, Fs);
spec um_cable(medidas_cable.y);
% MÁSCARA ESPECTRAL
% spec um_cable.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
% da a = ge Measu emen sDa a(spec um_cable);
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% %De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
63
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_cable.Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_cable.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% ACPR
spec um_cable.ChannelMeasu emen s.Type = "acp ";
spec um_cable.ChannelMeasu emen s.Enabled = ue;
spec um_cable.ChannelMeasu emen s.NumO se s = 2;
spec um_cable.ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_cable);
acp aluesLowe _cable = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _cable = da a.ChannelMeasu emen s.ACPRUppe ;
spec um_cable.Name = ’Espec o de la señal WiFi 4 as el cable. BW = 20 MHz.
MCS = 1’;
spec um_cable.Ti le = ’Espec o de la señal WiFi 4 as el cable. BW = 20 MHz.
MCS = 1’;
show(spec um_cable)
% PAPR
PAPR_cable = 20*log10(max(abs(medidas_cable.y))/ ms(medidas_cable.y));
p in (’El alo de PAPR as el cable es %.4 n’, PAPR_cable)
y_sync_cable = coa se_sync(medidas_cable.y,medidas_cable.x);
y_sync_cable = ( ine_sync(y_sync_cable,medidas_cable.x)).’;
yn = y_sync_cable/no m(y_sync_cable) * no m(medidas_cable.x);
igu e()
plo (129776:130671, eal(medidas_cable.x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el cable’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
%% SENAL TRAS EL AMPLIFICADOR
medidas_ampli = load(’Ma ia Jesus/measu emen s/
ampli icado _RMSin_16_w _wi i4_BW20_MCS1.ma ’);
% Spec um Analyze
spec um_ampli = spec umAnalyze (’SampleRa e’, Fs);
spec um_ampli (medidas_ampli .y);
%MÁSCARA ESPECTRAL
% spec um_ampli .PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los m
áximos de la señal
% da a = ge Measu emen sDa a(spec um_ampli );
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% %De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
64 Appendix A. Códigos u ilizados
% spec um_ampli .Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_ampli .Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
%ACPR
spec um_ampli .ChannelMeasu emen s.Type = "acp ";
spec um_ampli .ChannelMeasu emen s.Enabled = ue;
spec um_ampli .ChannelMeasu emen s.NumO se s = 2;
spec um_ampli .ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_ampli );
acp aluesLowe _ampli = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _ampli = da a.ChannelMeasu emen s.ACPRUppe ;
p in (’ACPR ideal: -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz= %.4
n ’, ...
acp aluesLowe _ideal(1), acp aluesLowe _ideal(2), ...
acp aluesUppe _ideal(1), acp aluesUppe _ideal(2));
p in (’ACPR cable: -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz= %.4
n ’, ...
acp aluesLowe _cable(1), acp aluesLowe _cable(2), ...
acp aluesUppe _cable(1), acp aluesUppe _cable(2));
p in (’ACPR ampli icado : -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz
= %.4 n ’, ...
acp aluesLowe _ampli (1), acp aluesLowe _ampli (2), ...
acp aluesUppe _ampli (1), acp aluesUppe _ampli (2));
spec um_ampli .Name = ’Espec o de la señal WiFi 4 as el ampli icado . BW =
20 MHz. MCS = 1’;
spec um_ampli .Ti le = ’Espec o de la señal WiFi 4 as el ampli icado . BW =
20 MHz. MCS = 1’;
show(spec um_ampli )
% PAPR
PAPR_ampli icado = 20*log10(max(abs(medidas_ampli .y))/ ms(medidas_ampli .y));
p in (’El alo de PAPR as el ampli icado es %.4 n’, PAPR_ampli icado )
%Sinc onización de las señales
y_sync_ampli = coa se_sync(medidas_ampli .y,medidas_ampli .x);
y_sync_ampli = ( ine_sync(y_sync_ampli ,medidas_ampli .x)).’;
yn = y_sync_ampli /no m(y_sync_ampli ) * no m(medidas_ampli .x);
igu e()
plo (129776:130671, eal(medidas_ampli .x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el ampli icado ’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% Ca ac e ís ica AM-AM
dibuja_AMAM_AMPM(medidas_ampli .x, y_sync_ampli );
% NMSE cable
NMSE_cable = 20*log10(no m(medidas_cable.x/no m(medidas_cable.x)- y_sync_cable/
no m(y_sync_cable))/no m(y_sync_cable/no m(y_sync_cable)));
p in (’El alo de NMSE as el cable es %.4 n’, NMSE_cable)
% NMSE ampli icado
65
NMSE_ampli = 20*log10(no m(medidas_ampli .x/no m(medidas_ampli .x)-
y_sync_ampli /no m(y_sync_ampli ))/no m(y_sync_ampli /no m(y_sync_ampli )))
;
p in (’El alo de NMSE as el ampli icado es %.4 n’, NMSE_ampli )
%
% EVM ideal
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW20’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(h C g);
LenSymbol = s _index.HTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,w _wi i4_BW20_MCS1(1+((i-1)*LenSymbol):(i*LenSymbol)),
chanBW,s );
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ideal = 100*10.^(e mdB/20);
66 Appendix A. Códigos u ilizados
alo _medio_EVM_ideal = mean(e m_ideal);
p in (’El alo medio de EVM de la señal ideal %.4 n’, alo _medio_EVM_ideal
)
igu e,
plo (IQ_comple o(:),’.b’); hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’, 1.5)
i le(’Cons elación de la señal ideal’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
%
% EVM cable
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW20’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(h C g);
LenSymbol = s _index.HTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_cable(1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s )
;
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
67
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_cable = 100*10.^(e mdB/20);
alo _medio_EVM_cable = mean(e m_cable);
p in (’El alo medio de EVM de la señal as pasa po el cable %.4 n’,
alo _medio_EVM_cable)
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el cable’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM ampli icado
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW20’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(h C g);
LenSymbol = s _index.HTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_ampli (1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s
);
de Summa y = de ec ionSumma y(analyze );
68 Appendix A. Códigos u ilizados
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ampli = 100*10.^(e mdB/20);
alo _medio_EVM_ampli = mean(e m_ampli );
p in (’El alo medio de EVM de la señal as pasa po el ampli icado es
%.4 n’, alo _medio_EVM_ampli )
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el ampli icado ’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
Código A.4 wi i4_BW20_MCS7.m.
clea , close all
%% Gene a ing 802.11n/ac (OFDM) wa e o m
% 802.11n/ac (OFDM) con igu a ion
h C g = wlanHTCon ig(’ChannelBandwid h’, ’CBW20’, ...
’NumT ansmi An ennas’, 1, ...
’NumSpaceTimeS eams’, 1, ...
’Spa ialMapping’, ’Di ec ’, ...
’MCS’, 7, ...
’Gua dIn e al’, ’Long’, ...
’ChannelCoding’, ’BCC’, ...
’Agg ega edMPDU’, alse, ...
’RecommendSmoo hing’, ue, ...
’PSDULeng h’, 1024);
o s = 5;
numPacke s = 30;
% inpu bi sou ce:
pn = comm.PNSequence(’Polynomial’, ’x15+x14+1’, ’Ini ialCondi ions’, [ze os(1,
14) 1]);
pn.SamplesPe F ame = 8*h C g.PSDULeng h*numPacke s;
in = pn();
% Gene a ion
w _wi i4_BW20_MCS7 = wlanWa e o mGene a o (in, h C g, ...
’NumPacke s’, numPacke s, ...
’IdleTime’, 0, ...
’O e samplingFac o ’, o s, ...
’Sc amble Ini ializa ion’, 93, ...
’WindowT ansi ionTime’, 1e-07);
69
Fs = wlanSampleRa e(h C g, ’O e samplingFac o ’, o s); % Speci y he
sample a e o he wa e o m in Hz
%sa e(’ o mas de onda/w _wi i4_BW20_MCS7.ma ’, ’w _wi i4_BW20_MCS7’)
%% SENAL IDEAL
% Spec um Analyze
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
spec um_ideal(w _wi i4_BW20_MCS7);
% MÁSCARA ESPECTRAL
% spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
% da a = ge Measu emen sDa a(spec um_ideal);
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% % De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% ACPR
spec um_ideal.ChannelMeasu emen s.Type = "acp ";
spec um_ideal.ChannelMeasu emen s.Enabled = ue;
spec um_ideal.ChannelMeasu emen s.NumO se s = 2;
spec um_ideal.ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_ideal);
acp aluesLowe _ideal = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _ideal = da a.ChannelMeasu emen s.ACPRUppe ;
spec um_ideal.Name = ’Espec o de la señal WiFi 4 ideal. BW = 20 MHz. MCS = 7’
;
spec um_ideal.Ti le = ’Espec o de la señal WiFi 4 ideal. BW = 20 MHz. MCS = 7
’;
show(spec um_ideal)
% PAPR
PAPR_ideal = 20*log10(max(abs(w _wi i4_BW20_MCS7))/ ms(w _wi i4_BW20_MCS7));
p in (’El alo de PAPR es %.4 n’, PAPR_ideal)
%% SENAL TRAS EL CABLE
medidas_cable = load(’Ma ia Jesus/measu emen s/
cable_RMSin_20_w _wi i4_BW20_MCS7.ma ’);
% Spec um Analyze
spec um_cable = spec umAnalyze (’SampleRa e’, Fs);
spec um_cable(medidas_cable.y);
% MÁSCARA ESPECTRAL
% spec um_cable.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
% da a = ge Measu emen sDa a(spec um_cable);
70 Appendix A. Códigos u ilizados
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% % De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_cable.Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_cable.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% ACPR
spec um_cable.ChannelMeasu emen s.Type = "acp ";
spec um_cable.ChannelMeasu emen s.Enabled = ue;
spec um_cable.ChannelMeasu emen s.NumO se s = 2;
spec um_cable.ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_cable);
acp aluesLowe _cable = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _cable = da a.ChannelMeasu emen s.ACPRUppe ;
spec um_cable.Name = ’Espec o de la señal WiFi 4 as el cable. BW = 20 MHz.
MCS = 7’;
spec um_cable.Ti le = ’Espec o de la señal WiFi 4 as el cable. BW = 20 MHz.
MCS = 7’;
show(spec um_cable)
% PAPR
PAPR_cable = 20*log10(max(abs(medidas_cable.y))/ ms(medidas_cable.y));
p in (’El alo de PAPR as el cable es %.4 n’, PAPR_cable)
y_sync_cable = coa se_sync(medidas_cable.y,medidas_cable.x);
y_sync_cable = ( ine_sync(y_sync_cable,medidas_cable.x)).’;
yn = y_sync_cable/no m(y_sync_cable) * no m(medidas_cable.x);
igu e()
plo (129776:130671, eal(medidas_cable.x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el cable’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
%% SENAL TRAS EL AMPLIFICADOR
medidas_ampli = load(’Ma ia Jesus/measu emen s/
ampli icado _RMSin_16_w _wi i4_BW20_MCS7.ma ’);
% Spec um Analyze
spec um_ampli = spec umAnalyze (’SampleRa e’, Fs);
spec um_ampli (medidas_ampli .y);
% MÁSCARA ESPECTRAL
% spec um_ampli .PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los m
áximos de la señal
% da a = ge Measu emen sDa a(spec um_ampli );
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% %De inición másca a espec al según el es ánda y el ancho de banda
71
% mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_ampli .Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_ampli .Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
%ACPR
spec um_ampli .ChannelMeasu emen s.Type = "acp ";
spec um_ampli .ChannelMeasu emen s.Enabled = ue;
spec um_ampli .ChannelMeasu emen s.NumO se s = 2;
spec um_ampli .ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_ampli );
acp aluesLowe _ampli = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _ampli = da a.ChannelMeasu emen s.ACPRUppe ;
p in (’ACPR ideal: -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz= %.4
n ’, ...
acp aluesLowe _ideal(1), acp aluesLowe _ideal(2), ...
acp aluesUppe _ideal(1), acp aluesUppe _ideal(2));
p in (’ACPR cable: -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz= %.4
n ’, ...
acp aluesLowe _cable(1), acp aluesLowe _cable(2), ...
acp aluesUppe _cable(1), acp aluesUppe _cable(2));
p in (’ACPR ampli icado : -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz
= %.4 n ’, ...
acp aluesLowe _ampli (1), acp aluesLowe _ampli (2), ...
acp aluesUppe _ampli (1), acp aluesUppe _ampli (2));
spec um_ampli .Name = ’Espec o de la señal WiFi 4 as el ampli icado . BW =
20 MHz. MCS = 7’;
spec um_ampli .Ti le = ’Espec o de la señal WiFi 4 as el ampli icado . BW =
20 MHz. MCS = 7’;
show(spec um_ampli )
% PAPR
PAPR_ampli icado = 20*log10(max(abs(medidas_ampli .y))/ ms(medidas_ampli .y));
p in (’El alo de PAPR as el ampli icado es %.4 n’, PAPR_ampli icado )
%Sinc onización de las señales
y_sync_ampli = coa se_sync(medidas_ampli .y,medidas_ampli .x);
y_sync_ampli = ( ine_sync(y_sync_ampli ,medidas_ampli .x)).’;
yn = y_sync_ampli /no m(y_sync_ampli ) * no m(medidas_ampli .x);
igu e()
plo (129776:130671, eal(medidas_ampli .x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el ampli icado ’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% Ca ac e ís ica AM-AM
dibuja_AMAM_AMPM(medidas_ampli .x, y_sync_ampli );
% NMSE cable
NMSE_cable = 20*log10(no m(medidas_cable.x/no m(medidas_cable.x)- y_sync_cable/
no m(y_sync_cable))/no m(y_sync_cable/no m(y_sync_cable)));
78 Appendix A. Códigos u ilizados
PAPR_ampli icado = 20*log10(max(abs(medidas_ampli .y))/ ms(medidas_ampli .y));
p in (’El alo de PAPR as el ampli icado es %.4 n’, PAPR_ampli icado )
% Sinc onización de las señales
y_sync_ampli = coa se_sync(medidas_ampli .y,medidas_ampli .x);
y_sync_ampli = ( ine_sync(y_sync_ampli ,medidas_ampli .x)).’;
yn = y_sync_ampli /no m(y_sync_ampli ) * no m(medidas_ampli .x);
igu e()
plo (129776:130671, eal(medidas_ampli .x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el ampli icado ’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% Ca ac e ís ica AM-AM
dibuja_AMAM_AMPM(medidas_ampli .x, y_sync_ampli );
% NMSE cable
NMSE_cable = 20*log10(no m(medidas_cable.x/no m(medidas_cable.x)- y_sync_cable/
no m(y_sync_cable))/no m(y_sync_cable/no m(y_sync_cable)));
p in (’El alo de NMSE as el cable es %.4 n’, NMSE_cable)
% NMSE ampli icado
NMSE_ampli = 20*log10(no m(medidas_ampli .x/no m(medidas_ampli .x)-
y_sync_ampli /no m(y_sync_ampli ))/no m(y_sync_ampli /no m(y_sync_ampli )))
;
p in (’El alo de NMSE as el ampli icado es %.4 n’, NMSE_ampli )
% EVM ideal
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(h C g);
LenSymbol = s _index.HTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
79
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,w _wi i4_BW40_MCS2(1+((i-1)*LenSymbol):(i*LenSymbol)),
chanBW,s );
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ideal = 100*10.^(e mdB/20);
alo _medio_EVM_ideal = mean(e m_ideal);
p in (’El alo medio de EVM de la señal ideal %.4 n’, alo _medio_EVM_ideal
)
igu e,
plo (IQ_comple o(:),’.b’); hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’, 1.5)
i le(’Cons elación de la señal ideal’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM cable
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(h C g);
LenSymbol = s _index.HTDa a(2)*o s;
80 Appendix A. Códigos u ilizados
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_cable(1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s )
;
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_cable = 100*10.^(e mdB/20);
alo _medio_EVM_cable = mean(e m_cable);
p in (’El alo medio de EVM de la señal as pasa po el cable %.4 n’,
alo _medio_EVM_cable)
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el cable’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM ampli icado
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
81
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(h C g);
LenSymbol = s _index.HTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_ampli (1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s
);
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ampli = 100*10.^(e mdB/20);
alo _medio_EVM_ampli = mean(e m_ampli );
p in (’El alo medio de EVM de la señal as pasa po el ampli icado es
%.4 n’, alo _medio_EVM_ampli )
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el ampli icado ’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
Código A.6 wi i4_BW40_MCS7.m.
clea , close all
%% Gene a ing 802.11n/ac (OFDM) wa e o m
% 802.11n/ac (OFDM) con igu a ion
h C g = wlanHTCon ig(’ChannelBandwid h’, ’CBW40’, ...
’NumT ansmi An ennas’, 1, ...
’NumSpaceTimeS eams’, 1, ...
82 Appendix A. Códigos u ilizados
’Spa ialMapping’, ’Di ec ’, ...
’MCS’, 7, ...
’Gua dIn e al’, ’Long’, ...
’ChannelCoding’, ’BCC’, ...
’Agg ega edMPDU’, alse, ...
’RecommendSmoo hing’, ue, ...
’PSDULeng h’, 1024);
o s = 2;
numPacke s = 66;
% inpu bi sou ce:
pn = comm.PNSequence(’Polynomial’, ’x15+x14+1’, ’Ini ialCondi ions’, [ze os(1,
14) 1]);
pn.SamplesPe F ame = 8*h C g.PSDULeng h*numPacke s;
in = pn();
% Gene a ion
w _wi i4_BW40_MCS7 = wlanWa e o mGene a o (in, h C g, ...
’NumPacke s’, numPacke s, ...
’IdleTime’, 0, ...
’O e samplingFac o ’, o s, ...
’Sc amble Ini ializa ion’, 93, ...
’WindowT ansi ionTime’, 1e-07);
Fs = wlanSampleRa e(h C g, ’O e samplingFac o ’, o s); % Speci y he
sample a e o he wa e o m in Hz
%sa e(’ o mas de onda/w _wi i4_BW40_MCS7.ma ’, ’w _wi i4_BW40_MCS7’)
% SENAL IDEAL
%Spec um Analyze
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
spec um_ideal(w _wi i4_BW40_MCS7);
% MÁSCARA ESPECTRAL
spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_ideal);
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 19.5; 20.5; 40; 60] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_ideal.Name = ’Espec o de la señal WiFi 4 ideal. BW = 40 MHz. MCS = 7’
;
spec um_ideal.Ti le = ’Espec o de la señal WiFi 4 ideal. BW = 40 MHz. MCS = 7
’;
show(spec um_ideal)
83
% PAPR
PAPR_ideal = 20*log10(max(abs(w _wi i4_BW40_MCS7))/ ms(w _wi i4_BW40_MCS7));
p in (’El alo de PAPR es %.4 n’, PAPR_ideal)
%% SENAL TRAS EL CABLE
medidas_cable = load(’Ma ia Jesus/measu emen s/
cable_RMSin_20_w _wi i4_BW40_MCS7.ma ’);
% Spec um Analyze
spec um_cable = spec umAnalyze (’SampleRa e’, Fs);
spec um_cable(medidas_cable.y);
% MÁSCARA ESPECTRAL
spec um_cable.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_cable);
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 19.5; 20.5; 40; 60] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_cable.Spec alMask.EnabledMasks = ’Uppe ’;
spec um_cable.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_cable.Name = ’Espec o de la señal WiFi 4 as el cable. BW = 40 MHz.
MCS = 7’;
spec um_cable.Ti le = ’Espec o de la señal WiFi 4 as el cable. BW = 40 MHz.
MCS = 7’;
show(spec um_cable)
% PAPR
PAPR_cable = 20*log10(max(abs(medidas_cable.y))/ ms(medidas_cable.y));
p in (’El alo de PAPR as el cable es %.4 n’, PAPR_cable)
% Sinc onización de las señales cable
y_sync_cable = coa se_sync(medidas_cable.y,medidas_cable.x);
y_sync_cable = ( ine_sync(y_sync_cable,medidas_cable.x)).’;
yn = y_sync_cable/no m(y_sync_cable) * no m(medidas_cable.x);
igu e()
plo (129776:130671, eal(medidas_cable.x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el cable’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
%% SENAL TRAS EL AMPLIFICADOR
medidas_ampli = load(’Ma ia Jesus/measu emen s/
ampli icado _RMSin_16_w _wi i4_BW40_MCS7.ma ’);
% Spec um Analyze
spec um_ampli = spec umAnalyze (’SampleRa e’, Fs);
spec um_ampli (medidas_ampli .y);
% MÁSCARA ESPECTRAL
84 Appendix A. Códigos u ilizados
spec um_ampli .PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_ampli );
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 19.5; 20.5; 40; 60] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_ampli .Spec alMask.EnabledMasks = ’Uppe ’;
spec um_ampli .Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_ampli .Name = ’Espec o de la señal WiFi 4 as el ampli icado . BW =
40 MHz. MCS = 7’;
spec um_ampli .Ti le = ’Espec o de la señal WiFi 4 as el ampli icado . BW =
40 MHz. MCS = 7’;
show(spec um_ampli )
% PAPR
PAPR_ampli icado = 20*log10(max(abs(medidas_ampli .y))/ ms(medidas_ampli .y));
p in (’El alo de PAPR as el ampli icado es %.4 n’, PAPR_ampli icado )
% Sinc onización de las señales
y_sync_ampli = coa se_sync(medidas_ampli .y,medidas_ampli .x);
y_sync_ampli = ( ine_sync(y_sync_ampli ,medidas_ampli .x)).’;
yn = y_sync_ampli /no m(y_sync_ampli ) * no m(medidas_ampli .x);
igu e()
plo (129776:130671, eal(medidas_ampli .x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el ampli icado ’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% Ca ac e ís ica AM-AM
dibuja_AMAM_AMPM(medidas_ampli .x, y_sync_ampli );
% NMSE cable
NMSE_cable = 20*log10(no m(medidas_cable.x/no m(medidas_cable.x)- y_sync_cable/
no m(y_sync_cable))/no m(y_sync_cable/no m(y_sync_cable)));
p in (’El alo de NMSE as el cable es %.4 n’, NMSE_cable)
% NMSE ampli icado
NMSE_ampli = 20*log10(no m(medidas_ampli .x/no m(medidas_ampli .x)-
y_sync_ampli /no m(y_sync_ampli ))/no m(y_sync_ampli /no m(y_sync_ampli )))
;
p in (’El alo de NMSE as el ampli icado es %.4 n’, NMSE_ampli )
% EVM ideal
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
85
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(h C g);
LenSymbol = s _index.HTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,w _wi i4_BW40_MCS7(1+((i-1)*LenSymbol):(i*LenSymbol)),
chanBW,s );
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ideal = 100*10.^(e mdB/20);
alo _medio_EVM_ideal = mean(e m_ideal);
p in (’El alo medio de EVM de la señal ideal %.4 n’, alo _medio_EVM_ideal
)
igu e,
plo (IQ_comple o(:),’.b’); hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’, 1.5)
i le(’Cons elación de la señal ideal’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
86 Appendix A. Códigos u ilizados
% EVM cable
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(h C g);
LenSymbol = s _index.HTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_cable(1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s )
;
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_cable = 100*10.^(e mdB/20);
alo _medio_EVM_cable = mean(e m_cable);
p in (’El alo medio de EVM de la señal as pasa po el cable %.4 n’,
alo _medio_EVM_cable)
87
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el cable’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM ampli icado
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(h C g);
LenSymbol = s _index.HTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_ampli (1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s
);
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
94 Appendix A. Códigos u ilizados
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_ampli (1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s
);
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ampli = 100*10.^(e mdB/20);
alo _medio_EVM_ampli = mean(e m_ampli );
p in (’El alo medio de EVM de la señal as pasa po el ampli icado es
%.4 n’, alo _medio_EVM_ampli )
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el ampli icado ’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
Código A.8 wi i5_BW40_MCS9.m.
clea , close all
%% Gene a ing 802.11n/ac (OFDM) wa e o m
% 802.11n/ac (OFDM) con igu a ion
h C g = wlanVHTCon ig(’ChannelBandwid h’, ’CBW40’, ...
’NumUse s’, 1, ...
’NumT ansmi An ennas’, 1, ...
’NumSpaceTimeS eams’, 1, ...
’Spa ialMapping’, ’Di ec ’, ...
’STBC’, alse, ...
’MCS’, 9, ...
’ChannelCoding’, ’BCC’, ...
’APEPLeng h’, 1024, ...
’Gua dIn e al’, ’Long’, ...
’G oupID’, 63, ...
’Pa ialAID’, 275);
o s = 2;
95
numPacke s = 70;
% inpu bi sou ce:
pn = comm.PNSequence(’Polynomial’, ’x9+x5+1’, ’Ini ialCondi ions’, [ze os(1, 8)
1]);
pn.SamplesPe F ame = 8* h C g.PSDULeng h*numPacke s;
in = pn();
% Gene a ion
w _wi i5_BW40_MCS9 = wlanWa e o mGene a o (in, h C g, ...
’NumPacke s’, numPacke s, ...
’IdleTime’, 0, ...
’O e samplingFac o ’, o s, ...
’Sc amble Ini ializa ion’, 93, ...
’WindowT ansi ionTime’, 1e-07);
Fs = wlanSampleRa e( h C g, ’O e samplingFac o ’, o s); % Speci y he
sample a e o he wa e o m in Hz
%sa e(’ o mas de onda/w _wi i5_BW40_MCS9.ma ’, ’w _wi i5_BW40_MCS9’)
%% SENAL IDEAL
% Spec um Analyze
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
spec um_ideal(w _wi i5_BW40_MCS9);
% MÁSCARA ESPECTRAL
spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_ideal);
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 19.5; 20.5; 40; 60] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_ideal.Name = ’Espec o de la señal WiFi 5 ideal. BW = 40 MHz. MCS = 9’
;
spec um_ideal.Ti le = ’Espec o de la señal WiFi 5 ideal. BW = 40 MHz. MCS = 9
’;
show(spec um_ideal)
% PAPR
PAPR_ideal = 20*log10(max(abs(w _wi i5_BW40_MCS9))/ ms(w _wi i5_BW40_MCS9));
p in (’El alo de PAPR es %.4 n’, PAPR_ideal)
%% SENAL TRAS EL CABLE
medidas_cable = load(’Ma ia Jesus/measu emen s/
cable_RMSin_20_w _wi i5_BW40_MCS9.ma ’);
% Spec um Analyze
spec um_cable = spec umAnalyze (’SampleRa e’, Fs);
96 Appendix A. Códigos u ilizados
spec um_cable(medidas_cable.y);
% MÁSCARA ESPECTRAL
spec um_cable.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_cable);
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 19.5; 20.5; 40; 60] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_cable.Spec alMask.EnabledMasks = ’Uppe ’;
spec um_cable.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_cable.Name = ’Espec o de la señal WiFi 5 as el cable. BW = 40 MHz.
MCS = 9’;
spec um_cable.Ti le = ’Espec o de la señal WiFi 5 as el cable. BW = 40 MHz.
MCS = 9’;
show(spec um_cable)
% PAPR
PAPR_cable = 20*log10(max(abs(medidas_cable.y))/ ms(medidas_cable.y));
p in (’El alo de PAPR as el cable es %.4 n’, PAPR_cable)
% Sinc onización de las señales cable
y_sync_cable = coa se_sync(medidas_cable.y,medidas_cable.x);
y_sync_cable = ( ine_sync(y_sync_cable,medidas_cable.x)).’;
yn = y_sync_cable/no m(y_sync_cable) * no m(medidas_cable.x);
igu e()
plo (129776:130671, eal(medidas_cable.x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el cable’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
%% SENAL TRAS EL AMPLIFICADOR
medidas_ampli = load(’Ma ia Jesus/measu emen s/
ampli icado _RMSin_16_w _wi i5_BW40_MCS9.ma ’);
% Spec um Analyze
spec um_ampli = spec umAnalyze (’SampleRa e’, Fs);
spec um_ampli (medidas_ampli .y);
% MÁSCARA ESPECTRAL
spec um_ampli .PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_ampli );
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 19.5; 20.5; 40; 60] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
97
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_ampli .Spec alMask.EnabledMasks = ’Uppe ’;
spec um_ampli .Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_ampli .Name = ’Espec o de la señal WiFi 5 as el ampli icado . BW =
40 MHz. MCS = 9’;
spec um_ampli .Ti le = ’Espec o de la señal WiFi 5 as el ampli icado . BW =
40 MHz. MCS = 9’;
show(spec um_ampli )
% PAPR
PAPR_ampli icado = 20*log10(max(abs(medidas_ampli .y))/ ms(medidas_ampli .y));
p in (’El alo de PAPR as el ampli icado es %.4 n’, PAPR_ampli icado )
% Sinc onización de las señales
y_sync_ampli = coa se_sync(medidas_ampli .y,medidas_ampli .x);
y_sync_ampli = ( ine_sync(y_sync_ampli ,medidas_ampli .x)).’;
yn = y_sync_ampli /no m(y_sync_ampli ) * no m(medidas_ampli .x);
igu e()
plo (129776:130671, eal(medidas_ampli .x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el ampli icado ’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% Ca ac e ís ica AM-AM
dibuja_AMAM_AMPM(medidas_ampli .x, y_sync_ampli );
% NMSE cable
NMSE_cable = 20*log10(no m(medidas_cable.x/no m(medidas_cable.x)- y_sync_cable/
no m(y_sync_cable))/no m(y_sync_cable/no m(y_sync_cable)));
p in (’El alo de NMSE as el cable es %.4 n’, NMSE_cable)
% NMSE ampli icado
NMSE_ampli = 20*log10(no m(medidas_ampli .x/no m(medidas_ampli .x)-
y_sync_ampli /no m(y_sync_ampli ))/no m(y_sync_ampli /no m(y_sync_ampli )))
;
p in (’El alo de NMSE as el ampli icado es %.4 n’, NMSE_ampli )
% EVM ideal
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
98 Appendix A. Códigos u ilizados
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices( h C g);
LenSymbol = s _index.VHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,w _wi i5_BW40_MCS9(1+((i-1)*LenSymbol):(i*LenSymbol)),
chanBW,s );
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ideal = 100*10.^(e mdB/20);
alo _medio_EVM_ideal = mean(e m_ideal);
p in (’El alo medio de EVM de la señal ideal %.4 n’, alo _medio_EVM_ideal
)
igu e,
plo (IQ_comple o(:),’.b’); hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’, 1.5)
i le(’Cons elación de la señal ideal’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM cable
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
99
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices( h C g);
LenSymbol = s _index.VHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_cable(1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s )
;
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_cable = 100*10.^(e mdB/20);
alo _medio_EVM_cable = mean(e m_cable);
p in (’El alo medio de EVM de la señal as pasa po el cable %.4 n’,
alo _medio_EVM_cable)
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el cable’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM ampli icado
100 Appendix A. Códigos u ilizados
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices( h C g);
LenSymbol = s _index.VHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_ampli (1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s
);
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ampli = 100*10.^(e mdB/20);
alo _medio_EVM_ampli = mean(e m_ampli );
p in (’El alo medio de EVM de la señal as pasa po el ampli icado es
%.4 n’, alo _medio_EVM_ampli )
igu e,
plo (IQ_comple o(:),’.b’);hold on;
101
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el ampli icado ’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
Código A.9 wi i5_BW80_MCS4.m.
clea , close all
%% Gene a ing 802.11n/ac (OFDM) wa e o m
% 802.11n/ac (OFDM) con igu a ion
h C g = wlanVHTCon ig(’ChannelBandwid h’, ’CBW80’, ...
’NumUse s’, 1, ...
’NumT ansmi An ennas’, 1, ...
’NumSpaceTimeS eams’, 1, ...
’Spa ialMapping’, ’Di ec ’, ...
’STBC’, alse, ...
’MCS’, 4, ...
’ChannelCoding’, ’BCC’, ...
’APEPLeng h’, 1024, ...
’Gua dIn e al’, ’Long’, ...
’G oupID’, 63, ...
’Pa ialAID’, 275);
o s = 1;
numPacke s = 75;
% inpu bi sou ce:
pn = comm.PNSequence(’Polynomial’, ’x9+x5+1’, ’Ini ialCondi ions’, [ze os(1, 8)
1]);
pn.SamplesPe F ame = 8* h C g.PSDULeng h*numPacke s;
in = pn();
% Gene a ion
w _wi i5_BW80_MCS4 = wlanWa e o mGene a o (in, h C g, ...
’NumPacke s’, numPacke s, ...
’IdleTime’, 0, ...
’O e samplingFac o ’, o s, ...
’Sc amble Ini ializa ion’, 93, ...
’WindowT ansi ionTime’, 1e-07);
Fs = wlanSampleRa e( h C g, ’O e samplingFac o ’, o s); % Speci y he
sample a e o he wa e o m in Hz
%sa e(’ o mas de onda/w _wi i5_BW80_MCS4.ma ’, ’w _wi i5_BW80_MCS4’)
% SENAL IDEAL
% Spec um Analyze
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
spec um_ideal(w _wi i5_BW80_MCS4);
% MÁSCARA ESPECTRAL
spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_ideal);
peak alues = da a.PeakFinde (end).Value;
102 Appendix A. Códigos u ilizados
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 39.5; 40.5; 80; 120] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_ideal.Name = ’Espec o de la señal WiFi 5 ideal. BW = 80 MHz. MCS = 4’
;
spec um_ideal.Ti le = ’Espec o de la señal WiFi 5 ideal. BW = 80 MHz. MCS = 4
’;
show(spec um_ideal)
% PAPR
PAPR_ideal = 20*log10(max(abs(w _wi i5_BW80_MCS4))/ ms(w _wi i5_BW80_MCS4));
p in (’El alo de PAPR es %.4 n’, PAPR_ideal)
%% SENAL TRAS EL CABLE
medidas_cable = load(’Ma ia Jesus/measu emen s/
cable_RMSin_20_w _wi i5_BW80_MCS4.ma ’);
% Spec um Analyze
spec um_cable = spec umAnalyze (’SampleRa e’, Fs);
spec um_cable(medidas_cable.y);
% MÁSCARA ESPECTRAL
spec um_cable.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_cable);
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 39.5; 40.5; 80; 120] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_cable.Spec alMask.EnabledMasks = ’Uppe ’;
spec um_cable.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_cable.Name = ’Espec o de la señal WiFi 5 as el cable. BW = 80 MHz.
MCS = 4’;
spec um_cable.Ti le = ’Espec o de la señal WiFi 5 as el cable. BW = 80 MHz.
MCS = 4’;
show(spec um_cable)
% PAPR
PAPR_cable = 20*log10(max(abs(medidas_cable.y))/ ms(medidas_cable.y));
p in (’El alo de PAPR as el cable es %.4 n’, PAPR_cable)
% Sinc onización de las señales cable
y_sync_cable = coa se_sync(medidas_cable.y,medidas_cable.x);
y_sync_cable = ( ine_sync(y_sync_cable,medidas_cable.x)).’;
103
yn = y_sync_cable/no m(y_sync_cable) * no m(medidas_cable.x);
igu e()
plo (129776:130671, eal(medidas_cable.x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el cable’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
%% SENAL TRAS EL AMPLIFICADOR
medidas_ampli = load(’Ma ia Jesus/measu emen s/
ampli icado _RMSin_16_w _wi i5_BW80_MCS4.ma ’);
% Spec um Analyze
spec um_ampli = spec umAnalyze (’SampleRa e’, Fs);
spec um_ampli (medidas_ampli .y);
% MÁSCARA ESPECTRAL
spec um_ampli .PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_ampli );
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 39.5; 40.5; 80; 120] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_ampli .Spec alMask.EnabledMasks = ’Uppe ’;
spec um_ampli .Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_ampli .Name = ’Espec o de la señal WiFi 5 as el ampli icado . BW =
80 MHz. MCS = 4’;
spec um_ampli .Ti le = ’Espec o de la señal WiFi 5 as el ampli icado . BW =
80 MHz. MCS = 4’;
show(spec um_ampli )
% PAPR
PAPR_ampli icado = 20*log10(max(abs(medidas_ampli .y))/ ms(medidas_ampli .y));
p in (’El alo de PAPR as el ampli icado es %.4 n’, PAPR_ampli icado )
% Sinc onización de las señales
y_sync_ampli = coa se_sync(medidas_ampli .y,medidas_ampli .x);
y_sync_ampli = ( ine_sync(y_sync_ampli ,medidas_ampli .x)).’;
yn = y_sync_ampli /no m(y_sync_ampli ) * no m(medidas_ampli .x);
igu e()
plo (129776:130671, eal(medidas_ampli .x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el ampli icado ’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% Ca ac e ís ica AM-AM
dibuja_AMAM_AMPM(medidas_ampli .x, y_sync_ampli );
110 Appendix A. Códigos u ilizados
spec um_ampli .Name = ’Espec o de la señal WiFi 5 as el ampli icado . BW =
80 MHz. MCS = 9’;
spec um_ampli .Ti le = ’Espec o de la señal WiFi 5 as el ampli icado . BW =
80 MHz. MCS = 9’;
show(spec um_ampli )
% PAPR
PAPR_ampli icado = 20*log10(max(abs(medidas_ampli .y))/ ms(medidas_ampli .y));
p in (’El alo de PAPR as el ampli icado es %.4 n’, PAPR_ampli icado )
% Sinc onización de las señales
y_sync_ampli = coa se_sync(medidas_ampli .y,medidas_ampli .x);
y_sync_ampli = ( ine_sync(y_sync_ampli ,medidas_ampli .x)).’;
yn = y_sync_ampli /no m(y_sync_ampli ) * no m(medidas_ampli .x);
igu e()
plo (129776:130671, eal(medidas_ampli .x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el ampli icado ’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% Ca ac e ís ica AM-AM
dibuja_AMAM_AMPM(medidas_ampli .x, y_sync_ampli );
% NMSE cable
NMSE_cable = 20*log10(no m(medidas_cable.x/no m(medidas_cable.x)- y_sync_cable/
no m(y_sync_cable))/no m(y_sync_cable/no m(y_sync_cable)));
p in (’El alo de NMSE as el cable es %.4 n’, NMSE_cable)
% NMSE ampli icado
NMSE_ampli = 20*log10(no m(medidas_ampli .x/no m(medidas_ampli .x)-
y_sync_ampli /no m(y_sync_ampli ))/no m(y_sync_ampli /no m(y_sync_ampli )))
;
p in (’El alo de NMSE as el ampli icado es %.4 n’, NMSE_ampli )
% EVM ideal
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW80’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices( h C g);
111
LenSymbol = s _index.VHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,w _wi i5_BW80_MCS9(1+((i-1)*LenSymbol):(i*LenSymbol)),
chanBW,s );
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ideal = 100*10.^(e mdB/20);
alo _medio_EVM_ideal = mean(e m_ideal);
p in (’El alo medio de EVM de la señal ideal %.4 n’, alo _medio_EVM_ideal
)
igu e,
plo (IQ_comple o(:),’.b’); hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’, 1.5)
i le(’Cons elación de la señal ideal’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM cable
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
112 Appendix A. Códigos u ilizados
chanBW = ’CBW80’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices( h C g);
LenSymbol = s _index.VHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_cable(1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s )
;
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_cable = 100*10.^(e mdB/20);
alo _medio_EVM_cable = mean(e m_cable);
p in (’El alo medio de EVM de la señal as pasa po el cable %.4 n’,
alo _medio_EVM_cable)
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el cable’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM ampli icado
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
113
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW80’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices( h C g);
LenSymbol = s _index.VHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_ampli (1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s
);
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ampli = 100*10.^(e mdB/20);
alo _medio_EVM_ampli = mean(e m_ampli );
p in (’El alo medio de EVM de la señal as pasa po el ampli icado es
%.4 n’, alo _medio_EVM_ampli )
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el ampli icado ’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
114 Appendix A. Códigos u ilizados
Código A.11 wi i6_BW40_MCS8.m.
clea , close all
%% Gene a ing 802.11ax wa e o m
% 802.11ax con igu a ion
heSUC g = wlanHESUCon ig(’ChannelBandwid h’, ’CBW40’, ...
’NumT ansmi An ennas’, 1, ...
’NumSpaceTimeS eams’, 1, ...
’Spa ialMapping’, ’Di ec ’, ...
’P eHESpa ialMapping’, alse, ...
’MCS’, 8, ...
’ChannelCoding’, ’LDPC’, ...
’APEPLeng h’, 100, ...
’Gua dIn e al’, 3.2, ...
’HELTFType’, 4, ...
’UplinkIndica ion’, alse, ...
’BSSColo ’, 0, ...
’Spa ialReuse’, 0, ...
’TXOPDu a ion’, 127, ...
’HighDopple ’, alse, ...
’NominalPacke Padding’, 0);
o s = 2;
numPacke s = 76;
% inpu bi sou ce:
pn = comm.PNSequence(’Polynomial’, ’x15+x14+1’, ’Ini ialCondi ions’, [ze os(1,
14) 1]);
pn.SamplesPe F ame = 8*ge PSDULeng h(heSUC g)*numPacke s;
in = pn();
% Gene a ion
w _wi i6_BW40_MCS8 = wlanWa e o mGene a o (in, heSUC g, ...
’NumPacke s’, numPacke s, ...
’IdleTime’, 0, ...
’O e samplingFac o ’, o s, ...
’Sc amble Ini ializa ion’, 93, ...
’WindowT ansi ionTime’, 1e-07);
Fs = wlanSampleRa e(heSUC g, ’O e samplingFac o ’, o s); % Speci y he
sample a e o he wa e o m in Hz
% RU Assignmen and Alloca ed Subca ie s
%showAlloca ion(heSUC g);
%sa e(’ o mas de onda/w _wi i6_BW40_MCS8.ma ’, ’w _wi i6_BW40_MCS8’)
%% SENAL IDEAL
% Spec um Analyze
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
spec um_ideal(w _wi i6_BW40_MCS8);
% MÁSCARA ESPECTRAL
spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_ideal);
peak alues = da a.PeakFinde (end).Value;
115
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 19.5; 20.5; 40; 60] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_ideal.Name = ’Espec o de la señal WiFi 6 ideal. BW = 40 MHz. MCS = 8’
;
spec um_ideal.Ti le = ’Espec o de la señal WiFi 6 ideal. BW = 40 MHz. MCS = 8
’;
show(spec um_ideal)
% PAPR
PAPR_ideal = 20*log10(max(abs(w _wi i6_BW40_MCS8))/ ms(w _wi i6_BW40_MCS8));
p in (’El alo de PAPR es %.4 n’, PAPR_ideal)
%% SENAL TRAS EL CABLE
medidas_cable = load(’Ma ia Jesus/measu emen s/
cable_RMSin_20_w _wi i6_BW40_MCS8.ma ’);
% Spec um Analyze
spec um_cable = spec umAnalyze (’SampleRa e’, Fs);
spec um_cable(medidas_cable.y);
% MÁSCARA ESPECTRAL
spec um_cable.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_cable);
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 19.5; 20.5; 40; 60] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_cable.Spec alMask.EnabledMasks = ’Uppe ’;
spec um_cable.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_cable.Name = ’Espec o de la señal WiFi 6 as el cable. BW = 40 MHz.
MCS = 8’;
spec um_cable.Ti le = ’Espec o de la señal WiFi 6 as el cable. BW = 40 MHz.
MCS = 8’;
show(spec um_cable)
% PAPR
PAPR_cable = 20*log10(max(abs(medidas_cable.y))/ ms(medidas_cable.y));
p in (’El alo de PAPR as el cable es %.4 n’, PAPR_cable)
% Sinc onización de las señales cable
y_sync_cable = coa se_sync(medidas_cable.y,medidas_cable.x);
y_sync_cable = ( ine_sync(y_sync_cable,medidas_cable.x)).’;
116 Appendix A. Códigos u ilizados
yn = y_sync_cable/no m(y_sync_cable) * no m(medidas_cable.x);
igu e()
plo (129776:130671, eal(medidas_cable.x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el cable’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
%% SENAL TRAS EL AMPLIFICADOR
medidas_ampli = load(’Ma ia Jesus/measu emen s/
ampli icado _RMSin_16_w _wi i6_BW40_MCS8.ma ’);
% Spec um Analyze
spec um_ampli = spec umAnalyze (’SampleRa e’, Fs);
spec um_ampli (medidas_ampli .y);
% MÁSCARA ESPECTRAL
spec um_ampli .PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_ampli );
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 19.5; 20.5; 40; 60] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_ampli .Spec alMask.EnabledMasks = ’Uppe ’;
spec um_ampli .Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
spec um_ampli .Name = ’Espec o de la señal WiFi 6 as el ampli icado . BW =
40 MHz. MCS = 8’;
spec um_ampli .Ti le = ’Espec o de la señal WiFi 6 as el ampli icado . BW =
40 MHz. MCS = 8’;
show(spec um_ampli )
% PAPR
PAPR_ampli icado = 20*log10(max(abs(medidas_ampli .y))/ ms(medidas_ampli .y));
p in (’El alo de PAPR as el ampli icado es %.4 n’, PAPR_ampli icado )
% Sinc onización de las señales
y_sync_ampli = coa se_sync(medidas_ampli .y,medidas_ampli .x);
y_sync_ampli = ( ine_sync(y_sync_ampli ,medidas_ampli .x)).’;
yn = y_sync_ampli /no m(y_sync_ampli ) * no m(medidas_ampli .x);
igu e()
plo (129776:130671, eal(medidas_ampli .x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el ampli icado ’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% Ca ac e ís ica AM-AM
dibuja_AMAM_AMPM(medidas_ampli .x, y_sync_ampli );
117
% NMSE cable
NMSE_cable = 20*log10(no m(medidas_cable.x/no m(medidas_cable.x)- y_sync_cable/
no m(y_sync_cable))/no m(y_sync_cable/no m(y_sync_cable)));
p in (’El alo de NMSE as el cable es %.4 n’, NMSE_cable)
% NMSE ampli icado
NMSE_ampli = 20*log10(no m(medidas_ampli .x/no m(medidas_ampli .x)-
y_sync_ampli /no m(y_sync_ampli ))/no m(y_sync_ampli /no m(y_sync_ampli )))
;
p in (’El alo de NMSE as el ampli icado es %.4 n’, NMSE_ampli )
% EVM ideal
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(heSUC g);
LenSymbol = s _index.HEDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,w _wi i6_BW40_MCS8(1+((i-1)*LenSymbol):(i*LenSymbol)),
chanBW,s );
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
118 Appendix A. Códigos u ilizados
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ideal = 100*10.^(e mdB/20);
alo _medio_EVM_ideal = mean(e m_ideal);
p in (’El alo medio de EVM de la señal ideal %.4 n’, alo _medio_EVM_ideal
)
igu e,
plo (IQ_comple o(:),’.b’); hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’, 1.5)
i le(’Cons elación de la señal ideal’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM cable
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(heSUC g);
LenSymbol = s _index.HEDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_cable(1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s )
;
119
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_cable = 100*10.^(e mdB/20);
alo _medio_EVM_cable = mean(e m_cable);
p in (’El alo medio de EVM de la señal as pasa po el cable %.4 n’,
alo _medio_EVM_cable)
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el cable’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM ampli icado
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(heSUC g);
LenSymbol = s _index.HEDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
126 Appendix A. Códigos u ilizados
% EVM ampli icado
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW40’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(heSUC g);
LenSymbol = s _index.HEDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_ampli (1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s
);
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ampli = 100*10.^(e mdB/20);
alo _medio_EVM_ampli = mean(e m_ampli );
p in (’El alo medio de EVM de la señal as pasa po el ampli icado es
%.4 n’, alo _medio_EVM_ampli )
igu e,
127
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el ampli icado ’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
Código A.13 wi i7_BW20_MCS10.m.
clea , close all
%% Gene a ing 802.11be wa e o m
% 802.11be con igu a ion
eh SUC g = wlanEHTMUCon ig(’CBW20’, ’NumUse s’, 1, ’Punc u edChannelFieldValue’
, 0, ’EHTDUPMode’, 0, ...
’NumT ansmi An ennas’, 1, ...
’Gua dIn e al’, 1.6, ...
’EHTLTFType’, 2, ...
’NumEx aEHTLTFSymbols’, 0, ...
’EHTSIGMCS’, 0, ...
’UplinkIndica ion’, 0, ...
’BSSColo ’, 0, ...
’Spa ialReuse’, 0, ...
’TXOPDu a ion’, []);
% RU con ig objec (s)
eh SUC g.RU{1}.Powe Boos Fac o = 1;
eh SUC g.RU{1}.Spa ialMapping = ’di ec ’;
% Use con ig objec (s)
eh SUC g.Use {1}.APEPLeng h = 100;
eh SUC g.Use {1}.MCS = 10;
eh SUC g.Use {1}.NumSpaceTimeS eams = 1;
eh SUC g.Use {1}.ChannelCoding = ’ldpc’;
eh SUC g.Use {1}.STAID = 0;
eh SUC g.Use {1}.NominalPacke Padding = 0;
o s = 5;
numPacke s = 55;
% inpu bi sou ce:
pn = comm.PNSequence(’Polynomial’, ’x9+x5+1’, ’Ini ialCondi ions’, [ze os(1, 8)
1]);
pn.SamplesPe F ame = 8*psduLeng h(eh SUC g)*numPacke s;
in = pn();
% Gene a ion
w _wi i7_BW20_MCS10 = wlanWa e o mGene a o (in, eh SUC g, ...
’NumPacke s’, numPacke s, ...
’IdleTime’, 0, ...
’O e samplingFac o ’, o s, ...
’Sc amble Ini ializa ion’, 93, ...
’WindowT ansi ionTime’, 1e-07);
Fs = wlanSampleRa e(eh SUC g, ’O e samplingFac o ’, o s); % Speci y
he sample a e o he wa e o m in Hz
% RU Assignmen and Alloca ed Subca ie s
128 Appendix A. Códigos u ilizados
showAlloca ion(eh SUC g);
%sa e(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’, ’w _wi i7_BW20_MCS10’)
% SENAL IDEAL
% Spec um Analyze
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
spec um_ideal(w _wi i7_BW20_MCS10);
% % MÁSCARA ESPECTRAL
% spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
% da a = ge Measu emen sDa a(spec um_ideal);
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% %De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% ACPR
spec um_ideal.ChannelMeasu emen s.Type = "acp ";
spec um_ideal.ChannelMeasu emen s.Enabled = ue;
spec um_ideal.ChannelMeasu emen s.NumO se s = 2;
spec um_ideal.ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_ideal);
acp aluesLowe _ideal = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _ideal = da a.ChannelMeasu emen s.ACPRUppe ;
spec um_ideal.Name = ’Espec o de la señal WiFi 7 ideal. BW = 20 MHz. MCS = 10
’;
spec um_ideal.Ti le = ’Espec o de la señal WiFi 7 ideal. BW = 20 MHz. MCS =
10’;
show(spec um_ideal)
%PAPR
PAPR_ideal = 20*log10(max(abs(w _wi i7_BW20_MCS10))/ ms(w _wi i7_BW20_MCS10));
p in (’El alo de PAPR es %.4 n’, PAPR_ideal)
% %% SENAL TRAS EL CABLE
medidas_cable = load(’Ma ia Jesus/measu emen s/
cable_RMSin_20_w _wi i7_BW20_MCS10.ma ’);
% Spec um Analyze
spec um_cable = spec umAnalyze (’SampleRa e’, Fs);
spec um_cable(medidas_cable.y);
% MÁSCARA ESPECTRAL
% spec um_cable.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
% da a = ge Measu emen sDa a(spec um_cable);
% peak alues = da a.PeakFinde (end).Value;
129
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% %De inición másca a espec al según el es ánda y el ancho de banda
% mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_cable.Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_cable.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
%ACPR
spec um_cable.ChannelMeasu emen s.Type = "acp ";
spec um_cable.ChannelMeasu emen s.Enabled = ue;
spec um_cable.ChannelMeasu emen s.NumO se s = 2;
spec um_cable.ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_cable);
acp aluesLowe _cable = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _cable = da a.ChannelMeasu emen s.ACPRUppe ;
spec um_cable.Name = ’Espec o de la señal WiFi 7 as el cable. BW = 20 MHz.
MCS = 10’;
spec um_cable.Ti le = ’Espec o de la señal WiFi 7 as el cable. BW = 20 MHz.
MCS = 10’;
show(spec um_cable)
% PAPR
PAPR_cable = 20*log10(max(abs(medidas_cable.y))/ ms(medidas_cable.y));
p in (’El alo de PAPR as el cable es %.4 n’, PAPR_cable)
% Sinc onización de las señales cable
y_sync_cable = coa se_sync(medidas_cable.y,medidas_cable.x);
y_sync_cable = ( ine_sync(y_sync_cable,medidas_cable.x)).’;
yn = y_sync_cable/no m(y_sync_cable) * no m(medidas_cable.x);
igu e()
plo (129776:130671, eal(medidas_cable.x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el cable’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% SENAL TRAS EL AMPLIFICADOR
medidas_ampli = load(’Ma ia Jesus/measu emen s/
ampli icado _RMSin_16_w _wi i7_BW20_MCS10.ma ’);
% Spec um Analyze
spec um_ampli = spec umAnalyze (’SampleRa e’, Fs);
spec um_ampli (medidas_ampli .y);
% % MÁSCARA ESPECTRAL
% spec um_ampli .PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los m
áximos de la señal
% da a = ge Measu emen sDa a(spec um_ampli );
% peak alues = da a.PeakFinde (end).Value;
% Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
% % %De inición másca a espec al según el es ánda y el ancho de banda
130 Appendix A. Códigos u ilizados
% mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
% mask_ eq = [- lipud(mask_ eq); mask_ eq];
% mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
% mask_powe = [ lipud(mask_powe ); mask_powe ];
%
% spec um_ampli .Spec alMask.EnabledMasks = ’Uppe ’;
% spec um_ampli .Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% ACPR
spec um_ampli .ChannelMeasu emen s.Type = "acp ";
spec um_ampli .ChannelMeasu emen s.Enabled = ue;
spec um_ampli .ChannelMeasu emen s.NumO se s = 2;
spec um_ampli .ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
da a = ge Measu emen sDa a(spec um_ampli );
acp aluesLowe _ampli = da a.ChannelMeasu emen s.ACPRLowe ;
acp aluesUppe _ampli = da a.ChannelMeasu emen s.ACPRUppe ;
p in (’ACPR ideal: -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz= %.4
n ’, ...
acp aluesLowe _ideal(1), acp aluesLowe _ideal(2), ...
acp aluesUppe _ideal(1), acp aluesUppe _ideal(2));
p in (’ACPR cable: -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz= %.4
n ’, ...
acp aluesLowe _cable(1), acp aluesLowe _cable(2), ...
acp aluesUppe _cable(1), acp aluesUppe _cable(2));
p in (’ACPR ampli icado : -20 MHz= %.4 , -40 MHz= %.4 , 20 MHz= %.4 y 40 MHz
= %.4 n ’, ...
acp aluesLowe _ampli (1), acp aluesLowe _ampli (2), ...
acp aluesUppe _ampli (1), acp aluesUppe _ampli (2));
spec um_ampli .Name = ’Espec o de la señal WiFi 7 as el ampli icado . BW =
20 MHz. MCS = 10’;
spec um_ampli .Ti le = ’Espec o de la señal WiFi 7 as el ampli icado . BW =
20 MHz. MCS = 10’;
show(spec um_ampli )
% PAPR
PAPR_ampli icado = 20*log10(max(abs(medidas_ampli .y))/ ms(medidas_ampli .y));
p in (’El alo de PAPR as el ampli icado es %.4 n’, PAPR_ampli icado )
% Sinc onización de las señales
y_sync_ampli = coa se_sync(medidas_ampli .y,medidas_ampli .x);
y_sync_ampli = ( ine_sync(y_sync_ampli ,medidas_ampli .x)).’;
yn = y_sync_ampli /no m(y_sync_ampli ) * no m(medidas_ampli .x);
igu e()
plo (129776:130671, eal(medidas_ampli .x(129776:130671)), ’ ’), hold on,
plo (129776:130671, eal(yn(129776:130671)),’b’)
i le(’Sinc onización de las señales as el ampli icado ’)
xlabel(’Núme o de mues as’), ylabel(’Ampli ud’)
legend(’Señal TX’, ’Señal RX’)
axis igh
% Ca ac e ís ica AM-AM
dibuja_AMAM_AMPM(medidas_ampli .x, y_sync_ampli );
% NMSE cable
131
NMSE_cable = 20*log10(no m(medidas_cable.x/no m(medidas_cable.x)- y_sync_cable/
no m(y_sync_cable))/no m(y_sync_cable/no m(y_sync_cable)));
p in (’El alo de NMSE as el cable es %.4 n’, NMSE_cable)
% NMSE ampli icado
NMSE_ampli = 20*log10(no m(medidas_ampli .x/no m(medidas_ampli .x)-
y_sync_ampli /no m(y_sync_ampli ))/no m(y_sync_ampli /no m(y_sync_ampli )))
;
p in (’El alo de NMSE as el ampli icado es %.4 n’, NMSE_ampli )
% EVM ideal
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW20’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(eh SUC g);
%s a _da a = s _index.EHTDa a(1)*o s;
LenSymbol = s _index.EHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)),
chanBW,s );
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
132 Appendix A. Códigos u ilizados
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ideal = 100*10.^(e mdB/20);
alo _medio_EVM_ideal = mean(e m_ideal);
p in (’El alo medio de EVM de la señal ideal %.4 n’, alo _medio_EVM_ideal
)
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal ideal’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM cable
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW20’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(eh SUC g);
LenSymbol = s _index.EHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_cable(1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s )
;
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
133
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_cable = 100*10.^(e mdB/20);
alo _medio_EVM_cable = mean(e m_cable);
p in (’El alo medio de EVM de la señal as pasa po el cable %.4 n’,
alo _medio_EVM_cable)
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el cable’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
% EVM ampli icado
%% Recei e
% BBR = comm.BasebandFileReade (’wlanWa e o m.bb’); % C ea e a baseband ile
eade objec
% chanBW = ’CBW20’; % Channel bandwid h o all packe s wi hin he wa e o m
% bb In o = in o(BBR);
% BBR.SamplesPe F ame = bb In o.NumSamplesInDa a; % Numbe o samples in he
wa e o m
% xWa e o m = BBR(); % Load he I&Q sample om a bina y ile
% s = BBR.SampleRa e; % Sampling a e o he inpu signal
% elease(BBR);
%load(’ o mas de onda/w _wi i7_BW20_MCS10.ma ’);
chanBW = ’CBW20’;
s = Fs;
analyze = Wa e o mAnalyze ;
s _index = wlanFieldIndices(eh SUC g);
LenSymbol = s _index.EHTDa a(2)*o s;
e mdB = [];
IQ_comple o = [];
SNR = linspace(65,25,numPacke s);
o i = 1:numPacke s
% n = andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))))+1
i* andn(size(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))));
% n = scale_dBm(n,dBm(w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol)
))-SNR(i));
134 Appendix A. Códigos u ilizados
% p ocess(analyze ,w _wi i7_BW20_MCS10(1+((i-1)*LenSymbol):(i*LenSymbol))+n
,chanBW,s );
p ocess(analyze ,y_sync_ampli (1+((i-1)*LenSymbol):(i*LenSymbol)),chanBW,s
);
de Summa y = de ec ionSumma y(analyze );
% plo Wa e o m(analyze ,1)
% plo EVM(analyze ,1);
e mdB = [e mdB, ge EVM(analyze ,1)];
[IQ_pack, e _cons ella ion] = ge Cons ella ion(analyze ,1);
IQ_comple o = [IQ_comple o, IQ_pack];
% NMSE = 20*log10((no m(ymedn-xsw)./no m(xsw)));
end
e m_ampli = 100*10.^(e mdB/20);
alo _medio_EVM_ampli = mean(e m_ampli );
p in (’El alo medio de EVM de la señal as pasa po el ampli icado es
%.4 n’, alo _medio_EVM_ampli )
igu e,
plo (IQ_comple o(:),’.b’);hold on;
plo ( e _cons ella ion,’+’,’Colo ’,’ ’, ’LineWid h’,1.5)
i le(’Cons elación de la señal as pasa po el ampli icado ’)
xlabel(’I (In phase)’), ylabel(’Q (Quad a u e)’)
axis([-1.5 1.5 -1.5 1.5])
Código A.14 wi i7_BW20_MCS13.m.
clea , close all
%% Gene a ing 802.11be wa e o m
% 802.11be con igu a ion
eh SUC g = wlanEHTMUCon ig(’CBW20’, ’NumUse s’, 1, ’Punc u edChannelFieldValue’
, 0, ’EHTDUPMode’, 0, ...
’NumT ansmi An ennas’, 1, ...
’Gua dIn e al’, 1.6, ...
’EHTLTFType’, 2, ...
’NumEx aEHTLTFSymbols’, 0, ...
’EHTSIGMCS’, 0, ...
’UplinkIndica ion’, 0, ...
’BSSColo ’, 0, ...
’Spa ialReuse’, 0, ...
’TXOPDu a ion’, []);
% RU con ig objec (s)
eh SUC g.RU{1}.Powe Boos Fac o = 1;
eh SUC g.RU{1}.Spa ialMapping = ’di ec ’;
% Use con ig objec (s)
eh SUC g.Use {1}.APEPLeng h = 100;
eh SUC g.Use {1}.MCS = 13;
eh SUC g.Use {1}.NumSpaceTimeS eams = 1;
eh SUC g.Use {1}.ChannelCoding = ’ldpc’;
135
eh SUC g.Use {1}.STAID = 0;
eh SUC g.Use {1}.NominalPacke Padding = 0;
o s = 5;
numPacke s = 60;
% inpu bi sou ce:
pn = comm.PNSequence(’Polynomial’, ’x9+x5+1’, ’Ini ialCondi ions’, [ze os(1, 8)
1]);
pn.SamplesPe F ame = 8*psduLeng h(eh SUC g)*numPacke s;
in = pn();
% Gene a ion
w _wi i7_BW20_MCS13 = wlanWa e o mGene a o (in, eh SUC g, ...
’NumPacke s’, numPacke s, ...
’IdleTime’, 0, ...
’O e samplingFac o ’, o s, ...
’Sc amble Ini ializa ion’, 93, ...
’WindowT ansi ionTime’, 1e-07);
Fs = wlanSampleRa e(eh SUC g, ’O e samplingFac o ’, o s); % Speci y
he sample a e o he wa e o m in Hz
% RU Assignmen and Alloca ed Subca ie s
showAlloca ion(eh SUC g);
%sa e(’ o mas de onda/w _wi i7_BW20_MCS13.ma ’, ’w _wi i7_BW20_MCS13’)
% SENAL IDEAL
% Spec um Analyze
spec um_ideal = spec umAnalyze (’SampleRa e’, Fs);
spec um_ideal(w _wi i7_BW20_MCS13);
% MÁSCARA ESPECTRAL
spec um_ideal.PeakFinde .Enabled = ue; %Ac i amos los ma cado es en los má
ximos de la señal
da a = ge Measu emen sDa a(spec um_ideal);
peak alues = da a.PeakFinde (end).Value;
Pmax = max(peak alues); %(dBm) A pa i del alo máximo de inimos la másca a
espec al
%De inición másca a espec al según el es ánda y el ancho de banda
mask_ eq = [0; 9.75; 10.5; 20; 30; In ] * 1e6;
mask_ eq = [- lipud(mask_ eq); mask_ eq];
mask_powe = (Pmax+0.1)+[0; 0; -20; -28; -40; -40]; % Lími es de po encia
mask_powe = [ lipud(mask_powe ); mask_powe ];
spec um_ideal.Spec alMask.EnabledMasks = ’Uppe ’;
spec um_ideal.Spec alMask.Uppe Mask = [mask_ eq, mask_powe ];
% ACPR
% spec um_ideal.ChannelMeasu emen s.Type = "acp ";
% spec um_ideal.ChannelMeasu emen s.Enabled = ue;
% spec um_ideal.ChannelMeasu emen s.NumO se s = 2;
% spec um_ideal.ChannelMeasu emen s.ACPRO se s = [20 40]*1e6;
% da a = ge Measu emen sDa a(spec um_ideal);
% acp aluesLowe _ideal = da a.ChannelMeasu emen s.ACPRLowe ;
% acp aluesUppe _ideal = da a.ChannelMeasu emen s.ACPRUppe ;