logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.
  • #1 1611624
    szewczyk
    Poziom 11  
    Witam
    Potrzebuję zaprojektować przesuwnik fazy –pi/2 dla sygnałów dyskretnych w paśmie 300-3000Hz z wykorzystaniem procesora sygnałowego. Operację taką realizuje transformata (filtr) Hilberta. W książce „Podstawy teorii sygnałów” Szabatin pisze: „Tego typu filtr można zrealizować już fizycznie”. Tu zaczyna się problem, jak zaprojektować filtr o stałym przesunięciu fazowym w paśmie 300-3000Hz? Próbowałem Matlabem – DSP Blockset – Filter Designs wybierając filtr typu Hilbert Transformer, lecz charakterystyka fazowa zawsze jest pochyła. Czy istnieje jakaś metoda otrzymania w praktyce płaskiej charakterystyki fazowej, może w węższym paśmie?
  • #2 1629942
    vadkudr
    Poziom 12  
    Filtr Hilberta jest filtr symetryczny. Dlatego ma delay(jak to po-polsku?) rowny polowie ego dlugosci.
    To znaczy, ze musisz przedac' oryginalnemu signalu takie z delay.

    Ale na moj poglad lepej bendzie skonstruovac dwa filtra o roznice faz pi/2.
    To moge byc' wykonone przez IIR filtry s malymi MIPSami.

    Myslie ze w internecie mozliwie znajsc informacje, ale konkretnego linku nie wiem
  • #3 4964287
    tomifi
    Poziom 12  
    Witam,
    oczywiście przynowość to kwestia powszednia w kwestii filtrów z czego wynika opóźnienie (delay). Ale tak
    vadkurd - jest b. ciężko zrobić na IIR stałą fazę (nie mówiąc o stałej), więc raczej odpada takie pomysł.
    Ogólna koncepcja to splatac sygnał wejściowy z odpowiedzią imp.

    $$h[n] =\frac{2\bullet\sin^2(\frac{pi\bullet n}{2})}{\pi\bullet n} dla n =\pm1,\pm3,\pm5$$
    $$h[n] = 0 dla n = \pm0,\pm2,\pm4$$

    odpowiedź jest antysymetryczna, należy ją uciąć, aby uniknąć efektu gibbsa trzeba przemnożyć przez jakieś okno (np: Kaisera z odpowiednią wagą).
    Właśnie tak uczyniłem, tak jest opisane, jednak jednego nie rozumiem:
    Char. amplitudowa takiego filtru jest równa 1 (w paśmie użytecznym), jednak teoretyczna char. fazowa, która powinna mieć $$-\frac{\pi}{2}$$ dla wszystkich częstotliwości, bo przecież:
    $$H\{\sin(\bullet)\}\Longrightarrow \cos(\bullet)$$ gdzie $$H $$- transformata Hilberta.
    umnie jest stała :| i nie mogę znaleźć błędu, gdzie coś przeoczyłem.
    Jeśli ktoś wie, niech pomoże.
    Załączam obrazek z transmitancją:
  • #4 4965430
    sosen21
    Poziom 12  
    tomifi napisał:
    teoretyczna char. fazowa, która powinna mieć $$-\frac{\pi}{2}$$ dla wszystkich częstotliwości, bo przecież:
    $$H\{\sin(\bullet)\}\Longrightarrow \cos(\bullet)$$ gdzie $$H $$- transformata Hilberta.
    umnie jest stała :| i nie mogę znaleźć błędu, gdzie coś przeoczyłem.
    Jeśli ktoś wie, niech pomoże.
    Załączam obrazek z transmitancją:


    Właściwie $$-\frac{\pi}{2}$$ jest stałą (stałe przesunięcie fazowe). Ale widzę na wykresie, że rzeczywiście coś jest nie tak (takie poziome linie powinieneś uzyskać na wykresie fazowo-częstotliwościowym dla fazy w stopniach). Jakiego programu używasz do obliczeń i w jaki sposób narysowałeś wykres fazowy?
  • #5 4966597
    __Grzegorz__
    Poziom 30  
    Proponuję skorzystać z generatora filtrów na tej stronie:

    http://www-users.cs.york.ac.uk/~fisher/mkfilter/

    (przewinąć na spód strony)

    sam sprawdziłem transformator Hilberta i .... działa :)

    Oczywiście pamiętamy o opóźnieniu grupowym = 1/2 długości filtra FIR...

    Pozdrawiam.
  • #6 5059694
    vadkudr
    Poziom 12  
    Cytat:
    umnie jest stała i nie mogę znaleźć błędu, gdzie coś przeoczyłem.

    Zapamentales, ze opoznenie filtra Hilberta sa L/2, dlatego w obszarze czestotliwym do fazy musi dodac sie na -j*pi/2*n.
    Dlatego faza na figurze przuimae 4 roznyh velkosci.

    A v ostsniem wszystko est zgodnie s teoryej.
  • #7 5252228
    tomifi
    Poziom 12  
    Dzieki za zainteresowanie. Wszystk ojest jak najbardziej zgodne z teorią:)
    te różne wartości, to wynik właśnie uprzyczynowiania nieprzyczynowej odpowiedzi impulsowej.
    Pozdrawiam
    Tomek
REKLAMA