Você está na página 1de 88

UNIVERSIDADE PRESBITERIANA MACKENZIE

ESCOLA DE ENGENHARIA
ENGENHARIA ELTRICA










GUSTAVO DE MELO VALEIRA










MODELAGEM E SIMULAO DE INSTRUMENTOS MUSICAIS
UTILIZANDO FILTROS DIGITAIS















So Paulo
2007
1
GUSTAVO DE MELO VALEIRA








MODELAGEM E SIMULAO DE INSTRUMENTOS MUSICAIS UTILIZANDO
FILTROS DIGITAIS









Trabalho de Graduao Interdisciplinar
apresentado ao curso de Engenharia Eltrica, da
Escola de Engenharia da Universidade
Presbiteriana Mackenzie, como requisito parcial
obteno do grau de Bacharel em Engenharia.









ORIENTADOR: PROFESSOR DOUTOR MARCIO EISENCRAFT













So Paulo
2007
2
AGRADECIMENTOS


Ao meu orientador Marcio Eisencraft pela pacincia, ajuda, incentivo e comprometimento nas
orientaes, que me guiaram na realizao deste trabalho e no artigo publicado no SBrT 2007.

Aos meus pais, Eurico e Ftima, e meu irmo Rafael, pessoas importantssimas na minha
vida, pela ajuda, compreenso e apoio neste trabalho e no estudo.

Aos meus amigos e professores pelo apoio e incentivo durante e fora das aulas.




































3







































As coisas que se harmonizam em tom, vibram
em conjunto.

Autor desconhecido







4
RESUMO

Com o avano da tecnologia, maiores facilidades so encontradas para a gerao de sons
semelhantes aos criados pelos instrumentos musicais. Uma das formas de se criar notas
musicais utilizando filtros digitais usados, por exemplo, em teclados. Neste trabalho
projetado um filtro digital que captura as caractersticas mais importantes do corpo de um
instrumento musical. Para tornar o trabalho mais acessvel feita uma reviso bibliogrfica
sobre processamento de sinais e filtros. A qualidade de uma nota musical gerada pelo filtro
determinada comparando-se o seu espectro em freqncia com o da nota produzida pelo
instrumento musical.

Palavras-chave: Filtro digital. Processamento digital de sinais. Modelagem de instrumentos
musicais.





































5
ABSTRACT

With the advance of technology, it has become easier to generate sounds similar to the created
by musical instruments. One of the forms to create musical notes is using digital filters used,
for instance, in keyboards. In this work a digital filter is projected to capture the most
important characteristics of a musical instruments body. To make the work self-contained it
contains a bibliographical revision on signal processing and filters. The quality of a musical
note generated by filters is determined comparing its frequency spectrum with the one of the
note produced by musical instruments.

Keywords: Digital filters. Digital signal processing. Musical instruments models.







































6
LISTA DE ILUSTRAES


Grfico 1 - Sinal de tempo contnuo correspondente a nota Si gravada atravs de um
microfone. ............................................................................................................ 13
Grfico 2 - Sinal de tempo discreto [ ] ( )
0.1
sin 5
n
y n e n

= .................................................... 14
Grfico 3 - Exemplos de sinais de tempo discreto: a) sinal impulso, b) sinal degrau, c) e d)
sinais exponenciais. ............................................................................................. 15
Grfico 4 - Sinal senoidal [ ] ( ) cos 2 12 x n n = . Neste caso, 2 12 = e 0 = . .................... 15
Grfico 5 - a) Sinal impulso atrasado em quatro amostras; b) sinal degrau adiantado em
seis amostras. ....................................................................................................... 16
Grfico 6 - Dente de serra com perodo
0
T . ........................................................................... 17
Grfico 7 - Espectro em freqncia do dente de serra com freqncia
0
............................ 18
Grfico 8 - Srie de Fourier do dente de serra de 200 Hz com 1, 2 , 10 e 10000
harmnicas. .......................................................................................................... 19
Grfico 9 - Sinal amostrado a 120
s
f = Hz 2 220 f < = Hz. ...................................................... 20
Diagrama 1 - Diagrama de blocos simplificado de um sistema de tempo discreto. ................ 21
Grfico 10 - a) Sinal original [ ] ( ) sin 10 x n n = ; b) Dizimao [ ] [ ] 2
d
x n x n = ; c)
Interpolao [ ] [ ] 2
i
x n x n = . ................................................................................. 24
Grfico 11 - RDC correspondente ao crculo unitrio.............................................................. 26
Grfico 12 - Resposta em freqncia do sistema da Eq. (22): a) em mdulo; b) em fase. ...... 28
Grfico 13 - Localizao dos plos e zeros no plano z complexo. .......................................... 30
Diagrama 2 - Filtros em cascata............................................................................................... 31
Diagrama 3 - Sistema [ ] H z em cascata com o sistema [ ] 1 H z .............................................. 31
Grfico 14 - Localizao no crculo unitrio de
1, 2 p
p a

= e
1, 2 z
z b

= ..................... 33
Grfico 15 - Mdulo da resposta em freqncia para: a) 0.4 b = , b) 0.6 b = , c) 0.9 b = , d)
1.0 b = , e) 1.2 b = e f) 2.0 b = . .......................................................................... 34
Grfico 16 - a) Ganho mnimo e b) banda variando o zero b . Foi usado 0.2 a = e 6 = ... 35
Grfico 17 - Mdulo da resposta em freqncia para: a) 0.4 a = , b) 0.6 a = , c) 0.9 a = , d)
1.0 a = . ................................................................................................................. 36
Grfico 18 - a) Ganho mximo e b) banda variando o plo a . Foi usado 0.2 b = e 6 = .. 36
Grfico 19 - Mdulo da resposta em freqncia do filtro inverso: a) instvel; b) estvel. ...... 37
Grfico 20 - Mdulo da resposta em freqncia: a) do corpo do violo; b) do filtro inicial.... 41
Grfico 21 - Mdulo da resposta em freqncia do corpo do violo e do filtro que est
sendo projetado ( ) 1 H f = . ................................................................................... 42
Grfico 22 - Mdulo da resposta em freqncia do corpo do violo, do filtro inicial e do
filtro projetado. .................................................................................................... 44
Grfico 23 - Mdulo da resposta em freqncia do corpo do violo e do filtro modificado. .. 44
Grfico 24 - Mdulo da resposta em freqncia do corpo do violo, do filtro anterior e do
filtro anterior em cascata com o projetado no Grfico 23. .................................. 45
Grfico 25 - Mdulo da resposta em freqncia: a) do corpo do violo; b) do filtro
projetado. ............................................................................................................. 46
Grfico 26 - Localizao dos plos e zeros do filtro no crculo unitrio do plano z................ 46
Grfico 27 - Resposta ao impulso normalizada: a) do filtro criado; b) do corpo do violo. c)
Erro. ..................................................................................................................... 48
7
Diagrama 4 - Sistema para gerar a excitao ( )
exc
s t . .............................................................. 49
Diagrama 5 - Sistema para obter ( )
vsol
y t . ............................................................................... 49
Grfico 28 - a) Nota Sol gerada pelo violo; b) Entrada necessria para gerar na sada do
filtro a nota Sol do violo. ................................................................................... 50
Grfico 29 - Sinais em funo do tempo: a) Dente de serra de 196 Hz ( )
1 serra
f t ; b)
Resultado ( )
1
y t da filtragem do dente de serra. .................................................. 52
Grfico 30 - Espectro em freqncia normalizado: a) do sinal dente de serra filtrado ( )
1
y t ;
b) da nota Sol do violo. So indicadas as posies das harmnicas nos
espectros. ............................................................................................................. 52
Grfico 31 - Mdulo da resposta em freqncia do corpo do violo e do novo filtro
projetado ( )
2 f
H f ................................................................................................ 53
Grfico 32 - Resposta ao impulso normalizada: a) do filtro ( )
2 f
H z ; b) do corpo do violo.
c) Erro. ................................................................................................................. 54
Grfico 33 - Espectro em freqncia normalizado: a) do dente de serra filtrado pelo novo
filtro; b) da nota Sol gerada pelo violo. So indicadas as posies das
harmnicas nos espectros. ................................................................................... 55
Grfico 34 - Sinal: a) excitao da corda; b) nota Sol artificial; c) nota Sol gerada pelo
violo. .................................................................................................................. 56
Grfico 35 - Espectro em freqncia normalizado: a) ( )
3 y
H f ; b) ( )
vsol
H f . So indicadas
as posies das harmnicas nos espectros. .......................................................... 57
Grfico 36 - a) Nota R gerada pelo processo de interpolao e dizimao da nota Sol do
violo e b) seu respectivo espectro em freqncia normalizado. ................... 60
Grfico 37 - Mdulo da resposta em freqncia das 5 cordas do baixo acionadas separadas
(Sol, R, L, Mi e Si) e acionadas juntas (5 cordas)............................................ 62
Grfico 38 - a) Mdulo da resposta em freqncia do baixo e da somatria das respostas de
cada corda; b) Resposta impulsiva do baixo ao acionar as 5 cordas. .................. 62
Grfico 39 - Mdulo da resposta em freqncia: a) das 5 cordas do baixo; b) do filtro
projetado. ............................................................................................................. 63
Grfico 40 - Espectro em freqncia da nota Si produzida: a) pelo filtro; b) pelo baixo. So
indicadas as posies das harmnicas nos espectros. .......................................... 64
Grfico 41 - Espectro em freqncia da nota Sol produzida: a) pelo filtro; b) pelo baixo.
So indicadas as posies das harmnicas nos espectros. ................................... 65
Grfico 42 - Mdulo da resposta em freqncia: a) do corpo do baixo ao acionar a corda Si;
b) do filtro projetado. ........................................................................................... 66
Grfico 43 - Resposta ao impulso: a) ( )
si
h t da corda Si do baixo; b) ( )
Fsi
h t do filtro
( )
Fsi
H f . .............................................................................................................. 66
Grfico 44 - a) Nota Si ( )
si
y t gerada pelo baixo; b) Sinal filtrado ( )
Fsi
y t . ............................ 67
Grfico 45 - Espectro em freqncia: a) do dente de serra filtrado ( )
Fsi
y t ; b) da nota Si do
baixo ( )
si
y t . So indicadas as posies das harmnicas nos espectros. ............. 68



8
SUMRIO


1 INTRODUO............................................................................................................... 9
2 SINAIS E SISTEMAS DE TEMPO DISCRETO....................................................... 12
2.1 SINAIS ............................................................................................................................ 12
2.2 SRIE DE FOURIER...................................................................................................... 16
2.3 AMOSTRAGEM............................................................................................................. 19
2.4 SISTEMAS DE TEMPO DISCRETO............................................................................ 20
2.4.1 Invarincia no tempo .................................................................................................... 21
2.4.2 Linearidade .................................................................................................................... 21
2.4.3 Resposta ao impulso ...................................................................................................... 22
2.4.4 Dizimao ou compresso no tempo............................................................................ 23
2.4.5 Interpolao ................................................................................................................... 23
2.5 TRANSFORMADA Z..................................................................................................... 24
2.5.1 Propriedades .................................................................................................................. 26
2.5.2 Funo de transferncia................................................................................................ 27
2.5.3 Resposta em freqncia................................................................................................. 27
3 FILTROS DIGITAIS.................................................................................................... 29
3.1 PLOS E ZEROS ........................................................................................................... 29
3.2 FILTROS EM CASCATA.............................................................................................. 30
3.3 CONDIES PARA ESTABILIDADE......................................................................... 31
3.4 FREQNCIAS DE TEMPO CONTNUO E DISCRETO........................................... 32
3.5 ORDEM........................................................................................................................... 32
3.6 VARIAO DA LOCALIZAO DOS PLOS E ZEROS........................................ 33
3.7 SOLUO PARA FILTROS INSTVEIS.................................................................... 37
4 SIMULAES.............................................................................................................. 38
4.1 SINTETIZADORES........................................................................................................ 38
4.2 SIMULAO DE UM VIOLO................................................................................... 39
4.2.1 Projeto do corpo do violo............................................................................................ 39
4.2.2 Comparao entre o filtro e o corpo do violo............................................................ 47
4.2.3 Excitao do filtro: sinal produzido pelo violo ......................................................... 48
4.2.4 Excitao do filtro: dente de serra............................................................................... 50
4.2.5 Projeto modificado do corpo do violo........................................................................ 53
4.2.6 Excitao da corda ........................................................................................................ 55
4.2.7 Mudana de tom............................................................................................................ 58
4.3 SIMULAO DE UM BAIXO...................................................................................... 60
4.3.1 Espectro em freqncia................................................................................................. 61
4.3.2 Projeto do filtro.............................................................................................................. 63
4.3.3 Projeto do filtro para a corda Si................................................................................... 65
4.3.4 Dente de serra como excitao do filtro....................................................................... 67
5 CONCLUSES.............................................................................................................. 69
REFERNCIAS ............................................................................................................ 72
APNDICE A FUNES DO MATLAB................................................................ 73
APNDICE B ARTIGO PUBLICADO NOS ANAIS DO XXV SIMPSIO
BRASILEIRO DE TELECOMUNICAES (SBrT 2007)...................................... 84

9
1 INTRODUO

Neste trabalho feito uma pesquisa sobre como a produo de som dos
instrumentos musicais pode ser comparada com a dos filtros digitais, baseado em (STONICK;
BRADLEY, 1996) e principalmente em (BRADLEY; CHENG; STONICK, 1995;
KARJALAINEN; VLIMKI; JNOZY, 1993). A fim de torn-lo acessvel a um pblico
maior feita uma reviso bibliogrfica sobre processamento de sinais, Transformada Z e
filtros digitais.
Filtro um sistema que transforma um sinal de entrada em um novo sinal.
Filtros seletivos em freqncia eliminam componentes que esto em uma determinada faixa
de freqncia chamada faixa de rejeio e deixam inalteradas as que esto em outra faixa, a
faixa de passagem (HAYKIN; VEEN, 1999).
Um filtro pode ser caracterizado por uma equao de diferenas e por meio
desta possvel definir a sua ordem. O maior atraso de amostras que essa equao contiver
corresponde a ordem do filtro (LATHI, 1998). Por exemplo, um filtro com entrada [ ] x n e
sada [ ] y n representado por
[ ]
[ ] [ ] 2 2
3
x n x n
y n
+
= (1)
de 2 ordem pois, o maior atraso que esta equao apresenta de duas amostras ( [ ] 2 x n ).
O uso de filtros digitais para a sntese de notas musicais tem uma srie de
vantagens prticas. Entre elas, destaca-se a facilidade em se mudar as caractersticas naturais
de um instrumento, permitindo maiores variaes do som gerado (STONICK; BRADLEY,
1996). Alm disso, podem-se simular diversos instrumentos musicais usando o mesmo
equipamento, bastando para isso ajustar os coeficientes dos filtros para cada caso.
interessante escolher filtros de menor ordem possvel, j que assim h
10
processamento menor, um algoritmo mais simples de ser executado e, consequentemente, um
produto mais barato.
A modelagem de filtros digitais para simular instrumentos musicais
interessante, pois junta duas reas, a Engenharia com a Msica, que para muitas pessoas um
lazer, divertimento.
Sintetizadores simulam vrios instrumentos musicais, como baixo, violo e
guitarra. Para isso, usam filtros que criam uma determinada nota dependendo do instrumento
selecionado pelo usurio (STONICK; BRADLEY, 1996). Notas so sons produzidos por
instrumentos musicais e recebem nomes de acordo com sua freqncia fundamental. As sete
notas principais so: D, R, Mi, F, Sol, L e Si. Reproduzir uma nota atravs de um filtro
digital interessante, pois com isso possvel simular diversos instrumentos em um s.
O som produzido por uma corda de um instrumento musical alterado devido
s caractersticas acsticas do instrumento. Neste trabalho utilizado o programa Matlab


para criar e testar filtros digitais de 2 ordem em cascata que sintetizem sons semelhantes aos
gerados por um dado instrumento. A semelhana analisada comparando o espectro em
freqncia da nota produzida pelo filtro com o da nota real. Os instrumentos musicais
utilizados so o violo e baixo.
Esta monografia composta por cinco captulos descritos sucintamente a
seguir.
No Captulo 2 so abordados alguns aspectos da teoria de processamento
digital de sinais, que so importantes para tornar mais acessvel o restante deste trabalho.
Entre outros aspectos, discute-se sinais, Srie de Fourier, amostragem, sistemas de tempo
discreto e a Transformada Z.
No Captulo 3 so abordados filtros digitais. Discutem-se, entre outros tpicos,
aspectos como os plos e zeros, ordem do filtro e condies para estabilidade.
11
No Captulo 4 mostrado passo a passo o projeto de um filtro digital
correspondente ao corpo de um violo. Alm disso, so apresentados os resultados da
simulao desse violo, por meio de dados e funes fornecidas em (STONICK; BRADLEY,
1996). Tambm simulado outro instrumento musical, o baixo. So usadas gravaes do
baixo Washburn

