-
Data: 2011-02-15 09:19:53
Temat: Re: Cyfrowa demodulacja AM
Od: Jacek Radzikowski <j...@s...die.die.die.piranet.org> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 02/15/2011 03:54 AM, MH wrote:
> Jacek Radzikowski<j...@s...die.die.die.piranet.org> napisał(a):
>
>
>> Najpierw przenieś sygnał do pasma podstawowego przez wymnożenie
>> przebiegu wejściowego przez sygnał cyfrowej heterodyny w postaci 2
>> przebiegów sinusoidalnych przesuniętych w fazie o 90 stopni (sinus i
>> cosinus). Na wyjściu otrzymasz sygnał zespolony, o składowych zwyczajowo
>> nazywanych I i Q (I pochodzi od "In phase", Q od Quadrature).
>> Później taki sygnał zespolony filtrujesz i decymujesz (zmniejszasz
>> częstotliwość próbkowania. Nie ma sensu próbkować z częstotliwością
>> 65MHz sygnału od zera do paśmie kilkuset kHz).
>> Sama demodulacja AM sygnału zespolonego jest już dość prosta.
>> Najprostszy sposób na detekcję obwiedni to policzenie długości wektora
>> IQ: A = sqrt (I^2 + Q^2). Jeśli nie chcesz liczyć kwadratów i
>> pierwiastków, da się to policzyć algorytmem CORDIC.
>>
>> Zanim zabierzesz się za implementację pobaw się w matlabie albo w
>> gnuradio (można sobie "wyklikać" układ w grc).
>>
>> pzdr.
>> j.
>>
> ================
>
> Jeżeli chodzi o częstotliwość modulującą , to chyba trochę przesadziłem "w
> dół". W związku z tym , do decymacji wydaje mi się należy podchodzić dość
> ostrożnie. Ale nie w tym rzecz.. Wróćmy do samego algorytmu demodulacji.
> Przypuśćmy , że sygnał modulujący jest postaci x1(1)=A*sin(w*t) , nośna jest
> postaci x2(t)=B*sin(w0*t) , wobec tego sygnał odebrany ma postać
> y(t)=C*sin(w*t)*sin(w0*t). W/g metody , którą podajesz otrzymujemy po zmieszaniu :
> I(t)=D*sin(w*t)*(sin(w0*t))^2 , Q(t)=D*sin(w*t)*sin(w0*t)*cos(w0*t) .
> Nietrudno udowodnić , że sqrt(I^2+Q^2)=D*y(t).
> No i niestety jestem w punkcie wyjścia. Gdzie tu jest "haczyk" ??
"Haczyk" tkwi w rozwinięciu (sin(w0*t))^2 i sin(w0*t)*cos(w0*t) (co da
da stałą i funkcję 2*w0*t) i przepuszczeniu przez filtr
dolnoprzepustowy, co wyzeruje wyraz zależny od 2*w0*t.
Choć jak tak sobie na szybko przeliczyłem, to wychodzi że samo
sprowadzenie do pasma podstawowego i odfiltrowanie da nam E*sin(w*t). Po
policzeniu długości wychodzi F*|sin(w*t)|.
pzdr.
j.
Następne wpisy z tego wątku
- 15.02.11 10:19 WP
- 15.02.11 11:16 MH
- 15.02.11 15:06 Jacek Radzikowski
- 15.02.11 15:32 MH
- 15.02.11 15:43 Jacek Radzikowski
Najnowsze wątki z tej grupy
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
Najnowsze wątki
- 2025-03-08 Cięcie wysokich tui
- 2025-03-08 Środa Wielkopolska => SAP FI/CO Konsultant wewnętrzny <=
- 2025-03-08 Prawo "gminne"
- 2025-03-08 Warszawa => Senior Recruiter <=
- 2025-03-08 Warszawa => Key Account Manager IT <=
- 2025-03-08 Najszybciej ładujące się samochody elektryczne
- 2025-03-07 AION przejety
- 2025-03-07 Warszawa => Data Engineer (Tech Leader) <=
- 2025-03-07 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-03-07 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-03-07 Gliwice => Business Development Manager - Network and Network Security
- 2025-03-07 Chiny-Kraków => Senior PHP Symfony Developer <=
- 2025-03-07 Gliwice => IT Expert (Network Systems area) <=
- 2025-03-07 Chiny-Kraków => Backend Developer (Node + Java) <=
- 2025-03-07 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS