Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
2,92 MB
Nội dung
BÁO CÁO THÍ NGHIỆM XỬ LÍ SỐ TÍN HIỆU Thực hành plotgraph: Code : x = 0:pi/20:2*pi; y = sin(x); subplot(1,2,1); plot(x,y,'b-'); axis([0 2*pi -1 1]); xlabel('x (pi)'); ylabel('y=sin(x)'); title('TIN HIEU Sine tu toi 2pi'); subplot(1,2,2);stem(x,y,'r-') axis([0 2*pi -1 1]); xlabel('x (pi)'); ylabel('y=sin(x)'); title('TIN HIEU Sine tu toi 2pi'); kết chạy matlab: Thực Hành 2: Code: clc; close all; xn = [1, 2, 3, 4, 5, 6]; L = length(xn); Xk = zeros(1,L); for k = 0:L-1 for n = 0:L-1 Xk(k+1) = Xk(k+1) + xn(n+1)*exp(-1j*2*pi*k*n/L); end end Xk_2 = fft(xn,L); t=0:L-1; subplot(1,3,1); stem(t,xn); ylabel ('Amplitude'); xlabel ('Time Index'); title('Input Sequence'); t=0:L-1; Xk_magnitude = abs(Xk); Xk_2_magnitude = abs(Xk_2); subplot(1,3,2); stem(t,Xk_magnitude,'bo-'); hold on; stem(t,Xk_2_magnitude,'r* '); hold on; ylabel ('Amplitude'); xlabel ('K'); title('Magnitude Response'); Xk_phase = angle(Xk); Xk_2_phase = angle(Xk_2); subplot(1,3,3); stem(t,Xk_phase,'bo-'); hold on; stem(t,Xk_2_phase,'r* '); hold on; ylabel ('Phase'); xlabel ('K'); title ('Phase Response'); legend('Computing', 'fft Matlab'); Kết quả: Thực hành 3: tính ift Code: clc; close all; Xk = [10, -2+2*j,-2,-2-2*j]; L = length(Xk); Xn = zeros(1,L); for n = 0:L-1 for k = 0:L-1 Xn(n+1) = (Xn(n+1) +1/L* Xk(k+1)*exp(1j*2*pi*k*n/L)); end end % Using FFT Matlab Xn_2 = ifft(Xk,L); %Plotting input sequence t=0:L-1; subplot(1,2,1); stem(t,Xn); ylabel ('Amplitude'); xlabel ('n'); title('KET QUA 1'); disp(Xn); %Plotting input sequence t=0:L-1; subplot(1,2,2); stem(t,Xn_2); ylabel ('Amplitude'); xlabel ('n'); title('KET QUA 2'); disp(Xn_2); Kết Quả: Kết command window Kết figure Thực hành 4: tính tích chập Code: clc; close all; xn = [1,3,5,3,6,3]; hn = [1,4,7,2,8]; Lx = length(xn); N = length(hn); M = N - 1; Ly = Lx + M; yn = zeros(1, Ly); yn_2= zeros(1, Ly); for n = : Ly-1 for m = max(0,n-Lx + 1):min(n,M) yn(n+1) = yn(n+1) + hn(m+1) * xn(n-m+1); end end yn_2 = conv(xn,hn); disp(yn); disp(yn_2); kết : Trên command window Giá trị yn Giá trị Yn_2 Trên bảng giá trị variable Thực hành 5: vẽ đáp ứng tần số hệ thống Code: omega = 0:pi/10:pi; H = (5 + 2*exp(-1j*omega))./(1-0.8*exp(-1j*omega)); H_manitude = abs(H); H_phase = angle(H); subplot(1,4,1); stem(omega,H_manitude); ylabel ('Amplitude'); xlabel ('omega'); title('H_manitude'); subplot(1,4,2); stem(omega,H_phase); ylabel ('phase'); xlabel ('omega'); title('H_phase'); a = [1, -0.8]; b = [5, 2]; [H_matlab, w] = freqz(b,a); H_matlab_manitude = abs(H_matlab); H_matlab_phase = angle(H_matlab); subplot(1,4,3); plot(w,H_matlab_manitude); ylabel ('Amplitude'); xlabel ('omega'); title('H_matlab_manitude'); subplot(1,4,4); plot(w,H_matlab_phase); ylabel ('phase'); xlabel ('omega'); title('H_matlab_phase'); kết : Thực Hành 6: tạo mẫu tín hiệu Tín hiệu cos : Code: % Signal Genergating Fs = 8e3; % Sampling frequency kHz Ts = 1/Fs; % Sampling period F_xt = 400; % Frequency of signal 400 Hz T_sim = 0.01; % Signal duration in seconds 50 ms t = : Ts : 4*Ts; xn = cos(2 * pi * F_xt * t); N = length(xn); % DFT length = signal length Xk = fft(xn, N); % DFT of signal Xk_Man = abs(Xk); Xk_Pha = angle(Xk); %% Signal plot figure(1) subplot(1,2,1) hold on plot(t, xn); xlabel('Time (sec)'); ylabel('Amplitude'); title('BIEN DO'); subplot(1,2,2) hold on stem(0:N-1, xn); xlabel('Sampling index - n'); ylabel('Amplitude'); title('BIEN DO SAU LAY MAU'); %% Spectrum plot figure(2) subplot(1,2,1) stem((0:N/2-1)*Fs/N, Xk_Man(1:N/2) / N); xlabel('Frequency (Hz)'); ylabel('Amplitude'); title('BIEN DO mien tan so'); subplot(1,2,2) plot((0:N/2-1)*Fs/N, Xk_Pha(1:N/2) ); xlabel('Frequency (Hz)'); ylabel('Phase'); title('pha mien tan so'); kết figure 1: Kết figure 2: Tín hiệu sinc s = sinc ( 2 f ( t − 0.5) ) với f = 40 Hz, t (s) lấy mẫu tần số 500 Hz Code: clc clear % Signal Genergating Fs = 500; % Sampling frequency kHz Ts = 1/Fs; % Sampling period F_xt = 40; % Frequency of signal 400 Hz T_sim = 1; % Signal duration in seconds 50 ms t = : Ts : T_sim- Ts; xn = (sinc(2 * pi * F_xt * (t-0.5))); N = length(xn); % DFT length = signal length Xk = fft(xn, N); % DFT of signal Xk_Man = abs(Xk); Xk_Pha = angle(Xk); %% Signal plot figure(1) subplot(1,2,1) hold on plot(t, xn); xlabel('Time (sec)'); ylabel('Amplitude'); subplot(1,2,2) hold on plot(0:N-1, xn); xlabel('Sampling index - n'); ylabel('Amplitude'); %% Spectrum plot figure(2) subplot(1,2,1) plot((0:N/2-1)*Fs/N, Xk_Man(1:N/2) / N); xlabel('Frequency (Hz)'); ylabel('Amplitude'); subplot(1,2,2) plot((0:N/2-1)*Fs/N, Xk_Pha(1:N/2) ); xlabel('Frequency (Hz)'); ylabel('Phase'); kết figure 1: Kết figure 2: 1 T t 3T 0 elsewhere Tín hiệu s = Code: clc clear T_sim =1; Ts= T_sim/20; F_xt=1/T_sim; t= 0:Ts:T_sim-Ts; for i=0: length(t)-1 if t(i+1)>T_sim/4 && t(i+1)