Está en la página 1de 18

Taller 2 – Señales Y Sistemas II

Juan Sebastian Angarita Mejia, Hilderman Rodrigo Pedraza Avellaneda


{juangaritam, hpedraza} @unal.edu.co
Universidad Nacional de Colombia
Facultad de Ingeniería
noviembre 2022

DEMULADOR
Demodulador FSK para el estándar P25 FSK (Frequency-Shift Keying) es un esquema de modulación
digital en el que a cada símbolo se le asigna un tono de una frecuencia diferente. El estándar P25, fase 1,
se origina en el año 2012 y asigna frecuencias para 4 símbolos para modulación de radio digital. Este fue
un estándar experimental, ya que los primeros productos comerciales que usaban el estándar P25
implementaron la fase 2 del mismo.
La frecuencia para cada símbolo se asigna de la siguiente manera: Para este caso se utilizará una
portadora con frecuencia fc=12,5kHz. Se propone diseñar decodificadores para estas señales basados en
filtros analógicos y digitales en Matlab. Para cada símbolo el sistema deberá filtrar la señal
correspondiente con filtros que detecten cada uno de los 4 posibles tonos. El detector calculará la potencia
de la salida de cada filtro, la mayor potencia corresponderá al símbolo transmitido. La cadena de símbolos
detectados se pasará al decodificador, que entregará una cadena de caracteres como salida.
FRECUENCIA DE MUESTREO: 96KHz
TONOS Y FRECUENCIAS DEL SISTEMA
Los datos suministrados para el funcionamiento del Sistema se muestran en la tabla 1

Tono 1 2 3 4
Frecuencia (KHz) 10,7 11,9 13,1 14,3
BITS Representados 11 10 00 01
Tabla 1. Tonos y Frecuencias del Demulador
Partiendo de los requisitos del sistema, comenzamos calculando las frecuencias angulares que usaremos
mas adelante para el diseño de los filtros.

𝜔 =2∗𝜋∗𝑓

Tono 1 2 3 4
Frecuencia (KHz) 10,7 11,9 13,1 14,3
ω (rad/s) 67230 74770 82310 89850
Tabla 2. Frecuencias angulares
Filtros analógicos:
Para el diseño de los filtros analógicos comenzamos definiendo las frecuencias límite de la banda de paso
y banda de rechazo ( 𝜔1 𝑦 𝜔2 ) , basados en los valores de máxima atenuación en la banda de paso (Rp) y
mínima atenuación en la banda de rechazo (As) dados en el ejercicio.

• Filtro Pasa Bajos


Los parámetros de diseño para el filtro pasa-bajos sugerían valores de Rp = 3 dB con frecuencia
limite en la media geométrica entre el tono 1 y el tono 2 y As = 15 dB con frecuencia de limite en
el tono 4

𝜔3𝑑𝑏 = √67230 ∗ 74770 = 70900

𝜔15𝑑𝑏 = 89850

Con las frecuencias limite encontradas, procedemos a calcular el orden y la frecuencia de corte
del filtro, para esto hacemos uso de la función buttord de Matlab, a la cual le introducimos los
parámetros obtenidos previamente (𝜔3𝑑𝑏 , 𝜔15𝑑𝑏 , 𝑅𝑝, 𝐴𝑠 ), esta nos entrega N y 𝜔𝑐 , los cuales
introducimos a su vez en la función butter para obtener la función de transferencia del filtro.

𝑁=8

𝜔𝑐 = 72550

Función de transferencia:
Figura1. Diagrama de Bode Filtro Análogo Pasa-bajos

• Filtro Pasa Banda 1

Los parámetros de diseño para el filtro pasa-banda 1 sugerían valores de Rp = 3 dB con


frecuencias limite en la media geométrica entre el tono 2 y el tono 1 y la media geométrica entre
el tono 2 y el tono 3, As = 15 dB con frecuencia de limite en el tono 1 y 3.

