Saturday 23 December 2017

Frequência de deslocamento médio de corte


Eu preciso projetar um filtro de média móvel que tem uma freqüência de corte de 7 8 Hz Eu usei filtros de média móvel antes, mas até onde eu estou ciente, o único parâmetro que pode ser alimentado é o número de pontos a serem Média Como isso pode se relacionar a uma freqüência de corte. O inverso de 7 8 Hz is.130 ms, e eu estou trabalhando com dados que são amostrados em 1000 Hz Isso implica que eu deveria estar usando um tamanho de janela de filtro média móvel De 130 amostras, ou há algo mais que eu estou faltando here. asked Jul 18 13 em 9 52. O filtro de média móvel é o filtro usado no domínio do tempo para remover o ruído adicionado e também para finalidade de suavização, mas se você usar o Mesmo filtro de média móvel no domínio da frequência para a separação de freqüência então o desempenho será o mais mau então nesse caso use filtros do domínio da freqüência user19373 Feb 3 16 em 5 53. O filtro da média movente conhecido às vezes colloquially como um filtro boxcar tem um impulso retangular response. Or , Afirmado de forma diferente. Recordando que um discreto - A resposta de freqüência do sistema de tempo s é igual à transformada de Fourier de tempo discreto de sua resposta de impulso, podemos calculá-la da seguinte maneira. O que estamos mais interessados ​​em seu caso é a resposta de magnitude do filtro, H omega Usando um par de manipulações simples , Podemos obter isso em uma forma mais fácil de compreender. Isso pode não parecer mais fácil de entender No entanto, devido à identidade Euler s lembrar que. Portanto, podemos escrever o acima como. Como eu disse antes, o que você está realmente Preocupado com a magnitude da resposta de freqüência Então, podemos tomar a magnitude do acima para simplificá-lo ainda mais. Nota Nós somos capazes de eliminar os termos exponenciais porque eles não afetam a magnitude do resultado e 1 para todos os valores de Omega Desde xy xy para quaisquer dois números finitos complexos xey, podemos concluir que a presença dos termos exponenciais não afetam a resposta de magnitude global em vez disso, eles afetam a resposta de fase do sistema s. A função resultante dentro dos parênteses de magnitude É uma forma de um kernel de Dirichlet Às vezes é chamada de função de sinc periódica, porque se assemelha à função de sinc um pouco na aparência, mas é periódica. De qualquer forma, uma vez que a definição da freqüência de corte é um pouco underspecified -3 dB ponto -6 dB Primeiro sidelobe nulo, você pode usar a equação acima para resolver o que você precisa Especificamente, você pode fazer o seguinte. Set H omega para o valor correspondente à resposta do filtro que você deseja na freqüência de corte. Set omega igual à freqüência de corte Para mapear uma freqüência de tempo contínuo para o domínio de tempo discreto, lembre-se que omega 2 pi frac, onde fs é sua taxa de amostragem. Encontre o valor de N que lhe dá o melhor acordo entre os lados esquerdo e direito da equação That Deve ser o comprimento de sua média móvel. Se N é o comprimento da média móvel, então uma freqüência de corte aproximada F válida para N 2 na freqüência normalizada F f fs é. O inverso deste is. This fórmula é assintótica cor Rect para N grande e tem cerca de 2 erro para N 2 e menos de 0 5 para N 4.PS Após dois anos, aqui finalmente qual foi a abordagem seguida O resultado foi baseado em aproximar o espectro de amplitude MA em torno de f 0 como um Série de acordo com a. MA Omega aproximadamente 1 frac - frac Omega 2.que pode ser feito mais exato perto do cruzamento zero de MA Omega - frac por multiplicação de Omega por um coeficiente. Obtendo MA Omega aproximadamente 1 0 907523 frac - frac Omega 2.A solução de MA Omega - frac 0 dá os resultados acima, onde 2 pi F Omega. All do acima se refere a -3dB freqüência de corte, o sujeito deste post. Sometimes embora seja interessante obter um perfil de atenuação em stop-band que é comparável Com o de uma primeira ordem IIR Low Pass Filtro único pólo LPF com um determinado -3dB freqüência de corte como um LPF também é chamado de vazamento integrador, tendo um pólo não exatamente na DC, mas perto dela. Na verdade, tanto o MA eo primeiro Ordem IIR LPF tem -20dB declive década na faixa de parada um precisa de um N maior do que o usado na figura, N 32, para ver isso, mas enquanto MA tem nulos espectral em F k N e um 1 f evelope, o IIR Filtro só tem um perfil de 1 f. Se um quer obter um filtro MA com capacidades de filtragem de ruído semelhantes como este eu IR, e corresponde às freqüências de corte 3dB para ser o mesmo, ao comparar os dois espectros, ele iria perceber que a ondulação da banda de parada do filtro MA termina acima.3dB abaixo do do filtro IIR. Para obter o mesmo Stop-band ondulação ie mesma atenuação de potência de ruído como o filtro IIR as fórmulas podem ser modificadas como follows. I encontrou de volta o script Mathematica onde eu calculou o corte para vários filtros, incluindo o MA um O resultado foi baseado em aproximar o espectro MA Em torno de f 0 como uma parábola de acordo com MA Omega Sin Omega N 2 Sin Omega 2 Omega 2 pi F MA F aprox N 1 6 F 2 NN 3 pi 2 E derivando o cruzamento com 1 sqrt de lá Massimo Jan 17 16 at 2 08. Resposta de Frequência do Filtro de Média Corrente. A resposta de frequência de um sistema LTI é a DTFT da resposta de impulso. A resposta de impulso de uma média móvel de L-amostra é. Uma vez que o filtro de média móvel é FIR, a resposta de frequência reduz-se ao finito Podemos usar a identidade muito útil. Escreva a resposta de freqüência como. Onde temos aej N 0 e ML 1 Podemos estar interessados ​​na magnitude desta função para determinar quais freqüências passam pelo filtro sem atenuação e quais são atenuadas Abaixo está um gráfico da magnitude de Essa função para L 4 vermelho, 8 verde e 16 azul O eixo horizontal varia de zero a radianos por amostra. Observe que, em todos os três casos, a resposta de freqüência tem uma característica de passagem baixa. Uma freqüência constante de componente constante na entrada passa através do filtro Sem atenuação Certas freqüências mais altas, como 2, são completamente eliminadas pelo filtro No entanto, se a intenção era projetar um filtro passa-baixo, então não temos feito muito bem Algumas das freqüências mais altas são atenuadas apenas por um fator de cerca de 10 para A média móvel de 16 pontos ou 1 3 para a média móvel de quatro pontos Podemos fazer muito melhor do que isso. O gráfico acima foi criado pelo seguinte código Matlab: 0 pi 400 pi H4 1 4 1-exp - i omega 4 1- Exp - io Mega H8 1 8 1-exp-omega 8 1-exp - i omega H16 1 16 1-exp-omega 16 1-exp - i omega trama omega, abs H4 abs H8 abs Eixo H16 0, pi, 0, 1.Eu uso a segunda resposta no meu algoritmo para calcular a freqüência de corte 3dB do meu filtro, que funciona muito bem, como o meu comprimento do filtro é geralmente acima de 300 eu verifiquei com a resposta passo. Mas eu gostaria de ter uma fonte ou derivação para esta fórmula. Eu tentei à mão com taylor série de parar após o segundo e terceiro trimestre eu venho perto, mas não exatamente para a fórmula e mapple me dá um resultado válido, mas extremly complicado. Espero Você pode ajudar. E você não precisa aproximar qualquer soma neste com uma integral, mas você precisa aproximar o pecado 2 com um número finito de termos da série Maclaurin o que você precisa é uma solução exata para este 2 pecado 2 omega0 N 2 N 2 sen 2 omega0 2 ea resposta que tenho é, o melhor que posso dizer, a aproximação mais próxima fazendo o menor número de hipóteses Ions robert bristow-johnson Jan 13 16 at 5 46.Consider uma média móvel de fase zero de comprimento N. Filtros de comprimento de onda que operam em seqüências discretas com índices de tempo inteiros não podem ser de fase zero Nós temos contornado isso, habilitando os índices de tempo de saída Para sempre ter uma fração de fração, no caso de N mesmo Como um exemplo do mundo real, se a entrada foi amostrada a cada meia-noite, a média móvel de fase zero de comprimento uniforme seria calculada para cada meio-dia. Mesma forma de fase zero de resposta de freqüência FN omega tanto para N estranho e N even. Unfortunately a resposta de freqüência não tem solução simbólica para a freqüência de corte de -3 dB omegac, de modo que. Strictly falando sqrt é cerca de -3 01 dB, mas eu Acho que é o que as pessoas querem dizer quando dizem -3 dB, porque senão é apenas um número arbitrário Um chapéu de resposta de freqüência aproximada N omega usa uma integral em vez de uma soma. Os lóbulos principais da soma verdadeira ea frequência integral aproximada resp Ones converge em grande N. Nós podemos provar a convergência através da introdução de funções GN chi FN omega e chapéu N chi chapéu N omega com o argumento normalizado de tal forma que omega frac, trazendo o primeiro zero de ambas as funções para chi 1. GN chi é conhecido como O trem de impulso limitado em banda N periódico Seu limite em N grande eo som de função N chi são ambos a função de texto Infelizmente a freqüência de corte de -3 dB não tem solução simbólica no chapéu de aproximação N omega Tanto para N diferente, a aproximação apenas Difere da aproximação N 1 por um mapeamento omega rightarrow omega N, então é suficiente para resolver a cerca de -3 dB de frequência de corte chapéu omegac N numericamente para N 1. dando a frequência de corte aproximada para arbitrária N. That parece ser outra, mais simples Aproximação do que Massimo s Para o seu N 300 não deve haver nenhum problema usando Massimo s e esta resposta s constantes estão relacionadas by. I olhou um pouco mais e descobriu que Massimo aproxima FN omega com chapéu M omega, choosin G M tal que os limites das segundas derivadas da resposta de freqüência e da aproximação correspondem a omega 0. Isso melhora a aproximação em ômega pequeno que inclui o ponto de corte -3dB, especialmente em pequena aproximação de N. Massimo s sempre superestima a freqüência de corte Ver a comparação de erro, deixando espaço para melhorá-lo, alterando a constante 1 O erro é o maior para N 2 Se o seu erro é restrito igual ao segundo maior erro atual em N 3, obtemos uma aproximação ainda melhor, mas tão barato. Este e outros ajustes da constante, como Matt s constante 0 863031932778066 trabalho surpreendentemente bem para grande N ver a comparação de erro Para grande N o erro cai por um fator de 1000 para cada aumento de N por um fator de 10 A explicação para essas coisas É que a verdadeira freqüência de corte em função de N tem uma série de Laurent. E a aproximação e sua série de Laurent são tais que a1 a 2 78311475650302030063992 a3 aprox - frac. If o m aproximado Atch no N - term foi feito exato, o erro de aproximação deve diminuir por um fator de 10 5 para um aumento de N grande por um fator de 10 Os coeficientes ak da série de Laurent fx soma frac de uma função fx como x rightarrow infty Pode ser encontrado iteratively por. Quando não temos fx em forma simbólica, mas pode resolvê-lo numericamente a qualquer precisão para x muito grande, podemos fazer o equivalente ao procedimento acima numericamente O seguinte script Python que usa SymPy e mpmath irá calcular Um dado número aqui 10 dos primeiros coeficientes ak na precisão desejada para a série Laurent da freqüência de corte verdadeiro. No meu computador o programa é executado por cerca de 7 minutos Imprime o seguinte, mostrando que a série Laurent consiste apenas de poderes negativos ímpares . Esses números, mostrados a 24 casas decimais, não são de uma aproximação no sentido de que a série Laurent é única. Não há nenhuma outra série de Laurent que seja igual a omegac N Usando apenas a1 e a3, uma simples truncada de dois termos Laurent e podem ser construídos por c - frac a aproximação. Ambos possuem 1 N 5 erro de decaimento em grande N, veja as colunas de comparação de erro h e i respectivamente. Uma série truncada mais longa de Laurent com mais termos da saída do script decai ainda mais rápido , 1 N para a aproximação de 5-termo na coluna j na seqüência de comparação de erro. up de mim, Olli. mas por alguma razão, eu acho que a resposta é muito mais simples normalmente eu gosto de projeto acausal filtros FIR simétricos, porque eles são zero Fase, mas geralmente eu me limito a um número ímpar de torneiras não-zero para fazer isso de forma mais geral, eu poderia ficar com a média móvel de FIR causal. let s dizer que o número de torneiras é N. applying mathcal - transform ea soma geométrica Fórmula. substituindo z leftarrow e para obter o DTFT. normally chamamos a coisa que multiplica X z a função de transferência. e a coisa que multiplica X e, a resposta de freqüência. o fator e significa uma fase linear, retardo constante de amostras de frac Não muda o ganho. o factor de fractura é o factor de ganho a frequência de -3 dB, omegac, normalmente queremos dizer a frequência -3 0103 dB porque isso corresponde à frequência de metade da potência é tal que. 2 sen 2 omegac N 2 N 2 sen 2 omegac 2.so dado o número de torneiras N, você tem que resolver para omegac que pode não ser tão fácil de fazer para um formulário fechado, mas você pode cavar sua calculadora e plug e Chug até que você obtenha uma resposta que tenha precisão suficiente ou você pode obter MATLAB para fazê-lo. Uma aproximação decente para omegac pode ser tido para grande N, usando uma identidade trig um eu uso comumente quando im brincando com a transformada bilinear e os três primeiros Termos para a série de Maclaurin para cos. if que você obstrui essa aproximação para o pecado 2 na equação precedente e resolve saltar um lotta etapas porque eu sou demasiado preguiçoso a LaTeX ele out. Olli, como bom faz aquele compara a seus resultados. Fazendo isto Um melhor com outro termo para a aproximação do pecado 2, é factível, exige apenas uma solução quadrática para o ômega0 2 a aproximação para usar mantendo os quatro primeiros termos da expansão cos é. tendo essa aproximação e resolver para omegac 2.o mais consistente A resposta que eu obtenho é. Com a opção que olha Like. and com o - opção parece. que está muito mais perto da aproximação de primeira ordem eu fiz acima então eu acho que iria tomar a opção. so, mesmo que eu não posso dizer analiticamente por que a opção deve ser rejeitada, i Acho que a minha resposta mais precisa seria. que tem o limite, para o grande N, mostrado acima. Faz qualquer outra pessoa ter uma maneira melhor de olhar para uma boa solução aproximada de forma fechada para este. Tweek passado sobre isso antes de retirar a aproximação sin 2 Theta aproximadamente theta 2 esquerda 1 - frac theta 2 frac theta 4 direito realmente deve ser bom para todos os le leot the le fract para fazer isso acontecer e para fazer o comportamento continuar a ser muito bom em theta ll 1, devemos fudge o último Coeficiente, frac, a ser frac para que a aproximação seja boa para o pecado 2 esquerda frac direita não aumenta a complexidade, mas pode fazer para uma melhor resposta robert bristow-johnson Jan 13 16 às 6 27. frac é realmente uma faixa limitada Impulso para aproximá-lo com uma função de texto como em minha resposta é exa Ct para dentro da precisão de 2 78311475650302030063992 no limite de grande N onde o seu omega0 frac dá cerca de 0 88 vezes o verdadeiro corte e seu omega0 direito sqrt dá cerca de 1 035 vezes o verdadeiro corte eu acho que se você quiser fazer uma melhor aproximação você Deve incluir essa constante longa Olli Niemitalo Jan 13 16 at 8 46.Robert, você precisa usar o sinal - em sua fórmula de equação quadrática, porque isso dá a solução onde a série Taylor ainda tipo de aproxima a função original A outra solução é apenas Válido para o polinômio de Taylor, mas não para a função original, porque para esse valor maior, o polinômio de Taylor nem se aproxima da função original. Então, para uma expansão de Taylor em torno de x0 0, você normalmente tem que escolher a menor solução em Magnitude, porque aquele é aquele onde a aproximação funciona melhor Matt L Jan 13 16 at 14 23. Vamos comparar os erros numéricos reais para diferentes aproximações do corte freque Ncy O erro fornecido na tabela é calculado subtraindo-se a freqüência de corte de -3 dB efetivamente resolvida numérica da aproximação. Notas A aproximação e não permite N 2 Alguns dos erros são listados como 0, mas apenas significa que sua magnitude é Menos do que cerca de 1E-17 Isso e outras imprecisões possíveis são de uso de aritmética de ponto flutuante de dupla precisão no cálculo da aproximação e do erro. Feel livre para editar adicionar outra aproximação. OK, isso é divertido eu vou adicionar o meu próprio Pensamentos e aproximações, o primeiro dos quais se torna idêntico ao dado por Massimo nesta resposta e o derivado por Olli neste tópico ainda o incluo aqui porque sua derivação é diferente Então eu vou mostrar uma melhor aproximação, que Tem um erro relativo máximo de 0 002 para N 2, em cujo caso obviamente temos uma solução analítica para a freqüência exata de corte omegac pi 2, e para o qual o erro relativo é menor que 1 2 cdot 10 para N ge 10. isto É bem conhecido e foi mostrado por Olli e Robert em suas respostas, que a função de amplitude valor real de um filtro de média móvel de comprimento N é dada por. A freqüência de corte de 3 dB omegac satisfaz. Até onde eu sei há Nenhuma solução analítica razoavelmente simples para a Eq 2 A chave para as aproximações apresentadas aqui é - não surpreendentemente - uma aproximação de Taylor A diferença entre a série de Taylor usada na resposta de Robert é que eu não separadamente aproximar as funções seno ou seus valores quadrados como em Robert s responde, mas eu aproximo diretamente a função de amplitude completa dada em 1 Aproximando sin N omega 2 ou seu valor quadrado resultará em erros maiores do que quando a função completa é aproximada, porque o argumento N omega 2 nunca se aproxima de zero, mesmo para grandes Valores de N Aproximando apenas o denominador sin omega 2 ou o seu valor quadrado é OK, porque o seu argumento omega omegac aproxima-se zero para grande N De qualquer forma, eu vou usar nenhum dos dois approxi Mas eu usarei a série de Taylor de HN omega Para a notação mais simples eu usarei x omega 2 e FN x HN omega A série de Taylor de FN x em torno de x0 0 é dado por. Para grandes valores de N, esta aproximação é legítima porque A freqüência de corte omegac tende a valores pequenos. Para a primeira aproximação eu só uso os dois primeiros termos em 3.Solução 4 dá uma primeira solução aproximada. O problema com esta solução é que é tendencioso, o que significa que seu erro não T converge para zero para grande N No entanto, verifica-se que por um simples escalonamento de 5, este tendencioso pode ser removido para viés zero exigir. Quando eu usei a notação omega N para enfatizar sua dependência de N Solving 6 com a expressão geral . A aproximação 7 com um dado por 9 é idêntica à fórmula de Massimo que você tem que dividir por 2 pi para obter sua constante de magia, e ele S também o mesmo que o derivado por Olli de uma maneira diferente Nesta linha vemos que uma aproximação de Taylor nos deu a forma correta da equação, mas a constante teve que ser determinada por um processo limite para obter uma fórmula com viés zero. Para a maioria dos propósitos práticos, esta fórmula é suficientemente precisa com um Erro máximo relativo de 6 9 cdot 10 para N ge 10 Usando todos os termos na aproximação 3 nos dará uma aproximação ainda melhor O processo é exatamente o mesmo que antes de definir a aproximação de Taylor de FN x igual a 1 sqrt e resolver para xc Há apenas poderes de x, por isso só precisamos resolver uma equação quadrática Isso nos dá a seguinte fórmula. Note que das quatro soluções da equação quartic, precisamos escolher o menor dos dois positivos, porque isso s O valor em que a série de Taylor se aproxima de perto de FN x A outra solução positiva é um artefato em uma faixa em que a série de Taylor diverge de FN x A aproximação 10 tem o mesmo pequeno problema que a primeira versão do anterior Oximation dada por 5 em que tem um viés pequeno Este viés pode ser removido exatamente da mesma maneira como antes, considerando o limite 6, desta vez com omega N Minha aproximação final com base em 10, mas com desvio zero é dada por. where b Pode também ser obtido resolvendo uma equação semelhante a 8. Na verdade, ele pode ser escrito em termos de um dado por 9. tag I computou os valores exatos de omegac numericamente para N na faixa de 2.100, então eu poderia Calcular o erro relativo. que permite a comparação de diferentes aproximações ômega I ll apenas discutir as aproximações com desvio zero omega dado por 7 com um dado por 9 e ômega dado por 11 e 10, com b dado por 12 A figura abaixo mostra a Os erros relativos definidos por 13 como uma função de N A curva vermelha é o erro relativo da aproximação 7 ea curva verde é o erro de aproximação 11 Ambas as aproximações têm polarização zero convergem para os valores exatos para N grande, mas o verde Curva converge si Gnificantly mais rápido. As fórmulas de polarização zero mostradas acima são aproximações decentes para as freqüências de corte real, mas as melhores fórmulas 10,11,12 é muito estranha Olli teve a grande idéia de ajustar a constante denominador na fórmula simples 7 As Enquanto usamos o valor ótimo de um dado por 9, podemos mudar a constante do denominador sem perder a propriedade de polarização zero. Assim, obtemos uma nova fórmula. Com uma constante c a ser otimizada. Se eu entendi corretamente, Olli baseou sua otimização de C sobre o valor de erro para N 2 No entanto, penso que o valor N 2 não é muito relevante porque para N 2, omegac pode ser calculado analiticamente omegac 2 pi 2 Portanto, don t necessariamente necessidade de otimizar a fórmula 14 para o caso N 2 Se ele vem à custa da aproximação em valores maiores de NI otimizada a constante c em 14 da seguinte maneira Se omegac N são as freqüências de corte exatas para um dado conjunto de comprimentos de filtro N, temos um sistema de equações superdeterminadas . Onde podemos escolher qualquer re Um conjunto de valores não toleráveis ​​para N Reorganizando 15 fornece outro conjunto de equações, desta vez linear no desconhecido c. A solução ótima de mínimos quadrados de 16 é. Onde L é o número de valores diferentes para N usado na soma Se você usar todo o inteiro Valores de N na faixa de 2.100 obtém. que está próximo do valor de Olli, mas que dá uma aproximação ainda melhor para todos os N ge 3 Eu adicionei os valores de erro a esta coluna de tabela f. In sua resposta, Robert estava se perguntando por que ele Deve descartar a segunda maior solução positiva para omegac quando se utiliza uma série Taylor de quarta ordem para o pecado 2 x A figura abaixo mostra a razão A função de amplitude quadrada original é mostrada em azul para N 10 A linha 3dB está em vermelho A função verde é a Taylor Aproximação, que cruza a linha vermelha duas vezes Estas são as duas soluções positivas para omegac Uma vez que a função é par, temos também as mesmas duas soluções com sinais negativos, o que torna quatro, como deve ser o caso de um polinômio de quarta ordem No entanto, isso é o É óbvio que a maior das duas soluções positivas é um artefato devido à divergência da aproximação de Taylor para argumentos maiores. Portanto, é apenas a solução menor que faz sentido, a outra não fornece outra resposta porque essa abordagem é completamente diferente na Sinto que não tento aproximar a função de amplitude do filtro para calcular uma aproximação da freqüência de corte, mas eu uso uma abordagem de ajuste de dados pura dada as freqüências de corte exatas, que foram computadas numericamente e que também são dadas para Um conjunto de comprimentos de filtro na coluna mais à esquerda desta tabela. Com o encaixe de dados, muitas vezes o problema mais difícil é encontrar uma parametrização apropriada da função de aproximação. Dado que das outras respostas neste tópico sabemos que com as constantes apropriadamente escolhidas a e C é uma aproximação surpreendentemente boa para uma ampla gama de valores de N, e uma vez que Wolfram Alpha nos diz que a expansão da série Laurent de 1 em N infty tem Somente termos com poderes ímpares de 1 N, parece razoável parametrizar a freqüência de corte por uma série de Laurent com poderes ímpares de 1 N. Podemos calcular o valor exato de a1 em 2 da exigência de que o chapéu de estimativa c N tenha Zero, isto é, que converge para a verdadeira frequência de corte para grande N Isto é explicado na minha outra resposta Seu valor é. As outras constantes em 2 podem ser computadas por um ajuste de mínimos quadrados de 2 para os dados, que são os Freqüências de corte exatas O ajuste de mínimos quadrados pode ser calculado pelo seguinte simples script de Octave Matlab supondo que a variável wc é um vetor com freqüências de corte exatas previamente calculadas para o conjunto desejado de comprimentos de filtro. Os coeficientes resultantes são. Begin a3 1 201014809636180 a5 0 768735238011194 a7 0 514237034990353 a9 0 548681885931852 end. with a1 dado por 3 Esta aproximação é extremamente próxima dos valores exatos de omegac O erro de aproximação pode ser encontrado nesta coluna da tabela g.

No comments:

Post a Comment