1. Trang chủ
  2. » Luận Văn - Báo Cáo

Cho hệ thống có phương trình như sau y

14 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Cho Hệ Thống Có Phương Trình Như Sau Y
Tác giả Đỗ Thành Tài, Nguyễn Duy Sơn, Lý Nhân Hậu
Người hướng dẫn Đào Thị Thu Thủy
Trường học Trường Đại Học Công Nghiệp Tp. Hồ Chí Minh
Chuyên ngành Công Nghệ Điện Tử
Thể loại tiểu luận
Năm xuất bản 2024
Thành phố Tp.HCM
Định dạng
Số trang 14
Dung lượng 1,04 MB

Nội dung

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP... Tạo các chuỗi sau sử dụng các hàm tín hiệu cơ bản của MATLAB được đề cập trong chương này... Bài 2.1gTạo các chuỗi sau sử dụng các hàm tín

Trang 1

BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HỒ CHÍ MINH

KHOA CÔNG NGHỆ ĐIỆN TỬ



TIỂU LUẬN

Bài 2 Giảng viên hướng dẫn : Đào Thị Thu Thủy

Lớp: DHDTVT17BTT

Nhóm sinh viên thực hiện :

1 Đỗ Thành Tài - 21135541

2 Nguyễn Duy Sơn- 21122401

3 Lý Nhân Hậu – 21126811

TP.HCM, ngày 03 tháng 01 năm 2024

Trang 2

Nguyễn Duy Sơn

Đỗ Thành tài

Lý Nhân Hậu

Ví dụ 2.7:

Cho hệ thống có phương trình như sau y(n) - y(n - 1) + 0.9y(n - 2) = x(n); n ∀

a Tính đáp ứng xung và vẽ đồ thị h(n) n = −20, , 100

b Tính đáp ứng bậc và vẽ đồ thị s(n) n = −20, , 100

c Hệ thống đặc trưng bởi h(n) có ổn định không?

% -% -XOA MAN HINH,

BIEN -clc

clear all

close all

% -% cau a

b = [1]; a=[1, -1, 0.9];

b = [1]; a = [1, -1, 0.9];

n = [-20:120];

h = impz(b,a,n);

subplot(2,1,1);

stem(n,h);

title('Impulse Response'); xlabel('n'); ylabel('h(n)')

% -% cau b

x = stepseq(0,-20,120); s = filter(b,a,x);

subplot(2,1,2); stem(n,s)

title('Step Response'); xlabel('n'); ylabel('s(n)')

% -% cau c

sum(abs(h))

-1

-0.5

0

0.5

1

Impulse Response

n

0

0.5

1

1.5

2

Step Response

Trang 3

clc

clear all

close all

n = -5:15;

x = 3*impseq(-2,-5,15) + 2*impseq(0,-5,15)- impseq(3,-5,15) + 5*impseq(7,-5,15);

subplot(2,2,1); stem(n,x); title('Sequence in Problem 2.1a') stem(n,x); title('Sequence in Problem 2.1a')

xlabel('n'); ylabel('x(n)');

Bài 2.1c

clc

clear all

close all

n = 0:20;

x1 = stepseq(0,0,20);

x2 = -5*stepseq(5,0,20);

x3 = -10*stepseq(10,0,20);

x4 = 5*stepseq(15,0,20);

x3 = x1 + x2 + x3 + x4;

-2 0 2 4 6

Sequence in Problem 2.1a

n

Trang 4

-12

-10

-8

-6

-4

-2

0

Trang 5

Tạo các chuỗi sau sử dụng các hàm tín hiệu cơ bản của MATLAB được đề cập trong chương này Sử dụng hàm stem đê biểu diễn

x (n)=5 [cos (0.49 πn)+cos( 0.51 πn)], -200 =< n =< 200

Code:

clc

clear all

% Tất cả các giá trị của chuỗi

n = -200:1:200; %Tạo một mảng n chứa các giá trị từ -200 đến 200 với bước nhảy

là 1

x = 5 * (cos(0.49 * pi * n) + cos(0.51 * pi * n)); %Tính toán các giá trị của chuỗi x(n)

% Vẽ đồ thị

%Vẽ đồ thị của chuỗi x(n) bằng hàm stem()

xlabel('n'); %Đặt nhãn cho trục x là n

ylabel('x(n)'); %Đặt nhãn cho trục y là x(n)

-10

-8

-6

-4

-2

0

2

4

6

8

10

n

X 92

Y -9.68583

Trang 6

Bài 2.1g

Tạo các chuỗi sau sử dụng các hàm tín hiệu cơ bản của MATLAB được đề cập trong chương này Sử dụng hàm stem để biểu diễn

x (n)=e−0.05 nsin

( 0.1 πn + π 3 ) , 0 =< n =<100

Code:

clc

clear all

n = [0:1:100]; alpha = -0.05;

x = exp(alpha*n).*sin(0.1*pi*n + pi/3);

stem(n,x);

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

Trang 7

% cau a

x = [-2,-1,0,1,2]; n= -2:22;

xtilde = x' * ones(1,5);

% nhân mảng x với một mảng ones(1,5) chứa 5 số 1 Điền này tạo ra một mảng xtide chứa 5 lần giá trị của một phần tử trong mảng x

xtilde = (xtilde(:))';

% Chuyển đổi mảng xtilde thành một mảng cột

