Está en la página 1de 38

Diseño de filtros digitales en

microcontroladores dsPIC

1
Mag. Ántero C.
Sumario:

• Introducción
• Tipos de filtros
• Diseño e implementación de un filtro pasa bajos
• Programa ejemplo

Mag. Ántero C.
¿Qué es un filtro?

Cualquier medio que atraviesa la señal puede ser


considerado un filtro.
No pensamos en algo como filtro si la señal no es
modificada.

Mag. Ántero C.
Introducción

¿Qué es un filtro digital?

Un filtro digital, es un filtro que opera sobre señales


digitales. Es una operación matemática que toma una
secuencia de números (la señal de entrada) y la modifica
produciendo otra secuencia de números (la señal de
salida) con el objetivo de resaltar o atenuar ciertas
características. Puede existir como una fórmula en un
papel, un loop en un programa de computadora, como un
circuito integrado en un chip.

Mag. Ántero C.
¿Qué podríamos hacer con
los filtros?

Mag. Ántero C.
Aplicaciones de los filtros

Mag. Ántero C.
Introducción

Aplicaciones
Síntesis de sonido: creación o modificación de señales
para moldear espectros o formas de onda y lograr el
efecto auditivo buscado.

Efectos de audio: chorus, flanger, phaser, reverb

Mag. Ántero C.
Introducción

Aplicaciones
Separación de señales que fueron combinadas
desafortunadamente (ruido, interferencias provenientes de
otros sistemas)

Mag. Ántero C.
Logro de la sesión:

“Al finalizar la sesión de clases , los estudiantes


implementaran filtros digitales básicos usando los
microcontroladores dsPIC”

Mag. Ántero C.
Tipos de filtros

Mag. Ántero C.
Ejemplo

Ejemplo 1.

FFT

Filtro

LPF HPF

Mag. Ántero C.
Ejemplo

LPF

FC

Mag. Ántero C.
Ejemplo

HPF

FC

Mag. Ántero C.
Introducción

Procesamiento digital
de señales

DFT

Transformada discreta de
fourier

Análisis y tratamiento de señal de audio

Mag. Ántero C.
Introducción

Procesamiento digital
de señales

Transformada Z

Transformada discreta de
laplace

Análisis y tratamiento de señal de audio

Mag. Ántero C.
¿Qué aplicación implementaremos?

LPF

Mag. Ántero C.
Filtro pasa bajo

Diagrama de bloques del sistema

RF[6:0]
Generador de
Señal ADC LPF DAC
RB0

Mag. Ántero C.
Filtro pasa bajo

Generador de Señal
Generador de
Señal
RB0

Datos de la
Señal a generar

PSV

Análogo
RB0

Mag. Ántero C.
Filtro pasa bajo

Generador de Señal

Generador de
Señal
RB0

Microcontrolador dsPIC

RB0

Mag. Ántero C.
Filtro pasa bajo

Microcontrolador

ADC
RB0

ADC
• Resolución 12 bits
• Disparo de conversión(Timer 3)
• Tiempo de muestreo -> Ts= 1ms
• Vref+ = 5V Vref- = 0V

Mag. Ántero C.
Filtro pasa bajo

Filtro pasa bajo.

𝑽𝒊𝒏 𝑽𝒐𝒖𝒕
LPF

Mag. Ántero C.
Filtro pasa bajo

Filtro pasa bajo

𝑽𝒊𝒏 𝑽𝒐𝒖𝒕
LPF

Mag. Ántero C.
Filtro pasa bajo

Filtro pasa bajo

𝑽𝒊𝒏 𝑽𝒐𝒖𝒕
LPF

Mag. Ántero C.
Filtro pasa bajo

Filtro pasa bajo

Filtro pasa bajo en el dominio


de Laplace

𝑽𝒊𝒏 𝑽𝒐𝒖𝒕
𝐻(𝑠)

1 1
𝑽𝒐𝒖𝒕 𝟏 𝜔𝑐 = =
𝑯 𝒔 = = 𝑟 𝑅𝐶
𝑽𝒊𝒏 𝑟𝒔 + 𝟏
𝜔𝑐 = 2𝜋𝑓𝑐

Mag. Ántero C.
Filtro pasa bajo

Mag. Ántero C.
Filtro pasa bajo

Diseñar un filtro pasabajo con una frecuencia de corte


(𝒇𝒄) de 20Hz.
𝟏
𝑯 𝒔 = 1 1
𝑟𝒔 + 𝟏 𝜔𝑐 = = 𝜔𝑐 = 2𝜋𝑓𝑐
𝑟 𝑅𝐶
𝟏
𝑯 𝒔 =
𝟏
𝒔+𝟏
𝟐𝝅𝒇𝒄

Para 𝒇𝒄=20Hz
𝟏 𝟏
𝑯 𝒔 = 𝑯 𝒔 =
𝟏 𝟎. 𝟎𝟎𝟕𝟗𝟓𝟖𝒔 + 𝟏
𝒔+𝟏
𝟐𝝅 ∗ 𝟐𝟎
Tiempo Continuo
Mag. Ántero C.
Filtro pasa bajo

Mag. Ántero C.
Filtro pasa bajo

Mag. Ántero C.
Filtro pasa bajo

Diseñar un filtro pasabajo con una frecuencia de corte


(𝒇𝒄) de 20Hz y un tiempo de muestreo de 1ms.

