sygnał cosinusoidalny i widmo
|
Forum MATLAB Strona Główna->
Przetwarzanie sygnałów
|
|
|
AUTOR:
elninio09
Dołączył: 05 Gru 2016
Posty: 1
|
Witam serdecznie
Otóż mam do zrobienia zadanie z przetwarzania sygnałów o treści:
"1. Wygeneruj sygnał s będący sumą dwóch kosinusów o parametrach:
f1 = 75 HZ
f2 = 125 Hz
A1 = 4
A2 = 5
fi1 = -0.3
fi2 = pi/6
-> Dobierz odpowiednią częstotliwość próbkowania fp.
-> Dobierz liczbę próbek N tak, aby spełnione zostały odpowiednio warunki i)-iii) oraz aby N>1000.
2. Wyznacz widmo:
- amplitudowe,
- fazowe.
- Na podstawie widma amplitudowego wyznacz A1, A2, f1, f2.
- Na podstawie widma fazowego wyznacz fi1, fi2.
Widmo wyznacz tak, aby składało się na nie M współczynników, gdzie M jest potęgą liczby 2 i M >=N.
Aby wyznaczyć M, skorzystaj z funkcji Matlaba nextpow2().
3. Wykreśl w jednym oknie:
- przebieg czasowy sygnału,
- widmo amplitudowe,
- widomo czasowe.
Pamiętaj o podpisaniu wykresów, osi oraz o jednostkach.
Punkty 1.-3. wykonaj dla sygnału, który będzie:
i) miał pełną liczbę okresów (dobierz w tym celu odpowiednio N),
ii) niepełną liczbę okresów (+ 0.4 T),
iii) sumą sygnału s o pełnej liczbie okresów oraz szumu o rozkładzie normalnym z zakresu [-0.25, 0.5).
Aby wygenerować szum, skorzystaj z funkcji randn()."
Zadanko udało mi się zrobić tylko do pewnego momentu i niestety nie wiem jak dalej ruszyć. Bardzo proszę o pomoc lub jakąś radę co dalej. Z góry dziękuję za każdą pomoc.
Pozdrawiam
Kod: |
 clear all;
 close all;
 N=1500;
 fp=1500;
 t=0:1/fp:(N-1)/fp;
 A1=4;
 f1=75;
 phi1=-0.3;
 A2=5;
 f2=125;
 phi2=-pi/6;
 As=3;

 x=A1*cos(2*pi*f1*t+phi1)+A2*cos(2*pi*f2*t+phi2)+As*randn(1,N);
 subplot(2,1,1);
 plot(t,x);
 xlabel('czas w sekundach');
 ylabel('sygnal w Hz');

 %Widmo sygnalu

 Nf=nextpow2(1024); %dlugosc badanego sygnalu nie calego
 N21=Nf/2+1; %ostatnia czestotliwosc ktora sie pojawi (polowa)
 v=fft(x,Nf);
 w=abs(v);
 f=linspace(0,fp/2,N21);
 subplot(2,1,2);
 plot(f,w(1:N21));
 xlabel('czestotliwosc w Hz');
 ylabel('modul widma'); |
|
|
|
AUTOR:
zdzieszka18
Początki pisania
Dołączył: 12 Cze 2017
Posty: 6
Skąd: Gdańsk
|
Witam,
Czy ktoś może udzielić mi korepetycji?
|
|
|
Forum MATLAB Strona Główna->
Przetwarzanie sygnałów
|
|