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

BÁO cáo THÍ NGHIỆM xử lí số tín HIỆU viết file m thực hiện chương trình trên và lưu với tên

22 9 0

Đ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 22
Dung lượng 1,5 MB

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

Nội dung

Thực hành 1 : Viết file-M thực hiện chương trình trên và lưu với tên BAI1_NHOML07_PlotGraph.m.. Yêu cầu 1: Ghi nhớ các lệnh trong matlab trong chương trình trên... Thực hành 2: Viết một

Trang 1

ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC BÁCH KHOA

KHOA ĐIỆN – ĐIỆN TỬ

TP HỒ CHÍ MINH, THÁNG 1 NĂM 2022

Trang 2

1 Thực hành 1 : Viết file-M thực hiện chương trình trên và lưu với tên

BAI1_NHOML07_PlotGraph.m

Yêu cầu 1: Ghi nhớ các lệnh trong matlab trong chương trình trên

Bài làm:

Code:

x = 0:pi/20:2*pi; % Define vector x from 0 to 2pi with step size pi/100

y = sin(x); % Define vector y

subplot(1,2,1); % Create a graph with two sub-graphs in 1 row 2 column and withsubplot position 1

plot(x,y,'b-'); % Plot x versus y

axis([0 2*pi -1 1]);

xlabel('x (pi)');

ylabel('y=sin(x)'); %Label of x-axis and y-axis

title('Graph of Continuous Sine from 0 to 2pi'); %Title of graph

subplot(1,2,2);stem(x,y,'r-') %Plot p versus q with subplot position

2 axis([0 2*pi -1 1]);

xlabel('x (pi)');

ylabel('y=sin(x)'); %Label of p-axis and q-axis

title('Graph of Discrete Sine from 0 to 2pi'); %Title of graph

Đồ thị:

Trang 3

2 Thực hành 2: Viết một file-M thực hiện chương trên và lưu với tên

L = length(xn); %find the length of the sequence

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

that%DFT of the sequence

xlabel ('Time Index');

title('Input Sequence');

title('Magnitude Response');

% Find the phases of individual DFT points Xk_phase = angle(Xk);

Xk_2_phase = angle(Xk_2);

% plot the magnitude sequence

download by : skknchat@gmail.com

Trang 4

title ('Phase Response');

legend('Computing', 'fft Matlab');

Đồ thị:

3 Thực hành 3: Viết chương trình thực hiện biến đổi IDFT của chuỗi X(k) = 10, 2 2 ,

2, 2 2 theo 2 cách Lưu lại với tên Bai1_NHOML07_IDFT.m

L = length(Xk); %find the length of the sequence

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

sequence%DFT of the sequence

Trang 5

% Using IDFT Matlab xn_2 = ifft(Xk,L); disp(xn_2);

Kết quả:

4 Thực hành 4: Viết một file-M tìm ngõ ra y(n) của hệ thống nhân quả với ngõ vào

x(n) = [1, 3, 5, 3, 6, 3] và đáp ứng xung h(n) = [1, 4, 7, 2, 8] theo hai cách và lưu với tên Bai1_NHOML07_conv.m

Trang 7

6 Thực hành 6: Viết các chương trình Matlab thực hiện các yêu cầu sau:

1) Tạo 5 chu kỳ mẫu tín hiệu với Hz, tần số lẫy mẫu 8000 Hz

Trang 8

2) Tạo mẫu tín hiệu được lấy mẫu với 20 trong 1 chu kỳ T.

Trang 10

N = length(s2); % DFT length = signal length

Trang 11

3. Tạo tín hiệu sinc với Hz, (s) và được lấy mẫu ởtần số 500 Hz.

Trang 12

7 Thực hành 7: Thực hiện thiết kế bộ lọc FIR chắn dải với các thông số như trong VD 1

Lấy các hệ số của bộ và viết chương trình vẽ đáp ứng tần số của bộ lọc trên Lưu

Trang 13

lại với tên Bai_1_NHOML07_bs2700_freqz Sử dụng hàm semiology thay cho plot đưa ra nhận xét về sự khác biệt.

Bài làm:

Trang 15

H_matlab_manitude= abs (H_matlab);

H_matlab_phase = angle(H_matlab);

semilogy(w,H_matlab_manitude);

title('dap ung tan so ham plot');

Kết quả:

8 Thực hành 8: Thực hiện việc thiết kế bộ lọc FIR chắn dải với các thông số như trong

ví dụ 2 Lấy các hệ số của bộ và viết chương trình vẽ đáp ứng tần số của bộ lọc trên Lưu lại với tên BAI_1_NHOMx_bs2700_freqz.m

Sử dụng hàm semilogy thay cho plot

Bài làm :

Trang 17

H_matlab_manitude= abs (H_matlab);

Trang 18

9 Thực hành 9: Thực hiện các chương trình thiết kế bộ lọc thông dải đa dải và vẽ đáp

ứng tần số với các yêu cầu như trong ví dụ 1 và 2

% frequency response with 256 points [h w] = freqz(cof,1,256);

% plot magnitude of the filter

plot(f * 5000,m, 'b'); hold on;

plot(w/pi*5000,abs(h), 'r-.');

Kết quả:

Trang 19

[num, den] = yulewalk(n-1,f,m);

% frequency response with 256 points [h w] = freqz(num,den,256);

% plot magnitude of the filter

plot(f * 5000,m, 'b'); hold on;

plot(w/pi*5000,abs(h), 'r-.');

Kết quả:

Trang 20

10 Thực hành 10: Thiết kế bộ lọc FIR chắn đa dải 1000-1500 và 2500-3000, có bậc 62,

tần số lấy mẫu là 10 kHz Sau đó vẽ đáp ứng tần số của bộ lọc

% frequency response with 256 points [h w] = freqz(cof,1,256);

% plot magnitude of the filter

plot(f * 5000,m, 'b'); hold on;

plot(w/pi*5000,abs(h), 'r-.');

Trang 21

11 Thực hành 11 : Thiết kế bộ lọc IIR chắn đa dải 1000-1500 và 2500-3000, có bậc 62, có tần

số lấy mẫu là 10 kHz Sau đó vẽ đáp ứng tần số của bộ lọc

Trang 22

n = 62;

[num, den] = yulewalk(n-1,f,m);

% frequency response with 256 points [h w] = freqz(num,den,256);

% plot magnitude of the filter

plot(f * 5000,m, 'b'); hold on;

Ngày đăng: 24/04/2022, 12:45

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