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

báo cáo thực hành tín hiệu hệ thống ngành kỹ thuật điều khiển và tự động hóa

13 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

Nội dung

Bài 3: Tích chập, phép biến đổi Fourier và lọc tín hiệu I.. Phép biến đổi Fourier và lọc tín hiệu bằng bộ lọc Butterworth bậc 51... xlabel''''f Hz'''';ylabel''''|Xf|'''';Câu hỏi 1: Chạy chương trình

Trang 1

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

BÀI BÁO CÁO THỰC HÀNHNguyễn Huy Văn – MSSV: 20222436

Ngành Kỹ thuật điều khiển và tự động hóa

Giảng viên hướng dẫn: TS Nguyẽn Duy Long Họ và tên:

MSSV: Tên học phần: Mã học phần: Mã lớp học: Kỳ học:

Nguyễn Huy Văn 20222436 Tín hiệu và hệ thống EE2000

736400 2023.1

Trang 2

HÀ NỘI, 11/2023

Trang 3

1: Tín hiệu liên tục

I) Hàm bước nhảy đơn vị (unit step) và hàm dốc đơn vị (ramp)

1) function x=us(t) x=(sign(t)+1)/2;2) function x=ur(t)

x=t.*us(t); 3)

a) t=-10:0.01:10;

plot(t-2.5*us(t), ,'r' 'LineWidth',2)grid on axis tight;

b) t=-10:0.01:10;

plot(t+5,3*ur(t), ,'g' 'LineWidth',2)grid on

axis tight;

c) t=-10:0.01:10;

y=2*ur(t+2.5)-5*ur(t)+3*ur(t-2)+us(t-4);plot(t,y, ,'b' 'LineWidth',2)

grid onaxis tight;

d) t=-10:0.01:10;y=sin(t).*(us(t+3)-us(t-3));plot(t,y, ,'y' 'LineWidth',2)grid on

axis tight;

Trang 4

a) t=-10:0.01:10;

y=0.5*ur(t+4)-ur(t)+0.5*ur(t-4);plot(t,y, ,'r' 'LineWidth',2)gird on

axis tight;

b) t=-10:0.01:10;

y=us(t+8)+0.5*ur(t+4)-ur(t)+0.5*ur(t-4)-us(t-8);plot(t,y, ,'b' 'LineWidth',2)

gird onaxis tight;

II) Tín hiệu chẵn lẻ

1) function [ye,yo] = evenodd(y)% even/odd decomposition% y: analog signal

% ye, yo: even and odd components% [ye,yo] = evenodd(y)

yr = fliplr(y);ye = 0.5*(y + yr);yo = 0.5*(y - yr);2) t=-10:0.01:10;

plot(t,y,'r','linewidth',2);

Trang 5

grid on;axis tight;subplot(312)

plot(t,ye,'g','linewidth',2);axis tight;

plot(t,yo,'b','linewidth',2);axis tight;

III) Tổng của các tín hiệu tuần hoàn

a) t=-10:0.01:10;a = pi/10;

disp('Ham tuan hoan')

b) t=-10:0.01:10;a = pi/10;

disp('Ham tuan hoan')

III) Năng lượng, công suất của một tín hiệu

syms ;x

disp(P)

Trang 6

IV) Phép dịch, phép co dãn và phép đảo tín hiệu

1) t=-10:0.01:10;x=exp(-abs(t));hold on

plot(t,x,'r','linewidth',2)hold on

plot(t-2,x,'g','linewidth',2)hold on

plot(t+2,x,'b','linewidth',2)grid on

axis tight;

2) t=-10:0.01:10;x=exp(-abs(t));hold on

plot(t,x,'r','linewidth',2)hold on

plot(0.5*t,x,'g','linewidth',2)hold on

plot(2*t,x,'b','linewidth',2)grid on

axis tight;

3) t=-10:0.01:10;x=exp(-abs(t));hold on

plot(t,x,'r','linewidth',2)hold on

plot(-t,x,'g','linewidth',2)grid on

axis tight;

Trang 7

Bài 2: Tín hiệu âm nhạc

Question 1:

song = [C C G G A A G Si Si F F E E D D C Si Si];sound(song,Fs)

Question 2:

a) t = linspace(0,1,44100); F=494;

C = [0.1155 0.3417 0.1789 0.1232 0.0678 0.0473 0.0260 0.0065 0.0020];Th = [-2.13 1.67 -2.545 0.661 -2.039 2.16 -1.0467 1.858 -2.39];X = C*cos(2* pi * F * (1:9)' * t- Th '*ones(1,44100));sound (x,44100);

b) t = linspace(0,1,44100); F=494;

