Filtros de frequência extremamente baixa


13

Eu tenho uma placa de aquisição de dados (processador de sinal digital A / D +) e quero verificar se um filtro passa-alta digital (implementado no DSP) a uma frequência de corte extremamente baixa (0,05Hz) está realmente funcionando.

Se fosse uma frequência que eu pudesse gerar com um gerador de sinal, seria fácil verificar, mas 0,05Hz é muito baixo e não consigo gerá-lo. Como os engenheiros verificam esse tipo de filtro?


3
Minha mente está impressionada com esta pergunta e suas respostas! Eu nunca ter considerado filtragem esta baixa de uma freqüência :)
bitsmack

6
@bitsmack Eu já vi um passa-alto de 50 miliHz em um instrumento de eletrogastrografia (EGG).
Nick Alexeev

Alguns geradores de sinal possuem o botão MHz e o botão mHz.
AndrejaKo 31/01/19

Você pode alimentar um sinal de teste em formato digital no DSP? É fácil gerar qualquer frequência em formato digital. --- A desvantagem é que você não testará a parte analógica e A / D da placa.
Pabouk

1
@bitsmack Isso significa que você terá que esperar muito tempo antes que as coisas aconteçam e a "varredura" precise ser muito lenta (horas e horas), mas é bom testar o desempenho real em tempo real pelo menos uma vez antes de confiar que ele funcionará desacelerou (após o teste, acelerou). Coisas como apelidos podem criar suas cabeças.
Spehro Pefhany

Respostas:


18

Eu acho que depende de vários fatores, entre outros a ordem do filtro, mas você tem algumas possibilidades:

  1. Encontre um gerador de sinal que chegue lá. Estes são bastante baratos hoje em dia.
  2. Confie na matemática. Este é um filtro digital e, como tal, é dimensionado com a taxa de amostragem. Se você puder aumentar a taxa de amostragem em duas ordens de grandeza, terá um filtro com um limite de 5Hz, muito mais fácil de medir. Da mesma forma, se o fator limitante se tornar o ADC, você poderá isolá-lo do filtro e alimentar alguns dados digitais artificiais.
  3. Use uma resposta em etapas (muitos sinais de banda larga serviriam). Calcule a resposta da etapa do filtro desejado e compare com o resultado. Ou, alternativamente, calcule a resposta em frequência por meio da FFT da resposta em etapas.

Usamos uma variação da alternativa 3 em algumas de nossas configurações de teste, não porque não podemos gerar as formas de onda lentas necessárias, mas porque o corte <0,01Hz de nossos filtros analógicos levaria muito tempo para caracterizar se tentássemos até uma varredura aproximada de frequência . Isso reduziu o tempo de teste de mais de uma hora para meros minutos.


10

Eu usaria meu gerador de funções Agilent, que desce a 1 μ Hz, um modelo 33522A bastante comum (e obsoleto). Meu Rigol DG4102, eu acho, da mesma forma tem 1 μ resolução de Hz e custa menos.

Infelizmente, você não pode ficar tão baixo com os módulos DDS baratos (por exemplo, AD9850) porque a palavra de ajuste é de apenas 32 bits e o relógio normalmente é de 125 MHz, ou seja, resolução de 0,03 Hz. Suponho que daria alguns pontos de dados (0,0291 / 0,0582 / 0,0873 Hz)

Você também pode dar um passo e analisar a resposta no domínio do tempo.


2
Se o seu módulo DDS pode receber um sinal de relógio externo, basta fazer o underclock! A DDS é realmente uma divisão por N muito chique no coração ....
ThreePhaseEel

1
@ThreePhaseEel Você pode fazer isso, mas em geral não será uma saída muito agradável, a menos que você redesenha o filtro passa-baixo de saída, que normalmente é algo como um filtro elíptico LC de 5 polos. No caso do OP, como a frequência máxima é muito baixa, ele provavelmente poderia adicionar um filtro RC de passa-baixa de 1 Hz à saída e obter um sinal agradável.
Spehro Pefhany