stem(n,xtilde)

% Vẽ đồ thị xtilde bằng hàm stem()

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

Bài 2.2c

Tạo các chuỗi tuần hoàn và vẽ đồ thị của chúng (sử dụng hàm stem) dựa theo chu kì tuần hoàn

(n)=sin (0.1 πn ) ¿

Trang 8

Code:

a=[1 -0.5 -0.25]; b=[1 2 1];

n=0:100

h = filter(b,a,n); subplot(2,1,1); stem(n,h)

Trang 9

500

1000

Bài 2.5b

Trong trường hợp này, đáp ứng xung hội tụ về giá trị bằng 0 khi thời gian tăng dần Điều này có nghĩa là đáp ứng xung này là ổn định.

Cụ thể, tại thời điểm n=1, đáp ứng xung bằng 1.25 Tại thời điểm n=2, đáp ứng xung bằng 0.75 Tại thời điểm n=3, đáp ứng xung bằng 0.5 Và cứ như vậy, đáp ứng xung sẽ tiếp tục giảm xuống

0 khi thời gian tăng dần.

Do đó, đáp ứng xung của hệ thống này là ổn định.

Code:

a=[1 -0.5 0.25];

b=[1 2 1];

n=0:100

h = impz(b,a,n);

stem(n,h);

sum(abs(h))

-0.5

0

0.5

1

1.5

2

2.5

Trang 10

Nếu tín hiệu đầu vào của hê thống là x(n) = [5 + 3Cos(0.2πn) +

4Sin(0.6πn)]u(n) , xác định đáp ứng xung y(n) trong khoảng 0≤ n ≤ 200 bằng cách sử dụng hàm filter

Code:

% Định nghĩa của phương trình vi phân

a = [1, -0.5, 0.25];

b = [1, 2, 0, 1];

% Tạo đầu vào x(n) theo định dạng đã cho

n = 0:200;

x = (5 + 3*cos(0.2*pi*n) + 4*sin(0.6*pi*n)).*(n >= 0);

% Tính toán đầu ra y(n) bằng hàm filter

y = filter(b, a, x);

% Vẽ đáp ứng xung của hệ thống

subplot(2,1,2);

stem(n, y);

xlabel('n');

ylabel('y(n)');

Trang 11

Ví dụ 2.6: Một bộ vi sai số đơn giản được cho bởi

y(n) = x(n) – x(n-1)

Thực hiện bộ vi sai này cho tín hiệu x(n) sau, vẽ đồ thị, nhận xét từng kết quả

a x(n) = 5 [ u(n) – u(n – 20)]

b x(n) = n [ u(n) – u(n – 10)] + (20 – n)[ u(n – 10) – u(n – 20)]

c x(n) = sin(πn/25) [u(n) – u(n-100)]

Giải a) Code:

n = 0:30;

x = 5 * (heaviside(n) - heaviside(n - 20));% Heaviside là hàm bước

y = x - [0, x(1:end-1)];

subplot(2,1,1);

stem(n, x, 'r', 'LineWidth', 2);%độ rộng của đường vẽ

title('Tín hiệu x(n)');

xlabel('n');

ylabel('x(n)');

grid on;

subplot(2,1,2);

stem(n, y, 'b', 'LineWidth', 2);

title('Bộ vi sai số y(n) = x(n) - x(n-1)');

xlabel('n');

ylabel('y(n)');

grid on; % hiện thị lưới tọa độ

Trang 12

2

4

6

n

-2

-1

0

1

2

Bộ vi sai số y(n) = x(n) - x(n-1)

n

x(n)

b)

Code:

n = 0:30;

x = n * (heaviside(n) heaviside(n 10)) + (20 n) * (heaviside(n 10) -heaviside(n - 20));

y = x - [0, x(1:end-1)];

subplot(2,1,1);

stem(n, x, 'r', 'LineWidth', 2);

title('Tín hi?u x(n)');

xlabel('n');

ylabel('x(n)');

grid on;

subplot(2,1,2);

stem(n, y, 'b', 'LineWidth', 2);

title('B? vi sai s? y(n) = x(n) - x(n-1)');

xlabel('n');

ylabel('y(n)');

grid on;

Trang 13

Code:

n = 0:200;

x = sin((pi * n) / 25) * (heaviside(n) - heaviside(n - 100));

y = x - [0, x(1:end-1)];

subplot(2,1,1);

plot(n, x, 'r', 'LineWidth', 2);

title('Tín hi?u x(n)');

xlabel('n');

ylabel('x(n)');

grid on;

subplot(2,1,2);

stem(n, y, 'b', 'LineWidth', 2);

title('B? vi sai s? y(n) = x(n) - x(n-1)');

xlabel('n');

ylabel('y(n)');

grid on;

legend('x(n)', 'y(n)')

0

5

10

Tín hiệu x(n)

n

-1

-0.5

0

0.5

1

Bộ vi sai số y(n) = x(n) - x(n-1)

n

x(n)

Trang 14

0 20 40 60 80 100 120 140 160 180 200

n -1

-0.5

0

0.5

1

-0.1

-0.05

0

0.05

0.1

Bộ vi sai số y(n) = x(n) - x(n-1)

x(n)

Ngày đăng: 27/12/2024, 15:24

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

TÀI LIỆU LIÊN QUAN

w