SL.pro
Blog · · 9 minutos de leitura

Como funcionam os aplicativos de nível: acelerômetros explicados

Seu telefone sabe para baixo porque contém um acelerômetro MEMS — um sensor mecânico microscópico que mede aceleração gravitacional em três eixos simultaneamente. Os aplicativos de nível leem esses três números, aplicam trigonometria e exibem o resultado como um ângulo. Todo o processo acontece centenas de vezes por segundo, silenciosamente, dentro de um chip menor que um grão de sal. Aqui está exatamente como funciona.

Principais conclusões
  • Os acelerômetros MEMS custam aproximadamente $0,50 em produção em volume, mas alcançam precisão de ±0,1-0,3° após calibração.
  • Os ângulos de arremesso e rolagem são calculados usando fórmulas arctan aplicadas às leituras de gravidade triaxial.
  • O Spirit Level Pro aplica uma média móvel exponencial (alpha=0,15) para suavizar o ruído bruto do sensor em 60-80%.
  • Mudanças de temperatura de 10°C podem deslocar as leituras do sensor MEMS em 0,1-0,5°, tornando a calibração no local importante.
  • Para medições estáticas, o acelerômetro sozinho é suficiente — nenhum giroscópio é necessário.
Close-up macro photo of a Kionix MEMS tri-axis accelerometer chip from a mobile device
O chip acelerômetro MEMS dentro do seu telefone é menor que um grão de arroz, mas mede a gravidade com precisão.

O que é um acelerômetro MEMS?

MEMS significa Sistemas Micro-Eletro-Mecânicos. De acordo com a STMicroelectronics, um dos maiores fabricantes de MEMS do mundo, o elemento sensor dentro de um acelerômetro moderno de smartphone mede aproximadamente 300 micrômetros × 300 micrômetros — menor que um grão de sal (STMicroelectronics, 2024). Esses chips custam aproximadamente $0,50 cada em volumes de produção, mas alcançam precisão angular que compete com equipamentos custando centenas de dólares a mais.

O mecanismo é elegante. Uma massa microscópica é suspensa em minúsculas molas de silício, gravadas diretamente na superfície do chip usando o mesmo processo de fotolitografia usado para fazer transistores. Quando o chip se inclina, a gravidade terrestre desvia a massa suspensa. Esse desvio muda a capacitância entre minúsculos dedos de eletrodo em forma de pente. O chip mede essa mudança de capacitância e a converte em um valor de aceleração em unidades de g (força gravitacional).

Quando você mantém o telefone imóvel, o acelerômetro não está medindo movimento — está medindo o componente da gravidade agindo sobre cada um de seus três eixos. Esse é o insight fundamental por trás de cada aplicativo de nível. A gravidade é uma força constante e conhecida. Se você souber quanto atua em cada eixo, poderá calcular a orientação exata do telefone.

O elemento sensor do acelerômetro MEMS em um smartphone topo de linha mede aproximadamente 300 micrômetros × 300 micrômetros, custa cerca de $0,50 em produção em volume e alcança resolução angular de 14-16 bits. Esses chips são fabricados em wafers de silício usando o mesmo processo de fotolitografia usado para fazer transistores, permitindo fabricação em massa em pontos de preço de eletrônicos de consumo. (Portfólio de Produtos MEMS STMicroelectronics, 2024) Fonte: STMicroelectronics, 2024

Como um acelerômetro triaxial mede inclinação?

Um acelerômetro de três eixos atribui um sistema de coordenadas ao telefone: X vai da esquerda para a direita, Y vai de cima para baixo e Z vai de frente para trás. Quando o telefone está perfeitamente plano em uma mesa, a gravidade atua inteiramente no eixo Z, então o sensor lê aproximadamente 9,81 m/s² em Z e 0 em X e Y. Incline o telefone e a gravidade se redistribui — menos em Z, mais em X e Y, em proporção exata ao ângulo.

A trigonometria para converter essas três leituras em ângulos é direta. O arremesso (inclinação para frente-para trás) e a rolagem (inclinação para esquerda-para direita) são calculados usando funções de tangente inversa:

Arremesso = arctan( Y / sqrt(X² + Z²) ) Rolagem = arctan( X / sqrt(Y² + Z²) )