XB125, realizadas pelo autor.


No Captulo 5 so traadas as concluses do trabalho.
No Apndice A so apresentados os cdigos das funes utilizadas no Matlab

.
No Apndice B mostrado o artigo de iniciao cientfica publicado nos anais
do XXV Simpsio Brasileiro de Telecomunicaes (SBrT 2007), realizado entre 3 e 6 de
setembro de 2007. Tambm mostrado o pster apresentado neste Simpsio.





12
2 SINAIS E SISTEMAS DE TEMPO DISCRETO

O processamento de sinais consiste na anlise, sntese ou transformao de um
sinal que carrega algum tipo de informao (GIROD; RABENSTEIN; STENGER, 2003). Ele
pode ser classificado em analgico ou digital.
O processamento analgico de sinais realizado por dispositivos analgicos,
como, por exemplo, diodos, resistores, capacitores e indutores. J o digital realizado por
somadores, multiplicadores e memria e por isso realizado atravs de operaes numricas
(HAYKIN; VEEN, 1999).
Neste captulo so abordados conceitos de Processamento Digital de Sinais,
que so utilizados ao longo dos demais captulos, tendo em vista tornar o trabalho mais
acessvel. Como existem muitas referncias sobre o assunto, e.g. (BELLANGER, 2000,
DINIZ; SILVA; NETTO, 2004, GIROD; RABENSTEIN; STENGER, 2003, HAYKIN;
VEEN, 1999, LATHI, 1998, MITRA, 2001, OPPENHEIM; SCHAFER; BUCK, 1999,
PROAKIS; MANOLAKIS, 1996), aqui apresentado um breve resumo.

2.1 SINAIS

Sinais so funes de uma ou mais variveis que fornecem informaes sobre
um determinado fenmeno (LATHI, 1998; PROAKIS; MANOLAKIS, 1996). Podem ser de
tempo contnuo ou de tempo discreto. Um sinal de tempo contnuo se a sua amplitude varia
continuamente com o tempo t . Um exemplo de sinal de tempo contnuo ( ) y t , mostrado no
Grfico 1. Ele corresponde ao som produzido quando se acionou a corda mais grave do baixo
modelo Washburn

XB-125.
13
0 1 2 3 4 5 6 7
-1
-0.75
-0.5
-0.25
0
0.25
0.5
0.75
1
t (segundos)

y
(
t
)



Grfico 1 - Sinal de tempo contnuo correspondente a nota Si gravada atravs de um microfone.

Um sinal de tempo discreto pode ser definido em instantes isolados, separados
geralmente de maneira uniforme (LATHI, 1998). Para indicar que um sinal de tempo
discreto, usa-se aqui como varivel independente n ao invs de t . Alm disso, usam-se
colchetes ao invs de parnteses. Por exemplo, ( ) x t um sinal de tempo contnuo e [ ] x n um
sinal de tempo discreto. A representao grfica de um sinal de tempo discreto
exemplificada no Grfico 2.
Define-se a seguir a notao para alguns sinais de tempo discreto que so
essenciais para o estudo de processamento de sinais.
O sinal impulso notado por [ ] n e definido por:
[ ]
1, 0
0, 0
n
n
n

=
=

(2)
O sinal degrau notado por [ ] u n e definido por:
[ ]
1, 0
0, 0
n
u n
n

=

<

(3)
14
0 10 20 30 40
-0.5
0
0.5
1
n
y
[
n
]
...
...

Grfico 2 - Sinal de tempo discreto [ ] ( )
0.1
sin 5
n
y n e n

= .

Os sinais exponenciais so a multiplicao de um sinal degrau por uma
exponencial, ou seja, [ ]
n
a u n (JACKSON, 1999), sendo a um nmero real. No Grfico 3 so
mostrados exemplos desses trs sinais fundamentais.
Um sinal senoidal de tempo discreto expresso por:
[ ] ( ) cos . x n A n = + (4)
Na Eq. (4), a freqncia de tempo discreto, o deslocamento em fase e
A a amplitude mxima do sinal. Um exemplo de sinal senoidal mostrado no Grfico 4.
Os sinais podem ser deslocados no tempo. Um sinal deslocado em m amostras
representado por [ ] f n m . Quando 0 m < o sinal dito adiantado e quando 0 m > o sinal
dito atrasado. No Grfico 5 esto dois exemplos de sinais deslocados no tempo.
15
-5 0 5 10
0
0.5
1


[
n
]
n
a)
-5 0 5 10
0
0.5
1
u

[
n
]
n
b)
-5 0 5 10
0
0.5
1
0
.
9
n

u

[
n
]
n
c)
-5 0 5 10
-1
-0.5
0
0.5
1
(
-
0
.
9
)
n

u

[
n
]
n
d)
...
...
... ... ... ...
...
...

Grfico 3 - Exemplos de sinais de tempo discreto: a) sinal impulso, b) sinal degrau, c) e d) sinais
exponenciais.

0 5 10 15 20
-1
-0.5
0
0.5
1
n
x
[
n
]
...
...

Grfico 4 - Sinal senoidal [ ] ( ) cos 2 12 x n n = . Neste caso, 2 12 = e 0 = .
16
-10 -5 0 5 10
0
0.5
1


[
n
-
4
]
n
a)
-10 -5 0 5 10
0
0.5
1
u

[
n
+
6
]
n
b)
... ...
... ...

Grfico 5 - a) Sinal impulso atrasado em quatro amostras; b) sinal degrau adiantado em seis amostras.

2.2 SRIE DE FOURIER

Uma senide de tempo contnuo com freqncia
0
n , sendo n inteiro,
conhecida como a n -sima harmnica da senide de freqncia
0
. Pela Srie
Trigonomtrica de Fourier, um sinal ( ) f t peridico definido em qualquer intervalo de
tempo, sendo
0 0
2 T = o seu perodo, pode ser escrito como (LATHI, 1998):
( ) ( )
0 0 0
1
cos sin
n n
n
f t a a nt b nt

=
= + +

(5)
Os coeficientes so calculados pelas equaes seguintes (LATHI, 1998), sendo
o intervalo da integral
1
t at
1 0
t T + o perodo da funo.
( )
1 0
1
0
0
1
t T
t
a f t dt
T
+
=

(6)
17
( )
1 0
1
0
0
2
cos
t T
n
t
a f t n tdt
T

+
=

(7)
( )
1 0
1
0
0
2
sin
t T
n
t
b f t n tdt
T

+
=

(8)
O sinal dente de serra ( )
ds
y t , que usado neste trabalho, tem o aspecto
mostrado no Grfico 6. A funo ( ) f t do dente de serra, para o intervalo
0
0 t T < < , pode ser
escrita como:
( )
0
2
1 f t t
T
= (9)
Realizando os clculos para achar a Srie de Fourier do dente de serra, obteve-
se os coeficientes com os seguintes valores:

0
2
0, 0,
n n
a a b
n
= = = (10)
0 T 2T 3T 4T 5T
-1
-0.5
0
0.5
1
t
y

d
s
(
t
)
Dente de serra
...
...
T
0
T
0
T
0
T
0
T
0

Grfico 6 - Dente de serra com perodo
0
T .


18
Ento a Srie de Fourier do dente de serra :
( )
0
1
2
sin
n
f t nt
n

=
=

(11)
Observando essa Srie verifica-se que as harmnicas caem com n , ou seja, a
segunda harmnica tem metade da amplitude da fundamental, a terceira tem um tero e assim
por diante. A amplitude normalizada
N
A mxima do espectro igual a 1, pois
( )
0 N mx
A A n A = , sendo n inteiro e maior que 1, ( )
0
A n a amplitude de cada harmnica
e
mx
A a maior amplitude existente no espectro.
O espectro em freqncia normalizado do dente de serra em funo de
0

mostrado no Grfico 7.
No Grfico 8 mostrado a Srie de Fourier do dente de serra de
0 0
2 200 f = = Hz com 1 n = , 2 , 10 e 10000 harmnicas.
0 5 10 15 20
0
0.2
0.4
0.6
0.8
1

A

N
Espectro em freqncia
...
5
0
15
0
10
0
20
0

Grfico 7 - Espectro em freqncia do dente de serra com freqncia
0
.

19
0 0.005 0.01 0.015 0.02
-1.5
-1
-0.5
0
0.5
1
1.5
t (segundos)
f

(
t
)
Srie de Fourier do dente de serra de 200Hz


n=1 n=2 n=10 n=10000
...
...

Grfico 8 - Srie de Fourier do dente de serra de 200 Hz com 1, 2 , 10 e 10000 harmnicas.

2.3 AMOSTRAGEM

Amostragem a converso de um sinal de tempo contnuo em tempo discreto.
realizada tomando-se amostras do sinal de tempo contnuo em intervalos de tempo
discretos.
Existem vrias maneiras de amostrar um sinal de tempo discreto (PROAKIS;
MANOLAKIS, 1996). Neste trabalho, limita-se a abordagem a amostragem uniforme, que
consiste em coletar a amplitude do sinal a cada T segundos. O tempo T chamado de
perodo de amostragem e 1 s f T = chamado de freqncia de amostragem. O Grfico 9
mostra um sinal senoidal de 110 f = Hz com 120
s
f = Hz.
Para no haver perda de informao durante a amostragem necessrio que
max
2
s
f f (PROAKIS; MANOLAKIS, 1996), ou seja, a freqncia de amostragem deve ser
no mnimo duas vezes a mxima freqncia
max
f existente no sinal a ser amostrado.
20
0 0.02 0.04 0.06 0.08 0.1
-1
-0.5
0
0.5
1
Sinal de 110Hz amostrado a 120Hz
t (segundos)
y
(
t
)


Sinal Original
Sinal Amostrado

Grfico 9 - Sinal amostrado a 120
s
f = Hz 2 220 f < = Hz.

No Grfico 9 verifica-se que por a freqncia de amostragem ser menor que
duas vezes a freqncia mxima do sinal, a caracterstica do sinal perdida. O sinal original
era de 110Hz e o sinal reconstrudo aps a amostragem tem freqncia 1 0.1 10 s = Hz.

2.4 SISTEMAS DE TEMPO DISCRETO

Um sistema de tempo discreto um dispositivo que transforma um sinal de
tempo discreto em outro sinal. O sinal que entra chamado de excitao e o sinal de sada a
resposta do sistema.
No Diagrama 1 mostrado o diagrama de blocos simplificado de um sistema
de tempo discreto (PROAKIS; MANOLAKIS, 1996).
Os sistemas de tempo discreto podem ser classificados como invariantes ou
variantes no tempo e lineares ou no-lineares.
21

Diagrama 1 - Diagrama de blocos simplificado de um sistema de tempo discreto.

2.4.1 Invarincia no tempo

Um sistema chamado invariante no tempo quando um deslocamento no
tempo do sinal de entrada provoca um deslocamento idntico no sinal de sada. Supondo que
o sinal [ ] y n a resposta de um sistema a uma entrada [ ] x n , se essa entrada for atrasada de k
amostras, ento a resposta ter que ser [ ] y n k para que este sistema seja invariante no
tempo. Se no se comportar dessa maneira, o sistema chamado de variante no tempo
(PROAKIS; MANOLAKIS, 1996, HAYKIN; VEEN, 1999).

2.4.2 Linearidade

Um sistema linear se este atende aos princpios da superposio e da
homogeneidade. Caso contrrio o sistema chamado de no-linear.
Suponha um sistema que tenha uma resposta [ ]
1
y n para uma entrada [ ]
1
x n e
uma resposta [ ]
2
y n a outra entrada [ ]
2
x n . Quando a soma [ ] [ ]
1 2
x n x n + a entrada desse
sistema, ento a resposta deve ser [ ] [ ]
1 2
y n y n + para que o sistema respeite o princpio da
superposio.
O princpio da homogeneidade respeitado quando, por exemplo, a sada de
um sistema [ ]
1
ay n para uma entrada [ ]
1
ax n , em que a uma constante real (PROAKIS;
22
MANOLAKIS, 1996).
Os sistemas de tempo discreto lineares e invariantes no tempo podem ser
descritos atravs de equaes de diferenas. Considerando [ ] y n a sada do sistema e [ ] x n a
excitao, um sistema de tempo discreto pode ser descrito como (PROAKIS; MANOLAKIS,
1996):
[ ] [ ] [ ]
1 0
N M
k k
k k
y n a y n k b x n k
= =
= +

(12)
A menos que mencionado em contrrio, consideram-se aqui apenas Sistemas
Lineares e Invariantes no tempo (LIT).

2.4.3 Resposta ao impulso

A resposta ao impulso [ ] h n a sada de um sistema LIT quando a entrada
um impulso. Esta resposta caracteriza totalmente o sistema, pois com ela possvel calcular a
resposta do sistema a qualquer entrada atravs da soma de convoluo (HAYKIN; VEEN,
1999). por esse motivo que os sistemas LIT so muito utilizados.
A sada de um sistema LIT a superposio ponderada de respostas ao impulso
deslocadas no tempo. Isso chamado de soma de convoluo e a sua equao mostrada na
Eq. (13) (HAYKIN; VEEN, 1999). O smbolo matemtico que representa a soma de
convoluo o *.
[ ] [ ] [ ] [ ] [ ] *
k
y n x n h n x k h n k

=
= =

(13)


23
2.4.4 Dizimao ou compresso no tempo

Dizimao consiste em tomar amostras a cada an amostras de um sinal de
tempo discreto, sendo a inteiro. Um sinal [ ] [ ] 2
d
f n f n = tem somente as amostras pares de
[ ] f n . Esse processo tambm chamado de compresso no tempo (LATHI, 1998). No
Grfico 10(b) mostrada a dizimao do sinal do Grfico 10(a).

2.4.5 Interpolao

Interpolao consiste em adicionar amostras a um sinal. Um sinal
[ ] [ ] 2
i
f n f n = tem um nmero maior de amostras que o sinal original. J que no existe
amostra em ndices fracionrios, as amostras que so adicionadas tm um valor estimado a
partir das demais. Na prtica essas amostras podem ser iguais a mdia dos valores anteriores e
posteriores a essa amostra (LATHI, 1998). Se [ ] 0 2 f = e [ ] 1 3 f = , ento
[ ] [ ] 1 0.5 2.5
i
f f = = . Um exemplo de interpolao mostrado no Grfico 10(c).

24
0 4 8 12 16 20 24 28 32 36 40
1
0.5
0
-0.5
-1
n
x
[
n
]
a)
0 2 4 6 8 10 12 14 16 18 20
1
0.5
0
-0.5
-1
n
x
[
2
n
]
b)
...
...
...
...
0 8 16 24 32 40 48 56 64 72 80
-1
-0.5
0
0.5
1
n
x
[
n
/
2
]
c)
...
...

Grfico 10 - a) Sinal original [ ] ( ) sin 10 x n n = ; b) Dizimao [ ] [ ] 2
d
x n x n = ; c) Interpolao
[ ] [ ] 2
i
x n x n = .

2.5 TRANSFORMADA Z

A Transformada Z transforma equaes de diferenas em equaes algbricas,
facilitando a anlise do sistema de tempo discreto. A anlise no domnio da freqncia de um
sistema de tempo discreto baseada no fato de que a resposta de um sistema LIT a um
exponencial
k
z a mesmo exponencial multiplicado por uma constante (HAYKIN; VEEN,
1999). Com isso a entrada expressa pela soma de exponenciais
k
z e a resposta do sistema
ser a soma das respostas do sistema para todos os exponenciais. A Transformada Z permite
25
representar um sinal e um sistema como uma soma de exponenciais
k
z (LATHI, 1998).
A Transformada Z de um sinal [ ] x n definida como:
( ) [ ]
n
n
X z x n z

=
=

(14)
A transformada direta desse sinal pode ser expressa tambm como
[ ] ( )
Z
x n X z (15)
A Transformada Z existe somente se a Eq. (14) converge. A regio de
convergncia (RDC) de ( ) X z a faixa de valores de z na qual ( ) X z possui um valor finito
(HAYKIN; VEEN, 1999).
O nmero complexo z geralmente representado por exponenciais complexas
da forma
j
re