El proceso de creación del filtro fue similar al mencionado anteriormente, obteniendo los
siguientes resultados:

𝜔3𝑑𝑏 𝐴 = √67230 ∗ 74770 = 70900

𝜔3𝑑𝑏 𝐵 = √74770 ∗ 82310 = 78449

𝜔15𝑑𝑏 𝐴 = 67230

𝜔15𝑑𝑏 𝐵 = 82310

Al introducir estos parámetros en las funciones de MatLab, obtenemos el orden y frecuencias de


corte del filtro.
𝑁=3

𝜔𝑐 𝐴 = 70530

𝜔𝑐 𝐵 = 78861

Función de transferencia:

Figura2. Diagrama de Bode Filtro Análogo Pasa-banda1

• Filtro Pasa Banda 2

Los parámetros de diseño para el filtro pasa-banda 2 sugerían valores de Rp = 3 dB con


frecuencias limite en la media geométrica entre el tono 3 y el tono 2 y la media geométrica entre
el tono 3 y el tono 4, As = 15 dB con frecuencia de limite en el tono 2 y 4.

𝜔3𝑑𝑏 𝐴 = √74770 ∗ 82310 = 78449

𝜔3𝑑𝑏 𝐵 = √82310 ∗ 89850 = 85997


𝜔15𝑑𝑏 𝐴 = 74770

𝜔15𝑑𝑏 𝐵 = 89850

Al introducir estos parámetros en las funciones de MatLab, obtenemos el orden y frecuencias de


corte del filtro.

𝑁=3

𝜔𝑐 𝐴 = 78069

𝜔𝑐 𝐵 = 86416

Función de transferencia:

Figura3. Diagrama de Bode Filtro Análogo Pasa-banda 2

• Filtro Pasa Altas

Los parámetros de diseño para el filtro pasa-altas sugerían valores de Rp = 3 dB con frecuencia
limite en la media geométrica entre el tono 3 y el tono 4 y As = 15 dB con frecuencia de limite en
el tono 1
𝜔3𝑑𝑏 = √82310 ∗ 89850 = 85997

𝜔15𝑑𝑏 = 67230

Al introducir estos parámetros en las funciones de MatLab, obtenemos el orden y frecuencias de


corte del filtro.

𝑁=7

𝜔𝑐 = 85844

Función de transferencia:

Figura 4. Diagrama de Bode Filtro Análogo Pasa-Altas


Filtros Digitales IIR:
EL diseño de los filtros IIR se hizo usando los filtros analógicos construidos anteriormente, para ello se
emplearon dos métodos diferentes, La invarianza al impulso y La transformación bilineal.

• IIR por Invarianza al impulso

Haciendo uso de este método modificamos los filtros analógicos Pasa bajos y Pasa bandas para
construir los filtros digitales, esto se hace mediante la función impinvar, a la cual se le entran
como parámetros, el numerador y denominador de las funciones de transferencia obtenidas para
los filtros análogos, así como la frecuencia de muestreo de la señal de entrada, es necesario
recalca que aunque la invarianza al impulso necesite las frecuencias normalizadas por ser un filtro
digital, a través de este método no es necesario realizar esta transformación pues partimos de los
filtros análogos calculados previamente.
Figura 5. Diagrama de Bode Filtros IIR (invarianza al impulso)

• IIR por Transformación Bilineal

A diferencia de la invarianza al impulso, la transformación bilineal nos permite modificar todo


tipo de filtros, incluyendo el pasa altas, el proceso de generación de los filtros por medio de este
método es similar, el comando bilinear de Matlab utiliza la función de transferencia del filtro
análogo para la construcción del filtro digital, este comando también recibe una frecuencia dada
por:
ωA
𝑓𝑇𝐵 = ω
2 tan ( 2D )
𝑓𝐴
ωD = 𝜋
𝐹𝑠/2
Figura 6. Diagrama de Bode Filtros IIR (Transformación Bilinear)

