Desenvolvimento e Validação de um
Conversor Analógico/Digital para Aquisição e
Registros de sinais em Matrizes Multi
Eletr...
Matriz MEA60 padrão Multichannel
Systems
Soquete: primeiro protótipo (out. 2012)
Soquete para MEA60, versão final
•

Foi desenhado, prototipado e validado soquete para MEA60 (Novembro
de 2012):
Trabalho anterior: Simulador MEA-SG
•

Desenvolvido e testado um simulador eletrônico, microcontrolado, com o
mesmo padrão...
MEA-SG, versão final (março 2013)
Trabalho anterior: Amplificador para
Matriz Multi-eletrodo
•

Desenvolvido e implementado amplificador para sinais elétric...
Testando o Amplificador
•

Um canal foi construído e testado em bancada ( dez/janeiro 2013)
Montando o simulador no soquete
Soquete e MEA-SG em teste...
Conversor Analógico/Digital (DAQ)
•
•

Os sinais elétricos presentes nos terminais do soquete da matriz multi-eletrodo
são...
Sinal Analógico e sinal digitalizado
Parâmetros importantes do ADC
1-Resolução
2-Taxa de Amostragem (Sample Rate)
3-Faixa dinâmica
4 – Erro de Linearidade
Parâmetros do conversor AD
Teorema da Amostragem de Nyquist–Shannon
•

Um Sinal ou função é limitado em banda se não contém energia em
frequências ma...
Conversor AD em rampa
AD por Aproximações Sucessivas (SAR)
Nosso protótipo preliminar
•

Proposta: utilizar o conversor AD do microcontrolador PIC18F4620: 12
bits, sample rate maxim...
Como enviar os dados para o computador?
Firmware gravado no microcontrolador
set_adc_channel (0); //canal 0
delay_us(20);
M1 = read_adc();
// faz a leitura do CH0...
Filtros: Analógicos e Digitais
•

