-
Data: 2011-01-29 22:52:57
Temat: Re: Algorytm DSP, wyciagniecie 2 prążków.
Od: Verox <a...@b...veroxsystems.com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Wed, 26 Jan 2011 15:50:25 +0100, Michał Baszyński napisał:
> W dniu 2011-01-26 15:22, Verox pisze:
>
>> Potrzebuje z sygnału wejściowego (AFSK, 1200 + 2400 Hz) wyciągnąć
>> te prążki celem poddania dalszej detekcji. Wiem, że można to zrobić przy
>> pomocy FFT, ale może są jakieś łatwiejsze do implementacji algorytmy.
>> Bardzo proszę grupowych matematyków o nakierowanie :-)
>
> nie jestem matematykiem, ale popatrz na Goerztla
Dziękuję pięknie, wziąłem algo z wikipedii:
http://en.wikipedia.org/wiki/Goertzel_algorithm
I działa :-)
wyniki symulacji dla f_probkowania=16 kHz
ponośna 2200 Hz:
freq = 500.000000 Hz pwr = 3630.037598 lvl=0
freq = 600.000000 Hz pwr = 6390.092285 lvl=0
freq = 700.000000 Hz pwr = 6390.092285 lvl=0
freq = 800.000000 Hz pwr = 6390.092285 lvl=0
freq = 900.000000 Hz pwr = 10942.559570 lvl=0
freq = 950.000000 Hz pwr = 10942.559570 lvl=0
freq = 1000.000000 Hz pwr = 10942.559570 lvl=0
freq = 1100.000000 Hz pwr = 21924.453125 lvl=1
freq = 1180.000000 Hz pwr = 21924.453125 lvl=1
freq = 1190.000000 Hz pwr = 21924.453125 lvl=1
freq = 1200.000000 Hz pwr = 21924.453125 lvl=1
freq = 1210.000000 Hz pwr = 21924.453125 lvl=1
freq = 1220.000000 Hz pwr = 21924.453125 lvl=1
freq = 1230.000000 Hz pwr = 21924.453125 lvl=1
freq = 1250.000000 Hz pwr = 21924.453125 lvl=1
freq = 1300.000000 Hz pwr = 21924.453125 lvl=1
freq = 1500.000000 Hz pwr = 44501.601562 lvl=2
freq = 2000.000000 Hz pwr = 412674.156250 lvl=20
freq = 2100.000000 Hz pwr = 15191353.000000 lvl=247
freq = 2150.000000 Hz pwr = 15191353.000000 lvl=247
freq = 2180.000000 Hz pwr = 15191353.000000 lvl=247
freq = 2190.000000 Hz pwr = 15191353.000000 lvl=247
freq = 2200.000000 Hz pwr = 15191353.000000 lvl=247
freq = 2210.000000 Hz pwr = 15191353.000000 lvl=247
freq = 2220.000000 Hz pwr = 15191353.000000 lvl=247
freq = 2250.000000 Hz pwr = 15191353.000000 lvl=247
freq = 2300.000000 Hz pwr = 1229633.875000 lvl=61
freq = 2400.000000 Hz pwr = 1229633.875000 lvl=61
freq = 3000.000000 Hz pwr = 69920.218750 lvl=3
freq = 3500.000000 Hz pwr = 34523.902344 lvl=1
freq = 4000.000000 Hz pwr = 21944.585938 lvl=1
podnośna 1200 Hz
freq = 500.000000 Hz pwr = 419.161530 lvl=0
freq = 600.000000 Hz pwr = 1563.212891 lvl=0
freq = 700.000000 Hz pwr = 1563.212891 lvl=0
freq = 800.000000 Hz pwr = 1563.212891 lvl=0
freq = 900.000000 Hz pwr = 8458.195312 lvl=0
freq = 950.000000 Hz pwr = 8458.195312 lvl=0
freq = 1000.000000 Hz pwr = 8458.195312 lvl=0
freq = 1100.000000 Hz pwr = 17934266.000000 lvl=128
freq = 1180.000000 Hz pwr = 17934266.000000 lvl=128
freq = 1190.000000 Hz pwr = 17934266.000000 lvl=128
freq = 1200.000000 Hz pwr = 17934266.000000 lvl=128
freq = 1210.000000 Hz pwr = 17934266.000000 lvl=128
freq = 1220.000000 Hz pwr = 17934266.000000 lvl=128
freq = 1230.000000 Hz pwr = 17934266.000000 lvl=128
freq = 1250.000000 Hz pwr = 17934266.000000 lvl=128
freq = 1300.000000 Hz pwr = 17934266.000000 lvl=128
freq = 1500.000000 Hz pwr = 14059.884766 lvl=0
freq = 2000.000000 Hz pwr = 2022.837646 lvl=0
freq = 2100.000000 Hz pwr = 1150.462524 lvl=0
freq = 2150.000000 Hz pwr = 1150.462524 lvl=0
freq = 2180.000000 Hz pwr = 1150.462524 lvl=0
freq = 2190.000000 Hz pwr = 1150.462524 lvl=0
freq = 2200.000000 Hz pwr = 1150.462524 lvl=0
freq = 2210.000000 Hz pwr = 1150.462524 lvl=0
freq = 2220.000000 Hz pwr = 1150.462524 lvl=0
freq = 2250.000000 Hz pwr = 1150.462524 lvl=0
freq = 2300.000000 Hz pwr = 806.450989 lvl=0
freq = 2400.000000 Hz pwr = 806.450989 lvl=0
freq = 3000.000000 Hz pwr = 394.281921 lvl=0
freq = 3500.000000 Hz pwr = 356.505646 lvl=0
freq = 4000.000000 Hz pwr = 229.909637 lvl=0
Dziwi mnie tylko to, że przy jednakowej amplitudzie sygnału wejściowego
(bo jest wyliczony :-), algorytm daje wyniki mocno różniące się na wyjściu. W moim
zastosowaniu to nie przeszkadza - ot taka ciekawostka :-)
--
#begin 755 signature.exe
[tomek <at> sikornik <dot> net] vy 73! de SP9UOB
Proud to be 100 percent microsoft free. op. Tomek
Następne wpisy z tego wątku
- 29.01.11 23:38 Michał Baszyński
- 29.01.11 23:50 blur
- 06.02.11 07:31 Piotr \"Curious\" Slawinski
Najnowsze wątki z tej grupy
- ładowarka zmarła
- Podstawa bezpiecznikowa jako rozłącznik DC
- Napięcie akumulatora wyłączające UPS / jakie nowe akumulatory do UPS?
- nawigacja satelitarna
- SmartLife/Tuya i osuszanie -- mordowanie z zimną krwią...
- Głośnik piezoelektryczny
- Mala autonomiczna kamera monitoringu
- czas na emeryturę i EB
- Generowanie sumy kontrolnej z fragmentu pliku bin
- Re: Mala autonomiczna kamera monitoringu
- HDMI
- Re: Mala autonomiczna kamera monitoringu
- Kamera monitoringu z kartą SIM
- Re: Kamera monitoringu z kartą SIM
- Re: Kamera monitoringu z kartą SIM
Najnowsze wątki
- 2024-07-01 W-wa naklejki wjazd do centrum
- 2024-07-01 ładowarka zmarła
- 2024-07-01 Koder szuka pracy. Koduję w j.: Asembler, C, C++ (z Qt) i D.
- 2024-07-01 Kraków => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-07-01 Białystok => Full Stack Web Developer (.Net Core, Angular6+) <=
- 2024-07-01 Berlin => Technical Rollouter (Radio Systems Software Installation and
- 2024-07-01 Warszawa => Key Account Manager <=
- 2024-07-01 Gdańsk => Programista Full Stack .Net <=
- 2024-07-01 Zabrze => Junior HelpDesk <=
- 2024-07-01 Warszawa => Key Account Manager <=
- 2024-07-01 Bielsko-Biała => Expert Migration Architect (Azure) <=
- 2024-07-01 Mini Netykieta polskich grup dyskusyjnych
- 2024-07-01 Re: Jak wypełnić polecenie francuskiego sądu blokowania niektórych zapytań DNS? Blokując Francję
- 2024-07-01 Re: Powtórne wezwanie na PO-komisję uzdrowi Ziobrę już w 10 dni
- 2024-07-01 CA -- problem z logowaniem