Por que amostrar em uma determinada frequência apenas para reduzi-la imediatamente?


19

Peço desculpas se esta pergunta não for bem colocada. Estou lendo um artigo que afirma o seguinte:

Os vetores do magnetômetro são amostrados a 100 Hz. O detector filtra e baixa amostras dos vetores até 10 Hz para remover o ruído do sinal e reduzir o cálculo necessário para o processamento ao vivo no smartwatch.

Minha pergunta é: se eles queriam que a frequência de amostragem fosse 10Hz, por que eles não apenas amostraram a 10Hz inicialmente?


12
Anti-aliasing. Muito comum.
winny

Respostas:


41

se eles queriam que a frequência de amostragem fosse 10Hz, por que eles não apenas amostraram a 10Hz inicialmente?

Para evitar serrilhado , o sinal deve ser filtrado com passa-baixa antes da amostragem. Nenhuma freqüência acima de Fs / 2 deve estar presente no sinal analógico (ou, realisticamente, elas devem ser atenuadas o suficiente para serem enterradas no ruído ou para um nível baixo o suficiente para atender às especificações desejadas).

Se você amostrar em Fs = 10Hz e quiser obter sinais de 4Hz, por exemplo, seu filtro precisará deixá-los passar, mas fornecer uma atenuação forte acima de 5Hz, portanto, será necessária uma função de transferência plana na banda passante e, em seguida, uma queda acentuada. após a frequência de corte.

Esses filtros de alta ordem são difíceis e caros de implementar no domínio analógico, mas muito simples de serem executados no domínio digital. Os filtros digitais também são muito precisos, a frequência de corte não depende da tolerância dos capacitores, por exemplo.

Portanto, é muito mais barato usar um lowpass analógico de baixa ordem, sobrescrever um grande fator e, em seguida, usar um filtro digital nítido para reduzir a amostra para a taxa de amostra final que você realmente deseja.

O mesmo hardware digital também pode ser usado para vários canais. Nesta baixa frequência de amostragem, os requisitos de energia da computação são muito baixos, e um microcontrolador moderno implementa facilmente muitos canais de filtragem digital a um preço muito barato.


10

Você mencionou a palavra magnetômetros. Isso amplia um pouco o escopo.

Os magnetômetros para pessoas não familiares medem o fluxo magnético e criam uma tensão / sinal de saída proporcional de acordo com o fluxo.

É provável que você também detecte uma grande quantidade de "energia elétrica" ​​indesejada, devido à energia magnética irradiada de quaisquer cabos elétricos ao redor.

De fato, amostrar diretamente a 10hz na presença de 50hz pode deixá-lo louco, como você pode não ser exatamente 10hz, e você verá o que parece ser uma lenta mudança de CC para cima e para baixo por um período de vários segundos.

Os 100Hz tornam-se significativos para ajudar a anular esse sinal indesejado do que você realmente deseja ver. Isso é típico para lugares onde 50 hz são encontrados, nos EUA 60 hz, é claro.

Se você estiver usando magnetômetros em alguns países, o 100hz / 10hz não funciona tão bem; você pode encontrar um modelo diferente para esses mercados.

As respostas sobre antialiasing / filtragem etc ainda estão corretas; isso é apenas mais específico para o seu caso de uso.


7

Eles não diminuem imediatamente a amostra. Eles "filtram e reduzem a amostra". Presumivelmente, o filtro é um passa-baixo que elimina aliases que podem ocorrer no sinal de amostragem reduzida. A filtragem também pode reduzir o ruído usando informações de várias amostras de 100 Sps para contribuir para determinar cada um dos valores da amostra no sinal dizimado (10 Sps).


5
Esta resposta está correta, mas, para completar, para reduzir a amostragem corretamente, você deve usar o filtro passa-baixo (na frequência Nyquist) antes de reduzir a amostragem. O filtro não é opcional.
Marque Lakata

@MarkLakata Eu discordo. O filtro em si não é necessário, o que é necessário é que você não tenha sinais acima de Fs / 2. Se você espera alguma, precisará adicionar o chamado filtro anti-aliasing. Se, por design ou natureza do que você mede, você não espera nada (sinal ou ruído) acima de Fs / 2, o filtro é inútil.
Blup1980

@ Blup1980 Tecnicamente verdade - mas apenas se você estiver amostrando um sinal matematicamente puro, com resolução infinita e com jitter zero na geração da forma de onda e nos pontos de amostragem. Mesmo para o pós-processamento de uma forma de onda "pura" gerada por computador, isso significa que você precisa dela em todas as amostras digitais por causa do ruído no LSB (embora em altas resoluções você possa optar por ignorá-lo porque é pequeno). Para o caso do OP, é absolutamente necessário e nunca é opcional.
Graham

@ Blup1980 bastante justo, é possível que os sinais tenham sido estupidamente amostrados a 100 Hz com um filtro LP de 20 Hz no lugar. Mas, assumindo o caso geral em que suas formas de onda de entrada que não são limitadas por frequência, você precisa passar seus dados com baixa frequência antes de reamostrar em uma frequência mais baixa. pt.wikipedia.org/wiki/Sample-rate_conversion No caso de um magnetômetro (por exemplo, bússola em um smartphone), você pode assumir que há muito ruído em todas as frequências acima de 20 Hz.
27618 Mark Lakata

5

Existem muitos casos em que várias fontes de ruído rápidas (em comparação com o sinal) podem afetar as leituras. Outro exemplo é um fotodiodo que realiza medições lentas. Poderia captar facilmente o tremulação de 50/60/100 / 120Hz de fontes de luz comuns, dependendo de onde você estiver, e provavelmente até captar tremulação de LED / luz fluorescente de alta frequência.

Em alguns casos, você pode usar um filtro passa-baixo na entrada, mas geralmente é mais simples otimizar a filtragem no software (por exemplo, simplesmente exagerar a amostra e calcular a média de um número n de amostras, onde n é configurável pelo usuário).

Reduzir a taxa de amostragem não aumenta (necessariamente) (linearmente) o tempo de acomodação, portanto você está capturando instantaneamente o sinal de entrada. De fato, no MCP3002, por exemplo, o tempo de acomodação é baseado na velocidade do relógio SPI, que pode ser definida por outros motivos e não na taxa de amostragem (o que faz sentido: o dispositivo não sabe sobre a taxa de amostragem, apenas o fato de ser solicitado a amostra, mas os dados da folha de dados usam a velocidade do relógio definida a partir da taxa de amostragem). Se o desempenho do dispositivo for definido pela velocidade do relógio, e a velocidade mínima do relógio for maior do que você gostaria para o desempenho, você também pode ler mais rapidamente e a média é barata.


Muito bom ponto, a escolha da frequência de amostragem pode ser um artefato de alguma escolha de design não relacionada.
KalleMP 27/02

3

A amostragem excessiva facilita o filtro de alias e a resposta transitória, com um SAR ADC, enquanto a média por dizimação reduz o ruído pelas amostras raiz n no software. Se um IDC AD de integração estivesse disponível, isso poderia ser feito em uma única etapa.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.