Concordaram que você precisa de um postfilter - AD9850s ter um relógio mínimo de 1 MHz btw, que é um pouco limitante, mas ainda muito o suficiente para obter os resultados que o OP quer
ThreePhaseEel

@ThreePhaseEel Claro, até 8 ou 10 MHz produziriam uma resolução de 0,002 ou 0,0024Hz.
Spehro Pefhany

6

Opção 1: Teste no PC.

Se o seu código DSP estiver escrito em C, você poderá configurar um equipamento de teste no GCC ou no Visual Studio. Você conhece a taxa de amostragem do seu código DSP, portanto, use o Excel para gerar um arquivo CSV de entrada de teste e faça com que seu equipamento despeje uma saída de arquivo CSV que você pode verificar.

Opção 2: Teste no DSP com uma interface de PC.

Se o seu código DSP precisar ser executado no DSP, você ainda poderá usar o PC para testá-lo. Configure um chicote de teste no DSP que receba um valor do PC, execute uma etapa do filtro DSP e reporte a saída do filtro para essa etapa de volta ao PC (usando USB, RS-232 ou TCP / IP, dependendo da como você está se conectando ao DSP). Você também precisará de um equipamento de teste do lado do PC para enviar e receber esses valores. Novamente, você pode configurar um arquivo CSV de entrada de teste no PC, passar amostras sucessivas para o código do filtro e despejar uma saída de arquivo CSV que você pode verificar.

Para ambos...

Se você estiver filtrando a 0,05Hz, é provável que a taxa de amostragem também seja bastante lenta. O uso de um equipamento de teste permitirá que você execute esses testes mais rapidamente do que em tempo real, o que tornará seu processo de teste mais eficiente.


5

Se você também possui um conversor D / A em seu sistema DSP, pode gerar esse sinal de frequência extremamente baixa no software e alimentá-lo de volta à sua entrada A / D. Como alternativa, você pode usar um cartão D / A ou adaptador USB para gerar o sinal. Um exemplo de tais dispositivos seria o LabJack, mas há muitos outros com preços / recursos variados por aí. Outra possibilidade seria usar um micro controlador barato + DAC como Raspberry Pi ou Arduino


2

Se fosse uma frequência que eu pudesse gerar com um gerador de sinal, seria fácil verificar, mas 0,05Hz é muito baixo e não consigo gerá-lo. Como os engenheiros verificam esse tipo de filtro?

Há três boas maneiras de verificar a resposta do filtro, uma é uma função dirac delta (uma função de impulso ou pulso curto), a outra é uma entrada de etapa e a última é uma varredura de frequência.

Com os instrumentos que utilizo, os experimentos podem durar semanas a meses, alguns de nossos sistemas físicos têm uma resposta no intervalo de dias. A melhor maneira de verificar esses sistemas \ filtros é usar uma entrada de etapa e medir a constante de tempo. Se você se lembrar da constante de tempo para uma entrada de tensão é:

V(t)=V0(1et/τ)

τ=RC

insira a descrição da imagem aqui
Fonte: http://mit6002.blogspot.com/2011/05/1011-parallel-rc-circuit-step-input.html

(a foto possui uma fonte de corrente com um resistor paralelo equivalente a uma fonte de tensão com um resistor em série)


0

Você provavelmente poderia gerar um sinal de 50 mHz tolerável e suave à mão usando um potenciômetro e um relógio de pulso.

Como alternativa, calcule a resposta da etapa esperada do seu filtro. Dê um passo ao seu hardware pressionando um botão. Plote a saída em mais ou menos um minuto (se a base de tempo do seu osciloscópio não for tão lenta, grave um multímetro e transcreva as leituras a cada segundo). Compare a resposta da etapa medida com o que você previu. Se eles corresponderem (o suficiente, respondendo por imprecisões no ADC / DAC / tempo), seu filtro funcionará conforme projetado.

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.