, com 1 j = , e localizado em um plano complexo, denominado z . No
eixo horizontal tem-se a parte real ( ) Re z e no eixo vertical, a parte imaginria ( ) Im z . Ento
r corresponde a uma distncia r da origem e a um ngulo a partir do eixo horizontal.
O conceito de RDC pode ser melhor entendido com um exemplo. Seja
[ ] [ ] x n u n = e
j
z re

= , ento atravs da Eq. (14) chega-se a:

( )
[ ]
( ) ( ) ( ) ( )
2 3
0
1 ...
n
j n j n j j j j
n n
X re u n r e re re re re


= =
= = = + + + +

(16)
A Eq. (16) uma srie geomtrica de tamanho infinito e sabe-se que
(PROAKIS; MANOLAKIS, 1996)

2 3 4 5
1
1 ... , 1
1
a a a a a a
a
+ + + + + + = <

(17)
e, conseqentemente, para que a Eq. (16) convirja necessrio que 1
j
re

< . A
Transformada Z existir neste exemplo somente se 1 r < e por isso a regio de convergncia
corresponder a um crculo unitrio, conforme mostrado no Grfico 11.
26
-1 -0.5 0 0.5 1
-1
-0.5
0
0.5
1
I
m
(
z
)
Re(z)
Crculo unitrio
z = e
j
=
r = 1

Grfico 11 - RDC correspondente ao crculo unitrio.

2.5.1 Propriedades

A propriedade da linearidade diz que a Transformada Z de uma soma de sinais
igual a soma das transformadas individuais (HAYKIN; VEEN, 1999), ou seja,
[ ] [ ] ( ) ( )
Z
ax n by n aX z bY z + + , (18)
sendo a e b constantes reais.
A propriedade do deslocamento no tempo diz que o deslocamento de um sinal
no tempo igual a Transformada Z do sinal multiplicada por z elevado ao valor do
deslocamento (HAYKIN; VEEN, 1999). Assim,
[ ] ( )
Z d
x n d X z z

(19)
A transformada da convoluo de dois sinais igual a multiplicao das
Transformadas Z dos sinais (HAYKIN; VEEN, 1999).
[ ] [ ] ( ) ( ) *
Z
x n y n X z Y z (20)
27
2.5.2 Funo de transferncia

Sejam ( ) X z , ( ) Y z e ( ) H z , respectivamente, a Transformada Z do sinal de
entrada, de sada e da resposta ao impulso. Pela propriedade da convoluo, a resposta do
sistema em funo da entrada e da resposta ao impulso dada por (HAYKIN; VEEN, 1999):
( ) ( ) ( ) ( )
( )
( )
Y z
Y z H z X z H z
X z
= = (21)
Deste modo, a funo de transferncia ( ) H z relaciona a entrada e a sada de
um sistema.

2.5.3 Resposta em freqncia

A resposta em freqncia de um sistema ( ) H z obtida substituindo-se z por
j
e

na Eq. (21). Constata-se que
j
e

tem periodicidade igual a 2 (PROAKIS;
MANOLAKIS, 1996), o que implica que necessrio especific-la apenas para uma volta da
circunferncia unitria.
Comumente se representa a resposta em freqncia atravs de dois grficos:
um do mdulo e outro da fase.
Por exemplo, um sistema com funo de transferncia
[ ]
1
2 2
5
z
H z

= (22)
tem resposta em freqncia

( )
2 2 2 2 2 2
2 2 2 2 4
2 sin sin
5 5 5 2 5 2
j j j j j j
j
i
e
H e e e e e j e


+

| |
| | | |
| = = = =
| |
|
\ \
\
(23)
28
O mdulo
( )
j
H e

e a fase
( )
j
H e

da resposta em freqncia so:

( )
( )
( )
2
4
sin
5 2
j
j
i
H e
H e e

=
=
(24)
O Grfico 12 mostra o mdulo e a fase da resposta em freqncia deste
sistema. A freqncia est normalizada, ou seja, a freqncia de tempo discreto est dividida
por .
0 0.25 0.5 0.75 1 1.25 1.5 1.75 2
0
0.5
1
a)
/
|
H
(
e
j

)
|
0 0.25 0.5 0.75 1 1.25 1.5 1.75 2
-100
0
100
b)
/

H
(
e
j

)

(
g
r
a
u
s
)

Grfico 12 - Resposta em freqncia do sistema da Eq. (22): a) em mdulo; b) em fase.

29
3 FILTROS DIGITAIS

Neste captulo so abordadas as caractersticas dos filtros digitais que so
utilizadas ao longo do prximo captulo para realizar as simulaes. utilizado tambm o
Matlab

para mostrar o que acontece quando se varia as caractersticas do filtro.


Filtros digitais so sistemas de tempo discreto que transformam um sinal.
Existem os filtros seletivos em freqncia, que deixam passar determinadas faixas de
freqncia e removem outras faixas de freqncia (HAYKIN; VEEN, 1999). Se forem
conhecidas as faixas de freqncia desejadas na sada de um filtro, possvel projetar um
filtro com essas caractersticas.
Um filtro digital pode ser expresso por uma equao de diferenas. Para
transformar para o domnio da Transformada Z , usa-se as propriedades discutidas na Seo
2.5.1. Por exemplo, para transformar um filtro dado por
[ ] [ ] [ ] [ ] 2 0.71 1 0.25 2 1 y n y n y n x n + + + = + (25)
para o domnio Z necessrio aplicar as propriedades da linearidade e do deslocamento no
tempo, Eqs. (18) e (19). Ento, a equao do filtro no domnio Z fica
( ) ( ) ( ) ( )
2 1 1
0.71 0.25 2 Y z z Y z z Y z X z z + = (26)
e, consequentemente, a sua funo de transferncia :
( )
2
2
0.71 0.25
z
H z
z z
=
+
(27)

3.1 PLOS E ZEROS

Plos de ( ) H z so valores de z tais que ( ) H z = . E os zeros so valores de
z tais que ( ) 0 H z = .
30
Uma funo de transferncia pode ser descrita como (LATHI, 1998):
( )
1 2
0 1 2
1 2
0 1 2
...
...
M
M
N
N
b b z b z b z
H z
a a z a z a z


+ + + +
=
+ + + +
(28)
Os zeros na Eq. (28) so as razes do numerador e os plos so as razes do
denominador.
Por exemplo, os plos da funo de transferncia da Eq. (27) so
1
0.3550 0.3521 p j = + ,
2
0.3550 0.3521 p j = e o zero 0 z = . A localizao dos plos e
zeros no plano z complexo apresentada no Grfico 13. Os plos so representados por um
x e o zero por um o.
-1 -0.5 0 0.5 1
-1
-0.5
0
0.5
1
Re(z)
I
m
(
z
)

Grfico 13 - Localizao dos plos e zeros no plano z complexo.

3.2 FILTROS EM CASCATA

Filtros digitais podem ser interligados em cascata por alguns motivos
(STONICK; BRADLEY, 1996). J que a preciso de um computador finita, podem ocorrer
diferenas entre as constantes do filtro desejado e as representadas pelo computador,
31
provocando diferenas significativas em filtros de ordem elevada (STONICK; BRADLEY,
1996). por isso que nas simulaes utilizam-se filtros de segundo grau em cascata.
Considerando dois filtros LIT ( )
1
H z e ( )
2
H z em cascata, a funo de
transferncia do sistema total ( ) ( ) ( )
1 2
H z H z H z = . O Diagrama 2 mostra como este
sistema representado em forma de diagrama de blocos.

Diagrama 2 - Filtros em cascata.

3.3 CONDIES PARA ESTABILIDADE

Quando um plo
k
p est dentro da circunferncia unitria ( 1
k
p < ), ele
contribui com um termo exponencialmente decrescente para a resposta ao impulso. Uma
resposta impulsiva estvel no contm termos exponenciais crescentes, pois assim a resposta
ao impulso no seria finita. Isso implica que os plos tm que estar dentro da circunferncia
unitria para que o filtro seja estvel (HAYKIN; VEEN, 1999).
No sistema composto por dois filtros, conforme visto no Diagrama 3, deseja-se
saber quais so as condies para que ambos os filtros sejam estveis. Para que este sistema
seja estvel, necessrio que todos os plos estejam dentro da circunferncia unitria. Por
isso, tanto os plos como os zeros de ( ) H z tem que ter mdulo menor do que um.

Diagrama 3 - Sistema ( ) H z em cascata com o sistema ( ) 1 H z .
32
3.4 FREQNCIAS DE TEMPO CONTNUO E DISCRETO

A relao entre as freqncias de tempo contnuo f e tempo discreto F
s
F f f = , em que
s
f a freqncia de amostragem. J que 2 f = e 2 F = , ento:

s
f = (29)
No crculo unitrio, a freqncia de amostragem
s
f corresponde ao 2 = .
Se a freqncia de amostragem for de 44.1kHz, ento as freqncias de tempo contnuo
correspondentes a
1
0.5 = e
2
2 100 = so
1
11025 f = Hz e
2
441 f = Hz,
respectivamente. Verifica-se com isso que importante o conhecimento da freqncia de
amostragem para o projeto de filtros, pois com ela possvel saber que valores de
correspondem freqncia f de projeto que se deseja cortar ou passar.

3.5 ORDEM

A ordem de um filtro corresponde a maior potncia de z , considerando a
menor potncia igual a zero. Por exemplo, o filtro
[ ]
1 2 3 3 2 3
1 2 3 3 2 3
2 2 2 2
1 2 3 1 3 2
z z z z z z z
H z
z z z z z z z


+ + + +
= =
+ + + +
(30)
de 3 ordem.
A funo de transferncia ( ) H z , sendo
j
z e

= , de um filtro de 2 ordem
pode ser expressa pela Eq. (31), em que cada parnteses corresponde a uma funo de 1
ordem.

( )
( )( )
( )( )
1 1
1 1
1 1
1 1
z z
p p
j j
j
j j
bz e bz e
H e
az e az e




=

(31)
33
Os mdulos dos zeros e dos plos so b e a , respectivamente. Nessa funo
de transferncia os dois plos
1,2 p
p a = so conjugados e os dois zeros
1,2 z
z b =
tambm. No Grfico 14 apresentado a localizao dos plos e zeros no plano z complexo,
mostrando onde esto localizados cada um dos parmetros.
Aplicando a distributiva e simplificando a Eq. (31) chega-se a funo de
transferncia mostrada na Eq. (32), que ser usada na prxima seo.
[ ]
1 2 2
1 2 2
1 2 cos
1 2 cos
z
p
bz b z
H z
az a z


+
=
+
(32)
-1 -0.5 0 0.5 1
-1
-0.5
0
0.5
1
Re(z)
I
m
(
z
)

-
a
b

z
-
p
z
1
z
2
p
1
p
2

Grfico 14 - Localizao no crculo unitrio de
1, 2 p
p a

= e
1, 2 z
z b

= .

3.6 VARIAO DA LOCALIZAO DOS PLOS E ZEROS

A alterao provocada pela variao dos plos e zeros analisada a seguir
primeiramente mantendo-se fixo os plos e variando-se os zeros. Tanto os plos como os
zeros esto na mesma linha radial, ou seja, 6
p z
= = . O mdulo dos zeros varia de
34
0.4 b = at 2 b = e o mdulo do plo se manteve em 0.2 a = .
A resposta em freqncia variando b mostrada no Grfico 15.
0 0.2 0.4 0.6 0.8 1
-80
-60
-40
-20
0
20
/
|
H
(
e
j

)
|

(
d
B
)
b>a para a=0.2
d) b=1.0
c) b=0.9
e) b=1.2
f) b=2.0
a) b=0.4
b) b=0.6

Grfico 15 - Mdulo da resposta em freqncia para: a) 0.4 b = , b) 0.6 b = , c) 0.9 b = , d) 1.0 b = ,
e) 1.2 b = e f) 2.0 b = .

Analisando o Grfico 15, verifica-se que o filtro rejeita-faixa. Neste caso de
vale anti-ressonante, para existir ganho mnimo necessrio existir duas freqncias que
tenham 3dB a mais que o ponto de ganho mnimo. Cada uma dessas duas freqncias se
localiza a direita e a esquerda do ponto de ganho mnimo. A banda a diferena entre essas
duas freqncias. Para 0.9 b = , por exemplo, o ganho mnimo 18 dB e por isso a banda
est compreendida entre as duas freqncias que tm ganho igual a 15 dB.
No Grfico 15, verifica-se que comea a existir ganho mnimo a partir de um
pouco mais de 0.6 b = e este diminui at 1.0 b = . Depois o ganho mnimo vai aumentando at
no existir mais ganho mnimo. Com relao a banda, esta diminui a partir de um pouco mais
de 0.6 b = e volta a aumentar a partir de 1.0 b = . Isto pode ser melhor observado no Grfico
16, em que consta o comportamento do ganho mnimo G do vale anti-ressonante e da banda
35
B

com a variao de b para 0.2 a = e 6


p z
= = = . Valor igual a zero significa que
no existe banda e ganho mnimo.
0 0.25 0.5 0.75 1 1.25 1.5 1.75 2
-120
-80
-40
0
b
G

(
d
B
)
a) Variao do ganho com o mdulo do zero
0 0.25 0.5 0.75 1 1.25 1.5 1.75 2
0
0.25
0.5
0.75
b
B

(
r
a
d
/
s
)
b) Variao da banda com o mdulo do zero

Grfico 16 - a) Ganho mnimo e b) banda variando o zero b . Foi usado 0.2 a = e 6 = .

A seguir, analisa-se como a variao do plo afeta a resposta em freqncia.
Fixou-se o zero em 0.2 b = e os plos variaram de 0.4 a = at 1.0 a = . O valor de a no
pode ser maior que um porque desse modo o filtro fica instvel. A resposta em freqncia
mostrada no Grfico 17 corresponde a 0.4 a = , 0.6 , 0.9 e 1.0 com 0.2 b = e 6
F
= . O
Grfico 18 mostra a variao da banda B

e do ganho mximo G do vale ressonante com a ,


para 0.2 b = e 6
p z
= = = .
No Grfico 17 verifica-se que o filtro do tipo passa-baixas. Neste caso de
pico ressonante, para existir ganho mximo necessrio existir duas freqncias que tenham
3dB a menos que o ponto de ganho mximo. At 0.6 a = no existe ganho mximo nem
banda. J a partir de um pouco menos de 0.9 a = o ganho mximo aumenta, at chegar a
1.0 a = . A banda faz o processo inverso, diminui com o aumento de a . Isto pode ser melhor
36
observado no Grfico 18.
0 0.2 0.4 0.6 0.8 1
-20
0
20
40
60
80
/
|
H
(
e
j

)
|

(
d
B
)
b<a para b=0.2
d) a=1.0
c) a=0.9
b) a=0.6
a) a=0.4

Grfico 17 - Mdulo da resposta em freqncia para: a) 0.4 a = , b) 0.6 a = , c) 0.9 a = , d) 1.0 a = .

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
40
80
120
a) Variao do ganho com o mdulo do plo
a
G

(
d
B
)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.25
0.5
0.75
b) Variao da banda com o mdulo do plo
a
B

(
r
a
d
/
s
)

Grfico 18 - a) Ganho mximo e b) banda variando o plo a . Foi usado 0.2 b = e 6 = .



37
3.7 SOLUO PARA FILTROS INSTVEIS

Em filtros instveis pode-se obter o grfico da resposta em freqncia, porm
esta no existe, pois os plos esto fora da circunferncia unitria. Caso um filtro projetado
tenha 1 p > , uma boa soluo manter o e mudar a magnitude para o inverso da
magnitude original (STONICK; BRADLEY, 1996).
Por exemplo, suponha que o filtro
( )
j
H e

do Diagrama 3, tenha seus plos
localizados em
1,2
2 2 45 p = e zeros localizados em
1,2
1.12 26.6 z = . Para tornar o
sistema
( )
1
i
H e

estvel, mas com o pico ressonante na mesma freqncia, o novo mdulo
do plo desse sistema pode ser
1
1,2
1.12 26.6
novo
p

= . O sistema com o novo plo tem uma
resposta em freqncia muito parecida com o que teria o filtro instvel, conforme mostrado no
Grfico 19, em que
( )
j
ii
H e

e
( )
j
ie
H e

so as respostas em freqncia dos filtros inverso
instvel e estvel, respectivamente.
0 0.25 0.5 0.75 1 1.25 1.5 1.75 2
-20
-10
0
10
20
/
|
H

i
i

(
e
j

)
|

(
d
B
)
a) Filtro instvel
0 0.25 0.5 0.75 1 1.25 1.5 1.75 2
-20
-10
0
10
20
/
|
H

i
e

(
e
j

)
|

