Está en la página 1de 8

DEMODULACINFM

1. INTRODUCCION
Sirecordamoslovistoenclase,FMsedefinecomounamodulacinangular,concretamente
unamodulacinenfrecuencia;estoes,mediantevariacionesenlafrecuenciadelaportadora
sepuedecodificarlasealanalgicaparatransmitirlainformacin.
LamodulacinFMescomnenaltasfrecuenciasporlaaltafidelidaddesudifusin,porloque
laradiooelpropiosonidodelatelevisinesdifundidaporFM.Presentamejorrelacinseala
ruido(SNR)quelaAMymayorresistenciaalasinterferencias,tanpresentesenAM.
DentrodelasaplicacionesdeFMseencuentralaradio,endondelosreceptoresempleanun
detectordeFMyelsintonizadorescapazderecibirlamsfuertedelassealesque
transmitenenunafrecuencia.Veamoscmopodemoscrearnuestropropioreceptorderadio
FM.
2. DEMODULACIONCONGNURADIOYHACKRF
LasmodulacionesFMpuedenmodelarsedelmismomodoquelasdePM,peroconun
integradoralaentradadelasealmoduladora;oconunVCOrealimentado(PLL),loque
minimizaelerrorperovuelveelcircuitomscaro.Noobstante,nosinteresasabercmo
demodular,puesdeladifusinderadionosllegayalasealmoduladaenFM.
ParademodularunasealFMtenemosdosopciones:

Discriminadorreactivo:conseguimosquelasealdesalidaaparezcamoduladaen
amplitud(AM)yaplicamosundetectordeenvolvente.
DetectordefaseconPLL.

PrimeramentedebemosconocerelespectrodelaradioFM,comprendidoentrelos85MHzy
los107MHzaproximadamente.CadaunodeloscanalesderadioFMsuelentenerunanchode
bandaalrededordelos200KHzparaevitarinterferenciasentreellas(cadaemisoranosuele
ocuparmsanchodebandaque80KHz).
AcontinuacinpresentaremoscmoimplementarnuestrademodulacinFMenGNURadio.
Cabedestacarquetodoslosparmetrosqueaparecenenlasfigurassonorientativos,sedeben
calcularademsdetodoslosresultadosquequeramosobteneryjustificarlos.
Elprimerpaso,comohicimosenlaprcticaanterior,sercrearnuestrobloqueOsmocom
SourceparapodercaptarlasealrecibidaporHackRF.:

HackRF & GNU Radio FM

Pgina 1


Apartedenuestravariablesamp_rate(yaconocida),creadapara
darunvalordefinidoalspanvisualizadoenlaFFT,ahoracreamos
otrastresvariablesparalasfrecuenciasquenospermitirn
movernosconfacilidadporlabandaFM(85107MHz).

Deestemodo,OsmocomSourcequedaconfiguradodemanerasimilara:

Realmentepodramoshaberdadocualquiervalorentre85y107MHzalavariablecenter_freq,
simplementehemosescogidoestevalorporestarenelcentrodelabandaFM.Sinembargo,
esinteresanteintroducirotrosvaloresyobservarqusucede.
Lasotrasdosvariableslasutilizaremosmsadelante.

HackRF & GNU Radio FM

Pgina 2

Paraestudiarloquocurredeformavisual,debemosobservarelespectrodelaseal.Para
ello,hacemosusodelbloqueWXGUIFFTSINKylounimosconnuestrafuenteparaverqu
estamoscaptandoycambiarlosparmetrossihicierafalta.

VemosquelaspropiedadesdelWXGUIFFTSINKdebenestaracordesconelOsmocomSource.
Sirepresentamoslasealveremos:

Podemosobservarconclaridadunaseriededeltas(portadoras)centradasenunasfrecuencias
determinadas.Cadaunadeestasdeltascorrespondealasemisorasderadioqueconocemos.
Nuestroobjetivoesdemodularlasyconseguirescucharlas.

HackRF & GNU Radio FM

Pgina 3

Podemoscambiarelspandelplot(lavariablesamp_rate)amsde5MHz,peroestopuede
ocasionarproblemasdeoverflow(O).Debenotarsequeesteparmetrohayqueajustarloen
funcindelprocesadordelordenador.Silasamp_rateesmuyelevadaparalacapacidadde
procesamientodenuestraCPU,lasealsemostrarmuylentamente.
ParapodermovernosatravsdelabandaFM,haremosusodetrigonometrabsica.Una
maneratildedesplazarunasealenfrecuenciaesmultiplicarlaporuncoseno:

cos

cos

1
cos
2

1
cos
2

