1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO cáo b2 TN XLSTH tạo một mẫu tín hiệu sine có các thành phần tần số 200 hz và 3000 hz trong khoảng thời gian t = 0 đến t = 0 1 s, với tần số lấy mẫu fs = 8 khz

12 34 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 0,92 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Viết chương trình thực hiện tìm biến đổi DFT của tín hiệu trên và vẽ đồ thị phổ biên độ miền tần số... Viết chương trình thực hiện tìm biến đổi FFT-128 điểm của tín hiệu trên và vẽ đồ th

Trang 1

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH

KHOA 

BÁO CÁO B2 TN XLSTH

LỚP L04 - HK 211 NGÀY NỘP: 16/01/2022

Giảng viên hướng dẫn: Huỳnh Văn Phận

Sinh viên thực hiện: Trần Quang Hào

MSSV: 1911099

Trang 2

khoảng thời gian t = 0 đến t = 0.1 s, với tần số lấy mẫu Fs = 8 kHz từ chương trình Matlab và lưu vào biến giá trị xn:

a Viết chương trình thực hiện tìm biến đổi DFT của tín hiệu trên và vẽ đồ thị phổ biên

độ miền tần số

Code:

clc;

clear;

fs = 8000;

t = 0:1/fs:0.1;

L = length(t);

for n = 0:L-1;

xn(n+1) = (sin(200*2*pi*n/fs) +

sin(3000*2*pi*n/fs)); end;

Xk = zeros(1,L); %initialize an array of same size as that of input

sequencefor 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

Trang 3

x1n = ifft(Xk);

[H W] = freqz(x1n);

subplot(2,1,2);

semilogy((W/2/pi)*fs, abs(H));

xlabel('F');

ylabel('|Xk|');

title('Pho bien do');

Kết quả chạy code:

Trang 4

b Viết chương trình thực hiện tìm biến đổi FFT-128 điểm của tín hiệu trên và vẽ đồ thị phổ biên độ miền tần số

Code:

clc;

clear;

fs = 8000;

t = 0:1/fs:0.1;

xn = sin(200*2*pi*t) + sin(3000*2*pi*t);

Xk = fft(xn, 128);

Xk

Trang 5

x1n = ifft(Xk);

[H W] = freqz(x1n);

semilogy ((W/2/pi)*fs, abs(H)); xlabel('F');

ylabel('|X|');

title('Pho bien do');

Kết quả chạy code:

Trang 6

c Viết chương trình thực hiện tìm biến đổi FFT-256 điểm của tín hiệu trên và vẽ đồ thị phổ biên độ miền tần số

Code:

clc;

clear;

fs = 8000;

t = 0:1/fs:0.1;

xn = sin(200*2*pi*t) + sin(3000*2*pi*t);

Trang 7

Xk = fft(xn, 256);

Xk

x1n = ifft(Xk);

[H W] = freqz(x1n);

semilogy(W/2/pi)*fs, abs(H)); xlabel('F');

ylabel('|X|');

title('Pho bien do');

Kết quả chạy code:

Trang 8

d Nhận xét và giải thích các đồ thị trên.

 Nhận xét: nhìn chung 3 dạng đồ thị của các kiểu phân tích là như nhau chỉ khác số điểm lấy trên trục F và các giá trị biên độ

 Giải thích:

+ Đồ thị 1: 2 vạch cao nhất ở vị thí f = 200 Hz và f = 3000 Hz do tín hiệu chứa

2 tần số chính như ban đầu Với 801 điểm được lấy, nên đồ thị chi tiết hơn Biên

độ max là 400 do sau khi thực hiện các phép tính thì đã cộng lại N lần (800) nhưng do đây là phổ 2 bên nên biên độ max là 400*1 = 400, tương tự cho các biên độ còn lại

+ Đồ thị 2: 2 vạch cao nhất ở vị thí f = 200 Hz và f = 3000 Hz do tín hiệu chứa

2 tần số chính như ban đầu Với 128 điểm được lấy, nên đồ thị thưa hơn so với

Trang 9

đồ thị (1) và (3) Biên độ max là 64 do sau khi thực hiện các phép tính thì đã cộng lại N lần (128) nhưng do đây là phổ 2 bên nên biên độ max là 64*1 = 64, tương tự cho các biên độ còn lại

Đồ thị 3: 2 vạch cao nhất ở vị thí f = 200 Hz và f = 3000 Hz do tín hiệu chứa 2 tần số chính như ban đầu Với 256 điểm được lấy, nên đồ thị dày hơn so với đồ thị (2) và thưa hơn so với đồ thị (1) Biên độ max là 128 do sau khi thực hiện các phép tính thì đã cộng lại N lần (256) nhưng do đây là phổ 2 bên nên biên

độ max là

128*1 = 128, tương tự cho các biên độ còn lại

2 Tạo một mẫu tín hiệu âm thanh có định dạng wav từ chương trình Matlab

hoặc các ứng dụng khác và lưu vào biến giá trị xn:

a Viết chương trình thực hiện tìm biến đổi STFT của tín hiệu âm thanh trên với cửa sổ

Gaussian độ dài 256, độ dài chồng lấn 30 Sau đó vẽ đồ thị phổ biên độ miền tần số của biến đổi STFT trên

Code:

xn = audioread('wave1.wav');

Trang 10

M= 256;

k = round((N-L)/(M-L))

stft(xn,fs,'Window',gausswin(256),'OverlapLength',30,'FFTLength',N);

Kết quả chạy code:

Trang 11

Đồ thị phổ biên độ miền tần số của biến đổi STFT

b Nhận xét và giải thích đồ thị trên

- Tín hiệu sau phân tích STFT phù hợp với lý thuyết với các khoảng thời gian có âm thanh (vùng biên độ lớn, có màu vàng) và không có âm thanh mà có nhiễu (vùng biên

độ nhỏ, có màu xanh)

- Tổng cộng có 766 khoảng chia thời thời gian trong khoảng thời gian ngắn được phân tích tần số, tức có tới 766 tín hiệu được lấy ra từ tín hiệu gốc

 Không thể vẽ tất các phổ tín hiệu theo cách thông thường, nên đồ thị trên biểu diễn

đủ các tính chất của STFS khi có đủ miền thời gian, tần số, và phổ của tần số

- Khoảng có nhiều tần số mà biên độ cao nhất là trong khoảng thời gian từ 0 tới 0.6s vì ở đây có mật độ các điểm màu vàng nhiều ở khoảng tần số từ 11 Hz cho tới 70 Hz

- Nhìn vào đồ thị ra thấy được đoạn âm thanh ở quanh khoảng 1.5s chứa ít tần số có biên

độ cao nhất nên có thể xem đây là nhiễu

Ngày đăng: 16/01/2022, 09:38

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w