(
d
B
)
b) Filtro estvel

Grfico 19 - Mdulo da resposta em freqncia do filtro inverso: a) instvel; b) estvel.
38
4 SIMULAES

Neste captulo, so apresentadas e comentadas as simulaes relacionadas aos
instrumentos musicais em questo: o violo e o baixo. A principal referncia utilizada
(STONICK; BRADLEY, 1996), tanto na parte bibliogrfica, como na parte experimental. As
funes baseadas em (STONICK; BRADLEY, 1996) so apresentadas no Apndice A. Antes
de apresentar as simulaes, discute-se de forma abreviada sobre sintetizadores.

4.1 SINTETIZADORES

Sintetizadores, como os teclados, so capazes de simular vrios instrumentos
musicais. Estes so muito usados pelas bandas, pela sua versatilidade e qualidade razovel,
pois simulam vrios instrumentos musicais em um s equipamento e permitem adicionar
instrumentos diferentes dos usados pela banda.
A maior parte dos sintetizadores so baseados em dois modelos: (i) da
amostragem e (ii) da modelagem fsica (STONICK; BRADLEY, 1996).
No modelo baseado na amostragem so usadas amostras digitais das gravaes
do instrumento musical. Toda vez que pressionada uma tecla, reproduzida a nota
correspondente. Porm, se no tiver essa nota guardada, realizado uma mudana de tom da
nota mais prxima da desejada, podendo gerar um problema, pois isso altera algumas
caractersticas fundamentais do udio, afetando a originalidade do instrumento. Esse processo
feito por dizimao e interpolao. A qualidade do sintetizador pode melhorar se for
amostrada uma maior quantidade de notas de cada instrumento musical, mas para isso
necessrio um espao de armazenamento maior, o que o torna mais caro (STONICK;
BRADLEY, 1996).
39
Na modelagem fsica, os instrumentos so caracterizados matematicamente e,
inclusive, as no-linearidades so consideradas (STONICK; BRADLEY, 1996).
O modelo que foi utilizado neste trabalho chama-se Sntese Musical Recursiva
Excitada por Cdigo (CERMS Code-Excited Recursive Music Synthesis). Este modelo
apresenta boa expressividade e alta qualidade acstica, j que uma modelagem fsica do
instrumento baseada em um modelo computacional (STONICK; BRADLEY, 1996).
A idia bsica deste modelo separar a modelagem da excitao da
modelagem do corpo do instrumento, mudando o tom sem afetar a resposta caracterstica do
corpo (STONICK; BRADLEY, 1996).
A modelagem do corpo feita neste trabalho por meio de filtros digitais, que
podem ser facilmente projetados.

4.2 SIMULAO DE UM VIOLO

So mostradas aqui todas as etapas realizadas no Matlab para a criao e a
simulao de um filtro digital correspondente ao corpo de um violo, em que as funes e os
sinais foram fornecidos por (STONICK; BRADLEY, 1996). As funes foram modificadas
para melhor apresentao neste trabalho.

4.2.1 Projeto do corpo do violo

A funo criafiltro, que baseada na funo manual fornecida em
(STONICK; BRADLEY, 1996) e listada no item 1 do Apndice A, cria filtros de 2 ordem
em cascata, podendo-se modificar as caractersticas do filtro selecionando os pontos de
mximo ou mnimo na figura que apresenta a resposta em freqncia do corpo do instrumento
40
em questo, o violo.
Tambm fornecido em (STONICK; BRADLEY, 1996) um sinal que
corresponde a resposta ao impulso do violo, chamado impulso. So usados os ltimos 2049
pontos de um total de 4097 para o projeto do filtro digital, pois este sinal tem um pico no
ponto 2049 e deste jeito o sinal se assemelha mais a um impulso.
A funo criafiltro tem o seguinte formato:
[numo,deno]=criafiltro(impulso,num,den)

As variveis numo e deno so os coeficientes do numerador e denominador,
respectivamente, do filtro digital a ser criado. A varivel impulso a resposta ao impulso do
corpo do instrumento e num e den so os coeficientes do numerador e denominador de um
filtro possivelmente j criado, pois essa funo pode ser usada novamente caso se deseje
melhorar a resposta em freqncia. Quando este no for o caso, pode-se colocar no lugar de
cada uma dessas duas variveis, colchetes [].
importante ressaltar que essa funo cria filtros digitais de 2 grau em
cascata, correspondendo cada linha de num, den, numo e deno a um filtro de 2 grau.
Ao executar essa funo as seguintes informaes aparecem na tela:
>> [numo,deno]=criafiltro(impulse,[],[])
Digite a freqncia de amostragem: 44100
Calculando a resposta em freqncia do instrumento....
Calculando a resposta em freqncia do filtro...
Intervalo de freqncia atual:
0 45000

A seguir, apresentado o Grfico 20, que mostra o mdulo da resposta em
freqncia do corpo do violo e do filtro inicial. O mdulo da resposta em freqncia do
corpo do violo foi obtido atravs da Transformada Rpida de Fourier (OPPENHEIM;
SCHAFER; BUCK, 1999). Depois pedida a faixa de freqncia que se deseja visualizar.
Usou-se o intervalo 0 2500 f Hz, pois as maiores magnitudes esto nesse intervalo.

41
0 5 10 15 20 25 30 35 40
-40
-20
0
20
|
H
(
f
)
|

(
d
B
)
a) Resposta em freqncia
f (kHz)
0 5 10 15 20 25 30 35 40
-40
-20
0
20
f (kHz)
|
H
(
f
)
|

(
d
B
)
b) Filtro inicial

Grfico 20 - Mdulo da resposta em freqncia: a) do corpo do violo; b) do filtro inicial.

Freqncia mnima (Hz) visualizada no grfico ([] para no
modificar): 0
Freqncia mxima (Hz) visualizada no grfico ([] para no
modificar): 2500
Ser usado o intervalo de freqncia [0.000000,2500.000000] Hz a
partir de agora.

A seguir pergunta-se se o filtro atual ( ) 1 H f = deve ser refeito, igualando o
numerador a um e o denominador tambm. Neste momento no faz diferena, pois o filtro j
igual a 1.
Limpar o contedo do numerador e do denominador (H[z]=1) [n]? n
Clique no grfico para modificar o seu filtro atual.

Ento necessrio escolher um pico para o filtro. Isso feito com o uso do
mouse como mostrado no Grfico 21.
Aps escolher um pico para o filtro, informada a freqncia
0
f e a
magnitude do ponto que foi escolhido.
Freqncia (Hz): 779.989919
Magnitude (dB): 17.640000

42
0 500 1000 1500 2000 2500
-40
-30
-20
-10
0
10
20
f (Hz)
|
H
(
f
)
|

(
d
B
)
Clique no grfico para criar o filtro desejado


Corpo do Violo
Filtro que est sendo projetado
Ponto
escolhido

Grfico 21 - Mdulo da resposta em freqncia do corpo do violo e do filtro que est sendo projetado
( ) 1 H f = .

Tambm informada a banda B e a diferena de magnitude G do ponto
escolhido para o filtro atual. A banda mostrada calculada pela diferena de 3dB entre o pico
ressonante escolhido e o ponto mais prximo direita.
Diferena da magnitude (dB): 17.640000
Banda (Hz): 67.291260

Depois pedido para confirmar se o ponto aceitvel ou no e caso seja,
perguntado se deseja mudar o ganho e a banda. Os valores parecem razoveis.
Ponto aceitvel [s]? s
Com ganho de 17.640000 dB [s]? s
Com banda de 67.291260 Hz [s]? s

A seguir, mostrado o mdulo da resposta em freqncia do filtro que acabou
de ser projetado, perguntando se os valores esto bons. No Grfico 22 apresentado essa
resposta.
Os dados do filtro G ,
0
f e B se relacionam com as variveis k , B

e
0
da
43
funo de transferncia do filtro pelas seguintes equaes:

10
10
G
k

= (33)

2
s
B
B
f

= (34)

0
0
2
s
f
f

= (35)
A varivel k o ganho em vezes, B

a banda em rad/s e
0
a freqncia
de ressonncia (pico) ou de anti-ressonncia (vale) de tempo discreto.
O filtro calculado pela funo criafiltro tem a seguinte funo de
transferncia (STONICK; BRADLEY, 1996):
( )
( )
( )
0 1 2
0 1 2
1 tan 1 tan
2cos
2 2
1 tan 1 tan 1 tan
2 2 2
1 tan
2cos
2
1
1 tan 1 tan
2 2
B B
k k
z z
B B B
k
H z
B
z z
B B




| | | |
+
| |

\ \
+
| | | | | |
+ + +
| | |
\ \ \
=
| |

\
+
| | | |
+ +
| |
\ \
(36)
Esses pares de plos/zeros so bons [s]? s
Integrando esses pares de plos e zeros no filtro.

O filtro criado tem banda igual a B Hz, ou seja, a diferena entre as duas
freqncias que tm 3dB a menos que o ganho mximo igual a B Hz. apresentado depois
o mdulo da resposta em freqncia do filtro calculado e o programa pergunta se deseja
adicionar mais algum filtro em cascata.
Vai ser criado mais um filtro de 2 grau por o filtro ainda no abranger a outra
faixa de freqncia. Agora necessrio escolher outro ponto. No Grfico 23 mostrado o
ponto escolhido e no Grfico 24 apresentado o mdulo da resposta em freqncia atualizada
aps escolher esse ponto.

44
0 500 1000 1500 2000 2500
-40
-30
-20
-10
0
10
20
f (Hz)
|
H
(
f
)
|

(
d
B
)
O que foi modificado no filtro est bom?


Corpo do violo
Filtro original
Filtro projetado

Grfico 22 - Mdulo da resposta em freqncia do corpo do violo, do filtro inicial e do filtro
projetado.

Adicionar outro ponto [s]? s
Clique no grfico para modificar o seu filtro atual.

0 500 1000 1500 2000 2500
-40
-30
-20
-10
0
10
20
f (Hz)
|
H
(
f
)
|

(
d
B
)
Clique no grfico para criar o filtro desejado


Corpo do violo
Filtro modificado
Ponto
escolhido

Grfico 23 - Mdulo da resposta em freqncia do corpo do violo e do filtro modificado.


45
Freqncia (Hz): 389.364919
Magnitude (dB): 6.440000

Diferena da magnitude (dB): 5.688370
Banda (Hz): 78.057861

0 500 1000 1500 2000 2500
-40
-30
-20
-10
0
10
20
f (Hz)
|
H
(
f
)
|

(
d
B
)
O que foi modificado no filtro est bom?


Corpo do violo
Filtro anterior
Filtro anterior em cascata com o
projetado no Grfico 23

Grfico 24 - Mdulo da resposta em freqncia do corpo do violo, do filtro anterior e do filtro
anterior em cascata com o projetado no Grfico 23.

Ponto aceitvel [s]? s
Com ganho de 5.688370 dB [s]? s
Com banda de 78.057861 Hz [s]? s
Esses pares de plos/zeros so bons [s]? s
Integrando esses pares de plos e zeros no filtro.
Adicionar outro ponto [s]? n

Agora o filtro est projetado. Por fim, so mostradas mais duas janelas de
grficos: uma com o mdulo da resposta em freqncia do corpo do violo ( )
cv
H f e do
filtro criado ( )
1 f
H f , mostradas no Grfico 25, e a outra com o diagrama dos plos e zeros
no plano z , mostrada no Grfico 26.
numo =

1.03158683947960 -1.97818003276375 0.95887144752201
1.00511493795769 -1.98588034273423 0.98382508831280

46
deno =

1.00000000000000 -1.97818003276375 0.99045828700161
1.00000000000000 -1.98588034273423 0.98894002627049

0 0.5 1 1.5 2 2.5
-40
-20
0
20
|
H
c
v
(
f
)
|

(
d
B
)
a) Resposta em freqncia do corpo do violo
f (kHz)
0 0.5 1 1.5 2 2.5
-40
-20
0
20
b) Resposta em freqncia do filtro projetado
f (kHz)
|
H
f
1
(
f
)
|

(
d
B
)

Grfico 25 - Mdulo da resposta em freqncia: a) do corpo do violo; b) do filtro projetado.

0.2
0.4
0.6
0.8
1
30
210
60
240
90
270
120
300
150
330
180 0
Plos e zeros no plano z

Grfico 26 - Localizao dos plos e zeros do filtro no crculo unitrio do plano z.

Os valores dos plos e zeros do filtro so:
1,2
0.9891 j0.1103 p = ,
47
3,4
0.9929 j0.0549 p = ,
1,2
0.9588 j0.1010 z = e
3,4
0.9879 j0.0538 z = .
Pelas variveis numo e deno, verifica-se que o filtro tem a seguinte funo de
transferncia:
( )
( )( )
( )( )
1 2 1 2
1
1 2 1 2
1.0316 1.9782 0.9589 1.0051 1.9859 0.9838
1 1.9782 0.9905 1 1.9859 0.9889
f
z z z z
H z
z z z z


+ +
=
+ +
(37)

4.2.2 Comparao entre o filtro e o corpo do violo

interessante comparar a resposta ao impulso do filtro que simula o corpo do
violo com a do prprio corpo do violo. Para fazer isso foi usada a funo makedimpulse,
fornecida em (STONICK; BRADLEY, 1996) e modificada depois para melhor apresentao
neste trabalho. Esta funo listada no item 2 do Apndice A. As respostas ao impulso
[ ]
1 f
h n e [ ]
cv
h n correspondentes, respectivamente, ao filtro e ao corpo do violo so
mostradas no Grfico 27.
Ambas as respostas ao impulso normalizadas so bem parecidas, pois a
freqncia da senide amortecida prxima uma da outra. A diferena entre as duas respostas
maior somente no comeo, mas depois diminuiu bastante, como pode ser observado no
Grfico 27(c). O erro mdio quadrtico
4
1.93 10

.
48
0 0.75 1.5 2.25 3 3.75
0
0.5
1
a)
h
f
1

[
n
]
n/f
s
(milisegundos)
0 0.75 1.5 2.25 3 3.75
0
0.5
1
n/f
s
(milisegundos)
h
c
v

[
n
]
b)
0 0.75 1.5 2.25 3 3.75
0
0.5
1
n/f
s
(milisegundos)
|
h
f
1
[
n
]

-

h
c
v
[
n
]
|
c) Erro

Grfico 27 - Resposta ao impulso normalizada: a) do filtro criado; b) do corpo do violo. c) Erro.

4.2.3 Excitao do filtro: sinal produzido pelo violo

Para criar a excitao de um filtro, necessrio haver um sinal adequado para
poder simular o instrumento. Pode-se criar a excitao atravs de um sinal que se deseja ter na
sada do filtro. Nesta seo isso feito seguindo a referncia (STONICK; BRADLEY, 1996),
em que o sinal que se deseja obter a nota musical Sol (196Hz) gerada por um violo e
notada por ( )
vsol
y t . Este sinal foi fornecido por (STONICK; BRADLEY, 1996).
Conforme mostrado no Diagrama 4, o sinal ( )
vsol
y t filtrado pelo inverso do
filtro, gerando a excitao ( )
exc
s t , que a base de dados para depois reproduzir o sinal da
49
nota Sol. A excitao ( )
exc
s t ento filtrada, conforme mostrado no Digrama 5, para
reproduzir o sinal ( )
vsol
y t . Pode-se observar pelo Diagrama 4 e 5 que o sinal de entrada do
Diagrama 4 igual ao de sada do Diagrama 5, pois os dois filtros em cascata resultam em um
sinal da sada igual ao da entrada.

Diagrama 4 - Sistema para gerar a excitao ( )
exc
s t .


Diagrama 5 - Sistema para obter ( )
vsol
y t .

As funes filtroinverso e cascata modificadas de (STONICK;
BRADLEY, 1996) e listadas no item 3 e 4 do Apndice A, respectivamente, so usadas para
criar essa excitao. As funes originais so invert e cascade, respectivamente.
A funo filtroinverso usada para inverter o filtro, verificando se o
sistema tem plos e zeros dentro do crculo unitrio, ou seja, se estvel. Se for instvel, ela
calcula a nova funo de transferncia.
A funo cascata usada para gerar a sada dependendo do sinal de entrada e
do filtro de 2 ordem em cascata criado pela funo criafiltro.
A funo de transferncia calculada por filtroinverso a seguinte:

( )
( ) ( )
( )( )
1 2 1 2
1 2 1 2
1
1 1.9782 0.9905 1 1.9859 0.9889
1
1 1.9176 0.9295 1 1.9758 0.9788
f
z z z z
H z
z z z z


