Re: SDR bez smovn
Tom Hamouz
konfery.tomas.hamouz na seznam.cz
Steda Prosinec 8 10:47:43 CET 2021
> DR,
> Korelacia
> AGC
> Treshold
> V pripade komplexneho signalu mate k dispozicii
> pri korelacii magnitudu aj fazu co sice nepotrebujete
> ale je dobre to vediet :)
Magnitudu teď využívám, podle ní to detekuju.
Marně přemýšlím jak by mi pomohla fáze.
> Korelovat mozete aj vo frekvencnej domene
> Dozviete sa tam fazu aj miesto vasho impulzu.
Korelaci ve frekvenční doméně budu muset dostudovat, ale znamenalo by
to převod do frekvenční domény, zatím dělám všechno v časové.
> Korelacia je vykonovo narocny proces ale da sa optimalizovat
> napr. ked su impulzy v rovnakych casovych odstupoch (pripadne ich nasobkoch) tak
> zasynchronizovat sa na zaciatok a potom uz korelovat len testne
> pred dalsim impulzom
Korelace mně také napadla, ale bojím se že by to bylo příliš drahé
(myšleno nároky na CPU čas).
Děkuji za inspiraci se synchronizací, vyzkouším.
Pulzy jsou 1ms a pak je 1ms nebo 2ms mezera, to by mělo projít.
Pokud se podaří správně napsat trigger :-)
> Dalsia metoda ktora vo vasom pripade pripada do uvahy
> je FIR downsampling povedzme 10x kedy sa vo FIR vypocitava
> len kazda 10. vzorka. Dostanete signal 4khz a usetreny vykon
> mozete pouzit pri korelacii
Teď vzorkuju 115200, downsampling 8x na 14400.
Zkusím jít ještě níž, uvidím co to udělá.
V každém případě děkuji za postrčení.
Tomáš
> j.
> -----Original Message-----
> From: Hw-list <hw-list-bounces na list.hw.cz> On Behalf Of Tomáš Hamouz
> Sent: Tuesday, December 7, 2021 4:26 PM
> To: HW-news <hw-list na list.hw.cz>
> Subject: Re: SDR bez směšování
> Navázal bych na předchozí debatu.
> Odzkoušeno:
> Nejprve CORDIC generátor lokálního oscilátoru, ale to bylo příliš
> náročné na CPU. Funguje, ale hledal jsem méně náročné řešení.
> Druhý pokus: Vzorkování 4x přijímaný kmitočet, a vynásobit lokálním
> oscilátorem na přijímaném kmitočtu. Protože jsou právě 4 vzorky na
> periodu, fáze LO jsou 0, 90, 180 a 270stupňů, což odpovídá hodnotám
> sin (0, 1, 0, -1), cos je o 1 pozici posunutý. Tím se vzorky
> jednoduše rozhází do I a Q větve, jen je potřeba občas změnit
> znaménko vzorku, násobení nulou je triviální.
> V podstatě to odpovídá níže uvedenému příspěvku od p.Anděla.
> Problém byl, že ADC je triggerované timerem a ten nešel nastavit
> přesně na přijímaný kmitočet, byla tam chyba cca 4%.
> Pak sem zkusil kompromis - poštelovat systémové hodiny a vzorkovat
> 3x za periodu. Tabulka sin a cos už nevychází tak pěkně, už se
> musí násobit, ale na ARMu to není drahá operace a je to jen 6
> hodnot v tabulce. Funguje v podstatě stejně jako předchozí
> verze, jen už se dokážu naladit přesně.
> Pak následuje CIC filtrace s decimací, úzký filtr a zbývá jen detekovat modulaci.
> V principu potřebuju měřit mezeru mezi pulzama. Pulzy jsou
> všechny stejné, mění se jen mezery. Triviální verze (detekce
> sestupné hrany a odpočítání vzorkovacích period do dalšího pulzu funguje,
> ale pro signál blízko šumu to celkem pochopitelně zlobí. Ono to
> tedy zlobí i když je signál moc silný, ale to přijde na řadu posléze.
> Existuje nějaká metoda, jak detekovat pulz "podle tvaru"?
> Nebo použít metodu "SW UART", tzn detekovat hranu a pak vyhodnotit pár vzorků v rozhodném okamžiku?
> Tomáš
>> Zajímavé, v podstatě Tayloe směšovač provedený také SW. To mě nenapadlo, holt začátečník.
>> Tomáš
>>> Jej tak to by mě taky zajímalo. Vždycky jsem to dělal tak, že jsem
>>> vzal
>>> 4 vzorky za periodu, odečetl 1. -3. a 2. -4. A tyhle dva výstupy jsem
>>> dál průměroval podle požadované šířky pásma. Ale to čtení musí být
>>> synchronní s nosným kmitočtem, což je komplikace. Kdyby to šlo číst
>>> nějak nesynchronně, bylo by to fajn. Ale tuším v tom podstatně větší
>>> náročnost na výpočetní rychlost toho procesoru, počítat sin, cos,
>>> případně ty hodnoty někde tahat z tabulek :-( Nejspíš nějaké DSP
>>> tohle zvládá jednodušeji a líp.
>>> Anděl
>>> Dne 21.10.2021 v 10:59 Tomas Hamouz napsal(a):
>>>> Zdravím vespolek
>>>>
>>>> Potřebuju nakopnout kde začít, prolistovávat se hodinama videí budu
>>>> až potom :-)
>>>>
>>>> Mám signál, cca 40kHz, s AM modulací 1kHz. Chtěl bych ho zkusit
>>>> zpracovat pomocí SDR, jsem přesvědčený že to musí jít, ale nějak
>>>> nedokážu dohledat jak se generují I a Q signály BEZ použití kvadraturního směšovače, tzn. přímou digitalizací vstupního signálu.
>>>>
>>>> Tomáš
>>>>
>>>> _______________________________________________
>>>> HW-list mailing list - sponsored by www.HW.cz Hw-list na list.hw.cz
>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>> _______________________________________________
>>> HW-list mailing list - sponsored by www.HW.cz Hw-list na list.hw.cz
>>> http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list