You are on page 1of 34

THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

THỰC HÀNH XỬ LÝ TÍN HIỆU SỐ TRÊN MATLAP


Học viên thực hiện : Phạm Văn Thái
Lớp : Thông Tin 3
Giáo viên hướng dẫn : Phan Trọng Hanh

Bài thực hành 1:


Sử dụng các lệnh plot,stem để vẽ đồ thị tín hiệu sau:

Bài 1: - Tạo 100 mẫu tín hiệu điện áp có biểu thức: u 10.e t cos(2 .100.t) .
Biết 0.001 , tần số rời rạc hóa Fs=1000 (Hz).

S=u=a*exp(- *n/Fs).*cos(2*pi*n*F/Fs);
100 mẫu tín hiệu điện áp n từ 1 đến 100 là
Columns 1 through 10
8.0902 3.0902 -3.0902 -8.0901 -10.0000 -8.0901 -3.0901 3.0901 8.0901
9.9999
Columns 11 through 20
8.0901 3.0901 -3.0901 -8.0901 -9.9999 -8.0900 -3.0901 3.0901 8.0900
9.9998

Columns 21 through 30
8.0900 3.0901 -3.0901 -8.0900 -9.9998 -8.0900 -3.0901 3.0901 8.0899
9.9997
Columns 31 through 40
8.0899 3.0901 -3.0901 -8.0899 -9.9997 -8.0899 -3.0901 3.0901 8.0899
9.9996
Columns 41 through 50
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

8.0898 3.0900 -3.0900 -8.0898 -9.9996 -8.0898 -3.0900 3.0900 8.0898


9.9995
Columns 51 through 60
8.0898 3.0900 -3.0900 -8.0897 -9.9995 -8.0897 -3.0900 3.0900 8.0897
9.9994
Columns 61 through 70
8.0897 3.0900 -3.0900 -8.0897 -9.9994 -8.0896 -3.0900 3.0900 8.0896
9.9993
Columns 71 through 80
8.0896 3.0899 -3.0899 -8.0896 -9.9993 -8.0896 -3.0899 3.0899 8.0895
9.9992
Columns 81 through 90
8.0895 3.0899 -3.0899 -8.0895 -9.9992 -8.0895 -3.0899 3.0899 8.0894
9.9991
Columns 91 through 100
8.0894 3.0899 -3.0899 -8.0894 -9.9991 -8.0894 -3.0899 3.0899 8.0894
9.9990
Theo baì toán ta có đồ thị được lập trình trong m-file như sau:
a=10;
=0.001;
Fs=1000;
F=100;
n=[1:1000000];
s=a*exp(- *n/Fs).*cos(2*pi*n*F/Fs);
plot(s);
%plot(n/Fs,s);
%stem(s);
title('Pham Van Thai,tin hieu hinh sin F=100,Fs=1000 ');
xlabel('thoi gian(s)');
ylabel('Volt');
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Đồ thị biểu diễn tín hiệu theo các hàm plot,stem:


Với hàm plot(s)