+ +
=
+ +
(38)
No Grfico 28 so mostrados os sinais ( )
vsol
y t e ( )
exc
s t .
50
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
-1
-0.5
0
0.5
1
a)
y
v
s
o
l
(
t
)
t (segundos)
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
-1
-0.5
0
0.5
1
b)
t (segundos)
s
e
x
c
(
t
)

Grfico 28 - a) Nota Sol gerada pelo violo; b) Entrada necessria para gerar na sada do filtro a nota
Sol do violo.

H poucas diferenas entre a nota Sol ( )
vsol
y t gerada pelo violo e a excitao
( )
exc
s t do filtro. Ouvindo os dois sons tambm se percebe uma pequena diferena. Na
excitao percebe-se que algumas freqncias esto mais fracas. Esta soluo para a excitao
exige uma grande capacidade de armazenamento, pois necessrio gravar todas as notas
possveis geradas pelo violo. Pode-se, no entanto, tambm gerar outras notas utilizando a
mesma excitao e um filtro diferente, porm isto no feito aqui.

4.2.4 Excitao do filtro: dente de serra

Outro modo de simular um instrumento musical utilizando outra excitao.
Como o corpo do violo est sendo modelado pelo filtro, espera-se que com uma entrada
adequada, a sada do filtro seja parecida com o som do violo. A corda ao ser acionada
51
produz uma freqncia fundamental e outras harmnicas, que so freqncias mltiplas da
fundamental. Um sinal dente de serra com freqncia igual a fundamental da nota pode ser
usado como excitao do filtro e a amplitude da sua n -sima harmnica no espectro
proporcional a 1 n, como visto na Seo 2.2. Para cri-lo foi elaborada uma funo que
depende de parmetros, como a freqncia de amostragem, freqncia do sinal e o nmero de
pontos desejados ou o tempo. Essa funo se chama denteserra e listada no item 5 do
Apndice A. Vale ressaltar que a funo dente de serra aqui usada diferente da usada por
(BRADLEY; CHENG; STONICK, 1995) e a sua forma temporal apresentada no Grfico
29(a).
A forma temporal da nota artificial, denominada ( )
1
y t e apresentada no
Grfico 29(b), foi criada passando um dente de serra de 196Hz ( )
1 serra
f t pelo filtro [ ]
1 f
H z .
No Grfico 30 so mostrados os espectros normalizados ( )
1 y
H f e ( )
vsol
H f
correspondentes, respectivamente, aos sinais ( )
1
y t e ( )
vsol
y t . Os espectros foram gerados
pela funo especfreq listada no item 6 do Apndice A e a partir daqui so apresentados
normalizados. Comparando os espectros de ( )
1
y t e ( )
1 serra
f t do Grfico 30, nota-se que a
maior intensidade est na 4 harmnica. Alm disso, o sinal filtrado no tem um espectro em
freqncia parecido com o da nota Sol do violo e a nota gerada no mais a mesma que a
produzida pelo violo.
Pela resposta em freqncia do corpo do violo mostrada no Grfico 25,
percebe-se que por a faixa de freqncias de maior ganho estar em torno de 784 Hz, faz com
que a harmnica de maior amplitude do dente de serra filtrado ( )
1
y t seja a 4 . Por causa
disso foi projetado outro filtro que transforma um dente de serra em um sinal com espectro
em freqncia mais parecido com o da nota Sol gerada pelo violo.
52
0 2.5 5 7.5 10 12.5 15 17.5 20
-3
-2
-1
0
1
2
t (milisegundos)
f
s
e
r
r
a
1
(
t
)
a)
0 2.5 5 7.5 10 12.5 15 17.5 20
-3
-2
-1
0
1
2
t (milisegundos)
y
1
(
t
)
b)

Grfico 29 - Sinais em funo do tempo: a) Dente de serra de 196 Hz ( )
1 serra
f t ; b) Resultado ( )
1
y t
da filtragem do dente de serra.

0 200 400 600 800 1000
0
0.2
0.4
0.6
0.8
1
a) Espectro em freqncia do sinal filtrado
|
H
y
1
(
f
)
|
f (Hz)
0 200 400 600 800 1000
0
0.2
0.4
0.6
0.8
1
b) Espectro em freqncia da nota sol do violo
|
H
v
s
o
l
(
f
)
|
f (Hz)
1
2 4
5
1 2
3
4
5

Grfico 30 - Espectro em freqncia normalizado: a) do sinal dente de serra filtrado ( )
1
y t ; b) da nota
Sol do violo. So indicadas as posies das harmnicas nos espectros.


53
4.2.5 Projeto modificado do corpo do violo

Para criar um sinal com espectro mais parecido com o som original foram
testados vrios filtros, porm o que apresentou melhores resultados foi um com amplitude
menor nos dois picos ressonantes que existiam em ( )
1 f
H f .
No Grfico 31 apresentado o mdulo das respostas em freqncia do novo
filtro projetado ( )
2 f
H f e do corpo do violo.
0 500 1000 1500 2000 2500
-40
-30
-20
-10
0
10
20
f (Hz)
|
H
(
f
)
|

(
d
B
)
Filtro Projetado


Corpo do violo
Novo filtro projetado

Grfico 31 - Mdulo da resposta em freqncia do corpo do violo e do novo filtro projetado
( )
2 f
H f .

Os dados deste filtro so:
0
383.06 f = Hz,
0
3 G = dB e
0
140 B = Hz para o
primeiro pico ressonante e
1
780 f = Hz,
1
3 G = dB e
1
140 B = Hz para o segundo pico
ressonante. A funo de transferncia desse filtro :
( )
( ) ( )
( ) ( )
1 2 1 2
2
1 2 1 2
1.0041 1.9680 0.9762 1.0041 1.9773 0.9762
1 1.9680 0.9802 1 1.9773 0.9802
f
z z z z
H z
z z z z


+ +
=
+ +
(39)
54
As respostas ao impulso normalizadas mostradas no Grfico 32 apresentam
somente a parte oscilatria, pois a resposta ao impulso do filtro tem um pico inicial de
amplitude muito maior que o restante da resposta. O erro mdio quadrtico
4
2.52 10

,
sendo um pouco maior que o da resposta impulsiva do primeiro filtro projetado.
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
-0.1
0
0.1
0.2
t (milisegundos)
h
f
2
(
t
)
a)
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
-0.1
0
0.1
0.2
t (milisegundos)
h
c
v
(
t
)
b)
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5
-0.1
0
0.1
0.2
t (milisegundos)
|
h
f
2
(
t
)

-

h
c
v
(
t
)
|
c) Erro

Grfico 32 - Resposta ao impulso normalizada: a) do filtro ( )
2 f
H z ; b) do corpo do violo. c) Erro.

A resposta ao impulso de ( )
2 f
H z parecida com a do corpo em termos de
freqncia, mas em relao a amplitude bem diferente. No Grfico 32(c) mostrado que o
erro em amplitude praticamente igual a resposta impulsiva do corpo do violo.
O espectro em freqncia ( )
2 y
H f do sinal dente de serra filtrado por
55
( )
2 f
H f mostrado no Grfico 33.
Agora o espectro em freqncia do dente de serra filtrado est um pouco mais
parecido com o da nota gerada pelo violo, pois ambos tm a 1 harmnica com maior
amplitude. J as outras harmnicas tm magnitudes diferentes.
0 200 400 600 800 1000
1
0.8
0.6
0.4
0.2
0
f (Hz)
|
H
y
2
(
f
)
|
a) Espectro em freqncia do sinal filtrado
0 200 400 600 800 1000
1
0.8
0.6
0.4
0.2
0
f (Hz)
|
H
v
s
o
l
(
f
)
|
b) Espectro em freqncia da nota Sol do violo
1
2
3 4 5
1
2 4
5

Grfico 33 - Espectro em freqncia normalizado: a) do dente de serra filtrado pelo novo filtro; b) da
nota Sol gerada pelo violo. So indicadas as posies das harmnicas nos espectros.

4.2.6 Excitao da corda

A funo gerar, modificada de (STONICK; BRADLEY, 1996), ajuda a
modelar a excitao da corda do violo ( )
corda
s t atravs de um filtro diferente do que
projetado pela funo criafiltro. Ela usa determinados parmetros da corda do violo para
gerar a excitao atravs de um filtro, o que no detalhado aqui, mas consta no item 7 do
Apndice A.
A excitao ser usada para fazer decair com o tempo o sinal ( )
2
y t , j que a
56
excitao da corda cai com o tempo. Primeiro a excitao da corda filtrada, gerando
( )
corda
s t , depois o dente de serra ( )
1 serra
f t filtrado tambm. No final os dois so
multiplicados, gerando ( )
3
y t . Utilizou-se esta soluo porque apresentou melhores resultados
experimentalmente. No Grfico 34 mostrada a forma temporal dos sinais ( )
corda
s t , ( )
3
y t e
( )
vsol
y t .
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
3
2
1
0
-1
-2
-3
t (segundos)
S
c
o
r
d
a
(
t
)
a) Excitao da corda
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
3
2
1
0
-1
-2
-3
t (segundos)
y
3
(
t
)
b) Nota gerada pelo filtro
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
-3
-2
-1
0
1
2
3
c) Nota gerada pelo violo
y
v
s
o
l
(
t
)
t (segundos)

Grfico 34 - Sinal: a) excitao da corda; b) nota Sol artificial; c) nota Sol gerada pelo violo.

A nota gerada pelo filtro parece com a nota Sol do violo, com a diferena que
ela parece mais artificial. A nota artificial ( )
3
y t e a nota Sol gerada pelo violo ( )
vsol
y t tm
o espectro em freqncia mostrado no Grfico 35 e so notados como ( )
3 y
H f e ( )
vsol
H f ,
57
respectivamente.
0 200 400 600 800 1000
1
0.8
0.6
0.4
0.2
0
f (Hz)
|
H
y
3
(
f
)
|
a) Espectro em freqncia da nota Sol artificial
0 200 400 600 800 1000
1
0.8
0.6
0.4
0.2
0
f (Hz)
|
H
v
s
o
l
(
f
)
|
b) Espectro em freqncia da nota Sol do violo
1
2 4
5
1 2
3 4 5

Grfico 35 - Espectro em freqncia normalizado: a) ( )
3 y
H f ; b) ( )
vsol
H f . So indicadas as
posies das harmnicas nos espectros.

Utilizando a excitao da corda para criar o decaimento que existe ao acionar
uma corda, verificou-se que apareceu no espectro em freqncia uma componente de sinal
contnuo com a maior magnitude, porm de todas as harmnicas, a 1 harmnica a maior
em magnitude em ambos os sinais.
Se normalizarmos com relao a 1 harmnica, as diferenas entre a 2 e 5
harmnica da nota gerada pelo violo e pelo filtro so devidas resposta em freqncia do
corpo do violo, que amplifica mais em torno da 4 harmnica e da 2 harmnica. Pelo
espectro da nota Sol do violo percebe-se que a maior ganho deveria ser em torno da 1
harmnica, o que no acontece na resposta em freqncia do corpo do violo.


58
4.2.7 Mudana de tom

As notas musicais so representadas pelas sete primeiras letras do alfabeto ( A,
B , C , D, E , F e G ), sendo conhecidas como alfabeto musical. Os seus nomes so,
respectivamente, L, Si, D, R, Mi, F e Sol. A oitava nota, conhecida como oitava, tem o
mesmo nome que a primeira, mas est um tom acima.
Para representar um semitom acima ou abaixo de uma nota adiciona-se um
smbolo aps a nota. O sustenido (
#
) indica um semitom acima da nota e o bemol (
b
) indica
um semitom abaixo da nota. Por exemplo,
b
A tem o mesmo som que o
#
G , mas est meio
tom acima da nota Sol. Existem doze semitons: A,
#
A , B , C ,
#
C , D,
#
D , E , F ,
#
F , G ,
#
G (WYATT; SCHROEDER, 1998). Tambm colocado um nmero subscrito para indicar
em que oitava est a nota. Por exemplo, a nota
2
G est uma oitava acima da nota
1
G , ou seja,
2
G mais agudo que
1
G .
Os doze semitons de cada oitava so separados logaritmicamente na
freqncia. A freqncia de uma nota
1 12
2 vezes a freqncia da nota anterior. Subir uma
oitava significa dobrar a freqncia. O Quadro 1 relaciona as notas com a sua freqncia
(STONICK; BRADLEY, 1996).
Pode ser realizada uma mudana de tom usando o processo de dizimao e
interpolao. Pelo Quadro 1 verifica-se que
4
D tem freqncia igual a 293.66 Hz. Para mudar
da nota Sol
3
G para
4
D necessrio multiplicar a freqncia da nota Sol por um fator de 1.5.
Interpolando por 2 e realizando a dizimao num fator de3, ser obtida a nota R ( )
vre
s t .
utilizada a nota Sol gerada pelo prprio violo para realizar a mudana de tom via dizimao
e interpolao.

59
Quadro 1 - As notas musicais e suas respectivas freqncias.
Nota Freqncia (Hz)
0
C
3/12
13.75*2

1
B

2 /12
27.5*2
2
C
3/12
27.5*2

2
G

10/12
55*2

3
G

10/12
110*2
#
3 3
/
b
G A

11/12
110*2
3
A

220
#
3 3
/ B
b
A
1/12
220*2
3
B

2/12
220*2
4
C

3/12
220*2
#
4 4
/
b
C D
4/12
220*2
4
D

5/12
220*2
#
4 4
/
b
D E
6/12
220*2
4
E

7 /12
220*2
4
F

8/12
220*2
#
4 4
/
b
F G
9/12
220*2
4
G

10 /12
220*2

#
8 8
/
b
D E
6/12
3520*2

No Grfico 36 mostrado o sinal ( )
re
s t e o seu respectivo espectro em
freqncia normalizado ( )
re
H f .
A durao de ( )
re
s t foi menor que ( )
vsol
s t porque foi utilizado um fator maior
para a dizimao do que para a interpolao. Ouvindo ( )
re
s t percebe-se um som mais agudo
60
e que perde qualidade por causa desse processo de mudana de tom. Pelo espectro em
freqncia desse sinal nota-se que o sinal tem freqncia fundamental aproximadamente igual
a da nota R.
0 0.1 0.2 0.3 0.4 0.5 0.6
-1
-0.5
0
0.5
1
a) Nota R
s
r
e
(
t
)
t (segundos)
0 200 400 600 800 1000
0
0.2
0.4
0.6
0.8
1
b) Espectro
|
H
r
e
(
f
)
|
f (Hz)

Grfico 36 - a) Nota R gerada pelo processo de interpolao e dizimao da nota Sol do violo e
b) seu respectivo espectro em freqncia normalizado.

4.3 SIMULAO DE UM BAIXO

Nesta seo realizada uma simulao de um baixo, em que as gravaes
foram obtidas pelo autor.
feito aqui uma aproximao da resposta ao impulso obtida do baixo com a de
um filtro. A seguir, foi realizada uma simulao para verificar o funcionamento do filtro como
se fosse o corpo do baixo. Foi usado um baixo de 5 cordas da Washburn

, modelo XB-125 e
para amplificar o som foi utilizado o amplificador WarmMusic

108rb. No processo de
gravao, alm de usar o baixo e o amplificador, usou-se o microfone SoundMax


Superbeam

ligado a placa de som Realtek

AC97.
61
A resposta ao impulso obtida registrando-se o som irradiado pelo
amplificador ao aplicar-se um impulso mecnico nas cordas (KARJALAINEN; VLIMKI;
JNOZY, 1993).

4.3.1 Espectro em freqncia

Foram obtidas seis respostas ao impulso do baixo, pois cinco correspondem a
cada corda separada e a sexta corresponde a todas acionadas ao mesmo tempo. A freqncia
de amostragem usada para capturar todos os sons originados do baixo foi de 44.1kHz.
Os espectros em freqncia das seis respostas ao impulso gravadas so
mostradas no Grfico 37. No Grfico 38 apresentado o mdulo da resposta em freqncia
das cinco cordas acionadas ao mesmo tempo e tambm da somatria do mdulo das respostas
de cada uma das cordas acionadas separadamente. Alm disso, apresentado no Grfico 38(b)
a resposta impulsiva do baixo ( )
Baixo
h t ao acionar as 5 cordas.
Cada uma das cordas possui uma resposta em freqncia diferente. A resposta
em freqncia ao acionar as cinco cordas parece diferente da somatria das respostas de cada
corda. Isso pode ter acontecido porque os sinais impulso de cada uma das cordas tm tempos
de durao diferentes, obtendo espectros com nmero de pontos diferentes, como pode ser
observado no Grfico 37.
62
0 50 100 150 200 250 300 350 400 450 500 550 600
55
45
35
25
15
5
-5
f (Hz)
|
H
(
f
)
|

