Por que os filtros FIR ainda são estáveis, mesmo que contenham pólos?

15
  • Como os filtros FIR são sempre estáveis?

  • Como eles contêm pólos, eles não deveriam ser mais afetados por problemas de estabilidade do que outros?

user7277
fonte
FIR é estável se tudo é zero, está localizado na unidade de círculo
dato datuashvili
2
Não é verdade: o FIR é sempre estável e os zeros podem estar onde quiserem, inclusive fora do círculo da unidade. Exemplo: o filtro [1 -6 11 -6] possui zeros em z = 1, 2 e 3
Hilmar 7/14
novamente, @ Hilmar, depende de como a FIR é implementada. Os FIRs implementados como um IIR truncado (TIIR) podem não ser estáveis ​​por dentro. implementado como um filtro FIR transversal simples, sim, sempre estável. é estável mesmo se implementado usando "convolução rápida" (usando uma FFT e "overlap-add" ou "overlap-save"). e às vezes, quando implementado como um filtro TIIR, é estável (se o IIR interno é estável). mas um FIR implementado como TIIR pode ser instável internamente.
Robert Bristow-johnson

Respostas:

8

Os filtros FIR contêm apenas zeros e sem pólos. Se um filtro contém pólos, é IIR. Os filtros IIR são realmente afetados por problemas de estabilidade e devem ser manuseados com cuidado.

EDITAR:

Após uma reflexão mais aprofundada, alguns rabiscos e pesquisas no google, acho que tenho uma resposta para essa questão dos pólos de FIR que, esperamos, será satisfatória para as partes interessadas.

Começando com a transformação Z de um filtro FIR aparentemente sem polo: Como é mostrado na resposta de RBJ, os pólos de FIR são revelados multiplicando o numerador e o denominador deH(z)porzN: H(z)=b0z N +b1z N - 1 +b2z N - 2 ++bN

H(z)=b0+b1z1+b2z2++bNzN1
H(z)zN Produzindo assim nossospólosNna origem de um filtro FIR geral.
H(z)=b0zN+b1zN1+b2zN2++bNzN
N

No entanto, para mostrar isso, a suposição de causalidade é colocada no filtro. De fato, se considerarmos um filtro FIR mais geral em que a causalidade não é assumida: Um número diferente de polos(N-k)aparece na origem: G(z)=b0z N +b1z N - 1 +b2z N - 2 ++bN

G(z)=b0zk+b1zk1+b2zk2++bNzkN1
(Nk)
G(z)=b0zN+b1zN1+b2zN2++bNzNk

Assim, concluo o seguinte:

  • (Respondendo à pergunta original) Em geral, um filtro FIR possui pólos, embora sempre na origem do plano Z. Como eles nunca estão além do círculo unitário, eles não são uma ameaça à estabilidade de um sistema FIR.
  • NkNth(k=0 0)N
  • H(z)=z1=1z
Kenneide
fonte
2
Filtros IIR não são muito perigosos, na verdade.
precisa saber é o seguinte
19

z=0

Como todos os pólos estão localizados dentro do círculo da unidade, o filtro FIR é ostensivamente estável.

provavelmente esse não é o filtro FIR em que o OP está pensando, mas há uma classe de filtros FIR chamados filtros IIR truncados (TIIR) que podem ter um pólo dentro ou fora do círculo da unidade que é cancelado por zero no mesmo local. o exemplo mais simples disso é a soma móvel ou o filtro da média móvel. mas, de uma perspectiva de E / S, esses filtros TIIR são FIR.

mas eu não garantiria ingenuamente a "estabilidade". usando a linguagem do sistema de controle, o filtro TIIR não é "completamente observável" e pode parecer estável porque sua resposta ao impulso parece finita em comprimento, mas dentro dos estados do filtro pode estar indo para o inferno e, com precisão numérica finita, essa instabilidade interna acabará aparecer na saída.

temos que nos desiludir da noção de que "os filtros FIR não têm pólos" . não é verdade.