𝟏 𝟎. 𝟎𝟓𝟗𝟏𝟐 𝒛 + 𝟎. 𝟎𝟓𝟗𝟏𝟐
𝑯 𝒔 = 𝑯𝒛 =
𝟎. 𝟎𝟎𝟕𝟗𝟓𝟖𝒔 + 𝟏 Función c2d 𝒛 − 𝟎. 𝟖𝟖𝟏𝟖

Tiempo Continuo Tiempo Discreto

Método de discretización usado es el


Tustin
Mag. Ántero C.
Filtro pasa bajo

Diseñar un filtro pasabajo con una frecuencia de corte


(𝒇𝒄) de 20Hz y un tiempo de muestreo de 1ms.

𝟏 𝟎. 𝟎𝟓𝟗𝟏𝟐 𝒛 + 𝟎. 𝟎𝟓𝟗𝟏𝟐
𝑯 𝒔 = Función c2d 𝑯𝒛 =
𝟎. 𝟎𝟎𝟕𝟗𝟓𝟖𝒔 + 𝟏 𝒛 − 𝟎. 𝟖𝟖𝟏𝟖

Tiempo Continuo Tiempo Discreto

% Design Low Pass Filter


Fc=20;
b=tf(1,[1/(Fc*2*pi) 1])
c2d(b,.001,‘tustin')

Mag. Ántero C.
Filtro pasa bajo

Diseñar un filtro pasabajo con una frecuencia de corte


(𝒇𝒄) de 20Hz y un tiempo de muestreo de 1ms.
𝟎. 𝟎𝟓𝟗𝟏𝟐 𝒛 + 𝟎. 𝟎𝟓𝟗𝟏𝟐
𝑯𝒛 =
𝒛 − 𝟎. 𝟖𝟖𝟏𝟖
Tiempo Discreto

Y ahora
¿Cómo lo implementamos?

Mag. Ántero C.
Filtro pasa bajo

Diseñar un filtro pasabajo con una frecuencia de corte


(𝒇𝒄) de 20Hz y un tiempo de muestreo de 500us.
𝟎. 𝟎𝟑𝟎𝟒𝟔 𝒛 + 𝟎. 𝟎𝟑𝟎𝟒𝟔
𝑯 𝒛 = Tiempo Discreto
𝒛 − 𝟎. 𝟗𝟑𝟗𝟏

Introduction to Digital Signal Processing (DSP)


James.R.Beaty@nasa.gov

Mag. Ántero C.
Filtro pasa bajo

Diseñar un filtro pasabajo con una frecuencia de corte


(𝒇𝒄) de 20Hz y un tiempo de muestreo de 1ms.
𝟎. 𝟎𝟓𝟗𝟏𝟐 𝒛 + 𝟎. 𝟎𝟓𝟗𝟏𝟐
𝑯 𝒛 = Tiempo Discreto
𝒛 − 𝟎. 𝟖𝟖𝟏𝟖

𝟎. 𝟎𝟓𝟗𝟏𝟐 𝒛 + 𝟎. 𝟎𝟓𝟗𝟏𝟐 𝒀(𝒏) 𝟎. 𝟎𝟓𝟗𝟏𝟐 + 𝟎. 𝟎𝟓𝟗𝟏𝟐 𝒛−𝟏


𝑯𝒛 = 𝒛 𝑯𝒛 = =
𝒛 − 𝟎. 𝟖𝟖𝟏𝟖 𝑿(𝒏) 𝟏 − 𝟎. 𝟖𝟖𝟏𝟖𝒛−𝟏
𝒛

(𝟏 − 𝟎. 𝟖𝟖𝟏𝟖𝒛−𝟏 )𝒀 𝒏 = 𝟎. 𝟎𝟓𝟗𝟏𝟐 + 𝟎. 𝟎𝟓𝟗𝟏𝟐 𝒛−𝟏 ) 𝑿(𝒏)


𝒀 𝒏 = (𝟎. 𝟎𝟓𝟗𝟏𝟐 + 𝟎. 𝟎𝟓𝟗𝟏𝟐 𝒛−𝟏 ) 𝑿 𝒏 + 𝟎. 𝟖𝟖𝟏𝟖 ∗ 𝒛−𝟏 𝒀 𝒏

𝐏𝐞𝐫𝐨 ∶ 𝐗 𝐧 − 𝟏 = 𝒛−𝟏 𝑿 𝒏 𝒀 𝒏 − 𝟏 = (𝒛−𝟏)𝒀 𝒏

𝒀 𝒏 = 𝟎. 𝟎𝟓𝟗𝟏𝟐 ∗ 𝑿 𝒏 + 𝟎. 𝟎𝟓𝟗𝟏𝟐 ∗ 𝑿 𝒏 − 𝟏 + 𝟎. 𝟖𝟖𝟏𝟖 ∗ 𝒀 𝒏 − 𝟏

Mag. Ántero C.
Filtro pasa bajo

Conversor Digital Análogo


RF[6:0]

LPF DAC
Digital

Análogo
Mag. Ántero C.
RF[6:0]
Generador de
Señal ADC LPF DAC

5 120

4.5
100
4

3.5
80
3

2.5 60

2
40
1.5

1
20
0.5

0 0
0 100 200 300 400 500 600 700 800 900 1000 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

Mag. Ántero C.
Señal filtrada usando un filtro pasa bajo de una
frecuencia de corte de 20HZ

Mag. Ántero C.
Mag. Ántero C.
Muchas Gracias
Mag. Ántero Castro Nieto

Mag. Ántero C. 38

También podría gustarte