(
d
B
)
Resposta em freqncia


0 50 100 150 200 250 300 350 400 450 500 550 600
-5
5
15
25
35
45
55
f (Hz)
|
H
(
f
)
|

(
d
B
)


Sol R L
Mi Si 5 cordas

Grfico 37 - Mdulo da resposta em freqncia das 5 cordas do baixo acionadas separadas (Sol, R,
L, Mi e Si) e acionadas juntas (5 cordas).

0 100 200 300 400 500 600
0
25
50
75
|
H
(
f
)
|

(
d
B
)
a) Resposta em freqncia


f (Hz)
0 0.05 0.1 0.15 0.2 0.25 0.3
-1
-0.5
0
0.5
1
t (segundos)
h
B
a
i
x
o
b) Resposta impulsiva do baixo
5 cordas Somatria

Grfico 38 - a) Mdulo da resposta em freqncia do baixo e da somatria das respostas de cada
corda; b) Resposta impulsiva do baixo ao acionar as 5 cordas.
63
4.3.2 Projeto do filtro

Foi projetado um filtro para gerar o som de todas as cordas e a sua resposta em
freqncia apresentada no Grfico 39, bem como a resposta em freqncia do baixo ao
acionar as 5 cordas.
0 100 200 300 400 500 600
0
20
40
60
f (Hz)
|
H
(
f
)
|

(
d
B
)
a) Resposta em freqncia do baixo
0 100 200 300 400 500 600
0
20
40
60
b) Resposta em freqncia do filtro projetado
f (Hz)
|
H
(
f
)
|

(
d
B
)

Grfico 39 - Mdulo da resposta em freqncia: a) das 5 cordas do baixo; b) do filtro projetado.

Foram usados 8 filtros de 2 grau em cascata e como excitao usou-se o sinal
dente de serra.
Inicialmente gerou-se um dente de serra com freqncia igual a da nota Si
(
1
B ). O espectro do sinal filtrado apresentado no Grfico 40(a). Alm disso, mostrado no
Grfico 40(b) o mdulo do espectro em freqncia da nota Si gerada pelo baixo. O sinal
filtrado correspondente a nota Si tem espectro em freqncia ( )
1
H f e o da nota Si gerada
pelo baixo ( )
si
H f .
Pelo Grfico 40 verifica-se que os dois sinais so parecidos no espectro,
64
apresentando amplitudes semelhantes na faixa entre a 2 e 5 harmnica.
0 100 200 300 400 500 600
0
0.25
0.5
0.75
1
f (Hz)
|
H
1
(
f
)
|
a)
0 100 200 300 400 500 600
0
0.25
0.5
0.75
1
f (Hz)
|
H
s
i
(
f
)
|
b)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7

Grfico 40 - Espectro em freqncia da nota Si produzida: a) pelo filtro; b) pelo baixo. So indicadas
as posies das harmnicas nos espectros.

Foi gerado tambm um dente de serra correspondente a nota Sol (
2
G ), para
verificar se o filtro bom para gerar todas as notas. O mdulo dos espectros em freqncia da
nota Sol gerada pelo filtro e pelo baixo, notados por ( )
2
H f e ( )
sol
H f , respectivamente,
so mostrados no Grfico 41. A nota Sol usada aqui corresponde a corda mais aguda do baixo
usado.
Analisando o Grfico 41 constata-se que o filtro no gerou um sinal com
espectro em freqncia parecido com o do sinal gerado pelo baixo. Esta diferena pode ter
acontecido por no ter sido considerada a fase. No entanto, a nota produzida pelo filtro
continua Sol (
2
G ).
65
0 100 200 300 400 500 600
0
0.25
0.5
0.75
1
f (Hz)
|
H
2
(
f
)
|
a)
0 100 200 300 400 500 600
0
0.25
0.5
0.75
1
f (Hz)
|
H
s
o
l
(
f
)
|
b)
1
2
3
4
1
2
3 4 5 6

Grfico 41 - Espectro em freqncia da nota Sol produzida: a) pelo filtro; b) pelo baixo. So indicadas
as posies das harmnicas nos espectros.

Com base nisso foi feito o projeto de um filtro que corresponda ao corpo do
baixo ao acionar a corda Si.

4.3.3 Projeto do filtro para a corda Si

Aps obter-se a resposta ao impulso ( )
si
h t da corda Si, foi modelado um filtro
( )
Fsi
H z que seleciona as faixas de freqncia mais relevantes da nota Si que a corda Si
produz. Para isso foram necessrios sete filtros de 2 ordem em cascata. Os dados do filtro
so:
1
f =91.7627 Hz,
1
45 G = dB,
1
8.0750 B = Hz;
2
f =61.6936 Hz,
2
39.4737 G = dB,
2
8.0750 B = Hz;
3
f =37.8456 Hz,
3
8.9398 G = dB,
3
7 B = Hz;
4
f =125.9793Hz,
4
47.6608 G = dB,
4
13.4583 B = Hz;
5
f =156.0484 Hz,
5
46.4912 G = dB,
5
10.7666 B = Hz;
6
f =197.5230Hz,
6
36.5497 G = dB,
6
16.1499 B = Hz;
7
f =142.5691Hz,
7
17.8363 G = dB,
66
7
5.3833 B = Hz. So mostrados o mdulo das respostas em freqncia ( )
si
H f do corpo do
baixo ao acionar a corda Si e ( )
Fsi
H f do filtro projetado no Grfico 42.
As respostas ao impulso de ( )
Fsi
H f e ( )
si
H f so mostradas no Grfico 43.
0 100 200 300 400
0
20
40
60
f (Hz)
|
H
s
i
(
f
)
|

(
d
B
)
a)
0 100 200 300 400
0
20
40
60
b)
f (Hz)
|
H
F
s
i
(
f
)
|

(
d
B
)

Grfico 42 - Mdulo da resposta em freqncia: a) do corpo do baixo ao acionar a corda Si; b) do
filtro projetado.

0 0.02 0.04 0.06 0.08 0.1 0.12 0.14
-1
-0.5
0
0.6
1.2
t (segundos)
h
s
i
(
t
)
a)
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14
-1
-0.5
0
0.6
1.2
t (segundos)
h
F
s
i
(
t
)
b)

Grfico 43 - Resposta ao impulso: a) ( )
si
h t da corda Si do baixo; b) ( )
Fsi
h t do filtro ( )
Fsi
H f .
67
As respostas ao impulso ( )
si
h t e ( )
Fsi
h t so bem semelhantes na freqncia,
contendo 5 picos nos primeiros 0.04 s. J a partir desse tempo h uma diferena visvel nas
formas da onda.

4.3.4 Dente de serra como excitao do filtro

O comportamento do filtro foi tambm analisado com relao a uma excitao
dente de serra, com freqncia fundamental de 30.87 Hz, que corresponde a nota Si (
1
B ).
Essa nota gerada pelo baixo e a resposta do filtro ao sinal dente de serra de 30.87 Hz so
mostradas no Grfico 44 e foram notadas como ( )
si
y t e ( )
Fsi
y t , respectivamente.
O sinal gerado pelo filtro tem uma amplitude muito elevada se comparada com
a nota Si do baixo. Isso devido ao ganho do filtro e por isso necessrio normalizar as suas
amplitudes antes de reproduzi-lo nas caixas de som. Alm disso, faltam algumas freqncias
pelo fato de que entre 0s e 0.05s h oito picos em ( )
si
y t e seis em ( )
Fsi
y t .
0 0.05 0.1 0.15 0.2
-1
-0.5
0
0.5
1
t (segundos)
y
s
i
(
t
)
a)
0 0.05 0.1 0.15 0.2
-200
-100
0
100
200
t (segundos)
y
F
s
i
(
t
)
b)

Grfico 44 - a) Nota Si ( )
si
y t gerada pelo baixo; b) Sinal filtrado ( )
Fsi
y t .
68
O mdulo dos espectros em freqncia normalizados ( )
si
H f e ( )
Fsi
H f de
( )
si
y t e ( )
Fsi
y t , respectivamente, so mostrados no Grfico 45.
0 100 200 300 400
1
0.75
0.5
0.25
0
f (Hz)
|
H
F
s
i
(
f
)
|
a) Espectro em freqncia do dente de serra filtrado
0 100 200 300 400
1
0.75
0.5
0.25
0
f (Hz)
|
H
s
i
(
f
)
|
b) Espectro em freqncia da nota Si do baixo
2
3
4
5
6
7
2
1
3 4
5 6

Grfico 45 - Espectro em freqncia: a) do dente de serra filtrado ( )
Fsi
y t ; b) da nota Si do baixo
( )
si
y t . So indicadas as posies das harmnicas nos espectros.

Pode-se ver que as duas maiores amplitudes de ambos os espectros
normalizados esto em torno da mesma freqncia. O corpo do baixo atenuou muito a
freqncia fundamental da nota Si, o que tambm aconteceu na filtragem do sinal dente de
serra. A 2 e 5 harmnicas tm amplitudes semelhantes nos espectros de ( )
si
y t e ( )
Fsi
y t ,
porm a 6 harmnica tem uma diferena maior. A partir da 7 harmnica as amplitudes so
praticamente desprezveis nos dois espectros.
Ouvindo os dois sinais, nota-se que eles so parecidos, porm existe uma
diferena entre eles. Esta causada pelo decaimento natural, ou seja, o sinal gerado pelo
baixo diminui de intensidade com o tempo, enquanto que no sinal filtrado isso no ocorre.
69
5 CONCLUSES

Neste trabalho mostrou-se que os filtros digitais e o sinal de excitao dente de
serra podem reproduzir convenientemente o som de um instrumento musical.
Nos Captulos 2 e 3 foram abordados assuntos importantes para a realizao
das simulaes, como os sistemas de tempo discreto, a Srie de Fourier, a Transformada Z e
os filtros digitais. No Captulo 4 foram mostradas as simulaes de dois instrumentos
musicais: o violo e o baixo.
No caso do violo foram necessrias duas simulaes. A primeira apresentou
resultados aqum dos desejados, como discutido na Seo 4.2.4, pgina 50. O som gerado
pelo dente de serra filtrado no apresentou um espectro em freqncia parecido com o do som
real.
J na segunda simulao quando se aplicou um dente de serra e se considerou o
decaimento natural da nota, o espectro do sinal de sada apresentou uma componente contnua
com maior amplitude, seguida da freqncia fundamental. No entanto, como mostrado no
Grfico 35, as outras harmnicas no se pareciam em ambos os sinais devido a resposta em
freqncia do corpo do violo, como discutido na Seo 4.2.6, pgina 55. A resposta do
instrumento vista no Grfico 31 mostra que a 4 harmnica tinha o maior ganho, mas
analisando pelo espectro da nota
3
G do violo verifica-se que essa freqncia no tem a
maior amplitude, como mostrado no Grfico 35. Neste caso a nota gerada pelo filtro
corresponde a desejada, porm ainda assim no foi possvel gerar um sinal com espectro em
freqncia mais parecido. Somente a 1 harmnica, por ter a maior amplitude se comparada
s outras harmnicas, foi mais parecida com a 1 harmnica da nota real.
O uso da dizimao e da interpolao para mudar da nota
3
G para
4
D sem a
necessidade de armazenar as duas notas, mostrou-se funcional e acabou gerando a nota
70
correta. Alm disso, o sinal modificado tem menos amostras e por causa disso h a
necessidade de armazenar durante mais tempo as notas.
Os resultados da simulao do baixo, discutidos na Seo 4.3.2, pgina 63 e
Seo 4.3.4, pgina 67, mostram que um filtro digital pode ser usado para reproduzir
adequadamente os sons gerados por um baixo, porm seus coeficientes precisam ser ajustados
para cada nota. Acusticamente os sinais obtidos na sada da cascata de filtros alimentados pelo
dente de serra e o som real gerado pelo instrumento so parecidos. O dente de serra mostrou
ser uma boa soluo para a excitao do filtro. O decaimento natural no domnio do tempo
que ocorre ao acionar uma corda no foi levado em conta, pois precisa de uma anlise mais
detalhada de como modelar esse efeito nas cordas do baixo. No entanto, importante ressaltar
que nesta simulao foram usados mais filtros em cascata do que foi usado nas duas
simulaes do violo.
Este trabalho buscou contribuir para a sntese de instrumentos musicais usando
o Matlab como ferramenta para o projeto e simulao de filtros digitais.
Foi publicado um Trabalho de Iniciao Cientfica nos anais do XXV Simpsio
Brasileiro de Telecomunicaes (SBrT 2007), realizado entre 03-06 de Setembro de 2007.
Este artigo e o pster apresentado neste Simpsio esto colocados no Apndice B.
Com este trabalho, foi possvel entender melhor como funcionam os sistemas
de tempo discreto e como a Transformada Z ajuda na anlise desse sistema. Com isso pde-se
ver tambm como muda a resposta em freqncia de um filtro ao modificar os plos e zeros.
Como trabalhos futuros pode-se analisar o problema do decaimento natural no
domnio do tempo do som gerado pelos instrumentos musicais. Alm disso, a anlise dos
diferentes estilos de acionar as cordas do instrumento tambm interessante, pois modifica a
dinmica da produo do som, alterando a resposta em freqncia do instrumento. Alguns
artigos interessantes abordam esses assuntos, como (BRADLEY; CHENG; STONICK, 1995;
71
KARJALAINEN; VLIMKI; JNOZY, 1993; SAYEGH; TENORIO, 1998; TRAUBE;
SMITH III, 2001).
72
REFERNCIAS
BELLANGER, M. G. Digital processing of signals: theory and practice. Traduo John C. C.
Nelson. 3. ed. Chichester: John Wiley, 2000.

BRADLEY, K.; CHENG, M.; STONICK, V. L. Automated analysis and computationally
efficient synthesis of acoustic guitar strings and body. IEEE ASSP Workshop On
Applications of Signal Processing to Audio and Acoustics, p. 238-241, 1995.

DINIZ, P. S. R.; DA SILVA, E. A. B.; NETTO, S. L. Digital signal processing: system
analysis and design. Traduo Luiz Wagner Pereira Biscainho. Porto Alegre: Bookman, 2004.

GIROD, B.; RABENSTEIN, R.; STENGER, A. Sinais e sistemas. Traduo Bernardo Severo
da Silva Filho. Porto Alegre: LTC, 2003.

HAYKIN, S.; VEEN, B. V. Sinais e sistemas. Traduo Jos Carlos Barbosa dos Santos.
Porto Alegre: Bookman, 1999.

JACKSON, L. B. Digital filters and signal processing. 3. ed. Boston: Kluwer Academic,
1999.

KARJALAINEN, M.; VLIMKI, V.; JNOZY, Z. Toward high-quality sound synthesis of
the guitar and string instruments. Proceedings of the ICUC, p. 56-63, 1993.

LATHI, B. P. Signal Processing and Linear Systems. New York: Oxford University Press,
1998.

MITRA, S.K. Digital signal processing: a computer based approach. 2.ed. Boston: McGraw-
Hill, 2001.

OPPENHEIM, A. V.; SCHAFER, R. W.; BUCK, J. R. Discrete-time signal processing. 2. ed.
New Jersey: Prentice Hall, 1999.

PROAKIS, J. G.; MANOLAKIS, D. G. Digital signal processing: Principles, algorithms and
applications. 3. ed. New Jersey: Prentice Hall, 1996.

SAYEGH, S. I.; TENORIO, M. F. Inverse viterbi algorithm as learning procedure and
application to optimization in the string fingering problem. IEEE International Conference of
Neural Networks, v. 2, p. 491-498, 1998.

STONICK, V. L.; BRADLEY, K. Labs for signals and systems using Matlab. Toronto: The
PWS BookWare Companion Series, 1996.

TRAUBE, C.; SMITH III, J. O. Extracting the fingering and the plucking points on a guitar
string from a recording. IEEE Workshop on the Applications of Signal Processing to Audio
and Acoustics, p. 7-10, 2001.

WYATT, K.; SCHROEDER, C. Harmony & Theory: A comprehensive source for all
musicians. Milwaukee: Musicians Institute Press Hal Leonard Corporation, 1998.
73
APNDICE A FUNES DO MATLAB

1. Projeto do filtro modificado da funo manual de (STONICK; BRADLEY, 1996)

