2.10 El filtrado de señales

Un filtro de señales es un sistema físico que modifica la potencia relativa de las distintas componentes de frecuencia de dichas señales [10]. En concreto, un filtro paso bajo es aquel que deja pasar las bajas frecuencias y elimina las altas, a partir de una determinada frecuencia fc. En la Figura 2.2 podemos ver la función de transferencia de un filtro paso bajo . A la frecuencia fc se le conoce como frecuencia de corte del filtro.


PIC

Figure 2.2: Función de transferencia de un filtro paso bajo.


El programa http://www.ace.ual.es/˜vruiz/docencia/redes/practicas/low_pass_filter.c (Apéndice H.6) permite filtrar una señal, dejando pasar la banda de frecuencias más bajas y eliminando el resto.

Taller 2.5:
Como ejemplo, vamos a eliminar la mitad de las altas frecuencias de la señal “01” cuando la transmitimos a una tasa de bit (bit-rate) de 1 bit/segundo. Utilizaremos una precisión de 128 muestras/bit en nuestro experimento. Para simplificar todo lo posible el proceso ha sido diseñado el script http://www.ace.ual.es/˜vruiz/docencia/redes/practicas/filtrado_01.sh cuyo contenido se muestra a continuación:
#!/bin/sh  
 
#  
# Filtrado de la señal 01  
#  
 
#  
# Creamos la señal  
#  
rm -f 01_signal.txt # Borramos el fichero  
echo "-1.0" >> 01_signal.txt # El valor -1 representa el bit 0  
echo "1.0" >> 01_signal.txt # El valor  1 representa el bit 1  
ascii2float < 01_signal.txt | sampler 128 > 01_signal.float  
 
#  
# Visualizamos su espectro  
#  
spectrum_analyzer 01_signal.float > 01_spectrum.txt  
draw_signal.sh 01_spectrum.txt "Espectro de la señal 01"  
 
#  
# filtramos la señal  
#  
low_pass_filter 0.5 01_signal.float > 01_filtered.float  
 
#  
# Visualizamos la señal filtrada  
#  
float2ascii < 01_filtered.float > 01_filtered.txt  
draw_signal.sh 01_filtered.txt "Señal 01 filtrada"  
 
#  
# Visualizamos el espectro de la señal filtrada  
#  
spectrum_analyzer 01_filtered.float > 01_filtered_spectrum.txt  
draw_signal.sh 01_filtered_spectrum.txt "Espectro de la señal 01 filtrada"  


PIC
Figure 2.3: La señal “01” transmitida a razón de 1 bit/segundo cuando se han eliminado la mitad de las altas frecuencias.


Ejecute el script filtrado_01.sh escribiendo:

filtrado_01.sh

Si todo ha ido bien debería aparecerle una ventana con una curva semejante a la que se muestra en la Figura 2.3.

Cuestión 2.4:
¿Por qué el número de coeficientes de Fourier (número de componentes de frecuencia) es la mitad que el número de muestras introducidas?
Cuestión 2.5:
¿Qué controla el parámetro 128 que toma el programa sampler en el script que visualiza el espectro de la señal “01” desde el punto de vista del espectro de la señal? Es decir, ¿en qué varía el espectro de la señal cuando variamos dicho parámetro?
Cuestión 2.6:
Repita el último experimento cuando se transmiten dos bits/segundo y eliminando todas las componentes de frecuencia por encima de 8 Hz (modifique el script filtrado_01.sh). ¿La señal recibida tiene ahora una mayor “calidad” (se parece más a la original)? ¿Por qué o por qué no? Explique las modificaciones que ha realizado en el script para llevar a cabo este experimento.