C = [0.1155 0.3417 0.1789 0.1232 0.06780.0473 0.0260 0.0065 0.0020];

Th= [2.13 1.67 2.545 0.661 2.039 2.16 1.0467 1.858 -2.39];

-Th'*ones(1,44100));plot(t(1:200),x(1:200))axis tight;

Trang 8

x=C*cos(2*pi*F*(1:9)'*t-grid on;

c) t = linspace(0,1,44100); F=494;

C = [0.1155 0.3417 0.1789 0.1232 0.0678 0.0473 0.0260 0.0065 0.0020];Th= zeros(1,9);

axis tight;grid on;

Trang 9

Bài 3: Tích chập, phép biến đổi Fourier và lọc tín hiệu

I Tích chập và lọc tín hiệu âm thanh bằng bộ lọc thông thấp lý tưởng.Thay thế lệnh waveread bằng audioread và giữ lại các lệnh như cũ:

[data,Fs]= audioread('female_voice.wav');data = data(:,1)';

Ts = 1/Fs;sound(data,Fs);t = -10:Ts:10;wb = 1500*2*pi;

ht = wb/(2*pi)*sinc(wb*t/(2*pi));y = conv(data,ht,'same');y = y/max(abs(y));sound(y,Fs);

II Phép biến đổi Fourier và lọc tín hiệu bằng bộ lọc Butterworth bậc 51 Tự tạo các hàm của bạn

* Chương trình tính ảnh Fourier của tín hiệu:

function [f,X]=FourierTransform(t,x) ns=size(x,2); dt=t(2)-t(1);

N=2*ns; df=1/(N*dt); xp=zeros(1,N); nns=sum(t<0);

xp(1:ns-nns)=x(nns+1:ns); xp(N-nns+1:N)=x(1:nns); Xf=dt*fft(xp); n2=ceil(N/2);

if n2==N/2; X(1:n2-1)=Xf(n2+2:N); X(n2:N)=Xf(1:n2+1); f=(-n2+1)*df:df:n2*df; no=n2;

else; X(1:n2-1)=Xf(n2+1:N); X(n2:N)=Xf(1:n2);

Trang 10

f=(-n2+1)*df:df:(n2-1)*df; end

* Chương trình tính ảnh Fourier ngược:

function [t, x] = IFourierTransform(f, X) ns=length(X); df=f(2)-f(1);

N=ns; dt=1/(N*df); Xp=zeros(1,N); Xp(1:ns)=X; nns=sum(f<0);

Xpp(1:ns-nns)=Xp(nns+1:ns); Xpp(N-nns+1:N)=Xp(1:nns); xf=N*df*ifft(Xpp); n2=ceil(N/2);

if n2==N/2; x(1:n2-1)=xf(n2+2:N); x(n2:N)=xf(1:n2+1); t=(-n2+1)*dt:dt:n2*dt;

else; x(1:n2-1)=xf(n2+1:N); x(n2:N)=xf(1:n2); t=(-n2+1)*dt:dt:(n2-1)*dt; end

2 Lọc tín hiệu điện tim

Vẽ đồ thị tín hiệu điện tim và phổ của nó:

load hum3hb;

x=hb; tf=(size(x,2)-1)*T; t=0:T:tf;

[f,Xf]=FourierTransform(t,hb); figure(1);

subplot(2,1,1) plot(t,x,'linewidth',1); grid; axis([0 2.5 -0.5 1.5]); xlabel('t (sec)');ylabel('x(t)'); subplot(2,1,2)

plot(f,abs(Xf),'linewidth',1); grid; axis([-150 150 0 0.12]);

Trang 11

xlabel('f (Hz)');ylabel('|X(f)|');

Câu hỏi 1: Chạy chương trình main.m và nhận xét về đồ thị thời gian của tín hiệu điện tim và

phổ của nó.

_ Tín hiệu điện tim là tín hiệu tuần hoàn.

_ Nhiễu tập trung quanh vùng f = 0 Hz, nhiễu cũng có ở vùng f tần số cao.

(Hình 1)

Trang 12

Câu hỏi 2: Nhận xét về bộ lọc đã dùng.

_ Bộ lọc đã dùng là bộ lọc thông thấp

_ Vùng tần số bộ lọc cho đi qua là từ 0 Hz đến 100 Hz.

(Hình 2)

Trang 13

Câu hỏi 3: Nhận xét về tác dụng của bộ lọc.

_ Bộ lọc có tác dụng khử nhiễu tần số cao trong máy ghi điện tim Ở hình 3, nhiễu đã giảm so với hình 1.

(Hình 3)

Ngày đăng: 17/06/2024, 17:09

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

TÀI LIỆU LIÊN QUAN

w