• Método escogido
Dada la aplicación que estamos realizando, podemos decir que se hace imprescindible el actuar
del filtro pasa altas para la decodificación del mensaje motivo por el cual consideramos que la
transformación Bilineal es el único método efectivo para el demulador, además el
comportamiento de los filtros pasa bajos y pasa bandas es bastante similar para los dos métodos
por lo que no estriamos sacrificando información con la transformación lineal.
Figura 7. Diagrama de Bode Filtros IIR (Transformación Bilinear)
FILTROS FIR
En este caso es necesario escoger una ventana que nos permita lograr la atenuación necesaria en la banda
de rechazo por lo que no es conveniente usar el tipo de ventana rectangular, en el diseño a continuación se
hace uso de la ventana haming.
En primer lugar, necesitamos conocer el orden de los filtros, por lo que se usa la aproximación de Harris:

𝑓𝑠 𝐴 𝑇 (𝑑𝐵)
𝑁= (1)
∆𝑓 22

Para calcular ∆𝑓 se deben tener en cuentas las características mencionadas de los filtros
Características de los filtros:
Las frecuencias de corte (3dB para analógicos e IIR, 6dB para FIR) serán las medias geométricas de las
frecuencias del tono actual (el que estamos filtrando) y el tono anterior o siguiente, según el caso.
• Para los pasabanda, 15dB de atenuación en las frecuencias de los tonos anterior y siguiente.
• Para el pasabajos, 15dB de atenuación en la frecuencia del último símbolo
• Para el pasaaltos, 15dB de atenuación en la frecuencia del primer símbolo.
Para el pasabajos como tenemos 6dB de atenuación hasta las frecuencias de corte, desde la frecuencia de
corte hasta la frecuencia del último símbolo tendremos un total de 9dB.
𝐴 𝑇 (𝑑𝐵) = 9𝑑𝐵
∆𝑓 = 𝑓 𝑢𝑙𝑡𝑖𝑚𝑜 𝑠𝑖𝑚𝑏𝑜𝑙𝑜 − 𝑓 𝑐𝑜𝑟𝑡𝑒 = 14300 − 11284 = 3016𝐻𝑧
𝑓𝑠 𝐴 𝑇 (𝑑𝐵) 96000𝐻𝑧 9𝑑𝐵
𝑁= = = 13.02 ≈ 14(𝑁 𝑝𝑜𝑟 𝑒𝑛𝑐𝑖𝑚𝑎 𝑑𝑒 𝑙𝑎 𝑎𝑝𝑟𝑜𝑥𝑖𝑚𝑎𝑐𝑖𝑜𝑛)
∆𝑓 22 3016𝐻𝑧 22
Para los pasabandas como tenemos 6dB de atenuación hasta las frecuencias de corte, desde la frecuencia
de corte hasta la frecuencia del tono siguiente o anterior tendremos una atenuación de 9dB.
Primer filtro (11900Hz):
𝐴 𝑇 (𝑑𝐵) = 9𝑑𝐵
∆𝑓1 = 11284𝐻𝑧 − 10700𝐻𝑧 = 584𝐻𝑧
𝑓𝑠 𝐴 𝑇 (𝑑𝐵) 96000𝐻𝑧 9𝑑𝐵
𝑁1 = = ≈ 68
∆𝑓 22 584𝐻𝑧 22
∆𝑓2 = 13100𝐻𝑧 − 12485𝐻𝑧 = 615𝐻𝑧
𝑓𝑠 𝐴 𝑇 (𝑑𝐵) 96000𝐻𝑧 9𝑑𝐵
𝑁2 = = ≈ 64
∆𝑓 22 615𝐻𝑧 22
Segundo filtro (13100Hz):
∆𝑓3 = 12485 − 11900 = 585𝐻𝑧
𝑓𝑠 𝐴 𝑇 (𝑑𝐵) 96000𝐻𝑧 9𝑑𝐵
𝑁3 = = ≈ 68
∆𝑓 22 585𝐻𝑧 22
∆𝑓4 = 14300 − 13686 = 614𝐻𝑧
𝑓𝑠 𝐴 𝑇 (𝑑𝐵) 96000𝐻𝑧 9𝑑𝐵
𝑁4 = = ≈ 64
∆𝑓 22 614𝐻𝑧 22
Para el pasaaltos como tenemos 6dB de atenuación hasta las frecuencias de corte, desde la frecuencia de
corte hasta la frecuencia del primer símbolo tendremos un total de 9dB.
𝐴 𝑇 (𝑑𝐵) = 9𝑑𝐵
∆𝑓 = 𝑓 𝑐𝑜𝑟𝑡𝑒 − 𝑓 𝑝𝑟𝑖𝑚𝑒𝑟 𝑠𝑖𝑚𝑏𝑜𝑙𝑜 = 13686 − 10700 = 2986𝐻𝑧
𝑓𝑠 𝐴 𝑇 (𝑑𝐵) 96000𝐻𝑧 9𝑑𝐵
𝑁= = = 13.14 ≈ 14(𝑁 𝑝𝑜𝑟 𝑒𝑛𝑐𝑖𝑚𝑎 𝑑𝑒 𝑙𝑎 𝑎𝑝𝑟𝑜𝑥𝑖𝑚𝑎𝑐𝑖𝑜𝑛)
∆𝑓 22 2986𝐻𝑧 22
Para el pasabandas se usara un orden de N=68 (valor mayor calculado) y para el pasabajos y pasaaltos se
usara N=14(valor mayor calculado)
En cuanto a las frecuencias de corte de los filtros tenemos que:
FILTRO PASABANDAS 1 Frecuencia de corte 1 Frecuencia de corte 2
Frecuencia en Hz 11284Hz 12485Hz
Frecuencia normalizada 0.2351 0.2601