function [numo,deno] = criafiltro(impulso,num,den);
% [numo,deno] = criafiltro(impulso,num,den);
%
% Cria um filtro baseado na resposta ao impulso dada.
% num,den: filtro de 2 ordem em cascata.
% Para criar um filtro novo substitua num e den por []
% Cada linha corresponde a um filtro de 2 ordem, sendo que
% os coeficientes do filtro so armazenados da seguinte maneira:
%
% [ numa(0) numa(1) numa(2) ]
% [ numb(0) numb(1) numb(2) ]
% [ ....... ....... ....... ]
% [ numN(0) numN(1) numN(2) ]
%
% Essa configurao usada pelas funes cascata e makedimpulse.
% ATENO:
% Esta funo baseada e modificada de
% 'Labs for signals and systems using Matlab' - V. STONICK & K.
BRADLEY

fs = input('Digite a freqncia de amostragem: ');
clf;
hold off;
format long;
disp('Calculando a resposta em freqncia do instrumento....');
namostras = length(impulso);

%% Torna o comprimento do impulso uma potncia de 2
for k = 1:100,
if 2^k > namostras,
elevadoa = k;
break;
end
end
namostras = 2^elevadoa;
N = 2*namostras;
impulso = [impulso(:)' zeros(1,namostras - length(impulso))];

%% resposta em freqncia
espectro = abs(fft(impulso,N));
espectrodb = 20*log10(espectro);
w = (0:N-1)*2*pi/N;
f = linspace(0,fs,length(w));

%% calcula filtro atual
disp('Calculando a resposta em freqncia do filtro...')
[n,m] = size(num);
if length(num)==0 & length(den)==0
h = ones(size(w));
74
n = 0;
% Ajusta para vetorial os coeficientes do filtro (h), se no
esto dessa forma.
% Coeficientes do filtro de 2 grau em cada linha.
else if n==3 & m ~= 3,
num = num';
den = den';
n = m;
h = ones(size(w));
end
end
% Se tiver filtros de 2grau em cascata, calculada a resposta em
% freqncia do filtro total
if n>=1
h=freqz(num(1,:),den(1,:),w,'whole');
end
for k = 2:n,
h = h.*freqz(num(k,:),den(k,:),w,'whole');
end
% Grficos do espectro da resposta impulsiva do instrumento e do
filtro
% atual
figure(1);
clf;
subplot(2,1,1)
plot(f,espectrodb);
xlabel('f (Hz)','fontname','Times New Roman','fontsize',12);
ylabel('|H(f)| (dB)','fontname','Times New Roman','fontsize',12);
title('Resposta em freqncia','fontname','Times New
Roman','fontsize',12)
grid on
Ax = axis;
axis([0 max(f) Ax(3) Ax(4)])
subplot(2,1,2)
plot(f,20*log10(abs(h)),'k');
xlabel('f (Hz)','fontname','Times New Roman','fontsize',12);
ylabel('|H(f)| (dB)','fontname','Times New Roman','fontsize',12);
title('Filtro atual','fontname','Times New Roman','fontsize',12)
grid on
axis([0 max(f) Ax(3) Ax(4)])
pause
disp('Intervalo de freqncia atual:');
disp(Ax(1:2));
Ax(2) = max(f); % feito isto para no dar problema caso no
modificar a freq. max.
fmin = input('Freqncia mnima (Hz) visualizada no grfico ([] para
no modificar): ');
if ~isempty(fmin),
Ax(1) = fmin;
else
fmin = Ax(1);
end
fmax = input('Freqncia mxima (Hz) visualizada no grfico ([] para
no modificar): ');
if ~isempty(fmax),
Ax(2) = fmax;
75
else
fmax = Ax(2);
end
string = sprintf('Ser usado o intervalo de freqncia [%f,%f] Hz a
partir de agora.',Ax(1),Ax(2));
disp(string);
temp = find(f >= fmin);
ptfmin = temp(1); % (indice) freqncia mnima mais prxima do que
se quer visualizar
temp = find(f >= fmax);
ptfmax = temp(1); % (indice) freqncia mxima mais prxima do que
se quer visualizar
subplot(2,1,1)
plot(f(ptfmin:ptfmax),espectrodb(ptfmin:ptfmax));
xlabel('f (Hz)','fontname','Times New Roman','fontsize',12);
ylabel('|H(f)| (dB)','fontname','Times New Roman','fontsize',12);
title('Resposta em freqncia','fontname','Times New
Roman','fontsize',12)
axis(Ax);
grid on
subplot(2,1,2)
plot(f(ptfmin:ptfmax),20*log10(abs(h(ptfmin:ptfmax))),'k'); % filtro
atual
xlabel('f (Hz)','fontname','Times New Roman','fontsize',12);
ylabel('|H(f)| (dB)','fontname','Times New Roman','fontsize',12);
title('Filtro criado','fontname','Times New Roman','fontsize',12)
grid on
axis(Ax);
reseta = input('Limpar o contedo do numerador e do denominador
(H[z]=1) [n]? ','s');
if ~isempty(reseta) & reseta ~= 'n',
disp('Numerador e denominador iguais a 1. H[z]=1')
num = [];
den = [];
h = ones(size(f));
subplot(2,1,2)
plot(f(ptfmin:ptfmax),20*log10(abs(h(ptfmin:ptfmax))),'k');
%filtro atual
axis(Ax);
xlabel('f (Hz)','fontname','Times New Roman','fontsize',12);
ylabel('|H(f)| (dB)','fontname','Times New
Roman','fontsize',12);
title('Filtro criado','fontname','Times New
Roman','fontsize',12)
grid on
pause
end
raizesnum = [];
raizesden = [];
for k = 1:n,
raizesnum = [raizesnum roots(num(k,:))'];
raizesden = [raizesden roots(den(k,:))'];
end
for i=1:1000
if i>=2
figure(1)
76
hold off
subplot(2,1,2)
plot(f(ptfmin:ptfmax),20*log10(abs(h(ptfmin:ptfmax))),'g');
%filtro atual
axis(Ax);
xlabel('f (Hz)','fontname','Times New Roman','fontsize',12);
ylabel('|H(f)| (dB)','fontname','Times New
Roman','fontsize',12);
title('Filtro criado','fontname','Times New
Roman','fontsize',12)
grid on
pause
close(2)
end
figure(2)
plot(f(ptfmin:ptfmax),20*log10(abs(h(ptfmin:ptfmax))),'g');
%filtro atual
hold on;
plot(f(ptfmin:ptfmax),espectrodb(ptfmin:ptfmax)); % espectro do
impulso
axis(Ax);
xlabel('f (Hz)','fontname','Times New Roman','fontsize',12);
ylabel('|H(f)| (dB)','fontname','Times New
Roman','fontsize',12);
title('Clique no grfico para criar o filtro
desejado','fontname','Times New Roman','fontsize',12)
grid on
%pause()
disp('Clique no grfico para modificar o seu filtro atual.');
[x1,y] = ginput(1);
stringfreq = sprintf('\nFreqncia (Hz): %f',x1);
disp(stringfreq);
if(y > 0)
gdb=y;
else
gdb = -100;
end
fprintf('Magnitude (dB): %f\n\n',gdb);
pt = find(f >= x1);
pt = pt(1); % ponto mais prximo do w clicado
gthere = gdb - 20*log10(abs(h(pt))); % diferena entre esse
ponto e o filtro atual
fprintf('Diferena da magnitude (dB): %f\n',gthere);
if(gthere > 0)
temp = find(espectrodb(pt:ptfmax) < gdb - 3); % 3dB de
diferena do mximo ou mnimo ganho para achar a banda
else
temp = find(espectrodb(pt:ptfmax) > gdb + 3);
end
bpt = temp(1) + pt; % indice de 'f' que corresponde a diferena
3dB
bw = w(bpt) - w(pt); % banda entre o pico/entalhe e a diferena
de 3dB
bwf = bw*fs/(2*pi);
fprintf('Banda (Hz): %f\n\n',bwf); % Banda em Hz
aceita = input('Ponto aceitvel [s]? ','s');
77
if isempty(aceita) | aceita == 's',
string = sprintf('Com ganho de %f dB [s]? ',gthere);
inp = input(string,'s');
gdb = gthere;
if ~isempty(inp)
if inp(1) ~= 's'
gdb = input('Ganho desejado (dB): ');
end
end
essabanda = sprintf('Com banda de %f Hz [s]? ',bwf);
inp2 = input(essabanda,'s');
if ~isempty(inp2)
if inp2(1) ~= 's'
bwf = input('Banda (Hz): ');
bw = 2*pi*bwf/fs;
end
end
% Clculo do novo filtro
x = 2*pi*x1/fs;
novonum = zeros(1,3);
novoden = zeros(1,3);
keq = 10^(gdb/20);
abw = (1-tan(bw/2))/(1+tan(bw/2));
ggain = 0.5*(1+keq+abw-keq*abw);
novoden(1) = 1;
novoden(2) = -2*cos(x) * (1/(1+tan(bw/2)));
novoden(3) = abw;
novonum(1) = 1;
novonum(2) = (-2*cos(x)*(1+abw))/(1+keq+abw-keq*abw);
novonum(3) = (abw+keq*abw+1-keq)/(abw-keq*abw+1+keq);
novonum=novonum*ggain;
% Salva o antigo filtro, caso precise depois
antigasraizesnum = raizesnum;
antigasraizesden = raizesden;
antigonum = num;
antigoden = den;
antigoh = h;
% Junta o novo filtro
raizesnum = [raizesnum roots(novonum)'];
raizesden = [raizesden roots(novoden)'];
num = [num ; novonum];
den = [den ; novoden];
h = h .* freqz(novonum,novoden,w);
% Verifica se o filtro o desejado
figure(2)
hold on;
plot(f(ptfmin:ptfmax),20*log10(abs(h(ptfmin:ptfmax))),'r');
title('O que foi modificado no filtro est
bom?','fontname','Times New Roman','fontsize',12)
axis(Ax);
grid on
bons = input('Esses pares de plos/zeros so bons [s]?
','s');
acao = ['Integrando esses pares de plos e zeros no
filtro.'];
% Descarta as ltimas modificaes no filtro, se desejado
78
if ~isempty(bons)
if bons(1) ~= 's',
acao = ['Desfazendo os pares de plos/zeros.'];
raizesnum=antigasraizesnum;
raizesden=antigasraizesden;
num = antigonum;
den = antigoden;
h = antigoh;
end
end
disp(acao)
end
adicionar = input('Adicionar outro ponto [s]? ','s');
if ~isempty(adicionar)
if adicionar(1) == 'n',
break;
end
end
end
% Plota a resposta em freqncia do instrumento no 1 grfico e
% a resposta em freqncia do filtro atual no 2 grfico
pause
close(2)
subplot(2,1,2)
hold off
plot(f(ptfmin:ptfmax),20*log10(abs(h(ptfmin:ptfmax))),'k');
title('Filtro projetado','fontname','Times New
Roman','fontsize',12);
xlabel('f (Hz)','fontname','Times New Roman','fontsize',12)
ylabel('|H(f)| (dB)','fontname','Times New Roman','fontsize',12)
axis(Ax);
grid on
pause
% Plano z
figure(2);
polar(angle(raizesnum),abs(raizesnum),'go');
hold on;
polar(angle(raizesden),abs(raizesden),'rx');
title('Plos e zeros no plano z','fontname','Times New
Roman','fontsize',12);
grid on
% Coeficientes do(s) filtro(s) de 2ordem em cascata
numo = num;
deno = den;











79
2. Resposta ao impulso do filtro modificado da funo makedimpulse de (STONICK:
BRADLEY, 1996)

function respimp = makedimpulse(num,den,amostras);
% saida = makedimpulse(num,den,amostras);
%
% Calcula a resposta ao impulso de sistemas de
% tempo discreto de segunda ordem em cascata.
% Usa dimpulse para achar a primeira resposta.
% Amostras o nmero de amostras que se deseja
% ter na resposta calculada.
% ATENO:
% Esta funo baseada e modificada de
% 'Labs for signals and systems using Matlab' - V. STONICK & K.
BRADLEY

% n o nmero de linhas
[n,m]=size(num);

temp = dimpulse(num(1,:),den(1,:),amostras);

if n ~= 1,
respimp = cascata(num(2:n,:),den(2:n,:),temp);
respimp = respimp';
else
respimp = temp';
end

3. Inverso do filtro modificado da funo invert de (STONICK; BRADLEY, 1996)

function [novonum, novoden] = filtroinverso(num,den);

% [novonum,novoden] = filtroinverso(num,den);
%
% Gera os coeficientes do filtro inverso,
% modificando os plos e zeros caso estes
% estejam fora do crculo unitrio.
% ATENO:
% Esta funo baseada e modificada de
% 'Labs for signals and systems using Matlab' - V. STONICK & K.
BRADLEY

[n,m]=size(num);
novoden = zeros(size(den));
novonum = zeros(size(den));
% Verifica cada um dos filtros de 2 ordem
for l=1:n,
g = num(l,1);
raizesnum = roots(num(l,:));
raizesden = roots(den(l,:));
modden = abs(raizesden);
modnum = abs(raizesnum);
% se o mdulo do plo ou do zero for maior que 1, calculado um
novo
% mdulo do plo ou do zero, conforme visto neste Trabalho
80
for k = 1:length(modden),
if modden(k) > 1
raizesden(k) =
1/abs(raizesden(k))*cos(angle(raizesden(k)))+j*1/abs(raizesden(k))*s
in(angle(raizesden(k)));
disp('Invertendo o plo.');
end
if modnum(k) > 1
raizesnum(k) =
1/abs(raizesnum(k))*cos(angle(raizesnum(k)))+j*1/abs(raizesnum(k))*s
in(angle(raizesnum(k)));
disp('Invertendo o zero.');
end
end
% gera os polinmios com os novos valores do zero e do plo
novonum(l,:) = real(poly(raizesden));
novoden(l,:) = real(poly(raizesnum));
end

4. Clculo da sada em funo da excitao dos filtros em cascata modificado da
funo cascade de (STONICK; BRADLEY, 1996)

function saida = cascata(num,den,entrada);

% saida = cascata(num,den,entrada);
%
% Implementa filtros de segunda ordem em cascata
% chamando a funo filter sucessivamente no sinal
% de entrada.
%
% num,den: coeficientes do filtro (gerado em criafiltro).
% entrada: sinal a ser filtrado
% ATENO:
% Esta funo baseada e modificada de
% 'Labs for signals and systems using Matlab' - V. STONICK & K.
BRADLEY

[n,m]=size(num);

% Numerador e denominador nulos
if n==0 & m==0,
saida = entrada;
return;
end

if num(1,1) == 0 & num(1,2) == 0,
% Filtro s com ganho
saida = filter(num(1,3),den(1,3),entrada);
elseif num(1,1) == 0,
% Filtro com um plo/zero
saida = filter(num(1,2:3),den(1,2:3),entrada);
else
saida = filter(num(1,:),den(1,:),entrada);
end

81
if n ~= 1,
for k = 2:n,
if num(k,1) == 0 & num(k,2) == 0,
% Filtro s com ganho
saida = filter(num(k,3),den(k,3),saida);
elseif num(k,1) == 0,
% Filtro com um plo/zero
saida = filter(num(k,2:3),den(k,2:3),saida);
else
saida = filter(num(k,:),den(k,:),saida);
end
end
end

5. Cria um dente de serra

function [tf,yf]=denteserra(fs,f,pts,tempo)
% Cria um dente de serra em funo das freqncias do sinal e de
amostragem
% [t,dente]=denteserra(fs,f,pontos,tempo);
% t = tempo na forma de vetor
% dente = dente de serra 50% crescente, 50% decrescente
% fs = freqncia de amostragem
% f = freqncia desejada do dente de serra
% pontos = n de pontos
% tempo = tempo total do dente de serra
% se definir pontos>0 e tempo>0, a funo usa o nmero de pontos
% pontos = 0 indica que para considerar o tempo e vice-versa

% nmero de amostras por perodo do dente de serra
if tempo == 0 || (tempo>0 && pts>0)
per = ceil(fs/f);
nper = ceil(pts/per);
elseif pts == 0
per = ceil(fs/f);
nper = ceil(tempo*f);
else tempo == 0 && pts == 0
return
end
y = linspace(-1,1,per);
yf = [];
for i = 2:nper
yf = [yf y];
end
if nper == 1
yf = y;
end
yf = [yf -1];
tf = linspace(0,length(yf)/fs,length(yf));






82
6. Espectro em freqncia

function [H,f]=especfreq(sinal,fs)
% [H,f]=especfreq(sinal,fs)
% Esta funo retorna o espectro em freqncia de um sinal.
% H a amplitude do espectro
% f so as freqncias do espectro
% sinal o que se deseja analisar
% fs a freqncia de amostragem
namostras = length(sinal);
%% Torna o comprimento do sinal uma potncia de 2
for k = 1:100,
if 2^k > namostras,
elevadoa = k;
break;
end
end
namostras = 2^elevadoa;
N = 2*namostras;
impulso = [sinal(:)' zeros(1,namostras - length(sinal))];
% Calcula a transformada de Fourier
H = abs(fft(impulso,N));
f = (0:N-1)*fs/N;


7. Modelagem da excitao da corda do violo modificado da funo generate de
(STONICK; BRADLEY, 1996)

function [output] = gerar(bodynum, bodyden,len);
% output = gerar(bodynum, bodyden, len);
%
% Sintetiza a resposta do modelo do violo calculando a resposta
% da corda e ento filtrando pelo corpo do violo.
% Use valores nulos [] de bodynum e bodyden para criar a excitao
% da corda.
%
% bodynum, bodyden: coeficientes do filtro do corpo do violo
% len: comprimento em amostras do sinal que se deseja gerar.
% ATENO:
% Esta funo baseada e modificada de
% 'Labs for signals and systems using Matlab' - V. STONICK & K.
BRADLEY

% parmetros adequados para fazer o som da corda

fprintf('Gerando os dados...\n');

% Dados da modelagem da corda...

Th = 222;
Bh = [ 0.01181465712323 -0.09931185121095 0.62296411573858
0.54818909354767 -0.09517274292938 0.01151672773084 ];
Tv = Th;
Bv = Bh;
Dh = -.99275;
83
Dv = -.945;
Mh = .24;
Mv = .75;
Zh = 7;
Zv = 65;
freq = 195.5931;

% Denominadores para filtros da corda
horden = [1 zeros(1,Th) Bh*Dh/(sum(Bh))];
verden = [1 zeros(1,Tv) Bv*Dv/sum(Bv)];


% Fourier Synthesis of string excitation
t = 0:Th+5;
exc1 = 0;
for q = 1:50,
exc1 =
exc1+(sin(2*q*pi/Zh)/((2*q*pi/Zh)*(2*q*pi/Zh)))*sin(2*q*freq*pi*t/44
100);
end;

% Actual string excitation: 1 period and zeros
hexc = [exc1 zeros(1,len-length(exc1))]';
hexc = hexc / max(hexc)*Mh;

% Fourier Synthesis of vertical excitation
t = 0:3*(Th+6)-3;
exc1 = 0;
for q = 1:50,
exc1 =
exc1+(sin(2*q*pi/Zh)/((2*q*pi/Zh)*(2*q*pi/Zh)))*sin(2*q*freq*pi*t/44
100);
end;

% Creation of vertical excitation
exc3 = (exc1+randn(size(exc1))/4000).*(1-exp(-
.006*(1:length(exc1))))*0.5;
exc3 = exc3 / max(abs(exc3)) * Mv;
vexc = [exc3 zeros(1,len-length(exc3))]';


disp('Filtering data...')

% Filtering operations: string models
horiz = filter(1,horden,hexc)';
vert = filter(1,verden,vexc)';

% Run the body filter
output = cascata(bodynum,bodyden,horiz+vert);
84
APNDICE B ARTIGO PUBLICADO NOS ANAIS DO XXV SIMPSIO
BRASILEIRO DE TELECOMUNICAES (SBrT 2007)








Artigo publicado nos anais do XXV Simpsio Brasileiro de Telecomunicaes, Recife, 03 a
06 de Setembro de 2007

XXV SIMPSIO BRASILEIRO DE TELECOMUNICAES SBrT 2007, 03-06 DE SETEMBRO DE 2007, RECIFE, PE
ResumoEste trabalho de iniciao cientfica apresenta os
resultados da simulao por meio de filtro digitais de um instru-
mento musical de corda. A resposta em freqncia do filtro mo-
delada a partir da Transformada de Fourier da resposta ao impul-
so do instrumento obtida batendo-se em uma das cordas. A com-
parao entre as sadas do filtro e do corpo do instrumento indica
que este pode ser efetivamente modelado por filtros digitais.

Palavras-chaveProcessamento de sinais musicais, modelagem
de instrumentos musicais, filtros digitais.

AbstractThis short paper presents results of the simulation by
digital filters of a musical string instrument. The frequency
response of the filter is modeled using the Fourier Transform of
the instruments impulse response obtained beating in one of the
strings. The comparison between filter and real instrument body
outputs indicates that it can be effectively modeled by digital
filters.

KeywordsMusical signal processing, musical instruments
modeling, digital filters.
I. INTRODUO
A modelagem de instrumentos musicais utilizando filtros di-
gitais tem gerado muitos artigos interessantes [1-3]. O objetivo
deste trabalho modelar digitalmente um baixo, criando uma
entrada e um filtro que juntos gerem um sinal semelhante ao
produzido pela corda Si deste instrumento. Os filtros digitais
seletivos em freqncia tm a mesma funo que o corpo do
baixo ao receber um som: deixar passar determinadas faixas de
freqncia e remover outras [4].
Sintetizadores simulam vrios instrumentos musicais, como
baixo, guitarra e violo. Para isso, usam filtros que criam uma
determinada nota dependendo do instrumento selecionado pelo
usurio [5]. Notas so os sons produzidos por instrumentos mu-
sicais e recebem nomes de acordo com sua freqncia funda-
mental. As sete notas principais so: D, R, Mi, F, Sol, L e
Si.
O uso de filtros digitais para a sntese de notas musicais tem
uma srie de vantagens prticas. Entre elas, destaca-se a facili-
dade em se mudar as caractersticas naturais de um instrumen-
to, permitindo assim maiores variaes do som gerado [5].
Alm disso, podem-se simular diversos instrumentos musicais
usando o mesmo equipamento, bastando para isso ajustar os
coeficientes dos filtros para cada caso.
Na Seo II examinada a obteno da resposta em freqn-
cia do instrumento em questo, o baixo. Na Seo III discuti-
do o projeto do filtro que simula o corpo do instrumento. Na
Seo IV so descritas simulaes que permitem comparar o

Gustavo de Melo Valeira e Marcio Eisencraft, Escola de Engenharia,
Universidade Presbiteriana Mackenzie, So Paulo, Brasil, E-mails:
gusval@mackenzie.br, marcioft@mackenzie.br.
desempenho do filtro frente ao instrumento musical. Por fim, na
Seo V, so traadas concluses acerca dos resultados deste
trabalho.
II. RESPOSTA EM FREQNCIA DO INSTRUMENTO
Uma estimativa da resposta impulsiva do corpo do baixo ao
se acionar a corda Si foi obtida batendo-se rapidamente na cor-
da Si de um baixo Washburn

XB-125, de forma a simular um


impulso. Para capturar este som foi usado um amplificador
WarmMusic

108rb e um microfone SoundMax

Superbeam


ligado a entrada de microfone de uma placa de som Realtek


AC97 com freqncia de amostragem de 44.1 kHz. O sinal
normalizado obtido, ( )
si
h t , mostrado na Figura 1.
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14
-1
-0.5
0
0.5
1
h
s
i
(
t
)
t (segundos)


Fig. 1. Resposta ao impulso da corda Si do baixo.


Com a resposta impulsiva ( )
si
h t possvel obter a resposta
em freqncia deste sistema, para que posteriormente projete-
se um filtro digital que corresponda de forma satisfatria a essa
resposta. Para isso foi usada a Transformada Rpida de Fourier
[4] e obteve-se a resposta em freqncia ( )
si
H f , cujo mdulo
mostrado na Figura 2.
0 50 100 150 200 250 300 350 400 450
0
20
40
60
f (Hertz)
|
H
s
i
(
f
)
|

(
d
B
)


Fig. 2. Mdulo da resposta em freqncia da corda Si.

III. PROJETO DO FILTRO
O espectro em freqncia da Figura 2 usado como base pa-
ra projetar um filtro digital correspondente ao corpo do baixo
ao ser acionada a corda Si. Foram usados filtros de 2 ordem
em cascata para simular o corpo do instrumento, como feito em
[5].
Pela Figura 2 verifica-se que este espectro possui muitos va-
les anti-ressonantes e picos ressonantes. Dessa forma, neces-
Modelagem e simulao de instrumentos musicais
utilizando filtros digitais
Gustavo de Melo Valeira e Marcio Eisencraft
XXV SIMPSIO BRASILEIRO DE TELECOMUNICAES SBrT 2007, 03-06 DE SETEMBRO DE 2007, RECIFE, PE
srio projetar um filtro que selecione as faixas de freqncia
mais relevantes das notas que a corda Si produz. Foram usados
sete filtros em cascata usando o mtodo de projeto descrito em
[5], em que foi modelado um violo.
O mdulo da resposta em freqncia ( )
Fsi
H f do filtro pro-
jetado mostrado na Figura 3. Esta resposta semelhante da
Figura 2 nas faixas de freqncia mais relevantes, ou seja, que
contribuem mais para a resposta acstica do instrumento.
0 50 100 150 200 250 300 350 400 450
0
20
40
60
f (Hertz)
|
H
F
s
i
(
f
)
|

(
d
B
)


Fig. 3. Espectro em freqncia do filtro projetado.

IV. SIMULAES
Como o corpo do baixo est sendo modelado pelo filtro, es-
pera-se que com uma entrada adequada, a sada do filtro seja
um sinal semelhante ao som original do baixo.
A corda ao ser tocada produz uma freqncia fundamental e
outras harmnicas, que so freqncias mltiplas da
fundamental. A excitao gerada pela vibrao da corda no
corpo do instrumento simulada aqui por um sinal dente de
serra com freqncia igual fundamental da nota. A amplitude
da n -sima harmnica no espectro deste sinal proporcional a
1 n [4]. O sinal dente de serra foi escolhido porque mostrou
ser uma boa soluo experimentalmente.
O resultado da filtragem ( )
Filtro
y t de um dente de serra de
30.87 Hz, que a freqncia fundamental da nota Si mais gra-
ve do baixo, apresentado na Figura 4(b). Na Figura 4(a)
mostrada a forma temporal do sinal ( )
si
y t relativo nota Si
produzida pelo baixo.
0 0.05 0.1 0.15 0.2
-1
-0.5
0
0.5
1
t (segundos)
y
s
i
(
t
)
a)
0 0.05 0.1 0.15 0.2
-1
-0.5
0
0.5
1
t (segundos)
y
F
i
l
t
r
o
(
t
)
b)


Fig. 4. a) Nota Si produzida pelo baixo; b) sinal gerado pelo filtro.

Na Figura 5 apresentado o espectro em freqncia dos dois
sinais. As duas maiores amplitudes de ambos os espectros nor-
malizados esto em torno da mesma freqncia. O corpo do
baixo atenuou muito a freqncia fundamental da nota Si, o que
tambm aconteceu na filtragem do sinal dente de serra. A 2 e
5 harmnicas tm amplitudes semelhantes em ambos os espec-
tros ( )
si
Y f e ( )
Filtro
Y f , porm a 6 harmnica apresenta uma
diferena maior. A partir da 7 harmnica as amplitudes so
praticamente desprezveis nos dois espectros.
Ouvindo os dois sinais, nota-se que eles so parecidos, po-
rm existe uma diferena entre eles. Esta causada pelo
decaimento natural, ou seja, o sinal gerado pelo baixo diminui
de intensidade com o tempo, enquanto que no sinal filtrado isso
no ocorre.
0 50 100 150 200 250 300 350 400
1
0.75
0.5
0.25
0
f (Hertz)
|
Y
s
i
(
f
)
|
a)
0 50 100 150 200 250 300 350 400
1
0.75
0.5
0.25
0
f (Hertz)
|
Y
F
i
l
t
r
o
(
f
)
|
b)
2
3 4
5
6 7
2
1
3 4 5
6


Fig. 5. Espectro em freqncia normalizado: a) nota Si do baixo ( )
si
y t ;
b) dente de serra filtrado ( )
Filtro
y t . So indicadas as posies das harmnicas
em cada espectro.

V. CONCLUSES
Os resultados apresentados nas Figuras 4 e 5 mostram que
um filtro digital pode modelar adequadamente o corpo de um
baixo. Acusticamente os sinais obtidos na sada da cascata de
filtros alimentados pelo dente de serra e o som real gerado pelo
instrumento so parecidos. O dente de serra mostrou ser uma
boa soluo para a excitao do filtro.
O decaimento natural no domnio do tempo que ocorre ao
tocar uma corda no foi levado em conta, pois precisa de uma
anlise mais detalhada de como modelar esse efeito nas cordas
do instrumento. Este problema est em estudo atualmente.
REFERNCIAS
[1] K. Bradley, M. Cheng and V. L. Stonick, Automated analysis and
computationally efficient synthesis of acoustic guitar strings and body,
IEEE ASSP Workshop on Applications of Signal Processing to Audio
and Acoustics, p. 238-241, Outubro 1995.
[2] M. Karjalainen, V. Vlimki and Z. Jnosy, Toward high-quality sound
synthesis of the guitar and string instruments, Proceedings of the ICUC,
p. 56-63, Setembro 1993.
[3] C. Traube and J. O. Smith III, Extracting the fingering and the plucking
points on a guitar string from a recording, IEEE Workshop on the
Applications of Signal Processing to Audio and Acoustics, p. 7-10,
2001.
[4] A. V. Oppenheim, R. W. Schafer and J. R. Buck, Discrete-time signal
processing. Prentice Hall, 1999.
[5] V. Stonick and K. Bradley, Labs for signals and systems using Matlab.
PWS BookWare Companion Series, 1996.







1 Objetivos
Modelar digitalmente a corda Si de um baixo
Obter um filtro digital e uma entrada que juntos
gerem um sinal semelhante ao produzido pelo
baixo
2 Resposta em freqncia do
instrumento
Bateu-se rapidamente na corda Si do baixo
para obter a resposta impulsiva
Resposta em freqncia a TF da resposta
impulsiva
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14
-1
-0.5
0
0.5
1
h
s
i
(
t
)
t (segundos)
Resposta impulsiva
0 50 100 150 200 250 300 350 400 450
0
20
40
60
f (Hertz)
|
H
s
i
(
f
)
|

(
d
B
)
Resposta em freqncia
3 Projeto do filtro
Filtro reproduz caractersticas do baixo nas
freqncias acusticamente mais relevantes
Usados 7 filtros de 2 ordem em cascata
projetados como descrito por Stonick e Bradley
(1996)
0 50 100 150 200 250 300 350 400 450
0
20
40
60
f (Hertz)
|
H
F
s
i
(
f
)
|

(
d
B
)
Resposta em freqncia do filtro

4 Simulaes
Foi usado como excitao do filtro um sinal
dente de serra com freqncia igual a da nota
0 0.05 0.1 0.15 0.2
-1
-0.5
0
0.5
1
y
s
i
(
t
)
Nota Si produzida pelo baixo
0 0.05 0.1 0.15 0.2
-1
-0.5
0
0.5
1
t (segundos)
y
F
i
l
t
r
o
(
t
)
Sinal gerado pelo filtro
0 50 100 150 200 250 300 350 400
1
0.75
0.5
0.25
0
|
Y
s
i
(
f
)
|
Espectro em freqncia da nota Si do baixo
0 50 100 150 200 250 300 350 400
1
0.75
0.5
0.25
0
f (Hertz)
|
Y
F
i
l
t
r
o
(
f
)
|
Espectro em freqncia do dente de serra filtrado
2
3 4
5 6
7
2
1
3
4 5
6
5 Concluses
Acusticamente o sinal obtido na sada do filtro e
o som real gerado pelo instrumento so
parecidos
Sinal dente de serra mostrou ser boa soluo
para a excitao do filtro
necessrio uma anlise mais detalhada de
como modelar o decaimento natural no domnio
do tempo



Gustavo de Melo Valeira e Marcio Eisencraft
{gusval; marcioft}@mackenzie.br
Escola de Engenharia
Universidade Presbiteriana Mackenzie
So Paulo - Brasil

M
MMO
OOD
DDE
EEL
LLA
AAG
GGE
EEM
MM E
EE S
SSI
IIM
MMU
UUL
LLA
AA

O
OO D
DDE
EE I
IIN
NNS
SST
TTR
RRU
UUM
MME
EEN
NNT
TTO
OOS
SS M
MMU
UUS
SSI
IIC
CCA
AAI
IIS
SS
U
UUT
TTI
IIL
LLI
IIZ
ZZA
AAN
NND
DDO
OO F
FFI
IIL
LLT
TTR
RRO
OOS
SS D
DDI
IIG
GGI
IIT
TTA
AAI
IIS
SS

Você também pode gostar