Essas duas fórmulas são todo o núcleo matemático de um aplicativo de nível. Insira os três valores brutos do acelerômetro, execute os cálculos e obtenha arremesso e rolagem em radianos. Multiplique por 180/π para converter para graus. Esse é o número exibido na tela.

Por que usar a raiz quadrada dos outros dois eixos no denominador em vez de apenas um? Mantém a fórmula precisa em toda a faixa de rotação 360°. Usar um denominador de eixo único produz erros quando o telefone se aproxima de vertical, porque um eixo vai para zero e a divisão fica instável. A magnitude do vetor no denominador evita isso inteiramente.

Freescale Semiconductor 3-axis MEMS accelerometer breakout board on white background
Um acelerômetro de 3 eixos mede a tração gravitacional nos eixos X, Y e Z simultaneamente.
Veja a física funcionando em tempo real

O Spirit Level Pro exibe ângulos de arremesso e rolagem ao vivo com suavização EMA, cinco presets de tolerância e calibração com um toque. Nenhum download necessário.

Experimente Spirit Level Pro gratuitamente

Por que os dados do sensor bruto são tão barulhentos?

A saída do acelerômetro MEMS bruto é surpreendentemente barulhenta. Um telefone perfeitamente imóvel produz leituras do acelerômetro que flutuam por ±0,02-0,05 g momento a momento, impulsionadas por ruído térmico na eletrônica do sensor, microvibrações do edifício e erro de quantização no conversor analógico-digital. Sem filtragem, a bolha de nível tremeria constantemente, tornando-a inutilizável para trabalho preciso.

Três tipos de ruído afetam as leituras do acelerômetro. O ruído térmico é flutuação elétrica aleatória causada por calor — é inevitável e define o piso de ruído final para o sensor. O ruído vibratório vem do ambiente: um compressor de geladeira, pegadas, trânsito. A instabilidade de viés é uma deriva de baixa frequência onde o ponto zero do sensor flutua lentamente ao longo do tempo. Cada um requer uma abordagem diferente para gerenciar.

A solução de software padrão é um filtro passa-baixa, que deixa passar mudanças lentas (como inclinação genuína) enquanto bloqueia mudanças rápidas (como vibração). A implementação mais comum é uma média móvel exponencial (EMA). Cada nova leitura contribui uma fração alpha para a saída; o resto é transferido do valor anterior:

filtrado = alpha × leitura_nova + (1 - alpha) × filtrado_anterior

O Spirit Level Pro usa um EMA com alpha=0,15. Chegamos a esse valor após testar várias opções. Valores mais baixos (alpha=0,05) produzem leituras muito suaves, mas parecem lentos — a bolha fica visivelmente atrasada quando você move o telefone. Valores mais altos (alpha=0,3) são mais responsivos, mas tremem o suficiente para tornar mais difícil capturar leituras precisas. Alpha=0,15 é o ponto onde a bolha parece viva sem parecer nervosa.

A compensação: Um valor alpha mais alto torna a exibição mais responsiva para mudanças reais de inclinação, mas também mais sensível ao ruído de vibração. Um alpha mais baixo suaviza o ruído de forma mais agressiva, mas cria latência. O alpha=0,15 do Spirit Level Pro equilibra esses dois em um tempo de liquidação efetivo de 150ms.

Que papel o giroscópio desempenha?

O giroscópio mede velocidade angular — quão rápido o telefone está girando em graus por segundo — não sua orientação absoluta. Essa é uma distinção crucial. O giroscópio sozinho não pode dizer se o telefone está nivelado; ele sabe apenas se está girando e com que velocidade. Para medições de nível estático, o acelerômetro fornece tudo o que é necessário.

Onde o giroscópio se torna útil é na fusão de sensores: combinando dados de acelerômetro e giroscópio para melhorar o desempenho quando o telefone está se movendo. Os acelerômetros são excelentes para medir inclinação estática, mas respondem lentamente e com ruído a movimentos rápidos. Os giroscópios são excelentes para rastrear rotações rápidas, mas derivam ao longo do tempo (suas leituras acumulam erros). Um filtro de Kalman ou filtro complementar mescla ambos os fluxos, usando o giroscópio para rastreamento dinâmico rápido e o acelerômetro para corrigir a deriva de longo prazo.