Robert Bristow-Johnson
fonte
Você pode mostrar matematicamente que os filtros FIR têm pólos, porque eu não estou vendo isso.
Jim Clay
O melhor exemplo de um FIR com pólos é o filtro Cascaded Integrated-Comb (CIC). Começa com um simples filtro de média móvel (coeficientes como 1, 1, 1, 1) e o reescreve recursivamente - introduzindo assim um polo. Veja o link . Geralmente, eles são implementados nos FPGAs como o primeiro passo na conversão descendente porque, na sua forma recursiva, são muito baratos de implementar computacionalmente. Veja a documentação do Graychip como um exemplo. Eles geralmente são implementados em ponto fixo para manter a estabilidade.
David
11
Acho que teremos que concordar em discordar - o resumo do artigo original de Hogenauer diz "Uma classe de filtros de resposta finita por impulso finito (FIR) de fase linear digital para dizimação (diminuição da taxa de amostragem) e interpolação (aumento da taxa de amostragem) é apresentada".
David
4
NthN
2
@ JimClay, um filtro de soma móvel ou média móvel CIC é certamente um filtro FIR. seu IR é F. normalmente não é implementado como um filtro FIR transversal, mas certamente poderia ser se você quisesse pagar com o MIPS.
Robert Bristow-johnson
14

"Você pode mostrar matematicamente que os filtros FIR têm pólos, porque eu não estou vendo isso". - Jim Clay

podemos assumir que este FIR é causal?

NN+1 1

a resposta de impulso finito: h[n]=0 0n>N, n<0 0

função de transferência do FIR:

H(z)=n=+h[n]zn=n=0Nh[n]zn=n=0NzNh[n]zNn=zNn=0Nh[Nn]zn=n=0Nh[Nn]znzN=h[N]+h[N1]z+h[N2]z2++h[1]zN1+h[0]zN(z0)N

tudo o que você precisa fazer é fatorar o numerador e saberá onde estão os zeros. mas é bastante óbvio onde todos os pólos são para um filtro FIR. e existem tantos pólos quanto a ordem do filtro FIR. note que esses polos não afetam a resposta de frequência. exceto para a fase.

Robert Bristow-Johnson
fonte
6
Eu estou corrigido. Obrigada pelo esclarecimento.
Jim Clay
1

Um pouco por definição, na verdade. Como você insere energia finita e o Filtro fornece apenas um múltiplo da entrada de energia (sua resposta ao impulso possui uma energia finita), o sinal resultante terá no máximo um múltiplo da entrada de energia. Ele não pode ressoar e, assim, escalar, como os filtros IIR. Isso está por trás da resposta de Kenneides também.

user7358
fonte
Sim, e é tão falso quanto a resposta de Kenneide.
22864 Robert De Bristow-johnson
2
Caro Robert Bristow-Johnson, por favor, esclareça-nos mortais. Onde o filtro FIRH(z)=1 1tem um poste?
user7358
2
ok, bom ponto lá. o filtro FIR ou IIR de ordem 0 (às vezes conhecido como "fio") não possui pólos nem zeros (a menos que você queira pensar emH(z)=1 1=zz onde o pólo e zero cancelam). Eu estou corrigido.
Robert Bristow-johnson
A unidade demora H(z)=ztem um poste?
user7358
11
bem, isso é um avanço de unidade . mas o atraso da unidade,H(z)=z-1 1 não ter um único pólo emz=0 0.
22680 Robert Bristow-Johnson
1

Ninguém realmente se interessou por que os pólos de um filtro FIR são removíveis, por isso tentei responder isso abaixo.

Os filtros FIR terão pólos removíveis na origem, porque a limitação de sua resposta ao impulso exige isso. Ao redor do polo, é possível definir a função para que ela ainda seja holomórfica (diferenciável em todos os pontos de seu domínio).

É um teorema de Riemann que, se um sinal é diferenciável em todos os pontos de seu domínio (exceto por muitos pontos finitos), existe uma vizinhança em torno desses pontos especiais em que a função é limitada. As implicações são bidirecionais neste teorema; portanto, como é necessário que os filtros FIR tenham uma resposta de impulso limitada, a resposta de impulso deve ser diferenciável em todos os pontos do círculo unitário. Assim, o sinal pode ser estendido de maneira consistente para que não haja singularidades (ou seja, os polos são removíveis).

É por isso que a transformação z de um filtro FIR não contém poderes negativos de z.

Tom Kealy
fonte
11
Tom, acho que a transformação Z de um FIR realizável contém apenas poderes negativos dez. bem, ok, apenas poderes não positivos dez.
Robert Bristow-johnson
@ robertbristow-johnson desculpe, sim. Eu estava pensando em uma função geradora. No entanto, não acho que a resposta acima mude sob a ação dez -> z-1 1.
precisa saber é o seguinte