Transformata Hilberta

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
glic4
Posty: 24
Rejestracja: 12 lis 2011 20:54
Wersja środowiska: LabVIEW 8.6

Transformata Hilberta

Post autor: glic4 »

Proszę o pomoc, użyłem transformaty hilberta na jednym z moich sygnałów. Transformata Hilberta w założeniu ma zmienić fazę sygnału o 90 stopni bez zmiany amplitudy. Jednak po użyciu transformaty widać wyraźnie na wykresie, ze wykres nie jest przesuniety o 90 stopni, w porownaniu z bazowym zmienila sie os czasu oraz amplituda, co jest zle?

Obrazek
PiDi
Posty: 641
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice

Re: Transformata Hilberta

Post autor: PiDi »

Własnością transformaty Hilberta jest to, że nie zmienia widma amplitudowego sygnału. Te przesunięcie fazowe o 90 stopni wynika stąd, że po prostu transformata sinusa to -cosinus, a cosinusa to sinus. Nie ma natomiast mowy o tym, że ta transformata nie zmienia sygnału w dziedzinie czasu. Przykład w załączniku.
Załączniki
hilbert.vi
(22.81 KiB) Pobrany 341 razy
ObrazekObrazekObrazekObrazek
glic4
Posty: 24
Rejestracja: 12 lis 2011 20:54
Wersja środowiska: LabVIEW 8.6

Re: Transformata Hilberta

Post autor: glic4 »

Dzieki za pomoc, wie ktos moze zatem w jaki sposob moge przesunac sygnal w fazie o 90 stopni w dziedzinie czasu bez zmiany amplitudy?
Awatar użytkownika
jogurt_owocowy
Posty: 1317
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków

Re: Transformata Hilberta

Post autor: jogurt_owocowy »

glic4 pisze:widać wyraźnie na wykresie, ze wykres nie jest przesuniety o 90 stopni
Zastanów się dobrze, co chcesz osiągnąć. Co znaczy u Ciebie "przesunąć wykres o 90 stopni"? Jakich stopni? Mówienie o stopniach ma sens w przypadku sygnału sinusoidalnego, a Twój taki nie jest. Może chcesz przesunąć każdą składową częstotliwościową o 90 stopni? Ale w takim razie, jak sobie wyobrażasz sprawdzenie poprawności takiej operacji na wykresie w dziedzinie czasu, skoro sygnał zmieni swój kształt (bo składowe się "rozjadą" - każda ma swoje własne 90 stopni)?
glic4
Posty: 24
Rejestracja: 12 lis 2011 20:54
Wersja środowiska: LabVIEW 8.6

Re: Transformata Hilberta

Post autor: glic4 »

Oczywiscie masz racje, gadam bzdury. Chodzi mi o to, zeby dany wykres, przesunac np. o 1/4 jego okresu prawo, nie wiem jak to zrobic, no i musi byc to operacja po bloczku generujacym funkcje, nie moge ingerowac w jego wejscie.
Awatar użytkownika
jogurt_owocowy
Posty: 1317
Rejestracja: 30 lis 2004 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Kraków

Re: Transformata Hilberta

Post autor: jogurt_owocowy »

glic4 pisze:Chodzi mi o to, zeby dany wykres, przesunac np. o 1/4 jego okresu prawo
"Przesunąć sygnał o ćwierć okresu w prawo", to w praktyce to samo, co "zmienić fazę o 90 stopni", czyli ciągle to nie jest dobrze zdefiniowany problem, bo ciągle można to odnieść tylko do sygnału sinusoidalnego.
W Twoim sygnale jest dominująca składowa sinusoidalna i prawdopodobnie to jej fazę chcesz zmieniać, ale co z pozostałymi składowymi? Można je zaniedbać? Czy częstotliwość tej dominującej składowej jest stała czy się zmienia?
PiDi
Posty: 641
Rejestracja: 31 gru 2010 01:36
Wersja środowiska: LabVIEW 2017
Lokalizacja: Katowice

Re: Transformata Hilberta

Post autor: PiDi »

http://labview.pl/viewtopic.php?f=3&t=3 ... e2b368fbc8
Czemu mamy dwa identyczne pytania w jednym czasie w takim razie? :-?
ObrazekObrazekObrazekObrazek
ODPOWIEDZ