A maioria dos aplicativos de nível, incluindo Spirit Level Pro, não precisa de fusão de sensores porque o cenário de medição é estático — você coloca o telefone em uma superfície e espera que ele se estabilize. O acelerômetro lida com isso perfeitamente. A fusão de sensores importa mais para navegação inercial (saber para onde um drone está indo) do que para medir se uma prateleira está nivelada.

Por que a calibração é tão importante?

Cada sensor MEMS tem um deslocamento de fabricação — um pequeno viés cozido durante a fabricação. Um estudo de 2017 no IEEE Sensors Journal descobriu que acelerômetros de smartphone não calibrados mostram um deslocamento médio de ±1,2° em uma amostra de dispositivos populares, com alguns outliers atingindo ±2,5° (IEEE Sensors Journal, 2017). Esse deslocamento é sistemático: afeta cada leitura individual pela mesma quantidade, na mesma direção.

A calibração funciona medindo esse deslocamento em uma superfície de referência conhecida e armazenando-o. O Spirit Level Pro salva os valores de calibração no localStorage sob as chaves calibrationPitch e calibrationRoll. Cada leitura subsequente subtrai esses deslocamentos armazenados antes de exibir o resultado. O deslocamento é efetivamente zerado.

Sem calibração, um deslocamento de 1,5° significa que cada leitura está 1,5° errada. O aplicativo pode mostrar 0,0° enquanto o telefone está em uma inclinação de 1,5°. Com calibração, o mesmo telefone alcança precisão de ±0,1-0,3° — uma melhoria de 5-10× sem custo algum.

Um estudo de 2017 no IEEE Sensors Journal mediu viés de acelerômetro em uma amostra de 20 modelos de smartphone populares. Dispositivos não calibrados mostraram um deslocamento sistemático médio de ±1,2°, com alguns dispositivos de orçamento ultrapassando ±2,5°. Após um único passe de calibração na superfície, o erro médio caiu abaixo de ±0,3° em todos os dispositivos testados, demonstrando que a técnica de calibração importa mais que a qualidade do hardware para a maioria das aplicações. (IEEE Sensors Journal, 2017) Fonte: IEEE Sensors Journal, 2017

Como a temperatura afeta a precisão?

Os sensores MEMS são sensíveis à temperatura. As molas de silício que suspendem a massa de prova se expandem e contraem quando a temperatura muda, deslocando a leitura do ponto zero. A maioria dos acelerômetros de grau de consumidor derivam 0,1-0,5° para cada mudança de temperatura de 10°C (Folha de dados ADXL345 da Analog Devices, 2023). Levar um telefone de um carro quente (25°C) para uma garagem fria (5°C) introduz uma deriva potencial de 1,0° antes que o sensor se estabilize.

A consequência prática: calibre na temperatura em que você estará trabalhando. Uma calibração feita em um escritório quente não compensará completamente o comportamento do sensor em uma garagem fria. Isso não significa ficar obcecado com a temperatura para cada tarefa. Para pendurar quadros ou verificar prateleiras, a deriva é insignificante. Para trabalho preciso dentro de ±0,2°, deixe o telefone se estabilizar por dois minutos após qualquer mudança significativa de temperatura antes de calibrar.

Spirit level mounted on a camera showing how angular measurement works
Vários sensores trabalham juntos para determinar a orientação precisa de um dispositivo em três dimensões.

iPhone vs Android: o hardware do sensor é diferente?

Sim, e as diferenças importam. A Apple projeta sua própria pilha de sensores de movimento. Os iPhones desde o iPhone 6s incluem um coprocessador de movimento projetado pela Apple (M9 e posterior), que manipula dados do sensor independentemente do CPU principal. Os Galaxy topo de linha do Samsung usam sensores da STMicroelectronics (série LSM6DSO), que combina um acelerômetro triaxial e giroscópio triaxial em um único chip. Os telefones Google Pixel usaram sensores da Bosch (BMI270) e InvenSense da TDK, dependendo da geração.

Na prática, os iPhones topo de linha e Android topo de linha funcionam quase de forma idêntica após a calibração, ambos alcançando ±0,1-0,15°. A verdadeira divisão é entre topo de linha e Android orçamentário. Os telefones orçamentários usam MEMS de especificação inferior — geralmente resolução de 10-12 bits versus 14-16 bits no topo de linha — e mostram 2-3× mais ruído na saída do sensor bruto. Após calibração, até os telefones orçamentários geralmente alcançam ±0,3-0,4°, o que é adequado para a maioria dos trabalhos DIY.

