Sie sind auf Seite 1von 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:

1 1
cos cos cos cos
2 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

Das könnte Ihnen auch gefallen