CURSO DE ENGENHARIA DE CONTROLE E AUTOMAC
¸ ˜
AO
HERMAN LUCAS DOS SANTOS
ESPECIFICAC
¸ ˜
OES DE PROJETO E DESENVOLVIMENTO DE
PLATAFORMA PARA ARRAY PROCESSING
TRABALHO DE CONCLUS ˜
AO DE CURSO
CORN ´ELIO PROC ´OPIO
ESPECIFICAC
¸ ˜
OES DE PROJETO E DESENVOLVIMENTO DE
PLATAFORMA PARA ARRAY PROCESSING
Trabalho de conclus˜ao de curso apresentada ao Curso Superior de Engenharia de Controle e Automac¸˜ao da Universidade Tecnol´ogica Federal do Paran´a como requisito parcial para obtenc¸˜ao do t´ıtulo de Engenheiro de Controle e Automac¸˜ao.
Orientador: Prof. Dr. Wagner Endo
Co-orientador: Prof. Dr. Vander Teixeira Prado
CORN ´ELIO PROC ´OPIO
Departamento Acadêmico de Elétrica
Curso de Engenharia de Controle e Automação
FOLHA DE APROVAÇÃO
Herman Lucas dos Santos
Especificações de projeto e desenvolvimento de plataforma para array processing
Trabalho de conclusão de curso apresentado às 15:50hs do dia 18/11/2016 como requisito parcial para a obtenção do título de Engenheiro de Controle e Automação no programa de Graduação em Engenharia de Controle e Automação da Universidade Tecnológica Federal do Paraná. O candidato foi arguido pela Banca Avaliadora composta pelos professores abaixo assinados. Após deliberação, a Banca Avaliadora considerou o trabalho aprovado.
______________________________________________ Prof(a). Dr(a). Wagner Endo - Presidente (Orientador)
______________________________________________ Prof(a). Dr(a). Vander Teixeira Prado - (Coorientador)
______________________________________________ Prof(a). Dr(a). Cristiano Marcos Agulhari - (Membro)
______________________________________________ Prof(a). Dr(a). María Eugenia Dajer - (Membro)
da minha formac¸˜ao acadˆemica de graduac¸˜ao em Engenharia de Controle e Automac¸˜ao.
Em primeiro lugar agradec¸o ao professor Wagner Endo que depositou sua confianc¸a em orientar-me desde o in´ıcio de 2014, culminando neste trabalho.
Agradec¸o aos professores que participaram deste per´ıodo, em especial ao Cristiano
Agulhari e Paulo Scalassara, os quais considero amigos pessoais, pelo apoio durante grande parte do per´ıodo de graduac¸˜ao, auxiliando com a grande carga de conhecimento que possuem,
al´em dos momentos de descontrac¸˜ao. Agradec¸o fortemente tamb´em `a professora Maria Eugˆenia e o professor Vander Prado, a primeira por aceitar ser parte de minha banca e o segundo por ter
aceitado `a coorientac¸˜ao de meu TCC.
Aos meus colegas do Laborat´orio de Processamento de Sinais e Aplicac¸˜oes, LPSA,
em especial ao Murilo Cinel, que foram companhia em grande parte do trabalho, al´em do de-senvolvimento de outras atividades acadˆemicas conjuntas.
Gostaria de agradecer tamb´em aos colegas da primeira turma de Engenharia de
Con-trole e Automac¸˜ao, sobretudo `a Veridiana, Guilherme Pelz e Thiago Honorato, que prestaram aux´ılio em momentos mais dif´ıceis da graduac¸˜ao e se tornaram grandes amigos meus.
Aos meus pais, Sonia e Pedro, dos quais dispensa coment´arios a gratid˜ao que tenho por
tudo que fizeram, e meus irm˜aos, Lincoln e Raiza, que sempre estiveram presentes e prestaram apoio em todos aspectos de minha vida.
`
A minha querida namorada e companheira, Tha´ıs Maciel Navarro, pelo apoio moral,
psicol´ogico e companhia prestada nesta fase final, que fora fundamental para meu crescimento pessoal e, consequentemente, deste trabalho.
Meus amigos que estiveram presentes durante estes cinco anos, sobretudo `a meu amigo Jo˜ao Ricardo a.k.a. Parkour, que fizeste companhia em diversos dias e auxiliou em v´arios
aspectos da vida pessoal.
Que esta s´ıntese de meus conhecimentos adquiridos e esforc¸os realizados n˜ao seja rela-cionado apenas a mim, mas cada uma das pessoas citadas que contribu´ıram com esta realizac¸˜ao.
TAFORMA PARA ARRAY PROCESSING. 63 f. Trabalho de conclus˜ao de curso – Departa-mento acadˆemico de El´etrica , Universidade Tecnol´ogica Federal do Paran´a. Corn´elio Proc´opio, 2016.
Neste trabalho busca-se aplicar t´ecnicas de processamento de sinais para m´ultiplos sensores, Array Processing. S˜ao apresentados conceitos e motivac¸˜oes da utilizac¸˜ao destes sensores em cen´arios reais, assim como exposta uma fundamentac¸˜ao te´orica descritiva da utilizac¸˜ao des-tes sistemas. A partir de ent˜ao, o trabalho se divide em duas pardes-tes: simulac¸˜oes e pr´aticas, com a exposic¸˜ao das operac¸˜oes mais triviais que s˜ao realizadas com este sistema. Prop˜oe-se a implementac¸˜ao de um sistema a partir de um kit FPGA, com confecc¸˜ao de sistemas de aquisic¸˜ao de dados e transmiss˜ao `a um processador offline, assim como expl´ıcitos os circuitos utilizados. Como resultados, s˜ao apresentadas as operac¸˜oes realizadas tanto no sistema simulado quanto no sistema real. Ao fim, s˜ao estabelecidos coment´arios acerca dos resultados obtidos no trabalho.
–
FIGURA 3 Circuito somador 8 bits. . . 26 –
FIGURA 4 Kit ALTERA® DE2-115 . . . 28 –
FIGURA 5 Microfone de eletreto 2 terminais . . . 29 –
FIGURA 6 Polarizac¸˜ao simples de microfone de eletreto . . . 29 –
FIGURA 7 Pinagem ADC0832. . . 30 –
FIGURA 8 Carta de tempos do dispositivo ADC0832. . . 30 –
FIGURA 9 Diagrama de fluxo do sistema proposto. . . 32 –
FIGURA 10 An´alise gr´afica da resoluc¸˜ao de Beampattern para (a) 2 elementos, (b) 8 elementos, (c) 32 elementos e (d) 128 elementos para ˆangulos de -90 a 90º. 34 –
FIGURA 11 An´alise gr´afica da resoluc¸˜ao de Beampattern para espac¸amento de (a) 1 λ , (b) 12λ , (c) 14λ e (d) 14λ para ˆangulos de -90 a 90º. . . 35 –
FIGURA 12 Fluxograma do algoritmo de implementac¸˜ao de filtragem espacial por Tapered Beamformerproposto . . . 36 –
FIGURA 13 Sinais atrasados sinteticamente em perspectiva aumentada para aplicac¸˜ao virtual de filtragem por Tapered Beamformer. Acima: sinal de interesse. Abaixo: sinal de interferˆencia. . . 37 –
FIGURA 14 Acima: Beampattern do filtro projetado. Abaixo: Representac¸˜ao com-pleta dos sinais de origem gravados . . . 38 –
FIGURA 15 Resultado gr´afico para aplicac¸˜ao de Tapered Beamformer em uma composic¸˜ao de sinal de interesse a 45º e sinal de interferˆencia a -20º com passos de 45º 39 –
FIGURA 16 Comparac¸˜ao de sa´ıda de aplicac¸˜ao de Tapered Beamformer para 16, 64, 256 e 1024 elementos na extrac¸˜ao de um sinal de interesse utilizando uma janela de Chebychev com atenuac¸˜ao de 300 dB . . . 40 –
FIGURA 17 Circuito de amplificac¸˜ao para microfone de eletretos utilizando BC547. 42 –
FIGURA 18 Circuito para impress˜ao de offset de tens˜ao utilizando TL081. . . 43 –
FIGURA 19 Esquem´atico de ligac¸˜ao a ser utilizado no ADC0832. . . 44 –
FIGURA 20 Ligac¸˜ao do transceptor ZT232 com o chip FPGA. . . 44 –
FIGURA 21 Sinal de clock gerado pelo FPGA visto no oscilosc´opio. . . 45 –
FIGURA 22 Sinal de CS gerado pelo FPGA visto no oscilosc´opio . . . 46 –
FIGURA 23 Placa de circuito impresso gerada para funcionamento e amplificac¸˜ao do sinal dos microfones . . . 47 –
FIGURA 24 Placa de circuito impresso gerada para condicionamento do sinal dos microfones . . . 48 –
FIGURA 25 Placa de circuito impresso gerada para ligac¸˜ao dos conversores A/D . . . 49 –
FIGURA 26 Fluxo do programa embarcado no FPGA . . . 50 –
FIGURA 27 Sinais adquiridos no primeiro experimento . . . 51 –
FIGURA 28 Sinais adquiridos no segundo experimento . . . 52 –
–
FPGA Field Programable Gate Array FIR Finite Impulse Response
LPSA Laborat´orio de Processamento de Sinais e Aplicac¸˜oes LSB Less Significant Bit
MSB Most Significant Bit
MUSIC Multiple Signal Classification
SDRAM Synchronous Dynamic Random Access Memory SNR Signal-to-Noise Ratio
SRAM Static Random Access Memory ULA Uniform Linear Array
2 PROBLEMA DE PESQUISA . . . 12 3 JUSTIFICATIVA . . . 13 4 OBJETIVOS . . . 14 4.1 OBJETIVO GERAL . . . 14 4.2 OBJETIVOS ESPEC´IFICOS . . . 14 5 FUNDAMENTAC¸ ˜AO TE ´ORICA . . . 15
5.1 ARRAY PROCESSING APLICADO A ULA . . . 15
5.2 MODELAGEM DO ULA . . . 17
5.3 FORMAC¸ ˜AO DO BEAMPATTERN E RELAC¸ ˜AO SINAL-RU´IDO (SNR) . . . 18
5.3.1 Computac¸˜ao da relac¸˜ao sinal-ru´ıdo do arranjo . . . 19
5.4 T ´ECNICAS DE FILTRAGEM ESPACIAL . . . 21
5.4.1 Conceitos de Spatial Matched Filter . . . 21
5.4.2 Tapered Beamformer . . . 22
5.5 VOZ HUMANA: CONCEITOS E CAPTAC¸ ˜AO . . . 23
5.6 ESTIMATIVA DE DIREC¸ ˜AO DE CHEGADA . . . 24
5.7 DEFINIC¸ ˜AO DE ARQUITETURA . . . 25
6 MATERIAIS E M ´ETODOS . . . 27
6.1 MATERIAIS . . . 27
6.1.1 Plataforma de aquisic¸˜ao e processamento . . . 27
6.2 MICROFONES DE ELETRETO . . . 27
6.3 CONVERSORES A/D ADC0832 . . . 28
6.4 M ´ETODOS . . . 30
7 TESTES E ENSAIOS PRELIMINARES . . . 33
7.1 N ´UMERO DE ELEMENTOS E ESPAC¸ AMENTO . . . 33
7.2 APLICAC¸ ˜AO VIRTUAL DE TAPERED BEAMFORMER . . . 34
7.3 APLICAC¸ ˜AO VIRTUAL DA CORRELAC¸ ˜AO CRUZADA PARA ESTIMAR DOA 39 8 IMPLEMENTAC¸ ˜AO PR ´ATICA DO SISTEMA PROPOSTO . . . 41
8.1 CONDICIONAMENTO DO SINAL E INTERFACE SENSOR-CONVERSOR . . . 41
8.1.1 Condicionamento do Sinal . . . 41
8.1.2 Esquem´atico de Ligac¸˜ao ADC0832 . . . 43
8.1.3 Protocolo serial RS-232 . . . 44
8.1.4 Interfaceamento dos conversores A/D com o FPGA . . . 45
9 RESULTADOS E DISCUSS ˜OES . . . 47
9.1 DESCRIC¸ ˜AO DO EXPERIMENTO . . . 47
9.1.1 Configurac¸˜ao do FPGA . . . 49
9.2 SINAIS CAPTADOS . . . 50
9.3 DISCUSS ˜OES ACERCA DOS RESULTADOS OBTIDOS . . . 52
10 CONCLUS ˜AO . . . 54
REFER ˆENCIAS . . . 55
1 INTRODUC¸ ˜AO
O estudo da t´ecnica de Beamforming tem se intensificado com as in´umeras aplicac¸˜oes poss´ıveis que estas possuem. Esta t´ecnica ´e proveniente do arranjo entre v´arios sensores que
captam sinais simultaneamente, e tal modelagem ´e denominada Array Processing. As proprie-dades desta t´ecnica possibilitam a aplicac¸˜ao em diversas ´areas, como em radares, sonares,
esti-mativa de direc¸˜ao de chegada fontes emissoras de sinais, sismologia e bioengenharia (TREES, 2004).
As informac¸˜oes que podem ser extra´ıdas por meio deste m´etodo s˜ao diversas, como
um sinal de interesse em um meio ruidoso, ou a localizac¸˜ao de uma fonte emissora deste sinal dentre outras fontes de interferˆencia (NAIDU, 2009). Esta t´ecnica pode ser implementada em
diversas geometrias para os sensores, denominados elementos, no espac¸o e cada uma destas possui particularidades, dependendo da aplicac¸˜ao com que esta ser´a utilizada.
O estudo recente da t´ecnica se mostra muito ´util principalmente na bioengenharia
(YAN et al., 2015), (JAISWAL et al., 2009), (ROFFEH; EINAV, 1995) e telecomunicac¸˜oes (WINTERS, 1993), (CHOI et al., 2013), (QI et al., 2011). Com o avanc¸o computacional tem-se
t´ecnicas cada vez mais requintadas para filtragem espacial e detecc¸˜ao de direc¸˜ao de chegada, que s˜ao dois dos escopos deste trabalho.
Em ambientes industriais, comerciais ou domiciliares existem diversos elementos que podem emitir ru´ıdos, que costumam ser estacion´arios, como o ru´ıdo de uma m´aquina el´etrica,
de um motor de combust˜ao, conversas, sendo estas sinais emitidos por pessoas, e diversas outras fontes. Os ru´ıdos que s˜ao emitidos periodicamente ou a mudanc¸a de um ru´ıdo conhecido pode
trazer diversas informac¸˜oes sobre o funcionamento de m´aquinas, por exemplo. Por´em, para o caso de uma m´aquina, simplesmente o ru´ıdo pode ser suficiente para extrac¸˜ao do componente
que causa uma falha mecˆanica por um indiv´ıduo com grande experiˆencia, al´em de uma boa audic¸˜ao. Aplicando este m´etodo de processamento a detecc¸˜ao ´e feita de forma computacional,
com precis˜ao da localizac¸˜ao da pec¸a que causou a falha.
Outro exemplo de aplicac¸˜ao ´e encontrar a posic¸˜ao de um atirador em um campo de batalha. Ao apertar o gatilho o estouro da p´olvora ir´a gerar uma grande onda sonora que pode
ser captada, processada e ent˜ao obter a localizac¸˜ao aproximada de onde houve o disparo. A aplicac¸˜ao pode tamb´em ser muito ´util para seguranc¸a, como em um ambiente onde h´a diversos
sinais sonoros e deseja-se monitorar o conte´udo de uma direc¸˜ao espec´ıfica,´e poss´ıvel isolar os sinais desta direc¸˜ao e at´e mesmo localizar algum que seja de desejo.
Visa-se neste trabalho o estudo e construc¸˜ao de um ULA - Uniform Linear Array. Esta
geometria linear traz os elementos dispostos em linha com espac¸amentos iguais, onde tem-se como entrada os sinais captados pelos diversos sensores e como sa´ıda a soma dos sinais
des-locados e ponderados. S˜ao consideradas diferenc¸as na modelagem para cada ´area de aplicac¸˜ao (TREES, 2004), mas os fundamentos da construc¸˜ao do arranjo e a aplicac¸˜ao do Beamformer
obedecem a um padr˜ao.
O estudo ser´a feito atrav´es de sinais de ´audio. Estes sinais s˜ao captados por
micro-fones e atuam em uma certa banda de frequˆencia. Fontes emissoras de sinais sonoros podem ser diversas, como a voz humana, ru´ıdos de um motor ou reverberac¸˜ao em um construto.
Exis-tem diversos modos de se tratar estes problemas, como em Otsuka et al. (2014), que aplicam inferˆencias de Bayes em um problema de an´alise de audit´orio. ´E apresentada tamb´em em
Ger-men et al. (2014) a aplicac¸˜ao desta t´ecnica para an´alise de falhas em m´aquinas de induc¸˜ao, onde utiliza-se um arranjo de microfones circulares.
As diversas aplicac¸˜oes em que podem ser empregadas Array Processing fica
depen-dente apenas da habilidade e imaginac¸˜ao do projetista e h´a uma grande quantidade de t´ecnicas que torna vi´avel a utilizac¸˜ao da mesma, seja para processamento em tempo real ou posterior,
como criac¸˜ao de imagens 2D e at´e 3D baseadas nos sinais recebidos.
Este trabalho est´a organizado da seguinte forma: nos Cap´ıtulos 2 e 3 traz-se a motivac¸˜ao e
justi-ficativa do estudo proposto. No Cap´ıtulo 4 tem-se os objetivos finais a serem alcanc¸ados com o projeto. O Cap´ıtulo 5 ´e dedicado a fundamentac¸˜ao te´orica para o desenvolvimento e embarque
do projeto. Os materiais e metodologia de construc¸˜ao propostos s˜ao estudados no Cap´ıtulo 6. Tem-se alguns resultados te´oricos desenvolvidos por simulac¸˜oes para consolidac¸˜ao do
funcio-namento da proposta no Cap´ıtulo 7. O Cap´ıtulo 8 apresenta caracter´ısticas acerca do sistema desenvolvido e no cap´ıtulo seguinte, 9, s˜ao mostrados os resultados obtidos. Ao fim, Cap´ıtulo
2 PROBLEMA DE PESQUISA
Problemas de localizac¸˜ao de fontes emissoras de sinal s˜ao comuns em aplicac¸˜oes reais. Em ambientes industriais tem-se diversos ru´ıdos que s˜ao dificilmente distingu´ıveis por um ser
humano ou por um simples sensor. Estes ru´ıdos podem indicar anomalias de funcionamento em processos e a localizac¸˜ao de anormalidades podem otimizar o custo e eficiˆencia de manutenc¸˜ao.
Outro ambiente com grande aplicac¸˜ao ´e na formac¸˜ao de imagens 2D e 3D. Utilizando diver-sos sensores ultrassˆonicos faz-se imagens com precis˜ao muito maior do que quando utiliza-se
apenas um destes e desloca-o manualmente. A aplicac¸˜ao de arrays tamb´em traz grandes vanta-gens no campo de telecomunicac¸˜oes, uma vez que estas utilizam antenas. Antenas direcionadas
mecanicamente tem precis˜ao reduzida quando comparado ao direcionamento eletrˆonico que ´e poss´ıvel com um arranjo de elementos. Portanto, devida a suas diversas aplicac¸˜oes em diversos
campos, a aplicac¸˜ao de arranjos de sensores se mostra muito vantajosa em relac¸˜ao a m´etodos que utilizam um simples sensor e possibilita outras aplicac¸˜oes al´em da melhoria da resoluc¸˜ao.
3 JUSTIFICATIVA
A grande aplicac¸˜ao em diversas ´areas de Array Processing traz diversas aplicac¸˜oes no mundo real. O emprego desta t´ecnica aliado a um bom processamento estat´ıstico de dados torna
poss´ıvel a utilizac¸˜ao da mesma em diversas ´areas e possibilidades de localizac¸˜ao de fontes emis-soras, filtragem espacial de sinais e potencializac¸˜ao de de sensores. S˜ao comuns aplicac¸˜oes para
estimac¸˜ao e prevenc¸˜ao de falhar mecˆanicas em m´aquinas el´etricas e automotivas, radares, can-celamento de eco, definir localizac¸˜ao espec´ıfica de um emissor em um ambiente extremamente
4 OBJETIVOS
4.1 OBJETIVO GERAL
Desenvolver uma plataforma para aquisic¸˜ao e processamento de dados que garanta
paralelismo de aquisic¸˜ao de diversos sensores e processamento offline para aplicac¸˜ao de Array Processing.
4.2 OBJETIVOS ESPEC´IFICOS
• Estudar t´ecnicas e m´etodos de aquisic¸˜ao de dados;
• Estudar t´ecnicas de Beamforming convencional para realizac¸˜ao de filtragem;
• Estabelecer t´ecnicas para detecc¸˜ao de estimativa de localizac¸˜ao de fonte emissora sonora;
• Aplicar de t´ecnicas de filtragem e detecc¸˜ao de direc¸˜ao de chegada em sinais sint´eticos produzidos atrav´es de um sinal real;
• Estudar e estabelecer arquiteturas para aquisic¸˜ao paralela e processamento de sinais em tempo real;
• Adquirir dados reais para p´os processamento em computador a fim de viabilizar o em-prego da t´ecnica no arranjo montado;
• Embarcar processamento em um sistema;
5 FUNDAMENTAC¸ ˜AO TE ´ORICA
Neste cap´ıtulo s˜ao apresentados conceitos de processamento paralelo de dados. S˜ao vistas nas sec¸˜oes aqui presentes conceitos de Array Processing direcionados a um arranjo de
sensores em linha igualmente espac¸ados, aplicac¸˜ao de filtragem espacial, conceitos de aquisic¸˜ao de dados sonoros e arquiteturas computacionais.
5.1 ARRAY PROCESSINGAPLICADO A ULA
Um sinal ´e uma onda que se propaga em um meio com uma velocidade c e tem um
comprimento de onda λ . Um sinal cont´em informac¸˜oes de sua fonte emissora e atrav´es da utilizac¸˜ao de arranjos de sensores pode-se extrair a localizac¸˜ao desta fonte (MANOLAKIS et
al., 2005). Em ambientes reais um sinal dificilmente se propaga de forma livre sem ru´ıdos e interferˆencias, estes podendo ter magnitude muito maior que um sinal de interesse, fazendo
com que o mesmo fique mascarado. Para extrac¸˜ao do sinal em um meio, utiliza-se a filtragem espacial por meio de um arranjo linear uniforme.
Um Arranjo Linear Uniforme, ou ULA (Uniform Linear Array), pode ser descrito como uma configurac¸˜ao em que diversos sensores s˜ao dispostos com espac¸amentos iguais em
linha. Estes sensores captam um sinal de interesse e possuem um atraso τ entre os sinais cap-tados por cada elemento de acordo com o ˆangulo φ entre a fronte de onda da fonte emissora
de sinal e o vetor normal do arranjo. A Figura 1 representa a disposic¸˜ao de sensores nesta configurac¸˜ao, onde d ´e o espac¸amento em metros entre os sensores.
O arranjo de sensores funciona como um simples sensor que pode ser direcionado `a
qualquer ˆangulo que se deseje, como uma antena. Na antena direciona-se o ´unico sensor para o ponto que se consegue a melhor definic¸˜ao do sinal. No ULA atribuem-se diferentes pesos a
cada sensor de forma a enfatizar o sinal de uma certa direc¸˜ao. Para projeto do ULA ´e necess´ario conhecer os parˆametros dos sinais a serem trabalhados para estabelecer-se as configurac¸˜oes do
mesmo.
O principal parˆametro a ser considerado ´e o comprimento de onda λ do sinal a ser processado. Atrav´es deste parˆametro tem-se o espac¸amento m´aximo entre os sensores e a
Arranjo Linear Uniforme
...
1 2 3 n
d φ
Figura 1: Representac¸˜ao gr´afica de um Arranjo Linear Uniforme Fonte: Adaptado de (MANOLAKIS et al., 2005)
frequˆencia de amostragem necess´aria para o sistema. O comprimento de onda de um sinal ´e
calculado segundo a Equac¸˜ao (1). A Equac¸˜ao (2) apresenta o espac¸amento necess´ario entre os sensores (MANOLAKIS et al., 2005). Esta equac¸˜ao ´e similar ao teorema de Nyquist para
frequˆencias temporais apresentados em (OPPENHEIM et al., 1989).
λ = c
fmax (1)
sendo fmax a frequˆencia m´axima do sinal de interesse.
d≤ λ
2 (2)
Estas ondas espaciais propagam-se como um arco que aumenta sua envergadura
con-forme a distˆancia entre a fonte emissora e a fronte da onda. Pode-se assumir a detecc¸˜ao como espac¸ada o suficiente, fazendo com que o sinal seja tratado como uma onda plana. Esta fronte
de onda dar´a um atraso temporal ao sensor de acordo com a equac¸˜ao (3). Portanto, a menos que a fonte emissora esteja posicionada `a frente do array, haver´a atrasos temporais entre os sinais
τ = d
csen(θ ) (3)
5.2 MODELAGEM DO ULA
Denota-se M a quantidade de elementos e N a quantidade de amostras para
processa-mento. Todo sinal x[n] ser´a constitu´ıdo por um sinal de interesse s[n], um ru´ıdo t´ermico, ou ru´ıdo branco, proveniente do sensor, w[n] e um sinal i[n] proveniente da soma das interferˆencias
recebidas no sensor. Os sinais xj[n], com j variando de 1 a M, s˜ao definidos pela Equac¸˜ao (4).
Tem-se a soma dos sinais recebidos por cada elemento a cada amostra. Para prop´ositos de
fil-tragem e estimativa de direc¸˜ao de chegada deseja-se atenuar os ru´ıdos e interferˆencias de forma a manter apenas o sinal s[n] na sa´ıda do arranjo.
xj[n] = sj[n] + wj[n] + ij[n]. (4)
Denota-se x[n] como a representac¸˜ao de todos os sinais recebidos pelo ULA segundo a Equac¸˜ao (5). Denomina-se array snapshot o conjunto de amostras temporais de todos os
elementos num instante de tempo.
x[n] = [x1[n] x2[n] . . . xM[n]]T. (5)
sendo x1o elemento de referˆencia e xM o elemento mais espac¸ado do primeiro.
´
E proposta a utilizac¸˜ao da Equac¸˜ao (2) para definir o espac¸amento entre os elementos. Cada sinal ter´a um atraso de fase em relac¸˜ao aos outros baseado na distˆancia entre os elementos
e na frequˆencia temporal do sinal. Estes atrasos na chegada do som pode ser entendido como frequˆencia de amostragem espacial e, portanto, a disposic¸˜ao dos elementos est´a diretamente
ligada `a frequˆencia de amostragem espacial e pode ser normalizada. O atraso de fase ´e definido por ej2πu, com u definido pela Equac¸˜ao (6) como frequˆencia espacial normalizada.
u=∆ dsenφ
λ (6)
sendo φ dependente do ˆangulo de incidˆencia do sinal no ULA. Tem-se ent˜ao um vetor de di-recionamento do arranjo descrito pela Equac¸˜ao (7). Essa equac¸˜ao ´e obtida relacionando os
que envolver˜ao Beamformers.
v(u) = √1 M[1 e
− j2πu . . . e− j2πu(M−1)]T (7)
5.3 FORMAC¸ ˜AO DO BEAMPATTERN E RELAC¸ ˜AO SINAL-RU´IDO (SNR)
Foi definida na sec¸˜ao anterior a distˆancia m´axima entre os elementos de um array e a dependˆencia da resposta do mesmo baseado em sua quantidade de elementos e espac¸amentos.
Similar a um filtro de resposta impulsiva finita (FIR) (VEEN; BUCKLEY, 1988), onde os pesos de cada elemento e n´umeros de elementos mudam a sa´ıda, o espac¸amento e quantidade de
sensores no arranjo proporcionam uma abertura ou fechamento do ˆangulo de filtragem.
D´a-se a denominac¸˜ao de filtro espacial para a utilizac¸˜ao de um arranjo para extrac¸˜ao de sinais no espac¸o. A sa´ıda do filtro espacial ´e dado pela soma dos sinais captados pelos
elementos associados a um peso cj, com j variando de 1 a M. A maneira de estipular estes
pesos s˜ao diversas e ´e objeto de estudo. Dentre as t´ecnicas que envolvem a obtenc¸˜ao destes
pesos tem-se m´etodos convencionais, que ser˜ao abordados neste trabalho, e m´etodos adaptati-vos. Uma ilustrac¸˜ao do m´etodo de multiplicac¸˜oes e somas dos sinais encontra-se na Figura 2.
A formulac¸˜ao matem´atica desta situac¸˜ao ´e descrita pela Equac¸˜ao (8).
y[n] = M
∑
m=1 cmxm[n] = cHx[n] (8) onde c = [c1c2 . . . cM]T (9)s˜ao os pesos cjincorporado nos sinais pelos elementos do arranjo.
A obtenc¸˜ao do Beampattern pode ser entendida como a realizac¸˜ao de uma transfor-mada de Fourier no espac¸o com os limites definidos entre −90 ≤ φ ≤ 90. Analogamente `a
trans-formada Fourier aplicada a um filtro, que retorna as magnitudes de atenuac¸˜ao de um sinal em cada uma de suas frequˆencias componentes, o Beampattern d´a a informac¸˜ao das direc¸˜oes onde
ser˜ao atenuados os sinais que chegam a um arranjo. Esta t´ecnica ´e empregada pela multiplicac¸˜ao presente na Equac¸˜ao (10).
c* c* c* 1 2 M
x
x
x
x (n)1 x (n)2 x M(n)+
y(n)Figura 2: Operac¸˜ao de multiplicac¸˜oes e soma para gerar a sa´ıda y do filtro espacial Fonte: Autoria Pr´opria
C(φ ) = cHv(φ ) (10)
5.3.1 COMPUTAC¸ ˜AO DA RELAC¸ ˜AO SINAL-RU´IDO DO ARRANJO
Um atributo importante na sa´ıda do ULA ´e sua relac¸˜ao sinal-ru´ıdo (SNR). Esta relac¸˜ao ´e utilizada para quantificar a eficiˆencia dos ganhos aplicados e ´e verificada na sa´ıda total do
arranjo e em cada um dos elementos. A aplicac¸˜ao em cada um dos elementos serve em mui-tos processos adaptativos onde o ajuste de ganhos ´e feito durante a execuc¸˜ao do filtro. Das
Equac¸˜oes (8), (7) e (4), desprezando o sinal de interferˆencia, tem-se a relac¸˜ao sinal-ru´ıdo dada pela Equac¸˜ao (11).
y[n] = cH[√Mv(φs)s[n] + w[n]] (11)
A potˆencia na sa´ıda do arranjo pode ser conferida na Equac¸˜ao (12), sendo definida pela matriz de correlac¸˜ao Rx= Ex[n]xHn(MANOLAKIS et al., 2005), onde E representa o operador
Py= E{|y[n] |} = c Rxc (12)
´
E interessante analisar ent˜ao a relac¸˜ao sinal-ru´ıdo de cada elemento do arranjo,
deno-minada SNRelem. Da Equac¸˜ao 7 tem-se que o atraso de fase entre cada um dos elementos ´e dado
por e− j2∗π∗us, onde u
s´e a normalizac¸˜ao do ˆangulo de direcionamento do ULA. Novamente,
des-prezando sinais de interferˆencia, reescreve-se a equac¸˜ao de cada um dos elementos da seguinte forma
xj[n] = e− j2π(M−1)uss[n] + w
j[n] (13)
com j de 1 a M − 1, sendo M ´e o n´umero de elementos no arranjo. Analisando o desvio padr˜ao
dos mesmos, tem-se que a relac¸˜ao sinal-ru´ıdo ´e dada pela Equac¸˜ao 14. Considera-se que todos os elementos tenham a mesma potˆencia, em m´odulo, de ru´ıdo, fazendo com que o SNR seja
estacion´ario de elemento para elemento.
SNRelem=∆ σ 2 s σw2 = |e− j2π(m−1)uss[n]|2 E{|wm[n]|2} (14)
Define-se ent˜ao a relac¸˜ao sinal-ru´ıdo total, SNRarray, de sa´ıda do arranjo. Esta relac¸˜ao,
an´aloga `a SNR de cada um dos elementos, ´e dada pela potˆencia de sa´ıda do sinal de interesse do arraydividida pela potˆencia de sa´ıda do ru´ıdo presente. Matematicamente, quantifica-se esta
relac¸˜ao como descrito na Equac¸˜ao (15).
SNRarray= Ps Pn =M|c Hv(φ s)|2 ||c||2 σs2 σw2 = |cHv(φ s)2 ||c||2 M SNRelem (15)
Estes s˜ao os conceitos b´asicos para a atribuic¸˜ao de t´ecnicas usadas com fim de
encon-trar os pesos c, que definir˜ao os crit´erios de performance do arranjo. Como n˜ao ser´a estudada a parte adaptativa, a SNR tem objetivo puramente estat´ıstico. Por´em, a mesma ´e essencial para a
5.4 T ´ECNICAS DE FILTRAGEM ESPACIAL
Manolakis et al. (2005) define as t´ecnicas mais comuns e simples computacionalmente de filtragem sendo Spatial Matched Filter e Tapered Beamformer. Estas t´ecnicas se baseiam em
princ´ıpios parecidos e diferem-se em alguns crit´erios de desempenho. Para emprego das mes-mas, fixa-se uma direc¸˜ao de filtragem, necessitando conhecimento pr´evio deste dado do sinal.
Quando tratam-se sinais que possuem apenas o ru´ıdo t´ermico w[n] somado ao sinal s[n] pode-se utilizar apenas a primeira e mais simples opc¸˜ao. O emprego do Tapered Beamformer se d´a para
casos que haja uma interferˆencia, ou sinal i[n] vindo de uma direc¸˜ao de chegada diferente do sinal de interesse. Para utilizac¸˜ao de Tapered Beamformer s˜ao empregados conceitos do Spatial
Matched Filter, portanto, ser˜ao apresentados de formas sequentes.
5.4.1 CONCEITOS DE SPATIAL MATCHED FILTER
Das Equac¸˜oes (4) e (7), desprezando-se a parcela relac¸˜ao `a interferˆencia, cuja t´ecnica
abordada nesta subsec¸˜ao ´e incapaz de tratar, tem-se que um sinal x[n] com seus atrasos de fase
ejω ter´a sua equac¸˜ao descrita por
x[n] = [s[n] e− j2πus . . . e− j2π(M−1)us]T+ w[n]. (16)
O vetor de pesos deste m´etodo ´e descrito como um vetor que apenas alinhe as fases do sinal principal entre todos os sensores, isto ´e, soma-se o sinal principal com uma r´eplica de si
mesmo, e com norma unit´aria. O conjugado complexo do vetor de direcionamento, Equac¸˜ao (7), escolhendo-se um ˆangulo de direcionamento φs para u que corresponda ao ˆangulo de chegada
do sinal, ´e o vetor que faz as fases do sinal s[n] se alinharem. Portanto, realiza-se a operac¸˜ao descrita pela Equac¸˜ao (17),
y[n] = vH(φs)x[n] = 1 √ M h 1 ej2πus · · · ej2π(M−1)usi× s[n] e− j2πuss[n] .. . e− j2π(M−1)uss[n] + w[n] . (17)
de forma apenas a somar os sinais de interesse, criando uma sa´ıda que seu filtro atenua apenas
sinais oriundos de direc¸˜oes de chegada diferentes, n˜ao anulando-os. Para o aprimoramento deste filtro, atribui-se pesos a cada um dos elementos al´em do peso do conjugado do vetor de
direcionamento. Esta atribuic¸˜ao ´e o t´opico da pr´oxima subsec¸˜ao, Tapered Beamformer.
5.4.2 TAPERED BEAMFORMER
A presenc¸a de outros sinais que n˜ao tˆem a caracter´ıstica de m´edia zero e n˜ao
correla-cionado (ru´ıdo branco) faz com que a utilizac¸˜ao da t´ecnica demonstrada anteriormente, Spatial Matched Filter, seja insuficiente para que a extrac¸˜ao de um sinal tenha ˆexito. Sinais que n˜ao
possuem a caracter´ıstica de ru´ıdo branco s˜ao tratados como uma interferˆencia no sistema e suas causas podem ser diversas. No geral, deseja-se anular estes sinais na sa´ıda do array.
Nestes filtros associa-se um vetor de pesos ctb f multiplicados ponto a ponto ao vetor de
direcionamento que alinha as fases do Matched Filter. Tais pesos podem ser diversos e devem
ser designados de acordo com a necessidade de projeto, conhecendo-se dados dos sinais tanto de interesse como de interferˆencia, lembrando que este ´e um processo n˜ao-adaptativo. Portanto,
tem-se que o vetor de pesos ctb f deste m´etodo ´e dado pela Equac¸˜ao (18), que possui norma
unit´aria. O objetivo deste filtro, assim como o descrito anteriormente, ´e maximizar a relac¸˜ao
sinal-ru´ıdo, agora denominada relac¸˜ao sinal-ru´ıdo-mais-interferˆencia (SINR).
ctb f(φs) = t vH(φs), (18)
sendo o operador de Hadamard.
Semelhante aos filtros FIR, o vetor de pesos t s˜ao iguais `as janelas cl´assicas utilizadas em filtros apresentadas na bibliografia e ´e escolhido de acordo com a preferˆencia do projetista.
Percebe-se que o Spatial Matched Filter ´e um Tapered Beamformer em que se aplica o vetor de pesos equivalente a janela retangular. A desvantagem da utilizac¸˜ao deste m´etodo est´a na perda
de potˆencia em todos os ˆangulos, inclusive o de direcionamento, na sa´ıda do Beamformer. Portanto, a utilizac¸˜ao do mesmo ou da t´ecnica apresentada anteriormente deve ser de acordo
com caracter´ısticas sens´ıveis do projeto.
5.5 VOZ HUMANA: CONCEITOS E CAPTAC¸ ˜AO
Este trabalho ´e direcionado para a estimac¸˜ao de direc¸˜ao de chegada e filtragem espacial
de sinais sonoros, sobretudo, a voz humana. Ondas sonoras emitidas e captadas por seres hu-manos s˜ao sinais de baixa frequˆencia, tendo no espectro auditivo 20 at´e 20000 Hz e na emiss˜ao,
comumente, 50-4000 Hz (LI et al., 2003). Estes sinais trazem juntos de sua frequˆencia fun-damental uma s´erie de harmˆonicos que constituem a diferenciac¸˜ao do som de cada elemento.
Com bases estat´ısticas de cada sinal pode-se estimar sua fonte de origem.
Na aplicac¸˜ao escolhida de Array Processing ´e importante apenas ter-se base das frequˆencias presentes na voz humana para quantizac¸˜ao da taxa de amostragem necess´aria. Pelo teorema de
Nyquist o sinal deve ser ser amostrado numa frequˆencia no m´ınimo duas vezes superior `a de limite de informac¸˜oes do sinal. Limitando o a frequˆencia do sinal de interesse a 4 kHz
pode-se utilizar a frequˆencia m´axima do espectro aud´ıvel, 20 kHz, para captac¸˜ao. Por convenc¸˜ao utiliza-se 44.1 kHz, que ´e um padr˜ao utilizado, referente `a qualidade de um CD.
O sensor referente `a captac¸˜ao de sinais sonoros ´e o microfone. Existem diversos tipos,
sendo o mais comuns microfones dinˆamicos, unidirecional, mais robustos e com funcionamento por induc¸˜ao magn´etica, sem necessitar de alimentac¸˜ao externa, e os microfones condensadores,
omnidirecionais, mais sens´ıveis e composto por eletretos, que necessitam de polarizac¸˜ao. A segunda opc¸˜ao tem tamb´em a vantagem de ser mais compacto, leve e de menor custo. A escolha
de utilizac¸˜ao do tipo de microfone varia de acordo com parˆametros da aplicac¸˜ao e pode-se aproveitar das caracter´ısticas do mesmo no processamento estat´ıstico de sinais.
A sa´ıda de um microfone ´e uma tens˜ao alternada na ordem de milivolts. Para inter-facear os mesmos com um processador de sinal, como microcontrolador, DSP ou FPGA, ´e
necess´ario o condicionamento do sinal. O sinal de sa´ıda destes sensores possuir˜ao n´ıveis po-sitivos e negativos, tornando necess´ario a aplicac¸˜ao de uma elevac¸˜ao cont´ınua, offset, no sinal
amplificado. Os dispositivos de aquisic¸˜ao normalmente trabalham com 3.3 ou 5 V. Portanto, o circuito de amplificac¸˜ao deve levar em considerac¸˜ao estes limitantes.
Para a aplicac¸˜ao de t´ecnicas n˜ao adaptativas de filtros ´e necess´ario conhecimento da direc¸˜ao de chegada, DOA, do sinal. O vetor de direcionamento de um filtro ajustar´a as fases
dos sinais de forma a maximizar o l´obulo central em relac¸˜ao aos l´obulos laterais de uma dada direc¸˜ao. ´E necess´ario ent˜ao estimar a direc¸˜ao de chegada do sinal de interesse para a extrac¸˜ao
do mesmo.
Existem diversas t´ecnicas para estimar a direc¸˜ao de chegada de um sinal (DHOPE et al., 2013). O ponto de m´axima similaridade entre dois ou mais sinais pode ser entendido como
o atraso entre os mesmos. Do atraso, manipulando a Equac¸˜ao (3), tem-se a direc¸˜ao de chegada do mesmo. A similaridade entre sinais ´e calculada pelo vetor de correlac¸˜ao, que ´e apresentada
na Equac¸˜ao (19). (xj∗ xj+1)[n] = N
∑
m=−N x∗j[n]xj+1[m + n] (19)A sa´ıda desta operac¸˜ao ´e um vetor de comprimento 2m − 1, considerando que os sinais tenham o mesmo n´umero de amostras. Obtˆem-se o atraso temporal do sinal atrav´es da
quan-tidade de amostras do pico do sinal at´e seu centro divididos pela frequˆencia de amostragem, Equac¸˜ao (20)
τ = max (xj∗ xj+1)[n] − N
fs (20)
sendo N o comprimento dos vetores. Deste resultado pode-se calcular o ˆangulo φs, que ´e a
direc¸˜ao de chegada do sinal. Espera-se que as matrizes de correlac¸˜ao cruzada dois a dois do arranjo possuam o mesmo tempo de atraso, mostrando que os sensores est˜ao igualmente
espac¸ados e que a fronte de onda detectada ´e, de fato, plana.
´
E proposto para este trabalho o estudo de t´ecnicas de c´alculo de DOA que possam ser aplicados em tempo real sem necessidade de computar uma matriz de correlac¸˜ao com v´arios
pontos, que ´e um obst´aculo ao embarcar o sistema. (WANG; XIA, 2000) traz abordagens utili-zando o algoritmo MUSIC - MUltiple SIgnal Classification - que pode ser utilizado iterac¸˜ao a
iterac¸˜ao. Al´em desta, s˜ao utilizadas diversas t´ecnicas que ser˜ao estudadas para a implementac¸˜ao em tempo real, como as apresentadas em (XI et al., 2011), (GUO et al., 2014) e (ZOU et al.,
2013).
5.7 DEFINIC¸ ˜AO DE ARQUITETURA
Na aplicac¸˜ao de um processador de sinais necessita-se a definic¸˜ao de uma arquitetura
que satisfac¸a as necessidades de captac¸˜ao, com os conversores anal´ogico digital, e organizac¸˜ao dos dados, al´em das aplicac¸˜oes de soma, multiplicac¸˜ao e deslocamento dos sinais.
Trabalhando-se com sinais digitais, repreTrabalhando-sentados por bits em posic¸˜oes de mem´oria, deve ter-Trabalhando-se grande organizac¸˜ao dos dados para a soma a fim de alinhar as fases dos sinais. Como os
converso-res A/D propostos para utilizac¸˜ao s˜ao de 8 bits, constr´oi-se circuitos digitais que realizam estas operac¸˜oes a serem replicados. A necessidade de quantizac¸˜ao destes circuitos ´e importante para
implementac¸˜ao e c´alculo de tempo para garantir otimizac¸˜ao da execuc¸˜ao.
Os circuitos somadores s˜ao constitu´ıdos apenas de portas l´ogicas. Estas portas l´ogicas realizam operac¸˜oes instantaneamente em circuitos de l´ogica reconfigur´avel. Devido a esta
ca-racter´ıstica considera-se que a ocorrˆencia da soma ´e ass´ıncrona e instantˆanea (apesar de n˜ao ser, ocorre em uma velocidade muito superior `a velocidade dos processos). Um circuito somador
de 8 bits ´e a composic¸˜ao de 8 somadores completos de 2 bits com 3 entradas e 2 sa´ıdas, sendo uma destas o bit de sa´ıda e a outra o bit de carry. O circuito somador 8 bits pode ser conferido
na figura 3, que utiliza-se apenas de porta OR, AND e XOR, totalizando 44 elementos l´ogicos.
Para o circuito multiplicador s˜ao utilizados somadores completos (full adder) como os mostrados anteriormente e meio somadores, e meio-somadores (half adder). Um somador
completo ´e constitu´ıdo de 2 meio-somadores com adic¸˜ao de uma porta l´ogica AND. Novamente, por utilizar apenas portas l´ogicas, considera-se a multiplicac¸˜ao como feita instantaneamente. A
sa´ıda de um multiplicador vai ser um n´umero de 2na+nb bits, onde n
ae nb´e a quantidade de bits
1 A7 1 B7 0 A1 0 B1 0 A2 0 B2 0 A3 0 B3 0 A4 0 B4 0 A5 0 B5 0 A6 0 B6 0 A0 0 B0 ? ? ? ? ? ? ? ? ?
Figura 3: Circuito somador 8 bits. Fonte: Autoria Pr´opria
6 MATERIAIS E M ´ETODOS
Neste cap´ıtulo ser˜ao apresentados os materiais a serem utilizados para a construc¸˜ao final do arranjo e os m´etodos que ser˜ao aplicados. Os m´etodos a serem utilizados ser˜ao descritos
com fluxogramas e diagramas de blocos.
6.1 MATERIAIS
6.1.1 PLATAFORMA DE AQUISIC¸ ˜AO E PROCESSAMENTO
A plataforma de aquisic¸˜ao ´e o problema central e a motivac¸˜ao final deste trabalho. As
aplicac¸˜oes de Array Processing s´o ser˜ao poss´ıveis se houver garantia de que os sinais captados entre os sensores estar˜ao em fase ap´os a aplicac¸˜ao do vetor de direcionamento. Este problema ´e
sanado com a utilizac¸˜ao de conversores A/D sincronizados. Portanto, necessita-se de processa-mento paralelo da execuc¸˜ao de aquisic¸˜ao dos sinais discretizados do mesmo. O dispositivo que
permite a execuc¸˜ao paralela de instruc¸˜oes ´e o FPGA e, baseado nisto, ´e feita a escolha deste kit para esta aplicac¸˜ao.
O kit DE2-115 conta com um FPGA Altera Cyclone®IV 4CE115, Figura 4, que ´e
configurado pelo USB Blaster. Para armazenamento dos dados possui mem´oria SRAM de 2MB, duas mem´orias SDRAM de 64MB e 8MB de mem´oria Flash e a mem´oria interna do
FPGA de 432 M9K blocos. Tem-se acesso a 36 pinos da GPIO da placa, que conta com um oscilador de 50 MHz, podendo ser usado como sa´ıda de clock externo ou alterar este valor
com um clock externo. Para processamento offline possui-se soquete para cart˜ao SD e para aplicac¸˜oes que exijam complexidade de c´alculos, ou simplesmente para testes, o m´odulo conta
com um transceptor RS-232. A placa conta com sa´ıdas de alimentac¸˜ao de 5 e 3.3V.
6.2 MICROFONES DE ELETRETO
Microfones de eletreto, como os da Figura 5 t˜ao uma opc¸˜ao vi´avel de projeto
en-volvendo diversos sensores por serem baratos e de simples funcionamento. Estes microfones atuam como um capacitor, possuindo duas placas met´alicas espac¸adas que alteram sua distˆancia
Figura 4: Kit ALTERA® DE2-115
com a press˜ao do ar gerada por ondas sonoras. Como estas placas est˜ao polarizadas por uma
alimentac¸˜ao externa, que pode variar de 1.5 V a tens˜oes maiores que 10 V, a variac¸˜ao de distˆancia entre as placas gera uma mudanc¸a equivalente na capacitˆancia interna do dispositivo.
Com isto, cria-se uma tens˜ao na sa´ıda referente ao sinal captado.
Diversas s˜ao as formas de ligar estes microfones e este ´e um objeto de estudo neste trabalho. As mais simples incluem apenas a limitac¸˜ao de corrente com um resistor ao
micro-fone e um capacitor de sa´ıda, como na Figura 6. Esta forma de polarizac¸˜ao, a mais simples e
sem amplificac¸˜ao, ´e inadequada para aplicac¸˜oes que se precise de uma amostragem de tens˜ao onde n˜ao se utilizam v´arios bits. Portanto, ser´a estudado a implementac¸˜ao de um circuito de
amplificac¸˜ao de sinal.
6.3 CONVERSORES A/D ADC0832
Para economia de pinos no FPGA utilizaremos ADC que atuam de forma serial. Uma dificuldade encontrada na escolha dos conversores A/D para o projeto ´e a disponibilidade em
Figura 5: Microfone de eletreto 2 terminais Fonte:
https://www.sparkfun.com/products/
ADC
Figura 6: Polarizac¸˜ao simples de microfone de eletreto.
Fonte: Autoria pr´opria
mercado de conversores que possuam amostragem igual ou superior a 44,1 kHz. Por considerar
sinais que atuam at´e 4 kHz, desprezando parte de seus harmˆonicos mais altos, como sua terceira oitava, encontra-se dispon´ıvel o ADC0832, com frequˆencia de amostragem para apenas um de
seus canais em 20 kHz. Este conversor possui 8 pinos e ´e descrito pela Figura 7.
Segundo a folha de dados e ap´os teste no software Proteus 8 a convers˜ao ser´a iniciada ap´os 3 pulsos de clock da mudanc¸a de n´ıvel l´ogico do pino ¯CS de alto para baixo. Ap´os a
convers˜ao dos 8 bits, que ´e mostrada de forma serial do MSB para o LSB em 15 pulsos de clock, o circuito necessita de 2 ciclos de clock para estabilizar-se e iniciar uma nova convers˜ao.
Portanto, s˜ao utilizados 20 pulsos de clock para a convers˜ao completa de um sinal.
Dados estes modos de operac¸˜ao temos
fs=
fclk
20 (21)
Figura 7: Pinagem ADC0832. Fonte: Manual do fabricante
Para desempenho m´aximo ser´a utilizada a maior frequˆencia de amostragem poss´ıvel, sendo fclk= 400 kHz e fs= 20 kS/s, satisfazendo a condic¸˜ao de Nyquist considerando a maior
componente como 4 kHz. Considera-se tamb´em que fstenha apenas 5,33% de tempo em n´ıvel
alto, ou seja, atuar´a por 2,67 µs por ciclo. A carta de tempos do circuito ´e descrita na Figura 8.
Figura 8: Carta de tempos do dispositivo ADC0832. Fonte: Manual do fabricante
6.4 M ´ETODOS
Com a escolha dos componentes do prot´otipo final do projeto cria-se o diagrama de
fluxo, Figura 9 que ser´a implementado entre FPGA e MATLAB. O FPGA deve implementar um clock de 400 kHz com 50% de raz˜ao c´ıclica para o funcionamento do sistema. Utilizando
esta configurac¸˜ao adquire-se uma taxa de convers˜ao de 20k amostras/segundo. A gerac¸˜ao do
clock, assim como os sinais ¯CSe DI deve ser feita pelo FPGA.
em um estado de espera enquanto o FPGA converte a primeira amostra de dados. A seguir vem o est´agio de comunicac¸˜ao, onde os dados dos M sensores ser˜ao transferidos pela porta serial
RS-232 para o MATLAB. Simultaneamente, enquanto s˜ao transmitidos os dados, o MATLAB ir´a organiza-los em M vetores de dados. Estes dois processos s˜ao concorrentes, ou seja, enquanto os
dados s˜ao transmitidos novos dados s˜ao adquiridos. Este processo ocorrer´a por um determinado n´umero N de vezes, de acordo com a necessidade da massa de dados.
A seguir s˜ao feitos os processamentos necess´arios. Como o embarque do sistema ´e
offline, ou seja, para p´os processamento, faz-se uma pr´e filtragem para aumentar a qualidade dos sinais recebidos e ap´os isto o c´alculo da m´axima similaridade entre os sinais para encontrar
DAQ e Processamento de Multiplos Sensores
FPGA MATLAB D A Q C om uni ca çã o P ré -P roc es sa m e nt o A rr ay P roc e ss ingCOLETA DE DADOS DOS M SENSORES EM ESPERA
ENVIO DOS DADOS PELA PORTA SERIAL COM BAUD
RATE MÍNIMO DE 19K*M RECEBIMENTO DOS DADOS E DIVISÃO EM N VETORES DE SINAIS EM ESPERA PRÉ-FILTRAGEM DOS DADOS CÁLCULO DA MÁXIMA SIMILARIDADE DIREÇÃO DE CHEGADA DO SINAL SAÍDA Repete por N vezes.
Figura 9: Diagrama de fluxo do sistema proposto. Fonte: Autoria pr´opria
7 TESTES E ENSAIOS PRELIMINARES
Neste cap´ıtulo s˜ao apresentados resultados gerados para a especificac¸˜ao do projeto. Para a gerac¸˜ao destes resultados n˜ao s˜ao consideradas limitac¸˜oes f´ısicas no arranjo. Um obst´aculo
presente no desenvolvimento do mesmo ´e a disponibilidade de componentes, como a escolha do ADC0832, que n˜ao possui o m´aximo desempenho requerido. No entanto, para
ambien-tes sint´eticos, onde pode-se construir uma s´olida base para o desenvolvimento de conceitos de aplicac¸˜ao, projeta-se o arranjo de forma a obter o m´aximo desempenho. S˜ao apresentados aqui
parˆametros de projeto desenvolvidos, simulac¸˜oes realizadas e implementac¸˜oes de teste.
7.1 N ´UMERO DE ELEMENTOS E ESPAC¸ AMENTO
Dos aspectos construtivos tem-se o n´umero de elementos no arranjo e a distˆancia entre os mesmos. Como num filtro FIR, analogia muito presente neste trabalho por se ter
carac-ter´ısticas muito similares, quanto mais taps tiver no filtro maior ser´a a resoluc¸˜ao do mesmo. Para a formac¸˜ao de feixe funciona de forma similar. Quanto maior for o n´umero de
elemen-tos melhor ser´a a resoluc¸˜ao de sa´ıda do arranjo para o ˆangulo projetado, com atenuac¸˜ao na magnitude dos l´obulos laterais e na banda do l´obulo principal. Na Figura 10 pode-se
obser-var a obser-variac¸˜ao na resoluc¸˜ao para 2, 8, 32 e 128 elementos, espac¸ados com 1/λ entre si. Estes
beampatternsforam calculados segundo a Equac¸˜ao (7).
Percebe-se que a variac¸˜ao no n´umero de elementos traz melhorias significativas para o arranjo. Para sinais de m´edia frequˆencia, como ondas sonoras vocais, arranjos com muitos
elementos pode ser invi´avel pelo tamanho f´ısico da construc¸˜ao. Para o continuamento deste trabalho ser´a desenvolvido um arranjo com 8 elementos. visando a possibilidade de aplicac¸˜ao.
Os elementos estar˜ao espac¸ados igualmente no ambiente. Deve-se definir para estes
um espac¸amento entre estes sendo metade do seu comprimento de onda. Por´em, levanta-se aqui novamente construc¸˜oes f´ısicas com o espac¸amento entre os mesmos. Na Figura 11
pode-se perceber como ´e afetada a qualidade da filtragem com a variac¸˜ao do valor definido. Foram considerado 16 elementos para a criac¸˜ao destes gr´aficos.
ex-Figura 10: An´alise gr´afica da resoluc¸˜ao de Beampattern para (a) 2 elementos, (b) 8 elementos, (c) 32 elementos e (d) 128 elementos para ˆangulos de -90 a 90º. Fonte: Autoria pr´opria
tremos ter˜ao a mesma resoluc¸˜ao do l´obulo central, o que pode gerar ambiguidade na extrac¸˜ao
do sinal de interesse caso haja interferˆencias localizadas nestas regi˜oes. Nas resoluc¸˜oes abaixo da recomendada, Figuras 11(c) e 11(d), pode-se notar um alargamento dos l´obulos em relac¸˜ao
`as demais configurac¸˜oes. Esta situac¸˜ao mostra uma diminuic¸˜ao do fator de qualidade do fil-tro. Portanto a alternativa mais vi´avel ´e a escolha do espac¸amento sendo o mostrado na Figura
11(b), 12λ .
7.2 APLICAC¸ ˜AO VIRTUAL DE TAPERED BEAMFORMER
Deseja-se estudar a sa´ıda de um filtro atrav´es da aplicac¸˜ao da t´ecnica de Tapered
Be-amformer. Captou-se dois sinais reais atrav´es de um microfone em duas instˆancias. Estes sinais cont´em o sinal de interesse e o sinal de interferˆencia, somados ao ru´ıdo t´ermico do pr´oprio
microfone. Foi projetado um algoritmo que possui a sequˆencia de funcionamento descrito no fluxograma da Figura 12.
Definiu-se que estes sinais estariam a 45 e -20º do arranjo, respectivamente. Definidos
os ˆangulos gera-se outros sinais sint´eticos contendo estes sinais com atrasos que seriam captados pelos elementos atrav´es de um algoritmo desenvolvido em MATLAB®. O estudo ser´a feito com
Figura 11: An´alise gr´afica da resoluc¸˜ao de Beampattern para espac¸amento de (a) 1 λ , (b) 12λ , (c) 14λ e (d) 14λ para ˆangulos de -90 a 90º.
Fonte: Autoria pr´opria
16 elementos. O resultado do atraso dos sinais entre o primeiro e o sensor mais espac¸ado do
arranjo encontra-se na Figura 13.
Atrav´es da an´alise da perspectiva aumentada dos sinais pode-se perceber que h´a um atraso no sinal de interesse, com o sinal do ´ultimo sensor sendo captado posteriormente em
relac¸˜ao ao primeiro, e avanc¸o no sinal de interferˆencia, com o sinal do ´ultimo sensor adiantado do primeiro. Percebe-se ent˜ao que estes sinais est˜ao corretamente atrasados. Ambos os sinais
s˜ao normalizados, portanto, possuem a mesma magnitude.
Vai ser aplicado ent˜ao o Tapered Beamformer `a soma desdes sinais, sendo ambos
ma-trizes de dimens˜oes 86076x16. Ser´a utilizada uma janela de Chebychev com atenuac¸˜ao de 200 dB para demonstrac¸˜ao. Em termos pr´aticos pode-se projetar estas janelas com qualquer valor
de atenuac¸˜ao, uma vez que s˜ao vetores de pesos a serem aplicados. O Beampattern para esta configurac¸˜ao e os sinais completos est˜ao presente na Figura 14.
Pelo Beampattern projetado percebe-se que o sinal atrasado para -20º estar´a com uma
atenuac¸˜ao maior que 150 dB. Esta configurac¸˜ao de janela aplicada ao filtro espacial mostra que o l´obulo principal sofre uma pequena atenuac¸˜ao e faz com que os l´obulos laterais tenham
Escolha da janela para o filtro Computação do Beamformer
Carregar sinal de ruído
Definição da configuração do array
Cálculo da quantidade de amostras que representa o
direcionemento atual saída = 0
Atraso entre amostras
saída = saída +(sinais atrasados)*(vetor de pesos) saída = saída+(sinais adiantados)*(vetor de pesos) PHI = 90? FIM < 0 > 0 SIM NÃO Para PHI = -90:45:90
Figura 12: Fluxograma do algoritmo de implementac¸˜ao de filtragem espacial por Tapered Beamformer proposto. Fonte: Autoria pr´opria
mantida tal configurac¸˜ao por ser aplic´avel. Abaixo na figura est˜ao representados os dois sinais, na esquerda o de interesse e na direita o de interferˆencia. A representac¸˜ao de tais sinais ´e
importante para visualizar o resultado da aplicac¸˜ao do filtro. O resultado fica mais claro quando se houve cada um dos sinais e a sa´ıda de cada direcionamento do filtro.
Neste ponto o algoritmo ir´a aplicar direcionamento em 5 ˆangulos distintos, de -90 a 90 com passos de 45 graus. O objetivo ´e verificar como os sinais ir˜ao isolar-se quando o
arrayestiver corretamente direcionado. Para cada uma das iterac¸˜oes calcula-se o atraso τ que representa o ˆangulo atual e quantas amostras estes representam para um tempo de amostragem
Figura 13: Sinais atrasados sinteticamente em perspectiva aumentada para aplicac¸˜ao virtual de filtragem por Tapered Beamformer.Acima: sinal de interesse. Abaixo: sinal de interferˆencia.
Fonte: Autoria pr´opria
de 44100 kHz. Um erro proveniente da amostragem dos sinais e espac¸amento entre os sensores
existe nesta etapa. Para ±90º tem-se 18 amostras de diferenc¸a e para 70º tem-se o mesmo valor. Portanto, o c´alculo das amostras propaga erros por processar apenas n´ıveis inteiros em
18 etapas de car´ater senoidal, para esta amostragem. Quanto maior for a amostragem, melhor ser´a a resoluc¸˜ao nesta etapa.
Calculado o n´umero de amostras desloca-se o sinal x(n), que ´e a composic¸˜ao de s(n) +
i(n), atrav´es de atrasos ou amostras e multiplica-os pelos pesos c da janela de Chebychev. Feito isto, o filtro est´a aplicado. Pode-se pausar o programa para verificar o resultado sonoro do vetor
y, que ´e a sa´ıda da aplicac¸˜ao do filtro, atrav´es da func¸˜ao sound presente no MATLAB®. A Figura 15 mostra o resultado gr´afico da sa´ıda.
Pode-se perceber que para os primeiros gr´aficos, direcionados de -90 a 0º, o sinal de
interferˆencia ´e muito mais aparente que o sinal de interesse. Para o direcionamento de 45º o
sinal de interesse fica bem aparente, apesar da modificac¸˜ao no sinal causada pelo sinal de inter-ferˆencia. Este ´e o resultado esperado, com extrac¸˜ao do sinal apesar de uma descaracterizac¸˜ao
do mesmo pela interferˆencia. Auditivamente, ´e poss´ıvel perceber que a diminuic¸˜ao do sinal de ru´ıdo de forma com que este se torna apenas ru´ıdos de fundo e que o sinal principal aparece
Figura 14: Acima: Beampattern do filtro projetado. Abaixo: Representac¸˜ao completa dos sinais de origem gravados
Fonte: Autoria pr´opria
claramente frente a este ru´ıdo.Apesar do resultado que pode ser considerado satisfat´orio, j´a que
n˜ao houve otimizac¸˜ao da janela de pesos e aplicou-se uma t´ecnica simples de filtragem, pode-se melhorar a resoluc¸˜ao acrescentando mais elementos no array.
O aumento de elementos, como demonstrado na Figura 10, estreita a banda do l´obulo
central e diminui a magnitude dos l´obulos laterais. Espera-se que a filtragem, nesta situac¸˜ao, consiga extrair o sinal de interesse com maior exatid˜ao. Portanto, ser´a comparada a resposta do
filtro ajustado para 45 graus para 16, 64, 256 e 1024 elementos com as mesmas configurac¸˜oes de janela, demonstrado na Figura 16.
Conforme aumenta-se o n´umero de elementos pode-se ver uma extrac¸˜ao mais clara do sinal de interesse. Apesar da resoluc¸˜ao satisfat´oria para 16 elementos, com o aumento extremo
de elementos, como no caso do ´ultimo gr´afico na Figura 16, onde utiliza-se 1024 elementos, percebe-se uma extrac¸˜ao muito mais clara do sinal. Em um plano ideal utiliza-se um n´umero
infinito de elementos e uma frequˆencia de amostragem infinita, extraindo o sinal continuo, o que possibilitaria a extrac¸˜ao perfeita de um sinal.
Figura 15: Resultado gr´afico para aplicac¸˜ao de Tapered Beamformer em uma composic¸˜ao de sinal de interesse a 45º e sinal de interferˆencia a -20º com passos de 45º
Fonte: Autoria pr´opria
7.3 APLICAC¸ ˜AO VIRTUAL DA CORRELAC¸ ˜AO CRUZADA PARA ESTIMAR DOA
Criou-se tamb´em um algoritmo para calcular o ˆangulo de chegada de um sinal. Este
algoritmo tem por objetivo analisar qual ´e a resposta da aplicac¸˜ao da correlac¸˜ao cruzada na esti-mativa da direc¸˜ao de chegada. Para utilizar este algoritmo atrasa ou adianta-se o sinal principal
com a mesma t´ecnica mostrada anteriormente, atrav´es do algoritmo delaysig, presente no
apˆendice deste trabalho. Com a obtenc¸˜ao dos sinais sint´eticos idˆenticos, por´em com diferenc¸as
lineares de amostras entre si, aplica-se a correlac¸˜ao cruzada, func¸˜ao xcorr, calculando a func¸˜ao entre dois elementos sequentes. Para cada iterac¸˜ao, havendo M − 1 ao total, onde M ´e o n´umero
de elementos, extrai-se ent˜ao o pico da func¸˜ao de correlac¸˜ao e sua posic¸˜ao amostral. Tendo a localizac¸˜ao do pico de amostra, subtraindo este valor do comprimento do vetor de correlac¸˜ao.
Extrai-se ent˜ao a m´edia entre todas estas correlac¸˜oes e aplica-a na Equac¸˜ao (3). Obt´em-se na sa´ıda deste algoritmo a estimativa do ˆangulo da direc¸˜ao de chegada da fonte emissora sint´etica,
Figura 16: Comparac¸˜ao de sa´ıda de aplicac¸˜ao de Tapered Beamformer para 16, 64, 256 e 1024 elementos na extrac¸˜ao de um sinal de interesse utilizando uma janela de Chebychev com atenuac¸˜ao de 300 dB
Fonte: Autoria pr´opria
Para testes com 16 elementos e direc¸˜ao de chegada escolhida como 45º, utilizando o sinal completo, sendo este o mesmo da aplicac¸˜ao anterior com 86016 pontos, obteve-se como
resposta 45,0305º, ou seja, com erro de 6,8.10−4. Diminuiu-se ent˜ao o espac¸o amostral para o c´alculo de amostras necess´arias para acerto de direc¸˜ao de chegada. O algoritmo da correlac¸˜ao
cruzada s´o se mostrou eficaz a partir de 850 amostras para a regi˜ao com presenc¸a de sinal. Nas regi˜oes onde n˜ao h´a sinal, apenas presenc¸a de ru´ıdo, foi necess´ario ao m´ınimo 2000 amostras.
8 IMPLEMENTAC¸ ˜AO PR ´ATICA DO SISTEMA PROPOSTO
Este cap´ıtulo descreve a implementac¸˜ao pr´atica do sistema de aquisic¸˜ao de dados para o processamento descrito nos cap´ıtulos anteriores. Fora descrito anteriormente o funcionamento
do sistema e os materiais a serem utilizados. Como especificado no Cap´ıtulo 6, ´e necess´ario a utilizac¸˜ao de circuitos para condicionamento dos sinais, para que estes possam ser
interpre-tados pela placa de aquisic¸˜ao, e processos a serem embarcados na placa para a aquisic¸˜ao e comunicac¸˜ao do kit com o computador.
8.1 CONDICIONAMENTO DO SINAL E INTERFACE SENSOR-CONVERSOR
Nesta sec¸˜ao ´e descrito a forma de condicionamento do sinal vindo do microfone de
eletreto polarizado para ser interpretado pelos conversores A/D. Os circuitos foram testados para verificar sua aplicabilidade e limitar o sistema de forma a ser implementado o mais simples
poss´ıvel
8.1.1 CONDICIONAMENTO DO SINAL
Na Figura 6 ´e demonstrado o circuito b´asico para polarizac¸˜ao, utilizando apenas um
resistor entre a fonte de tens˜ao e o microfone, limitando assim a corrente m´axima, e um ca-pacitor na sa´ıda para condicionamento do sinal. Foi constatado por testes em laborat´orio uma
pequena variac¸˜ao na tens˜ao de sa´ıda, na ordem de milivolts. Portanto, deve-se condicionar o sinal para que este seja aplicado ao conversor A/D.
O conversor A/D ADC0832 opera tanto em 3.3 quanto 5 V. Para simplificac¸˜ao dos
circuitos, escolheu-se utilizar 3.3 V. Portanto, os microfones de eletreto ser˜ao alimentados com este valor de tens˜ao, para que o sinal excursione no m´aximo at´e este valor. A seguir amplifica-se
o sinal para que este possa ser melhor interpretado. O circuito de amplificac¸˜ao escolhido utiliza um transistor BC547.
O transistor BC547 ´e um amplificador de corrente de baixo ru´ıdo que opera com cor-rente m´axima de 100 mA no coletor, tens˜ao m´axima de 5V entre emissor e base e tens˜oes
va-3.3 V para os microfones e para resoluc¸˜ao do conversor A/D, a alimentac¸˜ao do transistor ser´a
oriunda da mesma fonte. Um ponto importante ´e limitar a corrente de sa´ıda do microfone em, no m´aximo, 100 mA.
Ser´a utilizado um resistor de 10 KΩ entre a fonte de tens˜ao e o coletor. Isto garante que
a corrente m´axima ficar´a limitada a 0,33 mA, muito inferior ao limite. Outro resistor idˆentico ´e utilizado entre a fonte e o microfone, para limitar a corrente que passa pelo mesmo. ´E utilizado
um resistor de 100 KΩ entre o coletor e a base e capacitores de 0,1 µF na sa´ıda do eletreto e na sa´ıda do coletor para os conversores. Este circuito ´e ilustrado pela Figura 17.
R101 10k C3 100nF Q2 BC547 R100 100k R102 10k C1 100nF 1 2 ADC CONN-H2 MIC MIC
Figura 17: Circuito de amplificac¸˜ao para microfone de eletretos utilizando BC547.
Fonte: Autoria pr´opria
Com este circuito constatou-se que os sinais de sa´ıda variavam de -3.3 a 3.3 V quando inserida grande press˜ao de ar no sistema, falando muito pr´oximo do microfone ou assoprando-o.
A parte negativa de tens˜ao ´e indesejada no sistema e, como este est´a sendo desenvolvido para um ULA, a fonte emissora deve estar a uma grande distˆancia. Portanto, pode-se considerar que
o sinal dificilmente atingir´a o pico m´aximo. Dada esta condic¸˜ao, deve-se criar um circuito de offset, onde o n´ıvel de stand-by esteja por volta de 1.65 V, para aquisic¸˜ao pelo conversor A/D.
Ser´a utilizado ent˜ao o circuito integrado TL081 para construc¸˜ao do circuito de offset a
acessibilidade ao mesmo e por suas caracter´ısticas de funcionamento serem compat´ıveis com os requerimentos do projeto. O circuito montado ´e ilustrado na Figura 18.
3 2 6 7 4 1 5 U1 TL081 R1 10k R2 10k R1(1) R2(1) R3 10k R4 10k A/D R5 10k
Figura 18: Circuito para impress˜ao de offset de tens˜ao utilizando TL081.
Fonte: Autoria pr´opria
Utilizando estes circuitos constatou-se que o sinal proveniente dos sensores excursiona entre 0 e 3.3 V, tornando ent˜ao poss´ıvel a comunicac¸˜ao com o conversor A/D sem perda de
partes do sinal. O pr´oximo passo ´e criar um circuito para o funcionamento el´etrico do conversor A/D e ent˜ao embarcar estes subsistemas com a placa de aquisic¸˜ao.
8.1.2 ESQUEM ´ATICO DE LIGAC¸ ˜AO ADC0832
O circuito integrado ADC0832, descrito no Cap´ıtulo 6, necessita de inserc¸˜ao de pulsos
de clock e pulsos peri´odicos para seu funcionamento segundo sua carta de tempos, Figura 8. Estes sinais s˜ao gerados pelo FPGA e ser˜ao descritos na pr´oxima sec¸˜ao. Por simplicidade de
projeto, ser´a escolhido a utilizac¸˜ao do canal 1 (CH1), por poder imprimir n´ıvel l´ogico alto no pino DI e n˜ao ser necess´ario a utilizac¸˜ao de variac¸˜ao no n´ıvel l´ogico para selec¸˜ao de canal. O
circuito implementado ´e descrito na Figura 19.
Os sinais a serem inseridos nos pinos CLK e CS s˜ao provenientes do FPGA, com tens˜ao de 0 e 3.3 V. O sinal anal´ogico no pino CH1 ´e o sinal de sa´ıda do circuito ilustrado na
Fi-gura 18. A tens˜ao de alimentac¸˜ao, assim como o comum, pinos VCC e GND, respectivamente, ´e proveniente do FPGA. Mais detalhes acerca dos tempos e raz˜oes c´ıclicas destes sinais ser˜ao
CS 1 CH0 2 CH1 3 GND 4 VCC 8 CLK 7 DI 5 DO 6 ADC0832 (+) A B C D
Figura 19: Esquem´atico de ligac¸˜ao a ser utilizado no ADC0832.
Fonte: Autoria pr´opria
8.1.3 PROTOCOLO SERIAL RS-232
O protocolo serial RS-232 ´e um padr˜ao de troca de dados de forma serial entre
dis-positivos. No kit DE2-115 da Altera, utilizado neste trabalho, tem-se o m´odulo serial pelo transceptor ZT232 incorporado ao kit. Este transceptor aceita velocidades de transmiss˜ao de
9600, 19200, 38400, 57600, 74880 e 115200 baud-por-segundo, sendo cada baud de 8 bits de dado, mais os start e stop bits. Em seu desempenho m´aximo em relac¸˜ao a velocidade, este
m´odulo envia 115200 dados por segundo, ou seja, um dado a cada 8,681 µs. A ligac¸˜ao entre o
chip, transceptor e pinos externos ´e mostrada na Figura 20.
Figura 20: Ligac¸˜ao do transceptor ZT232 com o chip FPGA. Fonte:(ALTERA; TERASIC, 2012)
Para a recepc¸˜ao de dados pelo computador, ou seja, transmiss˜ao pelo FPGA, ser˜ao utilizados os pinos CTS, RTS e TXD. O controle ´e feito pelo programa a ser embarcado no
FPGA, pelos pinos UART RXD, UART RTS, UART TXD e UART CTS. Comunicando este m´odulo com o computador para apenas recebimento de dados, ser´a utilizado apenas o pino
8.1.4 INTERFACEAMENTO DOS CONVERSORES A/D COM O FPGA
Anteriormente, foi dito que o controle dos tempos de convers˜ao dos conversores A/D
seriam baseados em sua carta de tempos, Figura 8, e os sinais gerados pelo dispositivo FPGA. Do manual do fabricante, (INSTRUMENTS, 1999), tem-se que a a maior frequˆencia de clock
aceita pelo sistema ´e de 400 kHz, o que, interpretando a carta de tempos, gera uma frequˆencia de amostragem de 20 kHz.
Ser´a gerado ent˜ao o sinal de clock de 400 kHz para entrada no pino CLK do FPGA.
Isto pode ser feito dividindo o clock de funcionamento do FPGA, original de 50 MHz, em 1250 vezes, gerando a frequˆencia desejada de 400 kHz. A Figura 21 demonstra o sinal gerado, junto
de seus dados.
Figura 21: Sinal de clock gerado pelo FPGA visto no oscilosc´opio. Fonte: Autoria pr´opria
O FPGA conseguiu gerar uma frequˆencia aproximada de 396,7 kHz. O sinal CS, que controla o in´ıcio de convers˜ao, ´e gerado a partir deste sinal de clock, espera-se uma pequena
deduc¸˜ao na amostragem, por´em haver´a sincronia entre ambos. O pr´oximo passo ´e a gerac¸˜ao deste sinal, que ´e feita atrav´es de um loop no algoritmo com contador, que ser´a explicado
adiante. A Figura 22 apresenta o sinal gerado.
Tˆem-se, ent˜ao, os sinais em sincronia, onde, a cada 20 per´ıodos de clock, o sinal CS
Figura 22: Sinal de CS gerado pelo FPGA visto no oscilosc´opio. Fonte: Autoria pr´opria
FPGA e transmiss˜ao para o computador, onde ser´a adquirido pelo software MATLAB e
proces-sado. Sequencialmente, tem-se:
1. Convers˜ao da amostra n dos sensores 0 a M, sendo M o ´ultimo sensor disposto na linha
para um n´umero de 8 bits, acontecendo de forma simultˆanea;
2. Transmiss˜ao da amostra n dos sensores 0 a M pela porta serial do computador para o
MATLAB, ocorrendo de forma serial do sensor 0 a M;
3. Recepc¸˜ao da amostra n0a nM pelo MATLAB, onde o identificador subscrito representa a
posic¸˜ao do sensor;
4. Ap´os um n´umero N pr´e definido de amostras, organizadas em um vetor de M ×N posic¸˜oes, divide-se este vetor em M vetores menores, contendo os sinais;
5. Pr´e-processamento dos sinais para eliminac¸˜ao de ru´ıdos indesejados;
9 RESULTADOS E DISCUSS ˜OES
Neste cap´ıtulo ser˜ao demonstrados os resultados obtidos neste trabalho. Dentre os resultados analisa-se a viabilidade do sistema e materiais propostos, a performance do tipo
de comunicac¸˜ao escolhida em relac¸˜ao ao desempenho do sistema e comparac¸˜oes com outras formas de aquisic¸˜ao. Este cap´ıtulo se organiza da seguinte forma. Primeiro ´e mostrado o
expe-rimento realizado. Ent˜ao, s˜ao mostrado os sinais reais adquiridos pelos sensores e as operac¸˜oes propostas, assim como descrito o experimento. Ap´os, discute-se o desempenho do sistema,
ex-pondo a qualidade dos sinais adquiridos e captac¸˜ao dos mesmos pelo sistema. Por fim, compara-se ambos com as simulac¸˜oes feitas anteriormente.
9.1 DESCRIC¸ ˜AO DO EXPERIMENTO
O experimento foi realizado da seguinte forma. Foram escolhidos 4 sensores para
este sistema, portanto, foi necess´ario a construc¸˜ao de 4 circuitos de cada um dos propostos, sendo: Circuito para funcionamento do microfone, tratamento do sinal e conversor A/D. Os
circuitos dos microfones, feitos em placa de circuito impresso, foram dispostos em linha com espac¸amento aproximado de 14,3 cm, medidos em uma r´egua. A Figura 23 demonstra o
es-quema da placa de circuito impresso gerada.
Figura 23: Placa de circuito impresso gerada para funcionamento e amplificac¸˜ao do sinal dos microfones
tamb´em cria-se uma placa de circuito impresso (PCI) contendo o circuito amplificador
ope-racional TL081. A ligac¸˜ao entre ambas ´e feita por fios, assim como com as demais placas. Atribui-se pinos para estas entradas e sa´ıdas. O circuito de offset est´a representado na Figura 24
Figura 24: Placa de circuito impresso gerada para condicionamento do sinal dos microfones
Fonte: Autoria pr´opria
O ´ultimo componente entre os microfones e o FPGA ´e o conversor A/D. Confeccionou-se uma placa PCI para este circuito integrado, realizando as conex˜oes necess´arias entre o kit,
esta placa e circuitos de condicionamento. Utilizou-se tamb´em de pinos para interface com as outras placas e FPGA. Esta placa ´e mostrada na Figura 25. Por fim, como os sinais do FPGA,
clock e CS, s˜ao compartilhados entre todos os conversores A/D, utilizou-se o protoboard para fornecer essa ligac¸˜ao.
Desta forma, realizando o posicionamento e ligac¸˜oes para todos os circuitos, tem-se o sistema completo, pronto para testes. Para alimentas os componentes utilizou-se a fonte da
ban-cada, configurada para fornecer 3.3 V para os microfones e 1.6 V para o offset. A alimentac¸˜ao dos conversores ´e feito pelo FPGA, que fornece 3.3 V em seu GPIO. Todos os terras s˜ao
in-terligados. O ´ultimo elemento do sistema ´e o FPGA, que realizar´a o controle das convers˜oes, aquisic¸˜ao dos dados e transmiss˜ao para o computador. A Tabela 1 mostra as func¸˜oes do GPIO
Figura 25: Placa de circuito impresso gerada para ligac¸˜ao dos conversores A/D]
Fonte: Autoria pr´opria Tabela 1: Conex˜oes FPGA
PINO Func¸˜ao GPIO[0] Inutilizado GPIO[1] clock 400 kHz GPIO[2] CS GPIO[3] Sensor1 GPIO[4] Sensor2 GPIO[5] Sensor3 GPIO[6] Sensor4 9.1.1 CONFIGURAC¸ ˜AO DO FPGA
Pode-se ent˜ao relacionar o fluxo do programa implementado no FPGA. Ser˜ao
utili-zados dois processos VHDL, onde um faz o controle do fluxo de dados serial para o FPGA e outro transmite estes dados para o computador. S˜ao utilizados componentes de divis˜ao do
clock da placa, em 50 MHz para aproximadamente 400 kHz, denominado clock divider e o componente TX, para transmiss˜ao pelo RS-232.
O fluxo do programa dado da seguinte forma. Gera-se o sinal CS, no pino GPIO[2], a
partir de um contador I que altera seu n´ıvel apenas uma vez a cada 20 pulsos do clock. Espera-se outros 3 pulsos do clock para que Espera-seja iniciada a convers˜ao do sinal pelo conversor A/D,
segundo sua carta de tempos. Extrai-se ent˜ao os 8 bits de cada sinal, ficando este armazenado em um registrador DATA[M] do FPGA, onde varia de 1 a 4 e representa cada um dos sensores.
A partir da aquisic¸˜ao do ´ultimo bit, habilita-se o m´odulo de transmiss˜ao. Este fluxo ´e descrito na Figura 26.