Recordandolovistoenclase,esnecesariofiltrarlasealpasobajayquedarnosconlaparte
quenosinteresa.EnGNURadiohaybloquesdefiltrospredefinidos,asquesertareasencilla
encontrarunLPF.
UnaemisoraenFMnoocupaunanchodebandamsalldeunos80KHz,aunquela
separacinentrecadacanalesde200KHz.Portanto,hayqueprestaratencinalafrecuencia
decortedelfiltro.
Comoexplicamosenlaanteriorprctica,HackRFrecogelasealylamodulaenbandabase.
Esto,sumadoaquelaseparacinentrelasemisorasenFMesde200KHz,hacequetengamos
unespectrode100KHzenfrecuenciaspositivasyotros100KHzenfrecuenciasnegativas.Por
ello,unafrecuenciadecortedeentreunos75100KHzbastarparafiltrarcadaunadelas
emisoras,porlogeneral.Debetenerseencuentaquenoestamostrabajandoconfiltros
ideales,sinoquetienenunatransicindecada.Adems,siponemosunfiltrodemasiado
grande,secrearninterferenciasconotrasemisoras,puessecaptartambinsuespectro.
HackRF & GNU Radio FM

Pgina 4

Losparmetrosyeltipodeenventanadopuedemodificarsesegncreamosconveniente.
Recordamosqueestilhacerusodelasvariablescreadasalprincipioparadefinirlos
parmetrosdecadabloque.Deestemodo,sinosequivocamosoqueremosmodificaruna
determinadafrecuencia,bastarconcambiarelvalordelavariableynotenerqueirbloque
porbloqueajustndolo.
Hastaahora,hemosutilizadoconceptosbsicosvistosenclaseparacentrarnuestrasealen
lasfrecuenciasdeseadas.Losbloquesquevienenacontinuacin,propiosdeGNURadio,nos
servirnparademodularnuestraseal:

RationalResampler:adaptaalatasademuestreotericadelasealmedianteel
factork=interp./decimation.Estosvaloresdependerndeloquenecesitemos.Esto
esnecesario,enestecaso,porqueelmuestreodelOsmocomSourcenoesel
mismoqueeldelWBFMReceiveniqueeldelAudioSink.

HackRF & GNU Radio FM

Pgina 5

WBFMReceive(WideBandFM):EsunreceptordigitaldeFMdefinidoenel
softwareGNURadio.Debenotarseeldiezmadoqueaplicamosalasealde
entradaparaadecuarloalAudioSink.Porotrolado,existeotrowidgetllamado
NBFMReceive(NarrowBandFM),quesediferenciaprincipalmenteenelfiltro
internoquellevanasociado.Esinteresantehacerlotambinconestaopcinyver
qusucede.

MultiplyConst:Lassealeslleganatenuadasporvariosprocesosdurantesu
transmisin.Esnecesarioaplicarlesunaganancia.Paraello,enelsiguientepaso,
noscrearemosotravariablellamadaaudio_gainquepermitirsubirybajarel
volumendenuestraradioparticular.

AudioSink:GraciasaestebloquedeGNURadio,podremosescucharsihemos
sintonizadocorrectamentelasemisorasdeFM.Muchastarjetasdesonido
requierenunsampleode44.1KHZcomomnimo,porloqueponindoloa48KHz
evitaremosproblemas.

Comocomentbamos,unamanerafcildecrearunpotencimetroconelquesubirybajarel
volumenesconelbloqueWXGUIsliderdeGNU.EnnuestrocasoponemoscomoID
audio_gainparaquecorrespondaconelparmetrodelbloquemultiplyconstant.
Seguramente,tengamosquesubirybajarelvolumendependiendodecadaestacin,yaque
cadaemisoraestaunadistanciadiferentedenuestroreceptorylleganmsomenos
atenuadas.

HackRF & GNU Radio FM

Pgina 6

Delmismomodo,paracompletarnuestraradiofinalmente,necesitamosotropotencimetro
quenospermitasintonizarlasdistintasemisoras,asquecrearemosotroslider,peroestavez
parabarrertodaslasfrecuencias:

CrearesteslideresunaformamuchomssencillademovernosporlabandaFM,porloqueno
esnecesariomantenerlavariablecannel_freqdelprincipio(podemosdesactivarelbloque).Si
ponemoscomoIDalslidercannel_freq,elegiremoslafrecuenciadenuestrocoseno.

HackRF & GNU Radio FM

Pgina 7

CUESTIONES
Pruebaasintonizarturadiodeambasmanerasyestudiaquresultadosobtienes
modificandolosdistintosparmetrosdecadabloqueycomntalos.
Segnlovistoenclase,qucomponentesdeberacontenerWBFMReceivepara
poderdemodularlaseal?
DebemoscolocarotraWXGUIFFTSINKtrasdemodularnuestraseal?Porqu?

HackRF & GNU Radio FM

Pgina 8

También podría gustarte