Filtros analógicos são construídos utilizando-se hardware (indutores,
resistores, capaci...
Usando scripts do Matlab
% --------------- SCRIPT 1
N=1000;
s = serial ('COM5','BaudRate',460800,'DataBits',8,'Parity','no...
Matlab e DAQ – registrando sinal de teste
Script 1 funcionando
Matlab – script 2
• Esse script apresenta uma segunda figura que mostra o conteúdo
espectral (no domínio da frequência) do...
Figura-2 –Conteúdo espectral
Script-2 (Matlab)
Analisador de Espectro
10 Hz, 40 Hz

60 Hz, 80 Hz
Plotando 2 canais simultaneamente
•

Um terceiro script escrito em Matlab é capaz de plotar 2 canais do conversor
simultan...
Filtrando artefatos
O principal ruído a ser filtrado é o de frequência igual a 60 Hz, proveniente da rede
elétrica. Esse r...
Filtro Notch por hardware

Ref:

http://www.ti.com/lit/an/sbfa012/sbfa012.pdf
Filtro Notch por software
É possível economizar hardware, implementando-se um filtro notch por
software de modo muito simp...
Filtro IIR no Matlab
Implementando um filtro passa-baixas IIR no
Matlab:
Equação a diferenças do filtro:
y(n)= K*x(n) +y(n...
Código no Matlab, simula um sinal senoidal com ruído para
testar os filtros por software
K=1/2^12
b=K
a = [1 -(1-K)]
Fs=20...
Aliasing
• Aliasing é o fenômeno através do qual sinais
de frequências diferentes se tornam
indistinguíveis quando amostra...
Frequencia de Nyquist e Aliasing
Exemplo: Deseja-se ler apenas as frequencias f1 e f2.
Note-se que f3 reside na banda de t...
Exemplo de Aliasing
Filtros Anti-aliasing
• Filtro RC passa-baixas passivo de 1ª ordem

Ref:

http://ww1.microchip.com/downloads/en/appnotes/0...
Como resolver o problema da frequência
imagem f3 ?
•

Resposta: usando-se filtros anti-aliasing ativos, com maior taxa de
...
4 tipos de filtros ativos

Butterworth de 4ª ordem

Bessel de 4ª ordem

Chebysev de 3ª ordem

Sallen-key de 2ª ordem
Ruído de quantização
•

O sinal (onda retangular) gerado internamente pelo funcionamento do
conversor AD subtrai-se por “b...
Software grátis para Aquisição de dados
Oscilloscope program library: Michael Bernstein, Ju l 2009
http://www.oscilloscope...
Software de Aquisição de dados rodando no
DAQ
Experimento sugerido pelo prof. Saito
Experimento da folha de árvore na
MEA
Protótipo do Sistema Completo (Jul 2013)
Videos no Youtube mostrando os
testes do sistema
1 - Teste do Conversor AD (Fambrini e Saito DAQ)
https://www.youtube.com/...
Melhorias a implementar no DAQ
1-Aumentar a resolução do conversor AD, de 12 bits para 16 ou
24 bits;
2-Aumentar a velocid...
Referências
1-Apostila sobre conversores AD on-line:
http://paginapessoal.utfpr.edu.br/rosangela/lcd-e-adc/Dig2Cap4-Conver...
OBRIGADO !
Próximos SlideShares
Carregando em…5
×

Slides 9 erm

811 visualizações

Publicada em

Trabalho sobre Projeto de sistema de registro e Aquisição de dados em matrizes multieletrodo - 1

Publicada em: Saúde e medicina
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
811
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
13
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Slides 9 erm

  1. 1. Desenvolvimento e Validação de um Conversor Analógico/Digital para Aquisição e Registros de sinais em Matrizes Multi Eletrodo 9o. Encontro de Registros Multieletrodos Julho de 2013 Francisco Fambrini – Faccamp Orientador: prof. Dr. José Hiroki Saito
  2. 2. Matriz MEA60 padrão Multichannel Systems
  3. 3. Soquete: primeiro protótipo (out. 2012)
  4. 4. Soquete para MEA60, versão final • Foi desenhado, prototipado e validado soquete para MEA60 (Novembro de 2012):
  5. 5. Trabalho anterior: Simulador MEA-SG • Desenvolvido e testado um simulador eletrônico, microcontrolado, com o mesmo padrão de pinos da MEA-60 (setembro de 2012), MEA-SG:
  6. 6. MEA-SG, versão final (março 2013)
  7. 7. Trabalho anterior: Amplificador para Matriz Multi-eletrodo • Desenvolvido e implementado amplificador para sinais elétricos em matriz multi-eletrodo (dezembro de 2012):
  8. 8. Testando o Amplificador • Um canal foi construído e testado em bancada ( dez/janeiro 2013)
  9. 9. Montando o simulador no soquete
  10. 10. Soquete e MEA-SG em teste...
  11. 11. Conversor Analógico/Digital (DAQ) • • Os sinais elétricos presentes nos terminais do soquete da matriz multi-eletrodo são analógicos, de baixa amplitude (entre 5 uV e 200 mV); Para serem registrados no computador PC esses sinais precisam ser digitalizados, isto é, transformados em sinais que tem nível lógicos 0 ou 1 apenas;
  12. 12. Sinal Analógico e sinal digitalizado
  13. 13. Parâmetros importantes do ADC 1-Resolução 2-Taxa de Amostragem (Sample Rate) 3-Faixa dinâmica 4 – Erro de Linearidade
  14. 14. Parâmetros do conversor AD
  15. 15. Teorema da Amostragem de Nyquist–Shannon • Um Sinal ou função é limitado em banda se não contém energia em frequências maiores do que o limite de banda B. • O teorema da amostragem assegura que as amostras discretas uniformemente espaçadas são uma representação completa do sinal, se sua largura de banda é menos do que a metade da taxa de amostragem. • A condição suficiente para uma exata reconstrução a partir das amostras em uma taxa de amostragem uniforme (em amostras por unidade de tempo) é que a Frequência de Amostragem seja maior do que duas vezes o limite de banca B.
  16. 16. Conversor AD em rampa
  17. 17. AD por Aproximações Sucessivas (SAR)
  18. 18. Nosso protótipo preliminar • Proposta: utilizar o conversor AD do microcontrolador PIC18F4620: 12 bits, sample rate maximo de 10 KHz, até 12 canais multiplexados, dos quais são testados apenas 2 canais por enquanto.
  19. 19. Como enviar os dados para o computador?
  20. 20. Firmware gravado no microcontrolador set_adc_channel (0); //canal 0 delay_us(20); M1 = read_adc(); // faz a leitura do CH0 set_adc_channel (1); // canal 1 delay_us(20); M2 = read_adc(); // faz a leitura do canal 1 tecla = getch( ); //espera o computador pedir o dado if (tecla=='a') printf ("P,%Lu,0,%Lu,0n",M,M2 ); //envia
  21. 21. Filtros: Analógicos e Digitais • Filtros analógicos são construídos utilizando-se hardware (indutores, resistores, capacitores e amplificadores operacionais). Filtros Digitais podem ser implementados apenas por software ou em FPGAs. Filtro passa-baixa analógico remove o ruído de alta frequência presente no sinal antes do conversor analógico-digital (A / D). Desta maneira, o código de saída digital obtido na conversão não contém harmônicas indesejáveis (alias). Em contraste, a um filtro digital pode ser utilizado para reduzir o ruído em banda de freqüência, usando técnicas de cálculos de médias.
  22. 22. Usando scripts do Matlab % --------------- SCRIPT 1 N=1000; s = serial ('COM5','BaudRate',460800,'DataBits',8,'Parity','none','FlowControl','none'); fopen(s); seq = 1:N; y = zeros(1,N); % Tamanho fixo é mais rápido. for i=1:N fprintf( s, '%s', 'a'); y(i) = str2num( fscanf(s,'%s') ); end fclose(s); plot(seq,y); % função lenta executada fora do loop. xlabel('registro'); ylabel('Tensao (mV)'); title('Sinal eletrico MEA60 - Fambrini & Saito DAQ ');b:
  23. 23. Matlab e DAQ – registrando sinal de teste
  24. 24. Script 1 funcionando
  25. 25. Matlab – script 2 • Esse script apresenta uma segunda figura que mostra o conteúdo espectral (no domínio da frequência) do sinal amostrado pelo DAC, aplicando FFT (Fast Fourier Transformer). O trecho abaixo aplica o FFT sobre as amostras e plota a figura: figure(2) L=length(y); NFFT = 2^nextpow2(L); Y = fft(y,NFFT)/L; f = Fs/2*linspace(0,1,NFFT/2+1); plot(f,2*abs(Y(1:NFFT/2+1))) title('Espectro de Amplitude em Frequencia Unilateral de y(t)') xlabel('Frequencia (Hz)') ylabel('|Y(f)|')
  26. 26. Figura-2 –Conteúdo espectral
  27. 27. Script-2 (Matlab)
  28. 28. Analisador de Espectro 10 Hz, 40 Hz 60 Hz, 80 Hz
  29. 29. Plotando 2 canais simultaneamente • Um terceiro script escrito em Matlab é capaz de plotar 2 canais do conversor simultaneamente, em baixa velocidade, video no Youtube: http://www.youtube.com/watch?v=FYGL5N2hOxE&feature=youtu.be
  30. 30. Filtrando artefatos O principal ruído a ser filtrado é o de frequência igual a 60 Hz, proveniente da rede elétrica. Esse ruído aparece mesmo quando se alimenta o sistema com baterias, pois o sistema capta a EMI (Interferência Eletromagnética) dos fios próximos ligados às tomadas. Um filtro muito usado, por hardware é o chamado Filtro Notch. Esse tipo de filtro possui uma curva típica como a mostrada abaixo:
  31. 31. Filtro Notch por hardware Ref: http://www.ti.com/lit/an/sbfa012/sbfa012.pdf
  32. 32. Filtro Notch por software É possível economizar hardware, implementando-se um filtro notch por software de modo muito simples no Matlab. O trecho de código abaixo implementa-o no Matlab e é usado no script-3 com a finalidade de melhorar a filtragem de 60 Hz. A variável que armazena os valores a serem plotados no eixo y é ‘m’. A e B determinam a largura de banda do filtro. % Filtra m com 60 Hz - notch filter Wo = 60/(Fs/2); BW = Wo/35; [b,a] = iirnotch(Wo,BW); y = filter(b,a,m); Filtros digitais recursivos, ou do tipo IIR (Infinit Impulse Response), são aqueles que possuem componentes de realimentação, produzindo um efeito mais intenso na curva de atuação do filtro, e com isto, reduzindo a ordem do filtro.
  33. 33. Filtro IIR no Matlab Implementando um filtro passa-baixas IIR no Matlab: Equação a diferenças do filtro: y(n)= K*x(n) +y(n-1)*(1-K) com K = 1/ 2^12 ( 12 bits)
  34. 34. Código no Matlab, simula um sinal senoidal com ruído para testar os filtros por software K=1/2^12 b=K a = [1 -(1-K)] Fs=200; % Frequencia de Amostragem Ts=1/Fs; Nx=5000; % numero de Amostras nT=Ts*(0:Nx-1); fin=10; % frequencia do Sinal randn('state',sum(100*clock)); %gerando sinal aleatorio com ruido noise=randn(1,Nx); % simulando ruido noise=noise-mean(noise); xin=200+9*(cos(2*pi*fin*nT)); xin=xin+noise; out = filter(b,a,xin); plot(out,xin);
  35. 35. Aliasing • Aliasing é o fenômeno através do qual sinais de frequências diferentes se tornam indistinguíveis quando amostrados através do uso de um conversor AD.
  36. 36. Frequencia de Nyquist e Aliasing Exemplo: Deseja-se ler apenas as frequencias f1 e f2. Note-se que f3 reside na banda de transição do filtro. Assim, a frequência f3 indesejada foi atenuada, mas sua imagem ainda é amostrada. Note-se também que f4 foi completamente eliminada, porque está acima da faixa de transição.
  37. 37. Exemplo de Aliasing
  38. 38. Filtros Anti-aliasing • Filtro RC passa-baixas passivo de 1ª ordem Ref: http://ww1.microchip.com/downloads/en/appnotes/00699b.pdf
  39. 39. Como resolver o problema da frequência imagem f3 ? • Resposta: usando-se filtros anti-aliasing ativos, com maior taxa de atenuação por década. 4 Curvas para Filtros reais Curva do Filtro Ideal Ref: http://www.maximintegrated.com/app-notes/index.mvp/id/928
  40. 40. 4 tipos de filtros ativos Butterworth de 4ª ordem Bessel de 4ª ordem Chebysev de 3ª ordem Sallen-key de 2ª ordem
  41. 41. Ruído de quantização • O sinal (onda retangular) gerado internamente pelo funcionamento do conversor AD subtrai-se por “batimento” do sinal que está sendo amostrado, gerando um outro sinal que é o ruído de quantização do AD:
  42. 42. Software grátis para Aquisição de dados Oscilloscope program library: Michael Bernstein, Ju l 2009 http://www.oscilloscope-lib.com
  43. 43. Software de Aquisição de dados rodando no DAQ
  44. 44. Experimento sugerido pelo prof. Saito
  45. 45. Experimento da folha de árvore na MEA
  46. 46. Protótipo do Sistema Completo (Jul 2013)
  47. 47. Videos no Youtube mostrando os testes do sistema 1 - Teste do Conversor AD (Fambrini e Saito DAQ) https://www.youtube.com/watch?v=FYGL5N2hOxE&feature=c4-overview&list=UU5oogEX4pk7PqJuDq6gG7QA 2 - Teste do MEA-SG + amplificador https://www.youtube.com/watch?v=WTIEb4PUQFo&feature=c4overview&list=UU5oogEX4pk7PqJuDq6gG7QA 3 - Teste com matriz multi-eletrodo e folhas de arvores com osciloscopio convencional https://www.youtube.com/watch?v=U4eUE929JRY&feature=c4-overview&list=UU5oogEX4pk7PqJuDq6gG7QA 4 - Teste do sistema de aquisição de dados completo de 1 canal, com folhas de arvores na matriz e também com o MEA-SG https://www.youtube.com/watch?v=N2apZBI2mro&feature=c4-overview&list=UU5oogEX4pk7PqJuDq6gG7QA
  48. 48. Melhorias a implementar no DAQ 1-Aumentar a resolução do conversor AD, de 12 bits para 16 ou 24 bits; 2-Aumentar a velocidade de transferência de dados entre o Conversor AD e a porta USB; 3-Usar microcontrolador com DMA (acesso direto a memória); 4-Usar técnicas de buffer de dados para aumentar a velocidade de aquisição de dados; 5-Fazer um software especifico (em C++ ou Visual Studio) para registrar os dados, que seja mais leve e mais rápido do que o Matlab.
  49. 49. Referências 1-Apostila sobre conversores AD on-line: http://paginapessoal.utfpr.edu.br/rosangela/lcd-e-adc/Dig2Cap4-Conversor %20DA%20e%20AD.doc/view 2-Comunicação Microcontrolador e Matlab: http://kr3l.wordpress.com/2008/06/23/scope-with-pic-microcontroller-andmatlab/ 3-Software gratuito de aquisição de dados: http://www.msp430launchpad.com/2010/12/njcs-launchscope-launchpadoscilloscope.html 4-DAQ32: http://code.google.com/p/daq32datalogger11072010sohm/downloads/list
  50. 50. OBRIGADO !

×