FILTRO PASABANDAS 1 Frecuencia de corte 1 Frecuencia de corte 2


Frecuencia en Hz 12485Hz 13686
Frecuencia normalizada 0.2601 0.2851
FILTRO PASABAJOS Frecuencia de corte 1
Frecuencia en Hz 11284Hz
Frecuencia normalizada 0.2351

FILTRO PASAALTOS Frecuencia de corte 1


Frecuencia en Hz 13686
Frecuencia normalizada 0.2851

Finalmente se usa la función de Matlab fir1(N,Wn,’tipo’) para obtener el diseño de los filtros deseados
especificando el orden, la o las frecuencias de corte y el tipo de filtro.
Respuestas en frecuencia de cada filtro diseñado:

Filtro Pasabajos:

Filtro Pasabandas (13100Hz):

Filtro Pasabandas (11900Hz):


Filtro Pasaaltos:

4. Monte tres versiones del sistema, una analógica, una usando los filtros IIR y otra usando los filtros FIR.
En la página del curso encontrará señales de prueba para probar sus sistemas.
USANDO LA SEÑAL DE PRUEBA 1:
Espectro de magnitud de la señal de entrada:

Salida filtro análogo


Salida filtro IRR
Salida filtro FIR
Finalmente comparamos la potencia de la salida filtrada
Decodificador
Para el decodificador recorremos las salidas de los filtros mediante un ciclo for y en cada iteración
calculamos la potencia de salida de cada filtro para el rango de duración de un símbolo, mediante otro
ciclo se realiza la comparación de estas potencias y se selecciona la mayor, dependiendo de la posición de
este valor se le asignan los bits correspondientes, finalmente se transforma el vector generado en una
matriz donde se almacenan los 8 bits de cada carácter y se realiza la conversión a decimal y a ASCII.
Finalmente, después de la etapa del decodificador obtendremos el siguiente mensaje:

También podría gustarte