-
1. Data: 2011-01-26 14:22:06
Temat: Algorytm DSP, wyciagniecie 2 prążków.
Od: Verox <a...@b...veroxsystems.com>
Hej,
Nie mam doświadczenia w technikach DSP; mam za do ADC i procesor z szybkim
mnożeniem i dzieleniem (dsPIC30) i paroma innymi featurkami.
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 :-)
--
#begin 755 signature.exe
[tomek <at> sikornik <dot> net] vy 73! de SP9UOB
Proud to be 100 percent microsoft free. op. Tomek
-
2. Data: 2011-01-26 14:50:25
Temat: Re: Algorytm DSP, wyciagniecie 2 prążków.
Od: Michał Baszyński <m...@g...ze.ta.pl>
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
--
Pozdr.
Michał
-
3. Data: 2011-01-27 13:11:36
Temat: Re: Algorytm DSP, wyciagniecie 2 prążków.
Od: Verox <a...@b...veroxsystems.com>
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ękuje, w weekend postaram się to zaimplementować :-)
--
#begin 755 signature.exe
[tomek <at> sikornik <dot> net] vy 73! de SP9UOB
Proud to be 100 percent microsoft free. op. Tomek
-
4. Data: 2011-01-27 13:42:21
Temat: Re: Algorytm DSP, wyciagniecie 2 prążków.
Od: "EM" <e...@p...onet.pl>
>>> 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ękuje, w weekend postaram się to zaimplementować :-)
Witam
Czy potrzebna armata, skoro da się zrobić na malutkim procku coś podobnego.
http://www.ampr.poznan.ws/users/sp3uqs/procesor/inde
x.html
--
Pozdr
EM
-
5. Data: 2011-01-28 12:34:00
Temat: Re: Algorytm DSP, wyciagniecie 2 prążków.
Od: Verox <a...@b...veroxsystems.com>
On Thu, 27 Jan 2011 14:42:21 +0100, EM napisał:
>>>> 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ękuje, w weekend postaram się to zaimplementować :-)
>
> Witam
> Czy potrzebna armata, skoro da się zrobić na malutkim procku coś podobnego.
> http://www.ampr.poznan.ws/users/sp3uqs/procesor/inde
x.html
Witaj,
No jakiś algorytm musi tam być zaszyty, niestety nie ma źródeł.
Dokładnie chcę zrobić własnego trackera, jadnak takiego z odbiorem
i analizą przychodzących ramek.
Tak, wiem że są gotowce, ale chcę zrobić sam i przy okazji się nauczyć
czegoś nowego :-)
--
#begin 755 signature.exe
[tomek <at> sikornik <dot> net] vy 73! de SP9UOB
Proud to be 100 percent microsoft free. op. Tomek
-
6. Data: 2011-01-29 22:52:57
Temat: Re: Algorytm DSP, wyciagniecie 2 prążków.
Od: Verox <a...@b...veroxsystems.com>
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
-
7. Data: 2011-01-29 23:38:09
Temat: Re: Algorytm DSP, wyciagniecie 2 prążków.
Od: Michał Baszyński <m...@g...ze.ta.pl>
W dniu 2011-01-29 23:52, Verox pisze:
>> 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 :-)
http://v2.embedded.com/9900722
--
Pozdr.
Michał
-
8. Data: 2011-01-29 23:50:44
Temat: Re: Algorytm DSP, wyciagniecie 2 prążków.
Od: "blur" <b...@p...onet.pl>
?Użytkownik "EM" napisał w wiadomości grup
dyskusyjnych:ihrso4$aqf$...@n...onet.pl...
>Czy potrzebna armata, skoro da się zrobić na malutkim procku coś podobnego.
>http://www.ampr.poznan.ws/users/sp3uqs/procesor/ind
ex.html
Przypomniały mi się czasy Packet Radio w latach `90, skakałem jak głupek po
pokoju gdy poskładałem modem, zestroiłem i na ekranie zaczęły lecieć ramki,
Amiga + Lincoln i byłem gość POL1PE :)
-
9. Data: 2011-02-06 07:31:04
Temat: Re: Algorytm DSP, wyciagniecie 2 prążków.
Od: "Piotr \"Curious\" Slawinski" <c...@b...internetdsl.tpnet.lp>
Verox wrote:
> No jakiś algorytm musi tam być zaszyty, niestety nie ma źródeł.
> Dokładnie chcę zrobić własnego trackera, jadnak takiego z odbiorem
> i analizą przychodzących ramek.
do dekodowania FSK nie potrzebujesz Groetzla , bo nie musisz dekodowac dwoch
czestotliwosci rownoczesnie (Frequency Shift - wiec czestotliwosc sie
przesuwa, albo jest niska, albo wysoka). innymi slowy, wystarczy ze
napiszesz prosty dyskriminator
z przelomem przy np. 1700hz i wsio. na wejscie mozna dodac jeszcze jakis
prymitywny filtr aktywny poprawiajacy SNR - dwa lm358 i pare elementow
bedzie dzialac o niebo szybciej i lepiej niz proba wyluskania sygnalu z
danych z 12bit ADC ...
osobiscie troche bawilem sie dekoderami fsk na pic16f628 , i fakt faktem
uzycie czegos 'silniejszego' (tzn. samplujacego wejscie przez adc , a nie
tylko zero-crossing) jest wskazane - uklad jest bardzo czuly na
intermodulacje i przesterowanie (wykrywa harmoniczne) wiec potrzeba nie
tylko analogowego filtru na wejscie, ale i limitera...
jesli jednak sygnal jest 'ladny' to ukladzik bezproblemowo daje rade :)
--