Meu maior desafio com essa pergunta é sua taxa de retirada ridiculamente íngreme.
Estou assumindo que o sinal é indetectável se seu ganho for de -20 dB. Isso significa que, dentro da faixa de transição de 200 Hz, a intensidade do sinal precisa cair em 20 dB.
Se meus cálculos estiverem corretos, esse filtro exigirá uma taxa de roll-off de 1200 dB / dec. Isso requer 60 pólos, o que obviamente não é viável.
Eu gostaria de usar um filtro ativo analógico com ondulação mínima na banda de passagem. Uma grande mudança de fase não é muito importante.
Uma solução potencial é usar um filtro de entalhe em 5,2 kHz. No entanto, as frequências acima da largura de banda do filtro de entalhe ainda não são suficientemente filtradas.
Aponte quaisquer falhas na minha lógica e ou proponha soluções em potencial. Obrigado.
Respostas:
Você assumiu um roll-off de 20dB / dec por pedido de filtro para o seu filtro. Isso não é verdade para todos os tipos de filtro.
Deixe- e f s t o p = 5,2 k H z . Em seguida, f s t o pf0 0= 5 k H z fs t o p= 5,2 k H z
Veja este filtro elíptico de quarta ordem retirado do artigo da Wikipedia .
Embora ele não atenda totalmente aos seus requisitos, você pode ver que é viável. Um filtro elíptico de ordem superior pode alcançar o que você procura.
Você deve ter em mente que os filtros elípticos podem fazer coisas perturbadoras na fase do sinal. Como você não mencionou nada sobre as restrições de fase, assumi que um filtro elíptico é adequado.
fonte
Esse tipo de redução acentuada requer um filtro digital. Nem pense em analógico. Você precisa envolver a entrada com uma função sinc. A largura da função sinc (o número de pontos do kernel) define a atenuação da banda de parada.
Eu não fiz as contas, mas alguns cálculos muito rápidos (podem ser desfeitos, seu trabalho deve ser feito corretamente) dizem que você provavelmente precisará de alguns 100 pontos se estiver amostrando a 20 kHz. 200 pontos a 20 kHz significa uma taxa MAC de 4 MHz. Isso é factível, na verdade bem abaixo do que os DSPs modernos podem fazer com bastante facilidade. Isso significa que seu problema é bastante tratável. Algo como um dsPIC da série E pode fazer isso, e isso é bastante barato se você estiver procurando apenas pelo recurso DSP.
fonte
Se você permitir um atraso substancial ou processar um sinal gravado, poderá simplesmente executar a FFT, remover componentes indesejados e inverter a transformação. Você deve truncar o fft com a função de janela apropriada para manter o toque aceitável.
fonte
Eu escolhia um chip de codec de áudio (ADC + DAC), encaminhava a saída digital do ADC para a entrada DAC e definia a taxa de amostragem para 10kHz.
Esses chips já incluem o mecanismo de filtro digital necessário. Uma verificação rápida da folha de dados parece confirmar que você obterá o desempenho de filtro necessário.
fonte
Você já tem muitas respostas legais com boas soluções tradicionais, filtros elípticos, FFT (curto espaço de tempo), etc.
A codificação de sub-banda significa subdividir o espectro de frequência em "compartimentos", cada um desses compartimentos possui seu próprio filtro associado. As bandas mais apertadas, os filtros mais amplos no domínio do tempo (naturalmente) - mas em áreas onde não precisamos de bandas muito estreitas, podemos escapar com filtros muito curtos e baratos para calcular.
Wavelets são funções que são o resultado de um tipo específico de filtros de sub-banda que são gerados por filtragem iterada seguida por subamostragem.
A idéia seria encontrar as sub-bandas de interesse que nos permitiriam apertar mais os cálculos, mas ainda assim obter uma boa granularidade na banda de interesse.
Exemplo de decomposição de pacotes de derivação Daubechies 12 em três níveis (Wikipedia):
Podemos então resumir seletivamente estes para obter a resposta que queremos. E os que não queremos adicionar - nem precisamos calcular! Vamos precisar de outros mais finos perto da faixa de 5-5,2 kHz para conseguir um comportamento suficientemente acentuado. Mas, por outro lado, longe da banda de 5-5,2 kHz, podemos escapar com apenas algumas subdivisões.
fonte
se você GARANTIR uma entrada sinusoidal, uma monoestável de uma só vez (74121) pode ser suficiente. Ou o 122/123 reativável.
Use um comparador antes da 74121/122/123
Alguns MCUs incluem comparadores analógicos como seus periféricos; uma vez convertido em onda quadrada, você pode usar temporizadores etc. para detectar acima / abaixo de 5.000Hz, se o MCU tiver um relógio estabilizado por XTAL. Não é necessário um monoestável sensível à temperatura.
fonte