Uma das maneiras padrão de implementar um filtro Butterworth é com uma cascata de seções de segunda ordem, cada uma correspondendo a um par de pólos conjugados complexos. Para um filtro de quarta ordem, por exemplo, haveria duas seções de segunda ordem. Se considerarmos como as localizações dos pólos para um filtro passa-baixo mudam no plano z, à medida que o ponto de corte é projetado entre 0hz e Nyquist, o caminho "varrido" por cada par de pólos corresponde a um par de arcos dentro do círculo unitário , conforme ilustrado na figura a seguir [para filtros de quarta ordem]:
Dado o tempo que esses filtros existem e o fato de esses "arcos" corresponderem a linhas retas no plano s, é lógico que alguém teria desenvolvido um formulário de implementação com um único parâmetro capaz de varrer os polos ao longo dos arcos no "tempo de execução" [em oposição ao "tempo de design"]. No entanto, ainda não encontrei nada assim.
É relativamente simples propor várias maneiras de fazer isso, especialmente em segmentos do intervalo, e com a disposição de oferecer um pouco de computação extra. O que eu quero saber é o seguinte:
Existe alguma maneira padrão de implementar um filtro Butterworth [digital] sintonizável de uma determinada ordem que 1) possua propriedades ideais (por exemplo, eficiência, robustez) e 2) cubra toda a faixa?
Ou esse é realmente um problema tão fácil que ninguém se incomoda em falar sobre isso? Se for esse o caso, parece que ele apareceria em programas de design de filtro ao lado das opções para designs "estáticos".
Eu achei isso: A finalidade dos filtros múltiplos Butterworth com freqüência de corte variável , mas a princípio pesquisando não parece ser muita informação sobre o que está nele.
Atualização (re: respostas)
Só para ficar um pouco mais claro:
- Estou procurando um "meta-design" com um parâmetro (digamos de [0,1]) que ajuste automaticamente o ponto de corte de DC para Nyquist (mantendo o ganho normalizado) para uso em um sistema de variação temporal. Algo como esse ressonador bipolar , exceto com restrições de Butterworth. A idéia é que calcular o parâmetro seja mais eficiente do que executar o procedimento de design offline típico em tempo de execução.
- Não estou necessariamente procurando como projetar um "meta-filtro" (por exemplo, fazer a matemática com variáveis em vez de números); estou pensando se há opções para formas de implementação padrão (não óbvias) - porque, por exemplo, a abordagem direta que corresponde ao caso estático acaba tendo problemas numéricos no caso de variação temporal.
- Talvez não haja problemas, e a abordagem direta é a que é usada na prática. Isso seria bom. Minha preocupação é que eu não tenha visto esse tópico mencionado explicitamente em nenhuma das fontes que consultei, mas talvez tenha perdido algo realmente óbvio, por isso estou perguntando.
- No processo de adicionar mais detalhes aqui, deparei-me com um tratamento geral de estruturas paramétricas de biquad, que é quase o que estou procurando (e tem algumas boas referências).
Atualização 2
Estou procurando respostas como a que eu coloquei no meu segundo comentário para Jason R, da seguinte forma:
"Ah, sim, você deseja usar a parametrização III-2b da tese do tipo" tal ou tal ", na forma de treliça de estado derivado, porque resolve o caso de tal e qual borda usando o número mínimo de multiplicações."
Talvez nada disso exista, mas minha pergunta é se existe, e se sim, o que é, ou onde posso encontrá-lo?
Jackpot
Com base em uma referência à "forma canônica do observador" fornecida por Tim Wescott no tópico comp.dsp na resposta de Jason R , decidi assumir que talvez tivesse que começar a procurar na literatura dos sistemas de controle, então tentei fazer uma busca por "espaço de estado" de butterworth , e resultou o seguinte, muito legal, tratamento de projeto / implementação, não apenas os parâmetros paramétricos de Butterworth, mas também os filtros Chebyshev e Elliptic:
Sophocles J. Orfanidis, "Design Paramétrico Digital de Alta Ordem do Equalizador", J. Audio Eng. Soc. Vol. 53, pp. 1026-1046, novembro de 2005.
- Artigo: http://www.ece.rutgers.edu/~orfanidi/ece348/hpeq.pdf
- Matlab Toolbox: http://eceweb1.rutgers.edu/~orfanidi/hpeq/
Vai demorar um pouco para investigar, mas com base no que li até agora, ficaria muito surpreso se não fosse o que estou procurando. Estou entregando este a Jason R pela referência comp.dsp que me levou ao artigo da Orfanidis. Sua resposta também é uma boa visão prática do design de filtros Butterworth também.