s`

Để biểu diễn theo thời gian ta thay plot(s) bằng plot(n/Fs,s),ở đây em lấy 5000000
mẫu để có thể thể hiện được sự suy giảm của tín hiệu. ở 2 hình sau em chi lấy 100
mẫu.
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Để có hình ảnh rời rạc ta chỉ thay lệnh plot bằng lệnh stem và n=[1:1000000]
bằng n=[1:100] được đồ thị như hình dưới đây:
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Bài 2:

- Tạo 100 mẫu tín hiệu điện áp có biểu thức: u 10.e t sin(2 .100.t) . Biết
0.001 , tần số rời rạc hóa Fs=1000 (Hz).

Biểu diễn tín hiệu ở dạng dời rạc


S= u=A*exp(- *n/Fs).*sin(2*pi*n*F/Fs);
100 mẫu tín hiệu điện áp n từ 1 đến 100
Columns 1 through 10
5.8778 9.5105 9.5105 5.8778 0.0000 -5.8778 -9.5105 -9.5105 -5.8778
-0.0000
Columns 11 through 20
5.8778 9.5105 9.5104 5.8778 0.0000 -5.8778 -9.5104 -9.5104 -5.8777
-0.0000
Columns 21 through 30
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

5.8777 9.5104 9.5103 5.8777 0.0000 -5.8777 -9.5103 -9.5103 -5.8777


-0.0000
Columns 31 through 40
5.8777 9.5103 9.5103 5.8777 0.0000 -5.8776 -9.5102 -9.5102 -5.8776
-0.0000
Columns 41 through 50
5.8776 9.5102 9.5102 5.8776 0.0000 -5.8776 -9.5101 -9.5101 -5.8776
-0.0000
Columns 51 through 60
5.8776 9.5101 9.5101 5.8775 -0.0000 -5.8775 -9.5100 -9.5100 -5.8775
-0.0000
Columns 61 through 70
5.8775 9.5100 9.5100 5.8775 0.0000 -5.8775 -9.5099 -9.5099 -5.8774
-0.0000
Columns 71 through 80
5.8774 9.5099 9.5099 5.8774 -0.0000 -5.8774 -9.5098 -9.5098 -5.8774
-0.0000
Columns 81 through 90
5.8774 9.5098 9.5098 5.8774 0.0000 -5.8773 -9.5097 -9.5097 -5.8773
-0.0000
Columns 91 through 100
5.8773 9.5097 9.5097 5.8773 -0.0000 -5.8773 -9.5096 -9.5096 -5.8773
-0.0000
>>đồ thị được lập trình trong m-file như sau:
A=10;
=0.001;
F=100;
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Fu=1000;
n=[1:500000];
u=A*exp(- *n/Fs).*sin(2*pi*n*F/Fs);
%plot(u);
%plot(n/Fu,u);
stem(u);
title('Pham Van Thai,tin hieu hinh sin F=100,Fs=1000 ');
xlabel('thoi gian(s)');
ylabel('Volt');

Tương tự như bài 1,ở đây chỉ khác là hàm có được chuyển về hàm sin
Ta có 3 dạng biểu diễn khác nhau của đồ thị như sau:
Hàm plot(s);
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

>>Hàm plot(n/Fs,s) với 100 mẫu.

>>Hàm stem(n/Fs,s) với 100 mẫu


THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Bài 3:
- Tạo 100 mẫu tín hiệu điện áp có biểu thức:
u 10.cos(2 .(100+ 10cos(2 .5t)).t) . Biết 0.001 , tần số rời rạc hóa Fs=1000
(Hz)
A=10;
Fs=1000;
n=[1:100];
F=100+10*cos(2*pi*5*n/Fs);
s=A*cos(2*pi*n.*F/Fs)
>>100 mẫu điện áp
Columns 1 through 14
7.7053 1.8762 -4.8102 -9.2905 -9.5224 -5.4145 1.1482 7.1807 9.9637
8.2671 2.8805 -3.7730 -8.7420 -9.8599
Columns 15 through 28
-6.6765 -0.6148 5.6896 9.5483 9.3623 5.2623 -0.9994 -6.8231 -9.8514
-8.9114 -4.4402 1.7491 7.2272 9.9087
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Columns 29 through 42
8.8305 4.4650 -1.5175 -6.9123 -9.7983 -9.2073 -5.4167 0.2061 5.7215
9.2952 9.7972 7.1327 2.2190 -3.3548
Columns 43 through 56
-7.8552 -9.9392 -9.0377 -5.4822 -0.3624 4.8252 8.6199 10.0000
8.6399 4.9628 -0.0077 -4.9448 -8.5740 -9.9952
Columns 57 through 70
-8.8912 -5.5813 -0.9164 3.9478 7.8384 9.8430 9.5145 6.9591 2.7956
-1.9997 -6.3229 -9.1934 -9.9708 -8.4917
Columns 71 through 84
-5.0993 -0.5618 4.1004 7.8409 9.8190 9.5855 7.1850 3.1499 -1.6126
-6.0186 -9.0500 -9.9884 -8.5887 -5.1497
Columns 85 through 98
-0.4620 4.3626 8.1472 9.9347 9.2360 6.1762 1.4940 -3.6171 -7.8003
-9.8926 -9.2580 -6.0007 -0.9846 4.3674
Columns 99 through 100
8.4597 10.0000
>>chương trình m-file
A=10;
Fs=1000;
n=[1:800];
F=100+10*cos(2*pi*5*n/Fs);
s=A*cos(2*pi*n.*F/Fs);
%plot(s);
%plot(n/Fs,s);
stem(s);
title('Pham Van Thai, tin hieu dien ap co tan so dieu che‟);
xlabel('thoi gian(s)');
ylabel('Votl');

Ta có 3 dạng đồ thị tín hiệu rời rạc sau:

Hàm plot(s);
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Hàm plot(n/Fs,s);
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Hàm stem(n/Fs,s);
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Bài 4:
- Tạo 100 mẫu tín hiệu điện áp có biểu thức:
u 10.cos(2 .(100+ 10sin(2 .5t)).t) . Biết 0.001 , tần số rời rạc hóa Fs=1000
(Hz).
A=10;
Fs=1000;
n=[1:100];
F=100+10*sin(2*pi*5*n/Fs);
s=A*cos(2*pi*n.*F/Fs)
>>100 mẫu tín hiệu (n từ 1 đến 100)
Columns 1 through 14
8.0786 3.0150 -3.2584 -8.2713 -9.9879 -7.6551 -2.1649 4.2518 8.9132
9.8121 6.5059 0.3659 -5.9604 -9.6797
Columns 15 through 28
-9.0985 -4.4230 2.2756 7.9570 9.9909 7.3939 1.3337 -5.3706 -9.5505
-9.1951 -4.4402 2.4584 8.1826 9.9511
Columns 29 through 42
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

6.8845 0.4582 -6.1981 -9.8250 -8.6378 -3.2128 3.7892 8.9310 9.6925


5.7081 -1.0626 -7.3078 -9.9922 -7.8315
Columns 43 through 56
-1.8958 4.9386 9.3973 9.3792 4.9320 -1.8153 -7.6954 -10.0000 -
7.7152 -1.9371 4.6875 9.1960 9.6334 5.8737
Columns 57 through 70
-0.3940 -6.4599 -9.7803 -9.0312 -4.5993 1.6550 7.2112 9.9138 8.7885
4.3507 -1.6696 -7.0329 -9.8309 -9.1445
Columns 71 through 84
-5.3046 0.2996 5.7542 9.2847 9.8190 7.2787 2.5349 -2.9218 -7.4676
-9.8255 -9.4027 -6.4043 -1.7190 3.3680
Columns 85 through 98
7.5381 9.7749 9.5938 7.1176 3.0018 -1.7574 -6.0734 -9.0158 -9.9984
-8.8774 -5.9481 -1.8541 2.5650 6.4482
Columns 99 through 100
9.0774 10.0000
>>Chương trình vẽ đồ thị trong m-file
A=10;
Fs=1000;
n=[1:800];
F=100+10*sin(2*pi*5*n/Fs);
s=A*cos(2*pi*n.*F/Fs);
%plot(s);
%plot(n/Fs,s);
stem(s);
title('Pham Van Thai,tin hieu dien ap co tan so dieu che');
xlabel('thoi gian(s)');
ylabel('Votl');

Tương tự bài 3,chỉ thay cos bằng sin ta có 3 đồ thị sau:


Hàm plot(s)
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Hàm plot(n/Fs,s)
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Hàm stem(n/Fs,s)
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

BÀI THỰC HÀNH 2


Ứng dụng phép biến đổi Fourier rời rạc (DFT) phân tích phổ cho tín hiệu rời
rạc có chiều dài hữu hạn:
Bài 1:
Mỗi học viên lấy ngày, tháng, năm sinh của mình để tạo ra dãy rời rạc theo
qui tắc sau:
Năm – tháng - ngày sinh. Sau đó sử dụng DFT phân tích phổ cho dãy này. Vẽ
các đồ thị và ghi chú đầy đủ theo hướng dẫn, bao gồm cả tên học viên.
>>Chương trình m-file:
x=[1 9 8 9 0 3 2 5];
X=fft(x);
phoBD=abs(X);
phopha=angle(X);
f=2*pi/8*[0:1:7];
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

stem(phoBD);
%stem(phopha);
%stem(f,phoBD);
title(' Pham Van Thai,do thi pho bien do cua ngay sinh');
xlabel('tan so (f)');
ylabel('bien do');

Đồ thị phổ biên độ phoBD=abs(X)

Đồ thị phổ pha angle(X)


THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Đồ thị phổ biên độ,tần số stem(f,phoBD)


THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Bài 2:
- Hãy nêu rõ tác dụng và ý nghĩa của các dòng lệnh phân tích phổ cho tín
hiệu thoại. Vì sao lại chỉ cần lấy một nửa số mẫu?
- Mỗi học viên tự tạo một file .wav , sau đó thực hiện phân tích phổ cho
file này. Vẽ đồ thị phổ biên độ theo hướng dẫn. Nội dung file: “ Tên tôi
là…….. . Lớp…….”.
-------------------------------

>>Chương trình M-file vẽ đồ thị phổ biên độ với nội dung file là:
“tên tôi là phạm văn thái học, viên lớp thông tin 3, tiểu đoàn 3”
File có tên là “phạm văn thái” được đặt trong thư mục
C:\Program Files\MATLAB\R2008a\work
Chương trình như sau (có nêu kèm tác dụng và ý nghĩa của các dòng lệnh phân tích
phổ cho tín hiệu thoại):
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

[s,fs]=wavread('pham van thai.wav');đọc file „pham van thai.wav‟ trong thư mục
C:\Program Files\MATLAB\R2008a\word.
N=length(s); lấy độ dài của tín hiệu âm thanh
M=round(N/2); lấy 1 nửa độ dài số lượng mẫu âm thanh
S=fft(s); biến đổi fourier rời rạc s
f=fs*(1:M)/N; tạo lưới tần số vật lý
phoBD=abs(S); lấy độ lớn biên độ phổ tín hiệu
pho=phoBD(1:M); chỉ lấy 1 nửa số mẫu
plot(f,pho); vẽ đồ thị biên độ phổ
title('Pham Van Thai, do thi pho cua file am thanh');đặt tiêu đề cho đồ thị
xlabel('tan so'); tên trục x
ylabel('pho bien do'); tên trục y

>>>Qua mô phỏng bằng Matlap ta có tần số lấy mẫu(fs),dữ liệu mẫu(s),đồ thị biểu
diễn tín hiệu âm thanh và đồ thị biên độ phổ như sau:

Fs=44100
Đồ thị biểu diễn dạng tín hiệu:
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Đồ thị biên độ phổ:

Qua đồ thị phổ ta thấy phổ của file âm thanh này tập trung chủ yếu ở khu vực dưới
tần số 2,205kHz,tần số cực đại của phổ vào khoảng 2,205kHz.
>>>Ta chỉ cần lấy 1 nửa số mẫu vì tín hiệu âm thanh trong thực tế là tín hiệu
thực,phổ biên độ của nó đối xứng nên ta chỉ cần lấy 1 nửa số mẫu để khảo sát và
xử lý tín hiệu!
Bài tập thực hành 3:
Tổng hợp lọc FIR bằng phương pháp cửa sổ
Bài 1:Khai thác đầy đủ lệnh fir1.
Thiết kế bộ lọc đáp ứng xung hữu hạn bằng phương pháp của sổ.
Cú pháp:
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

b=fir1(n,Wn)
b=fir1(n,Wn,‟ftype‟)
b=fir1(n,Wn,window)
b=fir1(n,Wn,‟ftype‟,window)
b=fir1(….,‟chuẩn hóa hay nomarlization‟)
>>Mô tả:
Lệnh fir1 là phương pháp kinh điển dùng để thiết kế bộ lọc số FIR có pha tuyến
tính. Nó dùng thiết kế ra những bộ lọc thông cao,thông thấp,lọc dải thông ,lọc dải
chặn. Theo mặc định ở dạng chuẩn đến mức đáp ứng của tần số ở dải giữa bộ lọc là
0 db.
>>Lệnh b=fir1(n,Wn) lệnh này trả lại vector b ở dạng hàng,bao gồm n+1 hệ số
của bộ lọc thông thấp bậc n. Đây là một của sổ Hamming cơ bản, bộ lọc pha tuyến
tính với tần số cắt Wn. Đầu ra hệ số của bộ lọc b được sắp sếp giảm dần theo hàm
truyền của z.

B(z)=b(1)+b(2) z 1 +…+b(n+1) z n .

Wn là số giữa 0 và 1,ở đây 1 tương ứng với tần số Nyquist.

+) Nếu Wn là 1 vector 2 thành phần ,Wn=[w1 w2],fir1 trả lại 1 bộ lọc dải thông
với dải thông

w1< <w2.

+) Nếu Wn là một c=vector nhiều phần tử ,Wn=[w1 w2 w3…..wn],fir1 trả lại bộ


lọc nhiều dải bậc n với nhiều dải 0< <w1,w1< <w2,…,wn< <1.

+) Wn là tần số cắt chuẩn hóa, 0 < Wn < 1.0. Giá trị 1.0 tương ứng với một nửa
tần số rời rạc hóa, đây là điểm khác biệt với lý thuyết. Tần số cắt tương ứng với
đặc tính biên độ tần số giảm xuống -6dB.

Ví dụ: B= fir1(100,0.5)
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Sẽ tổng hợp lọc FIR thông thấp, cửa sổ Hamming có bậc 100, tần số cắt chuẩn hóa
bằng 0.5. Như vậy
lệnh này lấy ra vector B có 101 hệ số lọc.
>> Lệnh B = FIR1(N,Wn,'ftype')
Ở đây ftype là:
„high‟ thiết kế bộ lọc thông cao.
„ „stop‟ thiết kế bộ lọc dải chặn.
Nếu Wn=[w1 w2] dải từ w1->w2 là dải chặn đối với „stop‟ và dải
thông đối với „high‟.
„DC-1‟ để tạo dải đầu tiên của một bộ lọc nhiều dải thông.
„DC-0‟ để tạo dải đầu tiên của một bộ lọc nhiều dải chặn.
>>fir1 luôn luôn sử dụng một bộ lọc bằng phẳng cho những hình dạng thông cao
và dải chặn. điều này là vì nhiều bậc lẻ, tần số đáp ứng ở tần số Nyquist là 0,những
tần số này thì không thích hợp cho những bộ lọc thông cao và lọc dải chặn.Nếu ta
chỉ rõ giá trị n lẻ ,fir1 sẽ tăng tần số bằng 1.
+) b=fir1(n,Wn,windown) sử dụng của sổ đã được định rõ ở vector cột cửa sổ cho
thiết kế.vector của sổ phải dài n+1 phần tử. Nếu của sổ không được định rõ,fir1 sử
dụng một của sổ Hamming độ dài n+1.
+) b=fir1(n,Wn,‟ftype‟,windown) chấp nhận cả „ftype‟ và giới hạn của sổ.
+) b=fir1(…,‟normalization‟) xác định có hoặc không có chuẩn hóa biên độ
lọc.Chuỗi „normalization‟ có thể là:
„Scale‟(mặc định) chuẩn hóa các bộ lọc để cường độ đáp ứng của bộ lọc tại
các tần số trung tâm dải thông là 0 dB.
„Noscale‟:không chuẩn hóa các bộ lọc.
+) Bộ lọc fir loại 1 có thời gian giữ chậm là n/2.
>>Thuật toán:fir1 sử dụng phương pháp của sổ cho việc thiết kế bộ lọc fir.Nếu
W(n) chỉ rõ 1 của sổ,ở đây 1 n N và đáp ứng xung của bộ lọc lý tưởng là h(n)
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

(h(n) là biến đổi fourier ngược của đáp ứng tần số) ,sau đó hệ số bộ lọc số của sổ
được cho bằng cách:
b(n)=W(n).h(n), 1 n N
Ví dụ:
1) Thiết kế một bộ lọc thông dải bậc 48với tần số dải thông 0.35 0.65
b = fir1(48,[0.35 0.65]);
freqz(b,1,512)

Bài 2:
Tổng hợp lọc FIR thông cao sử dụng phương pháp cửa sổ, dùng cửa sổ
Hamming. Biết bậc của mạch lọc bằng 50, tần số cắt bằng 2000 Hz. Cho tần số
rời rạc hóa bằng 18000 Hz. Khảo sát đặc tính tần số của mạch lọc đã tổng
hợp.
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Tần số chuẩn hóa 1.0 ứng với một nửa tần số dời rạc là 18000/2=9000 Hz,vậy tần
số cắt 2000 Hz tương ứng với tần số cắt chuẩn hóa là 2/9=0.22
Tìm các hệ số mạch lọc:
b=fir1(50,0.22,‟high‟)
Lấy thêm độ chính xác bằng lệnh
format long

b=

Columns 1 through 4
0.001019607500961 0.000855459905219 0.000245183634688 -
0.000783566835898
Columns 5 through 8
-0.001931267144424 -0.002543234264533 -0.001839151317243
0.000547514316661
Columns 9 through 12
0.004010330608207 0.006839782838595 0.006837088065813
0.002568514503510
Columns 13 through 16
-0.005333889437931 -0.013667554607152 -0.017568599762490 -
0.012775568140169
Columns 17 through 20
0.001635795111629 0.021442936433353 0.037627380636418
0.039247550878206
Columns 21 through 24
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

0.017962245445038 -0.027655153631958 -0.090065276802109 -


0.154230209331490
Columns 25 through 28
-0.202364018386752 0.780777912174924 -0.202364018386752 -
0.154230209331490
Columns 29 through 32
-0.090065276802109 -0.027655153631958 0.017962245445038
0.039247550878206
Columns 33 through 36
0.037627380636418 0.021442936433353 0.001635795111629 -
0.012775568140169
Columns 37 through 40
-0.017568599762490 -0.013667554607152 -0.005333889437931
0.002568514503510
Columns 41 through 44
0.006837088065813 0.006839782838595 0.004010330608207
0.000547514316661
Columns 45 through 48
-0.001839151317243 -0.002543234264533 -0.001931267144424 -
0.000783566835898
Columns 49 through 51
0.000245183634688 0.000855459905219 0.001019607500961
Khảo sát đặc tính tần số của mạch lọc:
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Sử dụng hàm freqz(b,1,512) ta được:

Đặc tính biên độ- tần số và pha-tần số của mạch lọc đang được khảo sát
Bài 3:
Tổng hợp lọc FIR thông dải sử dụng phương pháp cửa sổ, dùng cửa sổ
Hamming. Biết bậc của mạch lọc bằng 50, tần số cắt 1 bằng 4000 Hz, tần số
cắt 2 bằng 6000 Hz. Cho tần số rời rạc hóa bằng 18000 Hz. Khảo sát đặc tính
tần số của mạch lọc đã tổng hợp.
Theo bài ra ta có:

Bậc của mạch lọc N=50


Tần số cắt1 là f1=4000Hz ,tần số cắt 2 là f2=6000Hz
Tần số rời rạc hóa là 18000Hz
Suy ra tần số cắt chuẩn hóa 1 =4000/9000=0.44, 2 =6000/9000=0.67
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Hệ số của mạch lọc là


b=fir1(50,[0.44 0.67])

b=

Columns 1 through 4
0.000718597820776 -0.000811792782409 -0.001732478680060
0.002550524348730
Columns 5 through 8
0.001868832868902 -0.004101492089189 -0.000529292923276
0.001898691970905
Columns 9 through 12
0.000313346421771 0.006119297990319 -0.006693326556210 -
0.014530545912955

Columns 13 through 16
0.019486684009045 0.013487352332173 -0.025301343618007 -
0.003077078750500
Columns 17 through 20
0.005697988357008 0.002909800362750 0.040665825122837 -
0.039012179510499
Columns 21 through 24
-0.085674812195182 0.114477767396361 0.089710581582112 -
0.194746524153155
Columns 25 through 28
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

-0.038460122183428 0.229471431057674 -0.038460122183428 -


0.194746524153155
Columns 29 through 32
0.089710581582112 0.114477767396361 -0.085674812195182 -
0.039012179510499
Columns 33 through 36
0.040665825122837 0.002909800362750 0.005697988357008 -
0.003077078750500
Columns 37 through 40
-0.025301343618007 0.013487352332173 0.019486684009045 -
0.014530545912955
Columns 41 through 44
-0.006693326556210 0.006119297990319 0.000313346421771
0.001898691970905
Columns 45 through 48
-0.000529292923276 -0.004101492089189 0.001868832868902
0.002550524348730
Columns 49 through 51
-0.001732478680060 -0.000811792782409 0.000718597820776

>> freqz(b,1,512)
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Đặc tính biên độ- tần số và pha-tần số của mạch lọc


Bài 4:
Tổng hợp lọc FIR dải chặn sử dụng phương pháp cửa sổ, dùng cửa sổ
Hamming. Biết bậc của mạch lọc bằng 50, tần số cắt 1 bằng 4000 Hz, tần số
cắt 2 bằng 6000 Hz. Cho tần số rời rạc hóa bằng 18000 Hz. Khảo sát đặc tính
tần số của mạch lọc đã tổng hợp.
Theo bài ra ta có:
Bậc của mạch lọc N=50
Tần số cắt1 là f1=4000Hz ,tần số cắt 2 là f2=6000Hz
Tần số rời rạc hóa là Fs= 18000Hz
Suy ra tần số cắt chuẩn hóa 1 =4000/9000=0.44, 2 =6000/9000=0.67

Hệ số của mạch lọc là


b=fir1(50,[0.44 0.67],'stop')
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

format long
b=

Columns 1 through 4
-0.000720209764997 0.000813613779699 0.001736364941491 -
0.002556245633800
Columns 5 through 8
-0.001873024997315 0.004110692473991 0.000530480222547 -
0.001902951078657
Columns 9 through 12
-0.000314049314181 -0.006133024676853 0.006708340892110
0.014563140542147
Columns 13 through 16
-0.019530396147821 -0.013517606890445 0.025358099084610
0.003083981191844
Columns 17 through 20
-0.005710769970221 -0.002916327568570 -0.040757045886227
0.039099690849214
Columns 21 through 24
0.085866996215748 -0.114734561628411 -0.089911818559632
0.195183375650626
Columns 25 through 28
0.038546395158219 0.769953722229765 0.038546395158219
0.195183375650626
Columns 29 through 32
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

-0.089911818559632 -0.114734561628411 0.085866996215748


0.039099690849214
Columns 33 through 36
-0.040757045886227 -0.002916327568570 -0.005710769970221
0.003083981191844
Columns 37 through 40
0.025358099084610 -0.013517606890445 -0.019530396147821
0.014563140542147
Columns 41 through 44
0.006708340892110 -0.006133024676853 -0.000314049314181 -
0.001902951078657
Columns 45 through 48
0.000530480222547 0.004110692473991 -0.001873024997315 -
0.002556245633800
Columns 49 through 51
0.001736364941491 0.000813613779699 -0.000720209764997
>>freqz(b,1,512)
THỰC HÀNH XLTHS Học viên thực hiện:Phạm Văn Thái

Đặc tính tầ biên độ- tần số và pha-tần số của mạch lọc

---trong bài có sử dụng tham khảo tài liệu XLTHS của Nguyễn Quốc Trung và
tham khảo phần help trong matlap để hoàn thành các bài thí nghiệm này.Do kiến
thức còn hạn chế nên trong quá trình dịch help fir1 em còn hạn chế,rất mong được
sự gúp đỡ và góp ý từ phía thầy. the end!---.

You might also like