Conference PaperPDF Available

Implementação de um sonômetro em Matlab utilizando microfone MEMS digital

Authors:

Abstract

A tecnologia dos sistemas microeletromecânicos (MEMS) propiciou o desenvolvimento de sensores eficientes, de baixo custo e tamanho extremamente reduzido. Microfones MEMS digitais são transdutores acústicos construídos por meio dessa tecnologia e englobam, em um pequeno chip de silício, um transdutor, pré-amplificador e um conversor analógico/digital. Dentre suas características, pode-se destacar a baixa variação de sensibilidade entre microfones do mesmo modelo, resistência a variações de temperatura, choques mecânicos e vibrações. Um aspecto importante na especificação desses microfones é o formato de transmissão da saída digital, podendo ser via Pulse Density Modulation (PDM), Inter-IC Sound (I2S) ou Time-Division Multiplex (TDM). O presente trabalho teve como objetivo estudar os microfones MEMS com saída I2S e aplicá-los à medição de nível de pressão sonora (NPS). A aquisição dos sinais digitais foi realizada utilizando o microcontrolador Teensy 4.0. Para a medição e cálculo do NPS, implementou-se funções em Matlab, cujas ferramentas incluem a gravação e reprodução simultânea de arquivos de áudio, visualização em tempo real do NPS instantâneo ponderado no tempo, cálculo do NPS equivalente (global e em bandas de terço de oitava) com ponderações A, C e Z e plot estilizado com legendas adaptadas para o português e o inglês. Para avaliar o desempenho dos microfones, realizou-se um experimento no qual comparou-se o NPS equivalente captado por cinco microfones do mesmo modelo, posicionados no mesmo local e expostos ao mesmo sinal estocástico, um ruído branco. Esses resultados mostraram uma variação máxima de 2,2 dB entre as medições do NPS para os cinco microfones. Realizou-se também um teste com tonal em 1 kHz, obtendo-se uma variação máxima de 0,94 dB. Para avaliar a performance e estabilidade do programa em medições longas, realizou-se a captação do ruído ambiental para um período de uma hora. A medição foi concluída com sucesso, de modo que não houve travamentos ou perdas de informação. Nesse experimento, o NPS equivalente em bandas de terço de oitava, para as bandas de 20 Hz a 20 kHz e ponderações A, C e Z, bem como os valores globais, foram devidamente retornados.
Implementação de um sonômetro em Matlab
utilizando microfone MEMS digital
Mello, F.1; Fonseca, W. D’A.1; Mareze, P. H.1
1Engenharia Acústica, Universidade Federal de Santa Maria, Av. Roraima nº1000,
Cidade Universitária, Santa Maria, RS, {felipe.mello, will.fonseca, paulo.mareze}@eac.ufsm.br
Resumo
A tecnologia dos sistemas microeletromecânicos (MEMS) propiciou o desenvolvimento de sen-
sores eficientes, de baixo custo e tamanho extremamente reduzido. Microfones MEMS digitais
são transdutores acústicos construídos por meio dessa tecnologia e englobam, em um pequeno
chip de silício, um transdutor, pré-amplificador e um conversor analógico/digital. Dentre suas ca-
racterísticas, pode-se destacar a baixa variação de sensibilidade entre microfones do mesmo mo-
delo, resistência a variações de temperatura, choques mecânicos e vibrações. Um aspecto impor-
tante na especificação desses microfones é o formato de transmissão da saída digital, podendo ser
via Pulse Density Modulation (PDM), Inter-IC Sound (I2S) ou Time-Division Multiplex (TDM).
O presente trabalho teve como objetivo estudar os microfones MEMS com saída I2S e aplicá-los
à medição de nível de pressão sonora (NPS). A aquisição dos sinais digitais foi realizada utili-
zando o microcontrolador Teensy 4.0. Para a medição e cálculo do NPS, implementou-se funções
em Matlab, cujas ferramentas incluem a gravação e reprodução simultânea de arquivos de áudio,
visualização em tempo real do NPS instantâneo ponderado no tempo, cálculo do NPS equivalente
(global e em bandas de terço de oitava) com ponderações A, C e Z e plot estilizado com legendas
adaptadas para o português e o inglês. Para avaliar o desempenho dos microfones, realizou-se um
experimento no qual comparou-se o NPS equivalente captado por cinco microfones do mesmo
modelo, posicionados no mesmo local e expostos ao mesmo sinal estocástico, um ruído branco.
Esses resultados mostraram uma variação máxima de 2,2 dB entre as medições do NPS para os
cinco microfones. Realizou-se também um teste com tonal em 1 kHz, obtendo-se uma variação
máxima de 0,94 dB. Para avaliar a performance e estabilidade do programa em medições longas,
realizou-se a captação do ruído ambiental para um período de uma hora. A medição foi concluída
com sucesso, de modo que não houve travamentos ou perdas de informação. Nesse experimento,
o NPS equivalente em bandas de terço de oitava, para as bandas de 20 Hz a 20 kHz e ponderações
A, C e Z, bem como os valores globais, foram devidamente retornados.
Palavras-chave: microfone MEMS, Teensy 4.0, instrumentação, microfone digital, Matlab, sonômetro.
1. Introdução
A tecnologia dos sistemas microeletromecâ-
nicos é recente. Os primeiros dispositivos
começaram a aparecer na década de 60, e
em 1983 foi construído o primeiro micro-
fone MEMS (Micro-Electro-Mechanical Sys-
tems) [1]. Todavia, a primeira linha comer-
cial só foi surgir no início do século XXI,
quando a empresa Knowles lançou a série
SiSonic [2].
Dentre as características dos microfones
MEMS, pode-se destacar seu tamanho extre-
mamente reduzido, baixo custo e alta padro-
nização entre dispositivos do mesmo mo-
delo. Devido a capacidade de miniaturiza-
ção, existem no mercado microfones com
saída digital, nos quais são encapsulados
em um único pacote o transdutor acústico,
circuito de pré-amplificação/condicionador
e conversor analógico/digital (ADC).
Existem três formatos de saída digital dis-
poníveis: Pulse Density Modulation (PDM),
Time-Division Multiplex (TDM) e Inter-IC
Sound (I
2
S). Sendo este último o utilizado
neste projeto. A Figura 1 demonstra o micro-
fone MEMS (I
2
S) utilizado, sua resposta em
frequência, o respectivo diagrama de blocos
[3] e o microcontrolador utilizado.
14 de agosto de 2020
Sobrac/RS
V SeGAV-e
Seminário Gaúcho de Acústica e Vibrações
2Mello, F.; Fonseca, W. D’A.; Mareze, P. H.
Implementação de um sonômetro em Matlab com microfone MEMS V SeGAV-e
Figura 1: Microfone I2S, sua resposta em
frequência, diagrama de blocos e Teensy 4.0
(utilizar as setas para alternar entre as imagens).
O presente trabalho tem como objetivo ex-
plorar os microfones MEMS digitais, em es-
pecífico o modelo supracitado (com saída
I
2
S), realizar a aquisição de seus sinais via
um microcontrolador, utilizá-los para ava-
liar o nível de pressão sonora (NPS) por
meio de rotinas implementadas em Matlab
e comparar desempenhos.
2. Microfones MEMS I2S
Inter-IC Sound, ou I
2
S, é um protocolo de
comunicação serial introduzido pela em-
presa Philips Semiconductors. Sua função
é transmitir sinais de áudio digital em for-
mato Pulse-Code Modulation (PCM) entre
circuitos integrados. Microfones MEMS I
2
S
fazem uso desse protocolo para transmissão
de seus sinais.
A transmissão dos dados via I
2
S ocorre atra-
vés de um barramento serial de três linhas,
uma responsável por enviar até dois canais
de áudio multiplexados (SD), uma respon-
sável por transmitir o sinal de clock (SCK ou
BCK) e outra responsável por transmitir um
sinal denominado word select (WS), cuja fun-
ção é definir qual canal de áudio está sendo
transmitido [4].
Os microfones MEMS I2S funcionam como
escravos, sendo necessário a presença de um
controlador mestre responsável por gerar
os sinais BCK e WS, bem como receber os
sinais SD.
3. Aquisição dos sinais
Para a aquisição dos sinais do microfone,
utilizou-se o microcontrolador Teensy 4.0
(ARM Cortex-M7 MCU @ 600 MHz). Ele
foi escolhido devido a sua alta capacidade
de processamento, compatibilidade com
I
2
S e biblioteca nativa dedicada ao proces-
samento de sinais de áudio. Uma tabela
comparativa entre processadores para siste-
mas embarcados, bem como mais detalhes
acerca de sonômetros podem ser encontra-
dos em Fonseca, Jacomussi e Mareze [5].
O Teensy é o responsável por gerar os sinais
SCK e WS e receber o sinal SD. O micro-
controlador também é capaz de atuar como
uma interface de áudio. Desta forma, é pos-
sível transmitir os sinais recebidos do micro-
fone diretamente via USB para o computa-
dor. Outro exemplo contendo o uso de um
Teensy aplicado ao processamento de sinais
acústicos pode ser encontrado em [6].
4. Implementação do sonômetro
A implementação do sonômetro se deu
em duas etapas, descritas nas Seções 4.1 e
4.2. Inicialmente, construiu-se um protótipo
para abrigar o Teensy, o microfone e fornecer
um suporte para tripé. A segunda etapa foi
o desenvolvimento dos códigos em Matlab.
4.1 Protótipo físico
Utilizou-se uma caixa plástica para abrigaro
Teensy e os cabos. Nessa, fixou-se uma mini-
protoboard para acoplar o microcontrolador.
Para fixação do microfone, utilizou-se um
soquete de seis pinos que foi encaixado ao
fim de um cano de PVC. Conectores foram
soldados ao soquete e conectados ao Teensy.
Um suporte para tripé foi parafusado na
caixa. A Figura 2 contém uma série de fotos
com o processo de construção do protótipo.
Figura 2: Protótipo construído em detalhes
(utilize as setas para alternar entre as imagens).
(a) Microfone I2S sipeed MSM261S4030H0 ao lado de
uma moeda de 25 centavos.
(a) Protótipo desenvolvido.
Ênfase para o microfone acoplado.
V SeGAV-e Mello, F.; Fonseca, W. D’A.; Mareze, P. H.
Implementação de um sonômetro em Matlab com microfone MEMS 3
4.2 Software em Matlab
Para a implementação do sonômetro em
Matlab (linguagem interpretada) foram
desenvolvidas quatro funções, denomi-
nadas
audioSetup
,
sessionSetup
,
rtSPL
e
soundPlot
, descritas respectivamente nas
Seções 4.2.1, 4.2.2, 4.2.3 e 4.2.4.
4.2.1 Função audioSetup
Função interativa para configuração do dis-
positivo de áudio utilizado durante a me-
dição. Permite que o usuário defina, via
command window
, o dispositivo de áudio de-
sejado, canais de entrada e de saída e tama-
nho do buffer. Ela retorna um objeto con-
tendo todas as configurações.
4.2.2 Função sessionSetup
Função interativa para configuração da ses-
são de medição. Permite que o usuário de-
fina, via
command window
, o nome da sessão,
um fator de calibração para o microfone e o
modo de operação.
Há dois modos disponíveis,
Rec
e
PlayRec
.
O primeiro realiza apenas a captação de áu-
dio, durante um período de tempo definido
pelo usuário. Já o segundo possibilita a re-
produção e captação simultâneas de um si-
nal de áudio previamente gerado. Ela re-
torna uma estrutura (
struct
) contendo to-
das as configurações.
4.2.3 Função rtSPL
É a função principal, responsável por reali-
zar a medição e cálculo em tempo real do
nível de pressão sonora (NPS). Suas funcio-
nalidades incluem:
Ponderações temporais Fast eSlow;
Ponderação em frequência com as
Curvas A e C;
Cálculo do NPS em bandas de oitava
ou fração de oitava (
1
/n
com
n=3
, por
exemplo); e
Visualização em tempo real do nível
em bandas de oitava ou terço de oitava,
valor de pico, níveis instantâneo, má-
ximo e mínimo ponderados no tempo e
nível equivalente nas ponderações em
frequência A e Z (veja Figura 3 (a)).
Todos os cálculos realizados pela fun-
ção
rtSPL
são baseados na norma
IEC
61672-1:2013
[7] e retornam valo-
res similares ao ITA,PyTTa eVSLM. Ao
fim da medição, o programa salva todos
os dados calculados em um arquivo
.mat
nomeado de acordo com o nome da sessão.
Figura 3:
Tela para monitoramento em tempo real
da medição e resultados dos experimentos 1 e 2
(utilize as setas para alternar entre as imagens).
4.2.4 Função soundPlot
A função
soundPlot
automatiza a geração
de gráficos a partir dos dados da medição.
O programa possui dois modos de exibição,
um em português e outro em inglês, os quais
realizam o ajuste automático das legendas
e do separador de casas decimais (vírgula
para o português e ponto para o inglês).
As figuras geradas incluem: (a) Sinal no
tempo; (b) NPS instantâneo com pondera-
ção temporal e (c) NPS equivalente em ban-
das de oitava ou terço de oitava.
5. Experimentos para avaliação
do sistema
Dois experimentos foram realizados para
observar e avaliar a resposta do sistema,des-
critos nas Seções 5.1 e 5.2.
5.1 Comparação do nível equivalente
obtido por cinco microfones
No intuito de observar a variação de sensibi-
lidade entre cinco microfones
1
I
2
S, realizou-
se a medição do NPS para um ruído branco
e um som tonal de 1 kHz (ambos sinais ti-
veram seis minutos de duração), para cada
um dos microfones.
1Sipeed MSM261S4030H0 (100 Hz – 10 kHz).
50
63
80
100
125
160
200
250
315
400
500
630
800
1k
1.,25k
1.,6k
2k
2.,5k
3.,15k
4k
5k
6.,35k
8k
10k
0
20
40
60
80
100
120 LZF: 89.,5 dB
LZFmax: 89.,5 dB
LZFmin: 69.,3 dB
LZeq: 88.,2 dB
LAF: 89.,5 dB
LAFmax: 89.,5 dB
LAFmin: 68.,4 dB
LAeq: 88.,2 dB
Lpeak: 92.,6 dB
Underruns: 0
Overruns: 0
(a) Tela de monitoramento da medição em tempo real.
NPS [dB ref.: 20 µPa]
Frequência [Hz]
4Mello, F.; Fonseca, W. D’A.; Mareze, P. H.
Implementação de um sonômetro em Matlab com microfone MEMS V SeGAV-e
Para cada medição, posicionou-se o sonô-
metro a um metro de distância de um alto-
falante. Essa posição manteve-se fixa para
todo o experimento. Aplicou-se um fator
de correção baseado no valor de sensibi-
lidade descrito no datasheet do microfone
(-26 dBFS) [8]. Os valores de NPS equiva-
lente (
Leq
) para o ruído branco e sinal de
1 kHz encontram-se nas Tabelas 1 e 2, respec-
tivamente, bem como nas Figuras 3 (b) e (c).
Tabela 1: Valores de Leq obtidos por cada
microfone para ruído branco.
Mic 1 Mic 2 Mic 3 Mic 4 Mic5
Leq (dB) 91,49 91,80 92,71 90,47 91,67
Tabela 2: Valores de Leq obtidos por cada
microfone para um som tonal de 1 kHz.
Mic 1 Mic 2 Mic 3 Mic 4 Mic5
Leq (dB) 93,39 93,74 93,35 93,77 94,29
A diferença máxima observada para o ruído
branco foi de 2,2 dB. Já para o tonal de 1 kHz,
a diferença máxima foi de 0,94 dB, valor es-
perado se comparado com o apresentado na
folha de dados do microfone (datasheet).
Trechos da medição com ruído branco e to-
nal de 1 kHz, para o Microfone 1,podem ser
escutados por meio dos arquivos anexos
2
e , respectivamente.
5.2 Avaliação da performance para longos
períodos de medição
Com o objetivo de avaliar a estabilidade
do programa desenvolvido, realizou-se uma
medição de ruído ambiental para o período
de uma hora. Ao fim, foi verificado se houve
perda de informações durante o processo.
Pode-se escutar um trecho da medição: .
O programa executou sem travamentos e
nenhuma amostra (sample) foi perdida du-
rante a gravação. Todos os dados foram
retornados de acordo com o esperado, de-
monstrando a estabilidade do código. Os
valores instantâneos de NPS podem ser ob-
servados na Figura 3 (d).
2
Para usuários do Acrobat Reader ou Foxit Reader,
basta clicar no ícone.
6. Considerações finais
O sonômetro apresentado funcionou de
acordo com o projeto. Os sinais digitais dos
microfones I
2
S foram devidamente adqui-
ridos com o uso do microcontrolador Te-
ensy 4.0, enviados via USB para o compu-
tador e utilizados para o cálculo do nível
de pressão sonora (NPS) por meio de fun-
ções (códigos) implementadas em Matlab.
O Teensy se mostrou uma plataforma ro-
busta para esta aplicação.
Considerando os testes aplicados, os mi-
crofones apresentaram desempenhos de
acordo com o especificado no datasheet.
O passo seguinte para confirmação é a fabri-
cação de um aparato para acoplá-los a um
calibrador acústico, possibilitando a realiza-
ção de ajustes de sensibilidade.
O programa desenvolvido é estável e capaz
de realizar medições de longa duração. No-
vas funcionalidades estão em estudo, visto
que é possível sofisticá-lo, adicionando mais
modos de operação e, eventualmente, uma
interface gráfica.
Referências
1.
MALCOVATI, Piero; BASCHIROTTO, Andrea.
The evolution of integrated interfaces for MEMS mi-
crophones. Micromachines, v. 9(7), n. 323, p. 1–20,
2018. doi: 10.3390/mi9070323.
2.
Knowles Electronics. Knowles History.https:
//www.knowles.com/about-knowles/knowles-
history. Acesso em agosto de 2020.
3.
LEWIS, Jerad. Analog and Digital MEMS Mi-
crophone Design Considerations. 2013. Analog Devices,
Technical Article (MS-2472).
4.
Philips Semiconductors. I2S Bus Specification (Re-
vised). 1996. Application note.
5.
FONSECA, William D’A.; JACOMUSSI, Leonardo;
MAREZE, Paulo H. Raspberry Pi: A Low-cost Embed-
ded System for Sound Pressure Level Measurement.
In: 49th Internoise. Seul, Córeia do Sul: [s.n.], 2020.
6.
ZORZO, Artur; FONSECA, William D’A. Estudo
da técnica de identificação de sistemas implemen-
tada em microcontroladores Arduino Due e Te-
ensy 3.6. Acústica e Vibrações, v. 32, n. 49, p. 5–14,
2017. ISSN 1983-442X. Disponível em: http://bit.ly/
identificacao-de-sistemas-AeV49.
7.
IEC 61672-1:2013. Electroacoustics – Sound level me-
ters – Part 1: Specifications.International standard.
8.
MEMSensing Microsystems. MSM261S4030H0 -
I2S digital output MEMS mic. with Multi-modes. 2018.
ResearchGate has not been able to resolve any citations for this publication.
Analog and Digital MEMS Microphone Design Considerations
  • Jerad Lewis
LEWIS, Jerad. Analog and Digital MEMS Microphone Design Considerations. 2013. Analog Devices, Technical Article (MS-2472).
Electroacoustics -Sound level meters -Part 1: Specifications
IEC 61672-1:2013. Electroacoustics -Sound level meters -Part 1: Specifications. International standard.
MSM261S4030H0 -I 2 S digital output MEMS mic. with Multi-modes
  • Memsensing Microsystems
MEMSensing Microsystems. MSM261S4030H0 -I 2 S digital output MEMS mic. with Multi-modes. 2018.