O componente que mais diferencia o desempenho do nível de espírito do iPhone não é o acelerômetro em si — é o coprocessador de movimento da Apple executado ao lado do CPU principal. Ele coleta continuamente dados do sensor em altas taxas de amostragem mesmo quando o aplicativo não está em primeiro plano, dando ao filtro EMA mais pontos de dados por segundo. É por isso que os iPhones parecem particularmente suaves em aplicativos de nível, mesmo quando a especificação do sensor bruto parece comparável às alternativas Android.

Perguntas frequentes

Como funcionam os aplicativos de nível em um telefone?

Os aplicativos de nível usam o acelerômetro MEMS integrado do telefone para medir a direção da aceleração gravitacional em três eixos (X, Y, Z). Quando o telefone se inclina, a gravidade se redistribui entre os eixos. O aplicativo calcula arremesso e rolagem usando fórmulas arctan, aplica suavização para reduzir ruído do sensor e exibe o resultado como uma bolha de nível ou leitura de ângulo numérico. Todo o cálculo é executado centenas de vezes por segundo.

Qual é a precisão de um acelerômetro de telefone para uso de nível?

Os telefones topo de linha alcançam precisão de ±0,1-0,3° após calibração. Os telefones Android de orçamento podem mostrar ±0,5-1,5° sem calibração devido a sensores MEMS de resolução inferior e maior variância de fabricação. Um estudo de 2017 no IEEE Sensors Journal descobriu que a calibração sozinha reduz o erro médio em mais de 70% em todos os níveis de dispositivos. Para a maioria das tarefas DIY e comerciais, um telefone de gama média calibrado é suficientemente preciso (IEEE Sensors Journal, 2017).

Um aplicativo de nível usa o giroscópio?

Para medições de nível estático, não. O acelerômetro sozinho fornece o ângulo de inclinação. O giroscópio mede velocidade de rotação em vez de posição, portanto não pode dizer se o telefone está nivelado — apenas quão rápido está girando. Alguns aplicativos usam fusão de sensores (combinando ambos os sensores) para leituras mais suaves durante o movimento, mas para manter um telefone contra uma parede ou superfície e ler o ângulo, o acelerômetro lida com tudo.

Por que meu aplicativo de nível lê ligeiramente incorreto mesmo em uma superfície plana?

A causa mais comum é deslocamento de fabricação — cada chip MEMS tem um pequeno viés definido na fábrica que o faz ler um valor diferente de zero mesmo quando perfeitamente plano. Calibrar o aplicativo em uma superfície plana conhecida corrige isso. Outras causas incluem deriva de temperatura (0,1-0,5° por mudança de 10°C), uma capa de telefone que inclina ligeiramente o dispositivo na superfície ou poeira e detritos na própria superfície. Calibrar em uma mesa de vidro limpa após qualquer mudança de temperatura resolve a maioria dos problemas.

O quadro completo

Os aplicativos de nível funcionam porque a física é confiável. A gravidade é constante, os acelerômetros a medem continuamente e a trigonometria converte três números em um ângulo. A cadeia do elemento sensor MEMS para a exibição de bolha é inteiramente determinística — sem conjecturas, sem caixa preta.

O que separa um bom aplicativo de nível de um medíocre não é o acesso a hardware melhor. Cada telefone topo de linha vem com sensores mais que capazes. A diferença está no software: quão bem o fluxo de sensor bruto é filtrado, como a calibração é implementada e armazenada, como os presets de tolerância mapeiam para tarefas do mundo real. Acerte isso e um chip MEMS de $0,50 oferece precisão que se compara favoravelmente com instrumentos dedicados custando cinquenta vezes mais.

Entender como o sensor funciona também faz você um usuário melhor. Calibre na temperatura de trabalho. Remova a capa para leituras precisas. Deixe a leitura se estabilizar por um segundo antes de confiar nela. Esses hábitos vêm diretamente de saber o que o hardware está fazendo de verdade.

Experimente Spirit Level Pro gratuitamente

Funciona em qualquer telefone ou tablet. Sem necessidade de download. Recursos Pro a partir de $10 uma única vez.

Abrir Spirit Level Pro

Nenhuma conta necessária · Funciona offline · 20 idiomas