SlideShare a Scribd company logo
1 of 58
Download to read offline
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang 1
BÀI 1: CÁC TÍN HIỆU CƠ BẢN
1.1 Định nghĩa: Tín hiệu là sự biến thiên biên độ theo thời gian.
1.2 Phân loại tín hiệu:
Xét về dạng sóng và sự liên tục, người ta phân tín hiệu ra thành 2 loai cơ bản là tín hiệu
tương tự (analog) hay liên tục thời gian và tín hiệu số (digital) hay rời rạc thời gian
Tín hiệu biến thiên liên tục về biên độ là tín hiệu tương tự, thường đươc ký hiệu là x(t).
Tín hiệu thời gian rời rạc được biểu diễn như một dãy số nguyên từ -∞ đến ∞, ký hiệu là
x[n].
1.3 Một số tín hiệu tương tự cơ bản:
1.3.1 Tạo sóng vuông
f=10000;
t=0:1/f:1.5;
x=square(2*pi*50*t,50);
plot(t,x);
axis([0 0.1 -2 2]);
1.3.2 Tạo sóng sin
f=10000;
t=0:1/f:1.5;
x=sin(2*pi*50*t);
plot(t,x);
axis([0 0.1 -2 2]);
1.3.3 Tạo sóng răng cưa
f=10000;
t=0:1/f:1.5;
x=sawtooth(2*pi*50*t);
plot(t,x);
axis([0 0.1 -2 2]);
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang 2
1.4 Một số tín hiệu rời rạc cơ bản
1.4.1 Tạo xung lực đơn vị
Dãy xung lực đơn vị có chiều dài N mẫu
n=0:1:10;
N=length(n);
delta=[1 zeros(1,N-1)]
stem(n,delta);
axis([0 10 0 1.2])
Dãy xung lực đơn vị có chiều dài N bị trễ M mẫu (M<N)
n=0:1:10;
N=length(n);
delta=[zeros(1,M) 1 zeros(1,N-1)];
stem(n,delta);
axis([0 10 0 1.2])
Để biểu diễn tín hiệu xung lực đơn vị có dạng tổng quát
Với
1 0 2
n n n
  , ta dùng hàm Matlab có cú pháp sau :
function [x,n] = imseq(n0,n1,n2)
n=[n1:n2];
x=[(n-n0)==0];
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang 3
1.4.2 Tạo tín hiệu bậc đơn vị
n=0:1:10;
N=length(n);
unit=[ones(1,N)];
stem(n,unit);
axis([0 10 0 1.2])
Để biểu diễn tín hiệu bậc đơn vị có dạng tổng quát
Với 1 0 2
n n n
  , ta dùng hàm Matlab có cú pháp sau:
function [x,n] = stepseq(n0,n1,n2)
n=[n1:n2];
x=[(n-n0)>=0];
1.4.3 Tạo tín hiệu dốc đơn vị
n=0:1:10;
y=n;
stem(n,y);
1.4.4 Tạo tín hiệu mũ thực
n=0:1:20;
y=0.9.^n;
stem(n,y);
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang 4
1.4.5 Tạo tín hiệu mũ phức:
n=0:1:10;
y=exp((2+3j)*n;
stem(n,y);
1.5 Các phép toán trên chuỗi tín hiệu rời rạc
1.5.1 Phép cộng hai tín hiệu
Phép cộng hai tín hiệu trong Matlab được thực hiện bởi toán tử “+”. Tuy nhiên, chiều dài của hai
tín hiệu phải bằng nhau. Nếu dài dài của hai tín hiệu khác nhau, hay gốc toạ độ của 2 chuỗi tín hiệu khác
nhau thì ta không thể sử dụng trực tiếp toán tử “+”. Do đó , ta cần phải biến đổi x1(n) và x2(n) sao cho
có cùng vị trí n trước khi thực hiện phép cộng hai tín hiệu.
Phép cộng được thực hiện bởi hàm Matlab sau
function[y n]=sigadd(x1,n1,x2,n2)
n=min(min(n1),min(n2)):max(max(n1),max(n2));
y1=zeros(1,length(n));
y2=y1;
y1(find(n>=min(n1))&(n<=max(n1))==1))=x1;
y2(find(n>=min(n2))&(n<=max(n2))==1))=x2;
y=y1+y2;
1.5.2 Phép nhân hai tín hiệu
Phép nhân hai tín hiệu trong Matlab được thực hiện bởi toán tử “.*”. Tuy nhiên, giống như phép
cộng, ta cần phải biến đổi 2 tín hiệu trược khi thực hiện phép nhân
Phép nhân được thực hiện bởi hàm Matlab sau
function[y n]=sigmult(x1,n1,x2,n2)
n=min(min(n1),min(n2)):max(max(n1),max(n2));
y1=zeros(1,length(n));
y2=y1;
y1(find(n>=min(n1))&(n<=max(n1))==1))=x1;
y2(find(n>=min(n2))&(n<=max(n2))==1))=x2;
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang 5
y=y1.*y2;
1.5.3 Phép dịch và gấp tín hiệu
Tín hiệu x(n) được dịch chuyển đi n0 mẫu để
tạo thành tín hiệu y(n)=x(n-n0). Đặt m=n-n0, ta có
n=m+n0, tín hiệu y(n) được viết lại thành
y(m+n0)=x(m). Đó đó thuật toán này không tác động
vào tín hiệu x(n) mà chỉ có vecto n được dịch chuyển đi
n0 mẫu
Phép dịch được thực hiện bởi hàm Matlab sau:
function[y n]=sigshift(x,m,n0)
n=m+n0;
y=x;
Tín hiệu x(n) được gấp qua gốc n=0 để
tạo thành tín hiệu y(n)=x(-n).
Phép gấp được thực hiện bởi hàm
Matlab sau:
function[y n]=sigfold(x,n)
y=fliplr(x);
n=-fliplr(n);
1.6 Bài tập
1>Vẽ tín hiệu lũy thừa thực có biểu thức x(n)=0.2(1.2)n
.Vẽ lại tín hiệu trên sau khi đã trì hõan
N=10 mẫu.
2> Vẽ tín hiệu sin thực rời rạc thờ i gian x(n)=1.5 sin(0.2πn).Tín hiệu tuần hoàn với chu kỳ, tần số
bao nhiêu?
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang 6
Biến đổi chương trình trên để vẽ và hiển thị dãy có chiều dài N=50 mẫu, tần số 0.08, biên độ 2.5 và độ
dịch pha 90o
.
3>Vẽ tín hiệu sin phức x[n]=e(-0.1+j0.3)n
với 10 10
n
   . Vẽ các thành phần biên độ, pha, phần thực và
phần ảo trong 4 đồ thị riêng
4> Cho tín hiệu x(n)=[1,2,3,4,5,6,7,6,5,4,3,2,1]. Vẽ các tín hiệu sau
a) x1(n)=2x(n-5)-3x(n+4)
b) x2(n)=x(3-n)+x(n)x(n-2)
5
>
V
i
ế
t
c
h
ư
ơ
n
g trình tạo một hàm Matlab thực hiện việc tách tín hiệu thành hai phần chẵn và lẻ với quy định sau:
function [xe,xo,m]=evenodd(x,n)
Ứng dụng hàm vừa viết để vẽ thành phần chẵn và lẻ của tín hiệu x(n)=u(n)-u(n-10)
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang 7
CHƯƠNG 2: PHÂN TÍCH TÍN HIỆU VÀ HỆ THỐNG
LTI TRONG MIỀN THỜI GIAN
2.1 Định nghĩa
Hệ thống rời rạc thời gian: còn được gọi là hệ thống xử lý tín hiệu số, biến đổi tín hiệu x[n]
thành tín hiệu y[n] với những tính chất mong muốn.Thường ta giả sử hệ thống rời rạc thời gian là tuyến
và bất biến thời gian (linear and invariant time-LTI) để thuận lợi trong việc phân tích và thiết kế. Hệ
thống cũng thường được giả sử là nhân quả và thư giãn.
Phân tích hệ thống là tìm tín hiệu ra, còn gọi là đáp ứng,đối với tín hiệu vào khi hệ thống đã
được biết.
Đáp ứng xung::đáp ứng xung là tín hiệu ra của hệ thống khi tín hiệu vào là xung lực đơn vị.
Lọc (filter) là thuật ngữ chung dùng để chỉ một hệ thống tuyến và bất biến thời gian được thiết
kế cho việc lọc lựa tần số. do đó, một hệ thống LTI rời tạc thời gian còn được gọi là bộ lọc số. Có 2 loại
lọc số chính
Lọc FIR: Nếu đáp ứng xung của hệ thống LTI là hữu hạn thời gian thì hệ thống được gọi là lọc FIR
Lọc IIR: Nếu đáp ứng xung của hệ thống LTI là vô hạn thời gian thì hệ thống được gọi là lọc IIR
2.2 Đáp ứng xung và phương trình sai phân
Trong Matlab người ta sử dụng lệnh h=impz(num,den,N) để tính đáp ứng xung của hệ thống thời
gian rời rạc LTI.
Với num: là các hệ số tín hiệu vào, den: hệ số các tín hiệu ra,N: số đáp ứng xung.
Để mô phỏng các hệ thống rời rạc thời gian LTI nhân quả có phương trình sai phân
0 0
[ ] [ ]
N M
k m
k m
a y n k b x n m
 
  
 
Trong Matlab ta có thể sử dụng lệnh y=filter(num,den,x) hay y=filter(num,den,x,ic)
Với ic=[y[-1] y[-2] …y[-N]] là vecto điều kiện ban đầu
Ví dụ: Tính và vẽ 50 đáp ứng xung của hệ thống có phương trình sai phân sau:
y[n]-0.4y[n-1]+0.75y[n-2]=2.2403x[n]+2.4908x[n-1]+2.2403x[n-2]
Chương trình:
clf;
N=50;
num=[2.2403 2.4908 2.2403];
den=[1 -0.4 0.75];
h=impz(num,den,N);
stem(h);
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang 8
2.3 Một số tính chất của hệ thống
2.3.1. Tính chất tuyến tính và phi tuyến
Nếu a1x1[n]+a2x2[n] a1y1[n]+a2y2[n], a1 và a2 là hằng số
thì hệ thống là tuyến tính, nếu không hệ thống là phi tuyến
Hệ thống tuyến tính là hệ thống có quan hệ bậc nhất giữa phản ứng và tác động, đồng thời thoả
mãn nguyên lý xếp chồng
Ví dụ : Khảo sát tính chất tuyến tính của hệ thống có phương trình sai phân sau:
y[n]=2.2403x[n] + 2.4908x[n-1] + 2.2403x[n-2] + 0.4y[n-1]
với x1[n]= cos(0.2πn), x2[n]=cos(0.8πn), a=2, b=-3.
Chương trình:
a=2;
b=-3;
x1=cos(2*pi*0.1*n);
x2=cos(2*pi*0.4*n);
x=a*x1+b*x2;
num=[2.2403 2.4908 2.2403];
den=[1 -0.4];
y1=filter(num,den,x1);
y2=filter(num,den,x2);
y=filter(num,den,x);
yt=a*y1+b*y2;
d=y-yt;
subplot(3,1,1);
stem(n,y);
subplot(3,1,2);
stem(n,yt);
subplot(3,1,3);
stem(n,d);
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang 9
2.3.2. Tính chất bất biến thời gian
Nếu y’[n-k]=y[n-k]: hệ thống bất biến thời gian
Nếu y’[n-k]≠y[n-k]: hệ thống bất biến thời gian
Hệ thống bất biến thời gian là hệ thống hễ có tác động x(n) dịch k mẫu thì phản ứng y(n) cũng chỉ dịch
cùng chiều k mẫu mà không bị biến đổi dạng.
Ví dụ : Khảo sát tính bất biến thời gian của hệ thống có phương trình sai phân sau
y[n]=2.2403x[n]+2.4908x[n-1]+2.2403x[n-2]+0.4y[n-1]
với tín hiệu vào x[n]=0.3cos(0.2πn)-2cos(0.8πn).
Chương trình
clf;
n=0:40;
n0=10;
a=0.3;
b=-2;
xn=a*cos(2*pi*0.1*n)+b*cos(2*pi*0.4*n);
xn0=[zeros(1,n0) xn];
num=[2.2403 2.4908 2.2403];
den=[1 -0.4];
yn=filter(num,den,xn);
yn0=filter(num,den,xn0);
dn=yn-yn0(1+n0:41+n0);
subplot(3,1,1);
stem(n,yn);
subplot(3,1,2);
stem(n,yn0(1:41));
subplot(3,1,3);
stem(n,dn);
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
10
2.3.3. Tính chất ổn định
Một hệ thống LTI ổn định theo nghĩa BIBO khi và chỉ khi đáp ứng xung đơn vị của nó có tổng
tuyệt đối. Đối với hệ thống IIR thì điều kiện cần để hệ thống này ổn định là đáp ứng xung của hệ phải
suy giảm tới 0 khi số lượng mẫu đủ lớn.
Để kiểm tra tính ổn định của hệ thống,đáp ứng xung đơn vị được đánh giá theo công thức
Khi k tăng và kiểm tra các giá trị của |h(k)| tại mỗi bước 1ặp.Nếu giá trị của |h(k)| nhỏ hơn 10-6
thì có thể coi tổng S(k) hội tụ
Ví dụ: Kiểm tra tính ổn định của hệ thống LTI có phương rình sai phân:
y[n]=x[n]-0.8x[n-1]-1.5y[n-1]-0.9y[n-2]
Chương trình:
clf;
num=[1 -0.8];
den=[1 1.5 0.9];
N=200;
h=impz(num,den,N+1);
sum=0;
for k=1:N+1;
sum=sum+abs(h(k));
if abs(h(k))<10^(-6),break,end
end
n=0:N;
stem(n,h);
disp('Value=');
disp(abs(h(k)));
Value= 1.6761e-005
2.4 Nhân chập
Quan hệ vào/ra của hệ thống LTI được xác định bởi tổng nhân chập:

[ ] [ ] [ ] [ ] [ ]
k k
y n h k x n k x k h n k
 
 
   
 
Và được ký hiệu bằng y(n)=x(n)*h(n)
Hàm nhân chập của Matlab là hàm conv với cú pháp y=conv(x1,x2). Tuy nhiên hàm conv này mặc
định 2 tín hiệu được nhân chập có tín hiệu bắt đầu tại n=0
Đối vớ i việc xử lý tín hiệu hai chiều ta dùng hàm nhân chập y=covn2(x1,x2)
Ví dụ : Thực hiện nhân chập 2 tín hiệu sau.Tìm tín hiệu ra y(n)
h(n)=[0,1,2,1,-1,0] và x(n)= [0,1,2,3,1,0]
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
11
Chương trình
h=[3 11 7 0 -1 4 2];
x=[2 3 0 5 -2 1 ];
y=conv(h,x)
y = 6 31 47 36 47 21 13 8 22 1 0 2
Để tính nhân chập cho 2 tín hiệu có gốc n=0 tại 1 giá trị bất kỳ ta dùng hàm Matlab sau
function [y ny]=conv_m(x,nx,h,nh)
nyb=nx(1)+nh(1);
nye=nx(length(x))+nh(length(h));
ny=[nyb:nye];
y=conv(x,h)
Ví dụ: Tính nhân chập hai tín hiệu sau
h=[3 11 7 0 -1 4 2]; x=[2 3 0 5 -2 1 ];
Chương trình
x=[3 11 7 0 -1 4 2];
nx=[-3:3];
h=[2 3 0 5 -2 1 ];
nh=[-1:4];
[y ny]=conv_m(x,nx,h,nh)
y = 6 31 47 36 47 21 13 8 22 1 0 2
ny = -4 -3 -2 -1 0 1 2 3 4 5 6 7
Để giải nhân chập,hay là việc chia một đa thức cho một đa thức người ta sử dụng cú pháp trong Matlab
[p r]=deconv(b,a). Lệnh này thực hiện việc tính toán chia đa thức b cho đa thức a được kết quả là đa
thức p và phần dư là r
2.5 Bài tập
1. Tính và vẽ 45 mẫu đầu tiên đáp ứng xung của hệ thống LTI nhân quả sau:
y[n]+0.71y[n-1]-0.46y[n-2]-0.62y[n-3]=0.9x[n]-0.45x[n-1]-0.35x[n-2]+0.002x[n-3]
Viết chương trình Matlab tìm đáp ứng của hệ thống đối với xung bậc đơn vị của hệ thống đã cho.
Gợi ý: dùng hàm filter
2. Tính và vẽ đáp ứng xung đơn vị của hệ thống có phương trình sai phân
y[n]=x[n]-4y[n-1]+3x[n-2]+1.7y[n-1]-y[n-2]
Hệ thống này có ổn định không?
3. Thực hiện nhân chập 2 tín hiệu sau
x[n]= [0 1 2 3 4 0], h[n]=[0,2,0,2,0]
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
12
BÀI 3: LẤY MẪU VÀ KHÔI PHỤC TÍN HIỆU
3.1. Lấy mẫu tín hiệu
3.1.1 Định lý lấy mẫu
Sự lấy mẫu tín hiệu: là đổi một tín hiệu liên tục thời gian thành tín hiệu rời rạc thờ i gian, còn
được gọi là tín hiệu số .Vấn đề lấy mẫu phải như thế nào để từ các mẫu người ta có thể phúc hồi lại
tín hiệu tương tự ban đầu khi cần
Để các mẫu biểu diễn đúng tín hiệu tương tự, tức từ các mẫu ta có thể phục hồi tín hiệu tương tự ban
đầu, tốc độ lấy mẫu phải lớn hơn hay ít nhất là bằng hai lần tần số cao nhất của tín hiệu tương tự
Để giữ cho tần số lấy mẫu fS không lớn lắm thì fM phải được giới hạn bằng một lọc thông thấp thật hiệu
quả (cắt bỏ tất cả tần số lớn hơn fM của tín hiệu tương tự)
3.1.2 Lấy mẫu tín hiệu hình sin
Vì Matlab không thể phát ra tín hiệu thời gian liên tục đúng nghĩa của nó được, nên ta sẽ phát ra dãy
{xa[nT]} từ xa(t) bằng cách lấy mẫu nó với tần số rất cao sao cho các mẫu lấy rất sát nhau giống như
tín hiệu thời gian liên tục.: xa(t)= sin(2πft)
Chương trình
clf;
t=0:0.0005:1;
f=13;
xa=sin(2*pi*f*t);
subplot(2,1,1);
plot(t,xa);
xlabel('Thoi gian');
ylabel('Tin hieu thoi gian lien tuc');
axis([0 1 -1.2 1.2]);
subplot(2,1,2);
T=0.03;
n=0:T:1;
k=0:length(n)-1;
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
13
xs=sin(2*pi*f*n);
stem(k,xs);
xlabel('Chi so thoi gian');
ylabel('Tin hieu thoi gian roi rac');
axis([0 length(n)-1 -1.2 1.2])
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
14
3.1.3 Tín hiệu không tuần hoàn và phổ biên độ trong miền tần số
Để biểu diễn tín hiệu tương tự trong miền tần số, ta có thể sử dụng biến đổi Fourier liên tục thời
gian để phân tích và vẽ tín hiệu
Ví dụ: Cho tín hiệu tương tự xa(t)=e(-1000|t|).
Xác định và vẽ tín hiệu trong miền tần số.
Giải: Từ công thức biến đổi Fourier liên tục thời
gian
Ta phân tích được
Để xác định được phổ biên độ, đầu tiên ta cần phải xấp xỉ tín hiệu tương tự thành tín hiệu có chu kỳ xác
định. Sử dụng xấp xỉ e-5
≈0, ta lấy giới hạn của t trong khoảng [-0.005,0.005] (hay từ [-5,5] ms). Tương
tự để Xa(jΩ) ≈0 thì ta tìm được tần số tối đa là 2π(2000).
Tín hiệu được vẽ theo chương trình sau:
Dt = 0.00005;
t = -0.005:Dt:0.005;
xa = exp(-1000*abs(t));
Wmax = 2*pi*2000;
K = 500; k = 0:1:K;
W = k*Wmax/K;
Xa = xa * exp(-j*t'*W) * Dt;
Xa = real(Xa);
W = [-fliplr(W), W(2:501)];
Xa = [fliplr(Xa), Xa(2:501)];
subplot(1,1,1)
subplot(2,1,1);plot(t*1000,xa);
xlabel('t in msec.'); ylabel('xa(t)')
title('Analog Signal')
subplot(2,1,2);plot(W/(2*pi*1000),Xa*1000);
xlabel('Frequency in KHz'); ylabel('Xa(jW)*1000')
title('Continuous-time Fourier Transform')
3.2. Hiện tượng biệt danh (chồng phổ)
Khi tín hiệu được lấy mẫu dưới mức, tức lấy mẫu ở tần số chậm hơn tốc độ Nyquist, thì khi
tái lập tín hiệu bằng cách lọc thì thành phần tần số cao của phổ lặp sẽ lẫn vào thành phần tần số cao của
phổ trung tâm, và như vậy tín hiệu được tái lập sẽ không đúng.Về mặt thời gian, người ta gọi
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
15
hiện tượng này là biệt danh (tên giả).Còn về mặt tần số người ta gọi hiện tượng này là chồng phổ.
Để khắc phục hiện tượng này ta phải dùng tiền lọc chống biệt danh trước khi thực hiện việc lấy
mẫu.
Ví dụ: Thực hiện lấy mẫu tín hiệu xa(t)=e(-
1000|t|) tại các tần số khác nhau. Vẽ phổ biên
độ của tín hiệu
a) Fs=5000Hz, tín hiệu rời rạc thu được là
x1(n)
Do tần số tối đa của tín hiệu là
fM=2000Hz nên Fs>2fM, không xảy ra
hiện tượng biệt danh (chồng phổ).
Chương trình
Dt = 0.00005;
t = -0.005:Dt:0.005;
xa = exp(-1000*abs(t));
Ts = 0.0002; n = -25:1:25;
x = exp(-1000*abs(n*Ts));
K = 500; k = 0:1:K;
w = pi*k/K;
X = x * exp(-j*n'*w);
X = real(X);
w = [-fliplr(w), w(2:K+1)];
X = [fliplr(X), X(2:K+1)];
subplot(1,1,1)
subplot(2,1,1);plot(t*1000,xa);
xlabel('t in msec.'); ylabel('xa(t)')
title('Discrete Signal'); hold on
stem(n*Ts*1000,x); hold off
subplot(2,1,2);plot(w/pi,X);
xlabel('Frequency in pi units');
ylabel('X(w)')
title('Discrete-time Fourier Transform')
b) Fs=1000Hz, tín hiệu rời rạc thu được là
x2(n)
Fs < 2FM nên tín hiệu được lấy mẫu dưới
mức và xảy ra hiện tượng chồng phổ trong
miền tần số
Chương trình
Dt = 0.00005;
t = -0.005:Dt:0.005;
xa = exp(-1000*abs(t));
Ts = 0.001; n = -25:1:25;
x = exp(-1000*abs(n*Ts));
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
16
K = 500; k = 0:1:K;
w = pi*k/K;
X = x * exp(-j*n'*w);
X = real(X);
w = [-fliplr(w), w(2:K+1)];
X = [fliplr(X), X(2:K+1)];
subplot(1,1,1)
subplot(2,1,1);plot(t*1000,xa);
xlabel('t in msec.'); ylabel('xa(t)')
title('Discrete Signal'); hold on
stem(n*Ts*1000,x); hold off
subplot(2,1,2);plot(w/pi,X);
xlabel('Frequency in pi units'); ylabel('X(w)')
title('Discrete-time Fourier Transform')
3.3 Khôi phục tín hiệu
Chuyển từ dạng tín hiệu rời rạc x(nT) sang dạng tín hiệu tương tự x(t). Quá trình khôi phục tín
hiệu bao gồm 2 bước ;
- Bước 1: các mẫu được chuyển đổi thành chuỗi các xung trọng số
- Bước 2: Chuỗi xung được lọc thông qua một lọc thông thấp lý tưởng có băng thông giới hạn
từ [-Fs/2 Fs/2 ]
Hai quá trình này được thực hiện bằng cách sử dụng công thức toán học sau
Với sinc(x)=sinπx/πx
Hình ảnh minh hoạ cho qúa trình khôi phục tín hiệu
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
17
Thực hiện các lệnh trong Matlab trong trường hợp tổng quát như sau:
n=n1:n2;t=t1:t2;Fs=1/Ts;nTs=n*Ts;
xa=x*sinc(Fs*(ones(length(n),1)*t-nTs'*ones(1,length(t))));
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
18
Ví dụ: Khôi phục tín hiệu x1(n) và x2(n) thành tín hiệu xa(t) từ ví dụ trên dùng hàm sinc(x)
Chương trình
Ts = 0.0002; % x1(n)
Fs = 1/Ts; n = -25:1:25; nTs = n*Ts;
x = exp(-1000*abs(nTs));
Dt = 0.00005;
t = -0.005:Dt:0.005;
xa = x * sinc(Fs*(ones(length(nTs),1)*t-nTs'*ones(1,length(t))));
error = max(abs(xa - exp(-1000*abs(t))))
plot(t*1000,xa);
xlabel('t in msec.'); ylabel('xa(t)')
title('Reconstructed Signal from x1(n) using sinc function'); hold on
stem(n*Ts*1000,x); hold off
error =
0.0363
error =
0.1852
3.4 Bài tập
Cho tín hiệu tương tự xa(t)=sin(20π t),0 ≤ t ≤ 1. Tín hiệu được lấy mẫu tại Ts=0.01s, 0.05s và 0.1s để có
tín hiệu rời rạc x(n).
a) Với mỗi Ts, vẽ x(n) tương ứng.
b) Khôi phục tín hiệu ya(t) từ các tín hiệu x(n) trên dùng hàm sinc (cho Δt=0.001) và nhận xét cho mỗi
trường hợp
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
19
BÀI 4 : PHÂN TÍCH TÍN HIỆU VÀ HỆ THỐNG
LTI TRONG MIỀN TẦN SỐ-BIẾN ĐỔI Z
4.1 Biến đổi Fourier rời rạc thời gian DTFT
Dùng cho các tín hiệu không tuần hoàn và x(n) hiện hữu ở mọi thời gian
Biến đổi DTFT thuận và nghịch
Biến đổi Fourier hiện hữu nếu chuỗi hội tụ, tức
Ví dụ 1: Xác định DTFT của tín hiệu x(n)=(0.5)n
u(n). Vẽ tín hiệu X(ejω
) với 501 điểm trong khoảng
[0,∏ ] với 4 thành phần: phổ biên độ, phổ pha, phần thực và phần ảo.
Chương trình
w = [0:1:500]*pi/500;
X = exp(j*w) ./ (exp(j*w) - 0.5*ones(1,501));
magX = abs(X); angX = angle(X);
realX = real(X); imagX = imag(X);
subplot(2,2,1); plot(w/pi,magX); grid
xlabel('frequency in pi units'); title('Magnitude Part'); ylabel('Magnitude')
subplot(2,2,3); plot(w/pi,angX); grid
xlabel('frequency in pi units'); title('Angle Part'); ylabel('Radians')
subplot(2,2,2); plot(w/pi,realX); grid
xlabel('frequency in pi units'); title('Real Part'); ylabel('Real')
subplot(2,2,4); plot(w/pi,imagX); grid
xlabel('frequency in pi units'); title('Imaginary Part'); ylabel('Imaginary')
 Nếu x(n) là một chuỗi xác định N giá trị trong khoảng [n1,n2] thì DTFT trong Matlab được viết
như sau:
k=[0:M]; n=[n1:n2];
( ) ( ) jn
n
X x n e

 

  
1
( ) ( )
2
jn
x n X e d



  
 
( )
n
x n


 

Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
20
X=x*(exp(-j*pi/M)).^(n'*k);
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
21
Ví dụ 2: xác định và vẽ DTFT cho tín hiệu sau: x(n)=[1 2 3 4 5] với 501 điểm trong khoảng [0,∏ ]
Chương trình
n = -1:3; x = 1:5;
k = 0:500; w = (pi/500)*k;
X = x * (exp(-j*pi/500)) .^ (n'*k);
magX = abs(X); angX = angle(X);
realX = real(X); imagX = imag(X);
subplot(2,2,1); plot(w/pi,magX); grid
xlabel('frequency in pi units'); title('Magnitude Part'); ylabel('Magnitude')
subplot(2,2,3); plot(w/pi,angX); grid
xlabel('frequency in pi units'); title('Angle Part'); ylabel('Radians')
subplot(2,2,2); plot(w/pi,realX); grid
xlabel('frequency in pi units'); title('Real Part'); ylabel('Real')
subplot(2,2,4); plot(w/pi,imagX); grid
xlabel('frequency in pi units'); title('Imaginary Part'); ylabel('Imaginary')
Kết quả ví dụ 1 Kết quả ví dụ 2
4.2 Đáp ứng tần số của hệ thống LTI
Nếu hệ thống LTI có đáp ứng xung h[n], thì đáp ứng tần số của nó được xác định bằng DTFT h[n]
H(ejω
) là một hàm phức của ω tuần hoàn với chu kỳ 2π nên có thể biểu diễn dưới dạng
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
22
Trong đó, |H(Ω)| được gọi là đáp ứng biên độ,Φ(Ω) gọi là đáp ứng pha.
Đáp ứng tần số của hệ thống có thể được viết từ phương trình sai phân tuyến tính hệ số hằng mô tả mô
tả quan hệ vào/ra của hệ thống đó và được biểu diễn dưới dạng các hệ số của lọc
Đáp ứng tần số được tính bằng lệnh có cú pháp
h=freqz(b,a,w).
Trong đó a,b là các hệ số của phương trình trên và w là
khảong giá trị tần số tính đáp ứng.
 Ví dụ: Tính đáp ứng tần số và đáp ứng pha của hệ
thống LTI có biểu thức sau:
Chương trình
clf;
w=0:pi/511:pi;
num=[1 -1.9021 1];
den=[1 -1.8523 0.94833];
h=freqz(num,den,w);
figure(1);
subplot(2,1,1)
plot(w/pi,abs(h)); title('Magnitude response');
subplot(2,1,2);
plot(w/pi,angle(h)); title('Phase response');
4.3 Biến đổi z
4.3.1 Định nghĩa
Biến đổi z của tín hiệu rời rạc x(n) được định nghĩa là
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
23
Trong đó, z là biến số phức.
Định nghĩa trên còn được gọi là biến đổi z hai bên. Ta sẽ có biến đổi z một bên khi thay giới hạn từ 0
đến ∞.
Vùng hội tụ (ROC): là vùng chứa giá trị z sao cho |X(z)| hữu hạn.
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
24
4.3.2 Biến đổi z ngược
Biến đổi z ngược được định nghĩa như sau
Trong đó C là vòng tròn kín bao quanh gốc toạ độ nằm trong vùng hội tụ của X(z).
Phép biến đổi z cho phép chúng ta phục hồi lại dãy tín hiệu rời rạc x(n) khi biết biến đổi z của nó. Phép
biến đổi z ngược thường được sử dụng để tìm đáp ứng xung của lọc số.
Để tính biến đổi z ngược bằng phương pháp thặng dư, ta sử dụng hàm residuez để khai triển X(z) thành
các phân thức riêng sau đó dùng bảng biến đổi z để biến đổi z ngược cho mỗi phân thức riêng.
Khi dùng hàm residuez, X(z) phải được viết dưới dạng hữu tỷ trong đó tử số và mẫu số là những đa
thức viết theo luỹ thừa tăng dần của z-1
.
Cú pháp hàm trong Matlab như sau: [R,p,C]=residuez (b,a)
Với b,a là hai vecto chứa hệ số của hai đa thức B(z) và A(z).
Vecto R chứa giá trị thặng dư, vecto p chưa các giá trị cực và vecto C chứa các số hạng trực tiếp.
Ví dụ: Thực hiện khai triển từng phần cho biểu thức sau
2
( )
3 4 1
z
X z
z z

 
Chương trình
Đầu tiên ta cần sắp xếp lại X(z) theo dạng các luỹ thừa của z-1
1 1
1 2 1 2
0
( )
3 4 3 4
z z
X z
z z z z
 
   

 
   
Chương trình trong Matlab
b=[0 1];
a=[3 -4 1];
[R,p,C]=residuez(b,a)
R=
0.5000
-0.5000
p =
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
25
1.0000
0.3333
C = []

Vậy 1
1
0.5 0.5
( )
1
1 1
3
X z
z z


 
 
Để viết ngược lại biểu thức X(z) ta cũng có thể dùng hàm residuez với cú pháp [b,a]=residuez(R,p,C)

4.4 Giản đồ cực không
Biến đổi z X(z) của tín hiệu hay H(z) của hệ thống là một hàm hữu tỷ của hai đa thức được viết
dưới dạng như sau
Trong đó G là thừa số độ lợi
z1,z2,..,zN là các không của X(z), N là bậc của đa thức tử số
p1,p2,...,pM là các cực của X(z), M là bậc của đa thức mẫu số
Vị trí các cực và các không trong mặt phẳng z được gọi là giản đồ cực-không, hay phân bố cực-không
Trong Matlab, giản đồ cực-không được vẽ bằng lệnh zplane. Hàm này có 2 cách gọi:
- Nếu X(z) có dạng hàm chuyển thì sư dụng lệnh zplane(num,den) với num, den là hệ số
của các đa thức ở từ số và mẫu số.
- Nếu các điểm không và điểm cực của hệ thống đã được cho thì dùng lệnh
zplane(zeros,poles) với zeros,planes là các vecto chứa các điểm không và cực.
Trong Matlab, việc xác định các điểm cực, không của hệ thống có hàm truyền hữu tỷ được thực
hiện bằng hàm [z,p,k]=tf2zp(num,den).
Trong đó,k là hệ số khuếch đại, z, p là các vecto chứa các điểm không, cực của hệ thống theo
thứ tự tăng dần z-1
.
Ví dụ: Xác định các điểm cực, không và vẽ
giản đồ cực-không của hệ thống sau:
1 2
1 2
1 2 3
( )
2 4 4
z z
H z
z z
 
 
 

 
Chương trình
num=[1 2 3];
den=[2 4 4];
[z,p,k]=tf2zp(num,den)
zplane(num,den)
% hay zplane(z,p)
z =
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
26
-1.0000 + 1.4142i
-1.0000 - 1.4142i
p =
-1.0000 + 1.0000i
-1.0000 - 1.0000i
k =
0.5000
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
27
4.5 Bài tập
1) Viết 1 hàm matlab để tính DTFT của chuỗi tín hiệu có độ dài hữu hạn có cú pháp như sau
function [X]= dtft(x,n,w)
Sử dụng hàm trên để tính DTFT cho tín hiệu x(n)=[4 3 2 1 2 3 4] và vẽ phổ biên độ, phổ pha của nó.
2) Tính DTFT và vẽ phổ biên độ, phổ pha của tín hiệu sau x(n)=n(0.5)n
u(n).
3) Tìm biến đổi z ngược của hàm sau:
4) Cho hệ thống nhân quả y(n)=0.9y(n-1)+x(n)
a) Tìm H(z) và vẽ gảin đồ cực-không
b) Vẽ đáp ứng biên độ và đáp ứng pha
c) Tìm đáp ứng xung h(n)
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
28
BÀI 5: BIẾN ĐỔI DFT VÀ FFT
5.1 Biến đổi DFT
5.1.1 Định nghĩa
Biến đổi Fourier (DFT) của dãyc ó chiều dài hữu hạn x(n) với 0 ≤ n ≤ N được xác định bằng
biểu thức
Với k=1,2,…,N-1.
Biến đổi DFT ngược (IDFT) được cho bởi công thức
5.1.2 DFT trong Matlab
Trong Matlab, biến đổi DFT và IDFT được thực hiện bởi hàm sau
Biến đổi DFT thuận
function [Xk]=dft(xn,N)
% Xk la cac he so DFT có chỉ số từ 0 đến N-1
% xn la chuoi tin hieu xac dinh N
% N la do dai cua DFT
n=[0:1:N-1]; % vecto hang cua n
k=[0:1:N-1]; % vecto hang cua k
WN=exp(-j*2*pi/N); % tinh he so WN
nk=n'*k; % tao ma tra NxN cua gia tri nk
WNnk=WN.^nk; % ma tran DFT
Xk=xn*WNnk; % vecto hang cua cac he so DFT
Biến đổi DFT nghịch
function [xn]=idft(Xk,N)
% xn la chuoi tin hieu n diem tu 0 den N-1
% Xk la vecto hang he so DFT
% N la chieu dai cua DFT
n=[0:1:N-1]; % vecto hang cua n
k=[0:1:N-1]; % vecto hang cua k
WN=exp(-j*2*pi/N);% he so WN
nk=n'*k; % tao ma tran NxN gia tri nk
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
29
WNnk=WN.^(-nk);% ma tran IDFT
Xk=xn*WNnk/N; % vecto hang cua cac gia tri IDFT
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
30
Khi ta muốn thực hiện DFT M điểm đối với tín hiệu có chiều dài N (M>N) thì tín hiệu x[n] phải được
thêm vào M-N giá trị 0 trước khi tính DFT. Việc thêm giá trị 0 được thực hiện bằng hàm zeros
Ví dụ: Tính DFT 8 điểm của tín hiệu sau
1,0 3
( )
0,
n
x n
otherwise
 

 

% xn=[1 1 1 1 ], N=4;
Chương trình
N=input('chieu dai N cua day=');
M=input('chieu dai M cua X[k]=');
x=[ones(1,N) zeros(1,M-N)];
n=0:1:length(x)-1;
X=dft(x,M);
subplot(3,1,1);
stem(n,x)
title(' Day x[n]');
subplot(3,1,2);
k=0:1:M-1;
stem(k,abs(X));
title('Bien do cua DFT X[k]')
subplot(3,1,3); stem(k,angle(X));
title('Pha cua DFT X[k]');
5.1.3 Các tính chất của DFT
5.1.3.1 Dịch chuyển vòng theo thời gian và tần số
Đây là tính chất quan trọng nhất của DFT
Nếu G[k] là DFT N điểm của dãy g[n] dài N mẫu thì DFT N điểm của dãy dịch vòng theo thời gian là
g[(n-n0)N] sẽ là WN
kn0
G[k] với WN=e(-j2π/N).
Nếu G[k] là DFT N điểm của dãy g[n] dài N mẫu thì DFT N điểm của dãy WN
kn0
g[n] với WN=e(-j2π/N)
sẽ là G[(k-k0)N].
Trong Matlab, tính chất dịch chuyển vòng được thực hiện nhờ hàm circshift như sau
function y=circshift(x,m,N)
if length(x)>N
error('N phai lon hon hoac bang x')
end
x=[x zeros(1,N-length(x))];
n=[0:1:N-1];
n=mod(n-m,N);
y=x(n+1);
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
31
Ví dụ: Cho tín hiệu x[n]=[0 1 2 3 4 5 6 7 8 9]. Thực hiện dịch chuyển vòng 6 mẫu trong khoảng N=15
Chương trình
clf;
x=[0 1 2 3 4 5 6 7 8 9 10];
y=circshift(a,6,15);
n=0:14;
x=[x zeros(1,4)];
subplot(2,1,1);
stem(n,x);
title('Tin hieu ban dau')
subplot(2,1,2);
stem(n,y);
title('Tin hieu duoc dich vong')
Thực hiện biến đổi DFT của tín hiệu sau khi dịch vòng để làm rõ tính chất dịch vòng trong miền thời
gian
Chương trình
clf;
x=[0 1 2 3 4 5 6 7 8 9 10];
y=circshift(x,6,15);
n=0:14;
x=[x zeros(1,4)];
XF=dft(x,15);
YF=dft(y,15);
subplot(2,2,1)
stem(n,abs(XF));
title('Pho bien do cua tin hieu x')
subplot(2,2,2)
stem(n,abs(YF));
title('Pho bien do cua tin hieu y')
subplot(2,2,3)
stem(n,angle(XF));
title('Pho pha cua tin hieu x')
subplot(2,2,4)
stem(n,angle(YF));
title('Pho pha cua tin hieu y')
5.1.3.2 Nhân chập vòng
Nếu X[k] và H[k] là 2 DFT của hai dãy có cùng chiều dài N x[n] va h[n] thì DFT N điểm của dãy nhân
chập vòng giữa x[n] và h[n] sẽ là X[k]H[k]
Để thực hiện nhân chập vòng ta dùng hàm Matlab sau
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
32
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
33
function y=circonvt(x1,x2,N)
if length(x1)>N
error('N phai lon hon hoac bang x1')
end
if length(x2)>N
error('N phai lon hon hoac bang x2')
end
x1=[x1 zeros(1,N-length(x1))];
x2=[x2 zeros(1,N-length(x2))];
m=[0:1:N-1];
x2=x2(mod(-m,N)+1);
H=zeros(N,N);
for n=1:1:N
H(n,:)=circshift(x2,n-1,N);
end
y=x1*H';
Ví dụ: Thực hiện nhân chập vòng cho hai tín hiệu x[n]=[1 2 2], h[n]=[1 2 3 4]. So sánh với nhân chập
thẳng.
Chương trình
x=[1 2 2];
x=[1 2 3 4];
y=circonvt(x,,4)
y1=conv(x,h)
Kết quả
y =
15 12 9 14
y1 =
1 4 9 14 14 8
5.2 Biến đổi FFT
Trên thực tế, chúng ta thường gặp trường hợp thực hiện DFT với các dãy có chiều dài khác xa
nhau, một dãy trong phép DFT quá dài sẽ dần đến vượt quá dung lượng của bộ nhớ và thời gian tính
toán cho phép. Để có được mẫu đầu tiên của kết quả phải đợi kết thúc tất cả quá trình tính toán. Nhờ
tính thuận lợi của tính chất đối xứng hình học và tính tuần hoàn của các hệ số mũ trong công thức của
DFT ta có thể giảm số lượng phép nhân cần thiết trong tính toán từ N2 xuống Nlog2N với N là số mũ
cơ số 2. Đối với các dãy có N không phải là cơ số mũ của 2 thì ta có thể thêm các giá trị 0 để đạt đến kết
quả.
Để phát triển các thuật toán DFt có khả năng tính toán cao, người ta thường chia nhỏ liên tiếp sự
phức tạp DFT N điểm thànhc ác DFT cấp nhỏ hơn và đưa ra một loạt thuật toán có tính hiệu quả được
gọi là tập các thuật toán biến đổi Fourier nhanh FFT
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
34
Trong Matlab, để tính FFT ta sử dụng hàm fft và FFT ngược là ifft. Hàm này cũng có 2 cách thực hiện:
 fft(x) cho DFT X[k] của x(n), cả hai dãy có cùng độ dài
 fft(x,M) tính DFT M điểm của dãy x(n) có chiều dài N. Nếu M>N thì dãy x(n) phải được điền
thêm M-N giá trị 0 trước khi tính DFT
Nhân chập nhanh
Có thể dùng thuật toán FFT để thực hiện việc nhân chập giữa 2 dãy x[n] có chiều dài Nx và dãy
h[n] có chiều dài Nh. Nếu số điểm tính FFT chọn là N=2m
với m=log2(Nx+Nh-1) lấy phần nguyên lớn
hơn m (hàm ceiling) thì thuật toán này gọi là nhân chập nhanh. Với thuật toán này thì phép nhân chập
thẳng giửa 2 dãy x[n] và h[n] khi N lớn được thực hiện rất nhanh nhờ FFT N điểm và một IFFT N điểm
và một phép nhân N điểm.
Hàm conv (dùng hàm filter) để tính nhân chập rất hiệu quả khi N<50. Đối với N lớn hơn, ta
dùng FFT để thực hiện việc tính toán nhanh hơn.
Ví dụ: So sánh thời gian thực hiện của 2 phép tính nhân chập. Cho x1[n] là các số ngẫu nhiên phân bố
đều L điểm trong khoảng [0 1], x2[n] là chuỗi phân bố Gauss L điểm với giá trị trung bình =0, phương
sai bằng 1. Xác định thời gian thực hiện trung bình với 1≤L≤1000.
Chương trình
conv_time = zeros(1,1000); fft_time = zeros(1,1000);
for N = 1:1000
tc = 0; tf=0;
L = 2*N-1; nu = round((log10(L)/log10(2))+0.45); L = 2^nu;
for I=1:100
h = randn(1,N);
x = rand(1,N);
t0 = clock; y1 = conv(h,x); t1=etime(clock,t0);
tc = tc+t1;
t0 = clock; y2 = ifft(fft(h,L).*fft(x,L)); t2=etime(clock,t0);
tf = tf+t2;
end
conv_time(N)=tc/100;
fft_time(N)=tf/100;
end
n = 1:1000; subplot(1,1,1);
plot(n(25:1000),conv_time(25:1000),n(25:1000),fft_time(25:1000))
save times.txt conv_time fft_time -ascii -tabs
load times.txt -ascii;
conv_time=times(1,:);
hsconv_time=times(2,:);
n = 1:1000; subplot(1,1,1);
plot(n(25:1000),conv_time(25:1000),n(25:1000),hsconv_time(25:1000))
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
35
5.3 Bài tập
1. Cho hàm x[n] =cos(0.48πn)+cos(0.52πn)
a) Tìm và vẽ DFT của x[n] với N=10
b) Lặp lại câu a với N=100
2. Biến đổi chương trình ví dụ của bài tích chấp vòng để cho ra kết quả giống tích chập thẳng.
3. Tính FFT và phân tích phổ của hàm cho ở câu 1 với N=16, số điểm tính FFT là 128 điểm.
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
36
Bài 6: THIẾT KẾ MACH LỌC FIR
6.1 Giới thiệu về lọc tương tự và lọc số
6.1.1 Tổng quan và phân lọai
Trong xử lý tín hiệu, nhiệm vụ của một mạch lọc là loại bỏ những thành phần tín hiệu không
mong muốn (như là tín hiệu nhiễu) hay lấy ra những thành phần có ích của tín hiệu nằm bên trong
một dải tần số nhất định.
Có 2 loại lọc chính là lọc tương tự và lọc số
 Lọc tương tự: sử dụng những mạch điện tương tự được làm từ những thành phần như điện trở, tụ
điện và opamp để tạo nên những hiệu quả lọc theo mong muốn. Những mạch lọc như thế đưọc sử dụng
rộng rãi trong các ứng dụng như loại nhiễu, nâng cao chất lượng video, mạch cân bằng đồ họa trong các
hệ thống hi-fi và nhiều lĩnh vực khác.
Trong việc thiết kế mạch lọc tương tự , có những kỹ thuật theo những tiêu chuẩn đã được xây
dựng cho những yêu cầu nhất định. Tại tất cả các tầng của mạch lọc, tín hiệu được lọc thường là tín hiệu
điện thế hay dòng điện có sự tương ứng với các tính chất vật lý liên quan.
 Lọc số: sử dụng bộ xử lý số thực hiện những phép tính số học hay lấy mẫu tín hiệu. Bộ xử lý có
thể là PC hay là chip DSP(Digital Signal Processor) chuyên dụng.
Tín hiệu tương tự ở ngõ vào đầu tiên phải được lấy mẫu và số hóa bằng bộ ADC. Kết quả thu
được sẽ là một chuỗi số nhị phân và được đưa tới bộ xử lý thực hiện các phép tính trên chúng. Những
phép tính này chủ yếu là những phép nhân với hằng số và phép cộng những tích số lại với nhau. Kết quả
cuối cùng sau khi lọc số được chuyển đổi lại thành tín hiệu tương tự thông qua bộ DAC. Chú ý là trong
lọc số, tín hiệu được thể hiện dưới dạng chuỗi số chứ không phải là dạng điện thế hay dòng điện.
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
37
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
38
6.1.2 Những ưu điểm của việc sử dụng mạch lọc số :
1- Mạch lọc số có thể lập trình được, họat động của nó được quyết định bởi một chương trình có
trong bộ nhớ của bộ xử lý. Điều đó có nghĩa là lọc số có thể dễ dàng thay đổi mà không ảnh hưởng
tới phần cứng của mạch. Trong khi đó muốn thay đổi một mạch lọc tương tự, ta phải thiết kế lại
phần mạch.
2- Mạch lọc số có thể dễ dàng thiết kế , kiểm tra và thực hiện trên máy tính
3- Những đặc tính của mạch lọc tương tự (đặc biệt là đối với những thành phần tích cực) có thể
thay đổi theo nhiệt độ trong khi đó mạch lọc số cực kỳ bền với nhiệt độ và thời gian.
4- Không giống như với mạch lọc tương tự, mạch lọc số có thể thực hiện ở những tần số thấp cực
kỳ chính xác. Và với sự tiến bộ không ngừng của DSP, các lọc số có thể được thực hiện tại miền tần
số cao (RF), là điều khó có thể đối với lọc tương tự
5- Lọc số có độ linh họat cao trong việc xử lý tín hiệu bằng nhiều cách khác nhau.Những bộ DSP
nhanh có thể thực hiện việc kết hợp các lọc theo cách song hay nối tiếp, làm cho phần cứng của
mạch rất đơn giản và gọn gàng so với một mạch tương tự có tính năng tương đương.
6.1.3 Thuật tóan của mạch lọc
Cho một tín hiệu ban đầu là một dạng điện thế V=x(t) trong đó t là thời gian. Tín hiệu này được
lấy mẫu với chu kỳ Ts. Tín hiệu được lấy mẫu tại thời điểm T = nTs là xi=x(nTs). Do đó tín hiệu được
đưa đến bộ xử lý là một chuỗi các tín hiệu có ký hiệu : x0, x1, x2, x3,.. ,xn tương ứng với giá trị của tín
hiệu tại các thời điểm T = 0, Ts, 2Ts, 3Ts, … với T=0 là thời điểm bắt đầu lấy mẫu.
Tại thời điểm T = nTs, với n là số nguyên dương, các giá trị được lưu trong bộ nhớ của bộ xử lý
là x0, x1, x2, x3,.., xn. Chú ý là các giá trị xn+1, xn+2 chưa tồn tại
Ngõ ra của bộ xử lý đến DAC bao gồm một chuỗi các giá trị y0,y1, y2, y3,…,yn. Cách thức mà
giá trị yn được tính từ các giá trị x0, x1, x2, x3,.., xn gọi là thuật toán của mạch lọc số.
Một số mạch lọc số đơn giản như: mạch lọc độ lợi đơn vị, mạch lọc độ lợi K, mạch lọc trì hõan
một đơn vị, mạch lọc hiệu số, mạch lọc lấy trung bình, mạch lọc lấy điểm giữa.
6.1.4 Bậc của mạch lọc
Bậc của một lọc số là số ngõ vào trước đó (được lưu trữ trong bộ nhớ) để tính ngõ ra hiện tại.
Một mạch lọc có thể có bậc từ 0 đến ∞.  .
Lọc tuyến tính và bất biến thời gian (LTI) được đặc trưng bởi đáp ứng xung h(n) của nó. Đáp ứng đối
với tín hiệu bất kỳ x(n) sẽ là nhân chập của h(n) với x(n) như đã trình bày ở trước. Xét từ phương trình
hiệu số hay cấu trúc của lọc người ta chia lọc ra làm 2 loại lớn là đệ quy (recursive) và phi đệ quy (non-
recursive).
 Lọc phi đệ quy: Lọc mà tín hiệu ra chỉ phụ thuộc vào tín hiệu vào được gọi là phi đệ quy. Phương
trình hiệu số của lọc đệ quy là
Trong đó bk là các hệ số của lọc cũng chính là đáp ứng xung của hệ thống. Trên thực tế N sẽ là
số hữu hạn vì thế lọc phi đệ quy thực tế là lọc FIR.
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
39
 Lọc đệ quy: là lọc mà tín hiệu ra phụ thuộc vào tín hiệu vào ở mọi thời điểm và cả tín hiệu ra trước
đó. Phương trình hiệu số của lọc đệ quy là
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
40
Trong đó M là bậc của lọc.Lọc có sự hồi tiếp từ ngõ ra ngược lại đến 1 nơi nào đó của ngõ vào khiến
cho lọc có đáp ứng xung lâu vô hạn hay còn được gọi là lọc IIR.
6.2 Lý thuyết thiết kế mạch lọc số
Việc thiết kế 1 lọc số bao gồm 3 bước chính:
- Thông số kỹ thuật: Trước khi thiết kế một mạch lọc, ta cần phải biết những đặc điểm kỹ
thuật của nó. Những đặc điểm này tuỳ thuộc vào vào ứng dụng yêu cầu trong đó mạch lọc được sử
dụng. Có 2 loại thông số kỹ thuật là thông số kỹ thuật tuyệt đối và thông số kỹ thuật tương đối.
Thông số kỹ thuật tuyệt đối
- Dải qua (bandpass) [0,ωp] và δ1 là độ gợn sóng cho phép trong dải qua lý tưởng.
- Dải chặn (stoppass) [ωs,π] và δ2 là độ gợn sóng cho phép trong dải chặn lý tưởng.
- Dải chuyển (transition band) [ωp,ωs] và thường không có yêu cầu đặc biệt trong dải này.
Thông số kỹ thuật tương đối
- Độ gợn sóng trong dải qua (dB)
- Độ suy giảm trong dải chặn (dB)
Hai loại thông số này có liên hệ với nhau:
1
10
2
1
20log 0( 0)
1
p
R



   

Và 2
10
1
20log 0( 1)
1
S
A


   

- Thiết kế: Khi đã biết những đặc điểm kỹ thuật, ta sẽ sử dụng các phương pháp toán học
trong việc thiết kế mạch lọc số khác nhau để xấp xỉ và tính toán các đặc điểm đó.
- Thực hiện: Kết quả của quá trình tính toán ở trên cho ta được mô tả của lọc ở dạng
phương trình vi phân, hàm chuyển, hay đáp ứng xung. Từ những phương trình này ta thực hiện việc
thiết kế mạch.
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
41
Hiện tại, ta chỉ tìm hiểu bước thứ 2 của quá trình trên và thực hiện việc tính toán chủ yếu trên 1 mạch
lọc số thông thấp.
6.3 Thiết kế mạch lọc số FIR dùng phương pháp cửa sổ
Vì thiết kế trong lĩnh vực thời gian tương ứng với nhân chập trong lĩnh vực tần số nên tiêu chuẩn
thiết kế các mạch lọc FIR là tìm một cửa sổ rất hẹp mà biến đổi Fourier của nó có đỉnh cánh bên của nó
rất nhỏ so với đỉnh của cánh chính.
Trong trường hợp tổng quát, kỹ thuật thiết kế mạch lọc số FIR dùng hàm cửa sổ là nhân đáp ứng
xung mong muốn với các hàm cửa sổ thích hợp
h[n]=hd[n]*a[n]
Trong đó hd[n] là đáp ứng xung lý tưởng, a[n] là đáp ứng của hàm cửa sổ.
Hộp công cụ của Matlab có các hàm cửa sổ
ω= boxcar(M)
ω= triang(M)
ω= hanning(M)
ω= hamming(M)
ω= blackman(M)
ω= kaiser(M,β)
Các hàm cửa sổ trên cho ra vecto ω chứa các hệ số cửa sổ có chiều dài M. Trong đó,hàm cửa sổ Kaiser
cho ta thiết kế tối ưu
6.3.1 Các phương trình thiết kế cho hàm cửa sổ và cửa sổ Kaiser
Cho những thông số kỹ thuật ban đầu của lọc là ωp, ωs, Rp và As
Độ rộng vùng chuyển tiếp
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
42
Bậc của lọc
Thông số β
Chương trình Matlab tạo ra một hàm đáp ứng xung thấp qua lý tưởng hd[n] như sau
function hd=ideal_lp(wc,M)
% wc la tan so cat(rad)
%M la do dai cua loc ly tuong
wc=input('Nhap tan so cat:');
M=input('Nhap bac loc:');
alpha=(M-1)/2;
n=[0:1:(M-1)];
m=n-alpha+eps;
hd=sin(wc*m)./(pi*m);
fvtool(hd,1)
Chương trình Matlab để vẽ đáp ứng biên độ trong miền tần số của lọc theo độ lớn giá trị tuyệt đối và
theo dB
function [db,mag,grd,w]= freqz_m(b,a)
% db: do lon tuong doi duoc tinh torng khoang tu 0 den pi
% mag: do lon tuyet doi tinh trong khoang tu 0 den pi
%pha: dap ung pha trong khoang tu 0 den pi
%w: 501 mau tan so trong khoang tu 0 den pi
% b: he so cua cac da thuc tu so cua H(z)
% a: he so cua cac da thuc mau so cua H(z)
[H,w]=freq(b,a,1000,'whole');
H=(H(1;1:501))';
w=(w(1:1:501));
mag=abs(H);
db=20*log10((mag+eps)/max(mag));
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
43
pha=angle(H);
grd=grddelay(b,a,w);
Ví dụ: Thiết kế mạch lọc số thấp qua dùng hàm cửa số Kaiser với các thông số như sau
ωp=0.2π , ωs=0.3π, Rp=0.25dB, As=50dB.
Chương trình
wp = 0.2*pi; ws = 0.3*pi; As = 50;
tr_width = ws - wp;
M = ceil((As-7.95)/(14.36*tr_width/(2*pi))+1)
n=[0:1:M-1];
beta = 0.1102*(As-8.7);
wc = (ws+wp)/2;
hd = ideal_lp(wc,M);
w_kai = (kaiser(M,beta))';
h = hd .* w_kai;
[db,mag,pha,grd,w] = freqz_m(h,[1]);
delta_w = 2*pi/1000;
As = -round(max(db(ws/delta_w+1:1:501))) % Min Stopband Attenuation
% Plots
subplot(2,2,1); stem(n,hd); title('Ideal Impulse Response')
axis([0 M-1 -0.1 0.3]); xlabel('n'); ylabel('hd(n)') ;
subplot(2,2,2); stem(n,w_kai); title('Kaiser Window');
axis([0 M-1 0 1.1]);xlabel('n'); ylabel('w(n)')
subplot(2,2,3); stem(n,h);title('Actual Impulse Response')
axis([0 M-1 -0.1 0.3]); xlabel('n'); ylabel('h(n)')
subplot(2,2,4);plot(w/pi,db);title('Magnitude Response in dB');grid;axis([0 1 -100 10]);
xlabel('frequency in pi units'); ylabel('Decibels')
set(gca,'XTickMode','manual','XTick',[0,0.2,0.3,1]);
set(gca,'YTickMode','manual','YTick',[-50,0])
% set(gca,'YTickLabelMode','manual','YTickLabels',['50';' 0'])
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
44
6.4 Bài tập
1) Thiết kế mạch lọc số với các thông số ωp=0.2π , ωs=0.3π, Rp=0.25dB, As=50dB sử dụng
hàm cửa sổ Hamming. So sánh kết quả với hàm cửa sổ Kaiser. Bậc của lọc là bao nhiêu?
2) Cho các thông số kỹ thuật của một lọc dải qua như sau
ωs1=0.2π , As=60dB
ωs2=0.8 π, As=60dB
wp1=0.35 π, Rp=1dB
wp2=0.65 π, rp=1dB
Gợi ý: Sử dụng hai mạch lọc thấp qua lý tưởng như hình trên
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
45
BÀI 7: THIẾT KẾ MẠCH LỌC IIR
7.1 Giới thiệu mạch lọc IIR
Mạch lọc IIR có đáp ứng xung lâu vô hạn thời gian, vì thế chúng giống như mạch lọc tương tự.
Do đó, kỹ thuật cơ bản để thiết kế mạch lọc IIR là biến đổi các mạch lọc tương tự đã biết sang mạch lọc
số sử dụng phép biến đổi Laplace giá trị phức. Kỹ thuật này gọi là biến đổi lọc A/D. Tuy nhiên kỹ thuật
này chỉ áp dụng cho mạch lọc thông thấp mà thôi. Nếu muốn thiết kế các loại lọc khác như: lọc thông
cao, lọc thông dải và lọc chặn dải thì ta phải áp dụng kỹ thuật biến đổi dải tần.
Các bước thiết kế cơ bản
- Thiết kế lọc thông thấp tương tự.
- Áp dụng kỹ thuật biến đổi lọc A/D để chuyển thành lọc thông số thấp.
- Áp dụng kỹ thuật biến đổi dải tần để chuyển đổi mạch lọc số thông thấp sang các mạch lọc số
khác.
Có hai cách thiết kế cơ bản một mạch lọc IIR dùng cả hai kỹ thuật trên
7.2 Một số loại mạch lọc thấp qua tương tự
7.2.1 Mạch lọc thấp qua Butterworth
Đáp ứng biên độ
Với N là bậc của mạch lọc và ΩC là tần số cắt
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
46
7.2.2 Mạch lọc thấp qua Chebyshev
Đáp ứng biên độ
Với N là bậc của mạch lọc, ε là hệ số nhấp nhô trong dải thông (liên quan đến hệ số Rp) và TN là hàm
Chebyshev bậc N.
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
47
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
48
7.2.3 Mạch lọc thấp qua Elliptic
Đáp ứng biên độ
Với N là bậc của mạch lọc, ε là hệ số nhấp nhô trong dải qua, UN là hàm Elliptic jacobian bậc N
7.3 Phép biến đổi lọc tương tự sang số (Kỹ thuật A/D)
7.3.1 Phương pháp bất biến xung
Cho những thông số kỹ thuật ban đầu của lọc như ωp, ωs, Rp và As. Để xác định H(z) trước tiên
phải thiết kế mạch lọc tương tự tương đương rồi sau đó ánh xạ thành mạch lọc số mong muốn.
Các bước tiến hành
- Chọn T và xác định các thông số cho mạch lọc tương tự
- Thiết kế mạch lọc tương tự từ các thông số ở trên với một trong 3 mạch lọc trên.
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
49
- Sử dụng khai triển phân thức riêng phần Ha(s) thành dạng
- Biến đổi các điểm cực sk của mạch lọc tương tự thành các điểm cực của mạch lọc số pk=e sk T
để
thu được mạch lọc số
7.3.2 Biến đổi song tuyến
Cho những thông số kỹ thuật ban đầu của lọc như ωp, ωs, Rp và As. Để xác định H(z) cần theo những
bước sau đây
Các bước tiến hành
- Chọn giá trị T, T có thể lấy giá trị bất kỳ. Thông thường ta cho T=1
- Tính các thông số cho mạch lọc tương tự bằng các công thức
- Thiết kế mạch lọc tương tự với các thông số Ωp, Ωs, Rp, As với một trong 3 loại lọc trên.
- Cuối cùng, biến đổi
7.4 Thiết kế mạch lọc IIR trên Matlab
Để thiết kế mạch lọc IIR dựa trên biến đổi song tuyến, công cụ xử lý tín hiệu của Matlab
chứa 4 hàm số gần đúng: Buterworth, Chebyshev 1, Chebyshev 2 và Elliptic. Các hàm sau đấy được sử
dụng
[b,a]=butter(N,wn).
[b,a]=cheby1(N,Rp, wn)
[b,a]=cheby2(N,Rp, wn)
[b,a]=ellip(N,Rp,As, wn)
Với wn là tần số chuẩn hoá cho π
Các hàm này xác định hàm truyền của mạch lọc thông thấp bậc N và với tần số wn nằm giữa khoảng 0
và 1. Tần số lấy mẫu được giả thiết là 2Hz. Dạng của hàm truyền thu được là
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
50
Ví dụ: Thiết kế mạch lọc số thấp qua Butterworth bằng phép biến đổi song tuyến với các quy định sau
ωp=0.2π , ωs=0.3π, Rp=1dB, As=15dB.
Chương trình
wp = 0.2*pi; ws = 0.3*pi; Rp = 1; As = 15;
% Analog Prototype Specifications:
T = 1;
OmegaP = (2/T)*tan(wp/2);
OmegaS = (2/T)*tan(ws/2);
sqrt(10^(Rp/10)-1);
Ripple = sqrt(1/(1+ep*ep));
Attn = 1/(10^(As/20));
N =ceil((log10((10^(Rp/10)-1)/(10^(As/10)-1)))/(2*log10(OmegaP/OmegaS)));
fprintf('n*** Butterworth Filter Order = %2.0f n',N)
OmegaC = OmegaP/((10^(Rp/10)-1)^(1/(2*N)));
wn = 2*atan((OmegaC*T)/2);
% Digital Butterworth Filter Design:
wn = wn/pi;
[b,a]=butter(N,wn);
[b0,B,A] = dir2cas(b,a)
Kết quả
*** Butterworth Filter Order = 6
b0 =
5.7969e-004
B
=
1.0000 2.0044 1.0045
1.0000 1.9956 0.9956
1.0000 2.0000 1.0000
A =
1.0000 -0.9459 0.2342
1.0000 -1.0541 0.3753
1.0000 -1.3143 0.7149
Hàm truyền là
So sánh kết quả thiết kế 3 loại lọc với cùng yêu cầu bằng phương pháp bất biến xung ta được
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
51
Lọc Elliptic cho kết quả thiết kế tốt nhất nhưng lại có đáp ứng pha tuyến tính trong vùng dải qua
7.5 Bài tập
1) Vẽ đáp ứng biên độ và pha cho ví dụ trên
2) Thực hiện thiết kế mạch lọc số như ví dụ trên cho loại lọc Elliptic và vẽ đáp ứng.
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
52
BÀI 8: THIẾT KẾ MẠCH LỌC SỐ BẰNG CÔNG CỤ SPTOOL
8.1 Giới thiệu
SPTool: là công cụ dùng trong xử lý tín hiệu số dạng tương tác mở.
Giao diện người dùng SPTool gồm có 4 phần: Signal Browser, Filter Designer, FvTool và Spectrum
Viewer
Sử dụng SPTool ta có thể thực hiện được :
- Phân tích tín hiệu trong Signal List box bằng Signal Browser.
- Thiết kế hay thay đổi các bộ lọc với Filter Designer.
- Phân tích những đáp ứng của lọc với FvTool.
- Tạo và phân tích phổ của tín hiệu với Spectrum Viewer.
Để thiết kế một lọc số, người dùng đưa vào các thông số yêu cầu như dạng lọc (FIR hay IIR), loại lọc
(thấp qua hay cao qua), bậc của lọc,…Chương trình sẽ tính toán các hệ số của lọc tương ứng. Đồng thời
người dùng có thể quan sát được một số đáp ứng của mạch lọc như đáp ứng biên độ, đáp ứng pha, đáp
ứng xung…
Để thực thi một chương trình ta chạy các bước sau
- Khởi động Matlab, gõ sptool ở dòng lệnh. Cửa sổ Starup sẽ xuất hiện.
- Chọn New để tiến hành thiết kế một mạch lọc mong muốn bằng công cụ FDATool.
- Lựa chọn các thông số thích hợp.
- Nhấn nút Design Filter để hoàn tất việc thiết kế.
Để quan sát các đáp ứng của lọc sau khi thiết kế, click chọn View. Công cụ FVTool sẽ cho ta quan sát
một số đồ thị đáp ứng: đáp ứng biên độ, đáp ứng pha, đáp ứng xung, các hệ số của lọc, giản đồ cực
không,...
Để trích lấy các hệ số của lọc ta chọn File Export Chọn nơi muốn lưu hệ số vào từ Export To,
chọn loại thông tin sẽ export từ Export As, chọn tên biến ở Variable Name. Ngoài ra ta cũng có thể
tiến hành ngược lại với File Import Filter from Workspace.
8.2 Phần thực hành
Thiết kế một mạch lọc FIR thông thấp dùng cửa sổ Kaiser với các yêu cầu:
Frequency pass (Fpass) = 2KHz
Frequency stop (Fstop) = 3KHz
Tần số lấy mẫu (Fs) = 20KHz
Rp=0.25dB
As=50dB
Hướng dẫn
1- Khởi động Matlab, đánh sptool tại dấu nhắc lệnh.Cửa sổ Startup được mở
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
53
2- Chọn New và nhập vào các thông số yêu cầu
3- Nhấn nút Design Filter để hoàn thành việc thiết kế
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
54
4- Quan sát các đáp ứng của lọc vừa thiết kế bằng cách nhấn nút View từ cửa sổ Startup trong phần
Filter
Đáp ứng biên độ
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
55
Đáp ứng pha
Đáp ứng xung
Thông tin về lọc
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
56
Các hệ số của lọc
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
57
Giản đồ cực-không
5- Để tiến hành export các hệ số của lọc, từ cửa sổ FDA Tool ta chọn File Export
Nhấn nút Export sau khi lựa chọn xong
8.3 Bài tập
1) Thiết kế mạch lọc thấp qua loại IIR loại Butterworth với các thông số sau
Frequency pass (Fpass) = 2KHz
Frequency stop (Fstop) = 3KHz
Tần số lấy mẫu (Fs) = 4KHz
Rp=1dB
As=25dB
2) Lặp lại thiết kế trên với lọc IIR loại Elliptic
3) So sánh hai kết quả vừa thiết kế được và rút ra kết luận.
Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4
Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP)
Trang
58

More Related Content

Similar to ttcd4_2814.pdf

Xử lí tín hiệu số
Xử lí tín hiệu số Xử lí tín hiệu số
Xử lí tín hiệu số Tran An
 
Bài giảng Xử lý số tín hiệu - ThS. Đào Thị Thu Thủy_1344165.pdf
Bài giảng Xử lý số tín hiệu - ThS. Đào Thị Thu Thủy_1344165.pdfBài giảng Xử lý số tín hiệu - ThS. Đào Thị Thu Thủy_1344165.pdf
Bài giảng Xử lý số tín hiệu - ThS. Đào Thị Thu Thủy_1344165.pdfthailam24
 
Bài Tập Xử Lí Tín Hiệu Số
Bài Tập Xử Lí Tín Hiệu SốBài Tập Xử Lí Tín Hiệu Số
Bài Tập Xử Lí Tín Hiệu Sốviethung094
 
Phân tích một số thuật toán
Phân tích một số thuật toánPhân tích một số thuật toán
Phân tích một số thuật toánHồ Lợi
 
Thuchanh Ktdk-matlab
Thuchanh Ktdk-matlabThuchanh Ktdk-matlab
Thuchanh Ktdk-matlabmark
 
Bai giang xlths
Bai giang xlthsBai giang xlths
Bai giang xlthsthuydt1
 
Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Do Ngoc Tuan
 
Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Do Ngoc Tuan
 

Similar to ttcd4_2814.pdf (20)

Xử lí tín hiệu số
Xử lí tín hiệu số Xử lí tín hiệu số
Xử lí tín hiệu số
 
Bài giảng Xử lý số tín hiệu - ThS. Đào Thị Thu Thủy_1344165.pdf
Bài giảng Xử lý số tín hiệu - ThS. Đào Thị Thu Thủy_1344165.pdfBài giảng Xử lý số tín hiệu - ThS. Đào Thị Thu Thủy_1344165.pdf
Bài giảng Xử lý số tín hiệu - ThS. Đào Thị Thu Thủy_1344165.pdf
 
Baitap 5637
Baitap 5637Baitap 5637
Baitap 5637
 
Bài Tập Xử Lí Tín Hiệu Số
Bài Tập Xử Lí Tín Hiệu SốBài Tập Xử Lí Tín Hiệu Số
Bài Tập Xử Lí Tín Hiệu Số
 
Đề tài: Xây dựng bài thí nghiệm xử lý tín hiệu số trên Matlab
Đề tài: Xây dựng bài thí nghiệm xử lý tín hiệu số trên MatlabĐề tài: Xây dựng bài thí nghiệm xử lý tín hiệu số trên Matlab
Đề tài: Xây dựng bài thí nghiệm xử lý tín hiệu số trên Matlab
 
Bài tập lớn
Bài tập lớnBài tập lớn
Bài tập lớn
 
Gt de quy
Gt de quyGt de quy
Gt de quy
 
Gt de quy_2
Gt de quy_2Gt de quy_2
Gt de quy_2
 
Xlths
XlthsXlths
Xlths
 
Xử lý tín hiệu số
Xử lý tín hiệu sốXử lý tín hiệu số
Xử lý tín hiệu số
 
Xlths
XlthsXlths
Xlths
 
Phân tích một số thuật toán
Phân tích một số thuật toánPhân tích một số thuật toán
Phân tích một số thuật toán
 
3 2
3 23 2
3 2
 
Tieu luan trai pho 22.01.2015
Tieu luan trai pho 22.01.2015Tieu luan trai pho 22.01.2015
Tieu luan trai pho 22.01.2015
 
Pt04 de qui
Pt04 de quiPt04 de qui
Pt04 de qui
 
Thuchanh Ktdk-matlab
Thuchanh Ktdk-matlabThuchanh Ktdk-matlab
Thuchanh Ktdk-matlab
 
Bai giang xlths
Bai giang xlthsBai giang xlths
Bai giang xlths
 
Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4
 
Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4Ctdl+va+gt chuong+1 4
Ctdl+va+gt chuong+1 4
 
Luận văn: Phương trình sóng phi tuyến chứa số hạng KIRCHHOFF có nguồn phi tuyến
Luận văn: Phương trình sóng phi tuyến chứa số hạng KIRCHHOFF có nguồn phi tuyếnLuận văn: Phương trình sóng phi tuyến chứa số hạng KIRCHHOFF có nguồn phi tuyến
Luận văn: Phương trình sóng phi tuyến chứa số hạng KIRCHHOFF có nguồn phi tuyến
 

Recently uploaded

[GIẢI PHẪU BỆNH] Tổn thương cơ bản của tb bào mô
[GIẢI PHẪU BỆNH] Tổn thương cơ bản của tb bào mô[GIẢI PHẪU BỆNH] Tổn thương cơ bản của tb bào mô
[GIẢI PHẪU BỆNH] Tổn thương cơ bản của tb bào môBryan Williams
 
CHƯƠNG VII LUẬT DÂN SỰ (2) Pháp luật đại cương.pptx
CHƯƠNG VII LUẬT DÂN SỰ (2) Pháp luật đại cương.pptxCHƯƠNG VII LUẬT DÂN SỰ (2) Pháp luật đại cương.pptx
CHƯƠNG VII LUẬT DÂN SỰ (2) Pháp luật đại cương.pptx22146042
 
Bài giảng về vật liệu ceramic ( sứ vệ sinh, gạch ốp lát )
Bài giảng về vật liệu ceramic ( sứ vệ sinh, gạch ốp lát )Bài giảng về vật liệu ceramic ( sứ vệ sinh, gạch ốp lát )
Bài giảng về vật liệu ceramic ( sứ vệ sinh, gạch ốp lát )lamdapoet123
 
Nhóm 10-Xác suất và thống kê toán-đại học thương mại
Nhóm 10-Xác suất và thống kê toán-đại học thương mạiNhóm 10-Xác suất và thống kê toán-đại học thương mại
Nhóm 10-Xác suất và thống kê toán-đại học thương mạiTruongThiDiemQuynhQP
 
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...Nguyen Thanh Tu Collection
 
Ma trận - định thức và các ứng dụng trong kinh tế
Ma trận - định thức và các ứng dụng trong kinh tếMa trận - định thức và các ứng dụng trong kinh tế
Ma trận - định thức và các ứng dụng trong kinh tếngTonH1
 
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoabài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa2353020138
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Slide Webinar Hướng dẫn sử dụng ChatGPT cho người mới bắt đầ...
Slide Webinar Hướng dẫn sử dụng ChatGPT cho người mới bắt đầ...Slide Webinar Hướng dẫn sử dụng ChatGPT cho người mới bắt đầ...
Slide Webinar Hướng dẫn sử dụng ChatGPT cho người mới bắt đầ...Học viện Kstudy
 
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...Nguyen Thanh Tu Collection
 
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Nguyen Thanh Tu Collection
 
50 ĐỀ ĐỀ XUẤT THI VÀO 10 THPT SỞ GIÁO DỤC THANH HÓA MÔN TIẾNG ANH 9 CÓ TỰ LUẬ...
50 ĐỀ ĐỀ XUẤT THI VÀO 10 THPT SỞ GIÁO DỤC THANH HÓA MÔN TIẾNG ANH 9 CÓ TỰ LUẬ...50 ĐỀ ĐỀ XUẤT THI VÀO 10 THPT SỞ GIÁO DỤC THANH HÓA MÔN TIẾNG ANH 9 CÓ TỰ LUẬ...
50 ĐỀ ĐỀ XUẤT THI VÀO 10 THPT SỞ GIÁO DỤC THANH HÓA MÔN TIẾNG ANH 9 CÓ TỰ LUẬ...Nguyen Thanh Tu Collection
 
Hệ phương trình tuyến tính và các ứng dụng trong kinh tế
Hệ phương trình tuyến tính và các ứng dụng trong kinh tếHệ phương trình tuyến tính và các ứng dụng trong kinh tế
Hệ phương trình tuyến tính và các ứng dụng trong kinh tếngTonH1
 
Sơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdfSơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdftohoanggiabao81
 
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...Nguyen Thanh Tu Collection
 
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...Nguyen Thanh Tu Collection
 
cuộc cải cách của Lê Thánh Tông - Sử 11
cuộc cải cách của Lê Thánh Tông -  Sử 11cuộc cải cách của Lê Thánh Tông -  Sử 11
cuộc cải cách của Lê Thánh Tông - Sử 11zedgaming208
 
Tư tưởng Hồ Chí Minh về độc lập dân tộc và CNXH
Tư tưởng Hồ Chí Minh về độc lập dân tộc và CNXHTư tưởng Hồ Chí Minh về độc lập dân tộc và CNXH
Tư tưởng Hồ Chí Minh về độc lập dân tộc và CNXHThaoPhuong154017
 
Trích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docxTrích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docxnhungdt08102004
 
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhvanhathvc
 

Recently uploaded (20)

[GIẢI PHẪU BỆNH] Tổn thương cơ bản của tb bào mô
[GIẢI PHẪU BỆNH] Tổn thương cơ bản của tb bào mô[GIẢI PHẪU BỆNH] Tổn thương cơ bản của tb bào mô
[GIẢI PHẪU BỆNH] Tổn thương cơ bản của tb bào mô
 
CHƯƠNG VII LUẬT DÂN SỰ (2) Pháp luật đại cương.pptx
CHƯƠNG VII LUẬT DÂN SỰ (2) Pháp luật đại cương.pptxCHƯƠNG VII LUẬT DÂN SỰ (2) Pháp luật đại cương.pptx
CHƯƠNG VII LUẬT DÂN SỰ (2) Pháp luật đại cương.pptx
 
Bài giảng về vật liệu ceramic ( sứ vệ sinh, gạch ốp lát )
Bài giảng về vật liệu ceramic ( sứ vệ sinh, gạch ốp lát )Bài giảng về vật liệu ceramic ( sứ vệ sinh, gạch ốp lát )
Bài giảng về vật liệu ceramic ( sứ vệ sinh, gạch ốp lát )
 
Nhóm 10-Xác suất và thống kê toán-đại học thương mại
Nhóm 10-Xác suất và thống kê toán-đại học thương mạiNhóm 10-Xác suất và thống kê toán-đại học thương mại
Nhóm 10-Xác suất và thống kê toán-đại học thương mại
 
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
SÁNG KIẾN “THIẾT KẾ VÀ SỬ DỤNG INFOGRAPHIC TRONG DẠY HỌC ĐỊA LÍ 11 (BỘ SÁCH K...
 
Ma trận - định thức và các ứng dụng trong kinh tế
Ma trận - định thức và các ứng dụng trong kinh tếMa trận - định thức và các ứng dụng trong kinh tế
Ma trận - định thức và các ứng dụng trong kinh tế
 
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoabài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
bài 5.1.docx Sinh học di truyền đại cương năm nhất của học sinh y đa khoa
 
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
30 ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Slide Webinar Hướng dẫn sử dụng ChatGPT cho người mới bắt đầ...
Slide Webinar Hướng dẫn sử dụng ChatGPT cho người mới bắt đầ...Slide Webinar Hướng dẫn sử dụng ChatGPT cho người mới bắt đầ...
Slide Webinar Hướng dẫn sử dụng ChatGPT cho người mới bắt đầ...
 
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
BỘ ĐỀ PHÁT TRIỂN THEO CẤU TRÚC ĐỀ MINH HỌA BGD NGÀY 22-3-2024 KỲ THI TỐT NGHI...
 
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
Sáng kiến “Sử dụng ứng dụng Quizizz nhằm nâng cao chất lượng ôn thi tốt nghiệ...
 
50 ĐỀ ĐỀ XUẤT THI VÀO 10 THPT SỞ GIÁO DỤC THANH HÓA MÔN TIẾNG ANH 9 CÓ TỰ LUẬ...
50 ĐỀ ĐỀ XUẤT THI VÀO 10 THPT SỞ GIÁO DỤC THANH HÓA MÔN TIẾNG ANH 9 CÓ TỰ LUẬ...50 ĐỀ ĐỀ XUẤT THI VÀO 10 THPT SỞ GIÁO DỤC THANH HÓA MÔN TIẾNG ANH 9 CÓ TỰ LUẬ...
50 ĐỀ ĐỀ XUẤT THI VÀO 10 THPT SỞ GIÁO DỤC THANH HÓA MÔN TIẾNG ANH 9 CÓ TỰ LUẬ...
 
Hệ phương trình tuyến tính và các ứng dụng trong kinh tế
Hệ phương trình tuyến tính và các ứng dụng trong kinh tếHệ phương trình tuyến tính và các ứng dụng trong kinh tế
Hệ phương trình tuyến tính và các ứng dụng trong kinh tế
 
Sơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdfSơ đồ tư duy môn sinh học bậc THPT.pdf
Sơ đồ tư duy môn sinh học bậc THPT.pdf
 
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...
ĐỀ THAM KHẢO THEO HƯỚNG MINH HỌA 2025 KIỂM TRA GIỮA HỌC KÌ + CUỐI HỌC KÌ 2 NĂ...
 
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
BỘ ĐỀ KIỂM TRA CUỐI KÌ 2 VẬT LÝ 11 - KẾT NỐI TRI THỨC - THEO CẤU TRÚC ĐỀ MIN...
 
cuộc cải cách của Lê Thánh Tông - Sử 11
cuộc cải cách của Lê Thánh Tông -  Sử 11cuộc cải cách của Lê Thánh Tông -  Sử 11
cuộc cải cách của Lê Thánh Tông - Sử 11
 
Tư tưởng Hồ Chí Minh về độc lập dân tộc và CNXH
Tư tưởng Hồ Chí Minh về độc lập dân tộc và CNXHTư tưởng Hồ Chí Minh về độc lập dân tộc và CNXH
Tư tưởng Hồ Chí Minh về độc lập dân tộc và CNXH
 
Trích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docxTrích dẫn trắc nghiệm tư tưởng HCM5.docx
Trích dẫn trắc nghiệm tư tưởng HCM5.docx
 
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhhôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
ôn tập lịch sử hhhhhhhhhhhhhhhhhhhhhhhhhh
 

ttcd4_2814.pdf

  • 1. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 1 BÀI 1: CÁC TÍN HIỆU CƠ BẢN 1.1 Định nghĩa: Tín hiệu là sự biến thiên biên độ theo thời gian. 1.2 Phân loại tín hiệu: Xét về dạng sóng và sự liên tục, người ta phân tín hiệu ra thành 2 loai cơ bản là tín hiệu tương tự (analog) hay liên tục thời gian và tín hiệu số (digital) hay rời rạc thời gian Tín hiệu biến thiên liên tục về biên độ là tín hiệu tương tự, thường đươc ký hiệu là x(t). Tín hiệu thời gian rời rạc được biểu diễn như một dãy số nguyên từ -∞ đến ∞, ký hiệu là x[n]. 1.3 Một số tín hiệu tương tự cơ bản: 1.3.1 Tạo sóng vuông f=10000; t=0:1/f:1.5; x=square(2*pi*50*t,50); plot(t,x); axis([0 0.1 -2 2]); 1.3.2 Tạo sóng sin f=10000; t=0:1/f:1.5; x=sin(2*pi*50*t); plot(t,x); axis([0 0.1 -2 2]); 1.3.3 Tạo sóng răng cưa f=10000; t=0:1/f:1.5; x=sawtooth(2*pi*50*t); plot(t,x); axis([0 0.1 -2 2]);
  • 2. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 2 1.4 Một số tín hiệu rời rạc cơ bản 1.4.1 Tạo xung lực đơn vị Dãy xung lực đơn vị có chiều dài N mẫu n=0:1:10; N=length(n); delta=[1 zeros(1,N-1)] stem(n,delta); axis([0 10 0 1.2]) Dãy xung lực đơn vị có chiều dài N bị trễ M mẫu (M<N) n=0:1:10; N=length(n); delta=[zeros(1,M) 1 zeros(1,N-1)]; stem(n,delta); axis([0 10 0 1.2]) Để biểu diễn tín hiệu xung lực đơn vị có dạng tổng quát Với 1 0 2 n n n   , ta dùng hàm Matlab có cú pháp sau : function [x,n] = imseq(n0,n1,n2) n=[n1:n2]; x=[(n-n0)==0];
  • 3. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 3 1.4.2 Tạo tín hiệu bậc đơn vị n=0:1:10; N=length(n); unit=[ones(1,N)]; stem(n,unit); axis([0 10 0 1.2]) Để biểu diễn tín hiệu bậc đơn vị có dạng tổng quát Với 1 0 2 n n n   , ta dùng hàm Matlab có cú pháp sau: function [x,n] = stepseq(n0,n1,n2) n=[n1:n2]; x=[(n-n0)>=0]; 1.4.3 Tạo tín hiệu dốc đơn vị n=0:1:10; y=n; stem(n,y); 1.4.4 Tạo tín hiệu mũ thực n=0:1:20; y=0.9.^n; stem(n,y);
  • 4. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 4 1.4.5 Tạo tín hiệu mũ phức: n=0:1:10; y=exp((2+3j)*n; stem(n,y); 1.5 Các phép toán trên chuỗi tín hiệu rời rạc 1.5.1 Phép cộng hai tín hiệu Phép cộng hai tín hiệu trong Matlab được thực hiện bởi toán tử “+”. Tuy nhiên, chiều dài của hai tín hiệu phải bằng nhau. Nếu dài dài của hai tín hiệu khác nhau, hay gốc toạ độ của 2 chuỗi tín hiệu khác nhau thì ta không thể sử dụng trực tiếp toán tử “+”. Do đó , ta cần phải biến đổi x1(n) và x2(n) sao cho có cùng vị trí n trước khi thực hiện phép cộng hai tín hiệu. Phép cộng được thực hiện bởi hàm Matlab sau function[y n]=sigadd(x1,n1,x2,n2) n=min(min(n1),min(n2)):max(max(n1),max(n2)); y1=zeros(1,length(n)); y2=y1; y1(find(n>=min(n1))&(n<=max(n1))==1))=x1; y2(find(n>=min(n2))&(n<=max(n2))==1))=x2; y=y1+y2; 1.5.2 Phép nhân hai tín hiệu Phép nhân hai tín hiệu trong Matlab được thực hiện bởi toán tử “.*”. Tuy nhiên, giống như phép cộng, ta cần phải biến đổi 2 tín hiệu trược khi thực hiện phép nhân Phép nhân được thực hiện bởi hàm Matlab sau function[y n]=sigmult(x1,n1,x2,n2) n=min(min(n1),min(n2)):max(max(n1),max(n2)); y1=zeros(1,length(n)); y2=y1; y1(find(n>=min(n1))&(n<=max(n1))==1))=x1; y2(find(n>=min(n2))&(n<=max(n2))==1))=x2;
  • 5. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 5 y=y1.*y2; 1.5.3 Phép dịch và gấp tín hiệu Tín hiệu x(n) được dịch chuyển đi n0 mẫu để tạo thành tín hiệu y(n)=x(n-n0). Đặt m=n-n0, ta có n=m+n0, tín hiệu y(n) được viết lại thành y(m+n0)=x(m). Đó đó thuật toán này không tác động vào tín hiệu x(n) mà chỉ có vecto n được dịch chuyển đi n0 mẫu Phép dịch được thực hiện bởi hàm Matlab sau: function[y n]=sigshift(x,m,n0) n=m+n0; y=x; Tín hiệu x(n) được gấp qua gốc n=0 để tạo thành tín hiệu y(n)=x(-n). Phép gấp được thực hiện bởi hàm Matlab sau: function[y n]=sigfold(x,n) y=fliplr(x); n=-fliplr(n); 1.6 Bài tập 1>Vẽ tín hiệu lũy thừa thực có biểu thức x(n)=0.2(1.2)n .Vẽ lại tín hiệu trên sau khi đã trì hõan N=10 mẫu. 2> Vẽ tín hiệu sin thực rời rạc thờ i gian x(n)=1.5 sin(0.2πn).Tín hiệu tuần hoàn với chu kỳ, tần số bao nhiêu?
  • 6. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 6 Biến đổi chương trình trên để vẽ và hiển thị dãy có chiều dài N=50 mẫu, tần số 0.08, biên độ 2.5 và độ dịch pha 90o . 3>Vẽ tín hiệu sin phức x[n]=e(-0.1+j0.3)n với 10 10 n    . Vẽ các thành phần biên độ, pha, phần thực và phần ảo trong 4 đồ thị riêng 4> Cho tín hiệu x(n)=[1,2,3,4,5,6,7,6,5,4,3,2,1]. Vẽ các tín hiệu sau a) x1(n)=2x(n-5)-3x(n+4) b) x2(n)=x(3-n)+x(n)x(n-2) 5 > V i ế t c h ư ơ n g trình tạo một hàm Matlab thực hiện việc tách tín hiệu thành hai phần chẵn và lẻ với quy định sau: function [xe,xo,m]=evenodd(x,n) Ứng dụng hàm vừa viết để vẽ thành phần chẵn và lẻ của tín hiệu x(n)=u(n)-u(n-10)
  • 7. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 7 CHƯƠNG 2: PHÂN TÍCH TÍN HIỆU VÀ HỆ THỐNG LTI TRONG MIỀN THỜI GIAN 2.1 Định nghĩa Hệ thống rời rạc thời gian: còn được gọi là hệ thống xử lý tín hiệu số, biến đổi tín hiệu x[n] thành tín hiệu y[n] với những tính chất mong muốn.Thường ta giả sử hệ thống rời rạc thời gian là tuyến và bất biến thời gian (linear and invariant time-LTI) để thuận lợi trong việc phân tích và thiết kế. Hệ thống cũng thường được giả sử là nhân quả và thư giãn. Phân tích hệ thống là tìm tín hiệu ra, còn gọi là đáp ứng,đối với tín hiệu vào khi hệ thống đã được biết. Đáp ứng xung::đáp ứng xung là tín hiệu ra của hệ thống khi tín hiệu vào là xung lực đơn vị. Lọc (filter) là thuật ngữ chung dùng để chỉ một hệ thống tuyến và bất biến thời gian được thiết kế cho việc lọc lựa tần số. do đó, một hệ thống LTI rời tạc thời gian còn được gọi là bộ lọc số. Có 2 loại lọc số chính Lọc FIR: Nếu đáp ứng xung của hệ thống LTI là hữu hạn thời gian thì hệ thống được gọi là lọc FIR Lọc IIR: Nếu đáp ứng xung của hệ thống LTI là vô hạn thời gian thì hệ thống được gọi là lọc IIR 2.2 Đáp ứng xung và phương trình sai phân Trong Matlab người ta sử dụng lệnh h=impz(num,den,N) để tính đáp ứng xung của hệ thống thời gian rời rạc LTI. Với num: là các hệ số tín hiệu vào, den: hệ số các tín hiệu ra,N: số đáp ứng xung. Để mô phỏng các hệ thống rời rạc thời gian LTI nhân quả có phương trình sai phân 0 0 [ ] [ ] N M k m k m a y n k b x n m        Trong Matlab ta có thể sử dụng lệnh y=filter(num,den,x) hay y=filter(num,den,x,ic) Với ic=[y[-1] y[-2] …y[-N]] là vecto điều kiện ban đầu Ví dụ: Tính và vẽ 50 đáp ứng xung của hệ thống có phương trình sai phân sau: y[n]-0.4y[n-1]+0.75y[n-2]=2.2403x[n]+2.4908x[n-1]+2.2403x[n-2] Chương trình: clf; N=50; num=[2.2403 2.4908 2.2403]; den=[1 -0.4 0.75]; h=impz(num,den,N); stem(h);
  • 8. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 8 2.3 Một số tính chất của hệ thống 2.3.1. Tính chất tuyến tính và phi tuyến Nếu a1x1[n]+a2x2[n] a1y1[n]+a2y2[n], a1 và a2 là hằng số thì hệ thống là tuyến tính, nếu không hệ thống là phi tuyến Hệ thống tuyến tính là hệ thống có quan hệ bậc nhất giữa phản ứng và tác động, đồng thời thoả mãn nguyên lý xếp chồng Ví dụ : Khảo sát tính chất tuyến tính của hệ thống có phương trình sai phân sau: y[n]=2.2403x[n] + 2.4908x[n-1] + 2.2403x[n-2] + 0.4y[n-1] với x1[n]= cos(0.2πn), x2[n]=cos(0.8πn), a=2, b=-3. Chương trình: a=2; b=-3; x1=cos(2*pi*0.1*n); x2=cos(2*pi*0.4*n); x=a*x1+b*x2; num=[2.2403 2.4908 2.2403]; den=[1 -0.4]; y1=filter(num,den,x1); y2=filter(num,den,x2); y=filter(num,den,x); yt=a*y1+b*y2; d=y-yt; subplot(3,1,1); stem(n,y); subplot(3,1,2); stem(n,yt); subplot(3,1,3); stem(n,d);
  • 9. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 9 2.3.2. Tính chất bất biến thời gian Nếu y’[n-k]=y[n-k]: hệ thống bất biến thời gian Nếu y’[n-k]≠y[n-k]: hệ thống bất biến thời gian Hệ thống bất biến thời gian là hệ thống hễ có tác động x(n) dịch k mẫu thì phản ứng y(n) cũng chỉ dịch cùng chiều k mẫu mà không bị biến đổi dạng. Ví dụ : Khảo sát tính bất biến thời gian của hệ thống có phương trình sai phân sau y[n]=2.2403x[n]+2.4908x[n-1]+2.2403x[n-2]+0.4y[n-1] với tín hiệu vào x[n]=0.3cos(0.2πn)-2cos(0.8πn). Chương trình clf; n=0:40; n0=10; a=0.3; b=-2; xn=a*cos(2*pi*0.1*n)+b*cos(2*pi*0.4*n); xn0=[zeros(1,n0) xn]; num=[2.2403 2.4908 2.2403]; den=[1 -0.4]; yn=filter(num,den,xn); yn0=filter(num,den,xn0); dn=yn-yn0(1+n0:41+n0); subplot(3,1,1); stem(n,yn); subplot(3,1,2); stem(n,yn0(1:41)); subplot(3,1,3); stem(n,dn);
  • 10. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 10 2.3.3. Tính chất ổn định Một hệ thống LTI ổn định theo nghĩa BIBO khi và chỉ khi đáp ứng xung đơn vị của nó có tổng tuyệt đối. Đối với hệ thống IIR thì điều kiện cần để hệ thống này ổn định là đáp ứng xung của hệ phải suy giảm tới 0 khi số lượng mẫu đủ lớn. Để kiểm tra tính ổn định của hệ thống,đáp ứng xung đơn vị được đánh giá theo công thức Khi k tăng và kiểm tra các giá trị của |h(k)| tại mỗi bước 1ặp.Nếu giá trị của |h(k)| nhỏ hơn 10-6 thì có thể coi tổng S(k) hội tụ Ví dụ: Kiểm tra tính ổn định của hệ thống LTI có phương rình sai phân: y[n]=x[n]-0.8x[n-1]-1.5y[n-1]-0.9y[n-2] Chương trình: clf; num=[1 -0.8]; den=[1 1.5 0.9]; N=200; h=impz(num,den,N+1); sum=0; for k=1:N+1; sum=sum+abs(h(k)); if abs(h(k))<10^(-6),break,end end n=0:N; stem(n,h); disp('Value='); disp(abs(h(k))); Value= 1.6761e-005 2.4 Nhân chập Quan hệ vào/ra của hệ thống LTI được xác định bởi tổng nhân chập:  [ ] [ ] [ ] [ ] [ ] k k y n h k x n k x k h n k           Và được ký hiệu bằng y(n)=x(n)*h(n) Hàm nhân chập của Matlab là hàm conv với cú pháp y=conv(x1,x2). Tuy nhiên hàm conv này mặc định 2 tín hiệu được nhân chập có tín hiệu bắt đầu tại n=0 Đối vớ i việc xử lý tín hiệu hai chiều ta dùng hàm nhân chập y=covn2(x1,x2) Ví dụ : Thực hiện nhân chập 2 tín hiệu sau.Tìm tín hiệu ra y(n) h(n)=[0,1,2,1,-1,0] và x(n)= [0,1,2,3,1,0]
  • 11. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 11 Chương trình h=[3 11 7 0 -1 4 2]; x=[2 3 0 5 -2 1 ]; y=conv(h,x) y = 6 31 47 36 47 21 13 8 22 1 0 2 Để tính nhân chập cho 2 tín hiệu có gốc n=0 tại 1 giá trị bất kỳ ta dùng hàm Matlab sau function [y ny]=conv_m(x,nx,h,nh) nyb=nx(1)+nh(1); nye=nx(length(x))+nh(length(h)); ny=[nyb:nye]; y=conv(x,h) Ví dụ: Tính nhân chập hai tín hiệu sau h=[3 11 7 0 -1 4 2]; x=[2 3 0 5 -2 1 ]; Chương trình x=[3 11 7 0 -1 4 2]; nx=[-3:3]; h=[2 3 0 5 -2 1 ]; nh=[-1:4]; [y ny]=conv_m(x,nx,h,nh) y = 6 31 47 36 47 21 13 8 22 1 0 2 ny = -4 -3 -2 -1 0 1 2 3 4 5 6 7 Để giải nhân chập,hay là việc chia một đa thức cho một đa thức người ta sử dụng cú pháp trong Matlab [p r]=deconv(b,a). Lệnh này thực hiện việc tính toán chia đa thức b cho đa thức a được kết quả là đa thức p và phần dư là r 2.5 Bài tập 1. Tính và vẽ 45 mẫu đầu tiên đáp ứng xung của hệ thống LTI nhân quả sau: y[n]+0.71y[n-1]-0.46y[n-2]-0.62y[n-3]=0.9x[n]-0.45x[n-1]-0.35x[n-2]+0.002x[n-3] Viết chương trình Matlab tìm đáp ứng của hệ thống đối với xung bậc đơn vị của hệ thống đã cho. Gợi ý: dùng hàm filter 2. Tính và vẽ đáp ứng xung đơn vị của hệ thống có phương trình sai phân y[n]=x[n]-4y[n-1]+3x[n-2]+1.7y[n-1]-y[n-2] Hệ thống này có ổn định không? 3. Thực hiện nhân chập 2 tín hiệu sau x[n]= [0 1 2 3 4 0], h[n]=[0,2,0,2,0]
  • 12. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 12 BÀI 3: LẤY MẪU VÀ KHÔI PHỤC TÍN HIỆU 3.1. Lấy mẫu tín hiệu 3.1.1 Định lý lấy mẫu Sự lấy mẫu tín hiệu: là đổi một tín hiệu liên tục thời gian thành tín hiệu rời rạc thờ i gian, còn được gọi là tín hiệu số .Vấn đề lấy mẫu phải như thế nào để từ các mẫu người ta có thể phúc hồi lại tín hiệu tương tự ban đầu khi cần Để các mẫu biểu diễn đúng tín hiệu tương tự, tức từ các mẫu ta có thể phục hồi tín hiệu tương tự ban đầu, tốc độ lấy mẫu phải lớn hơn hay ít nhất là bằng hai lần tần số cao nhất của tín hiệu tương tự Để giữ cho tần số lấy mẫu fS không lớn lắm thì fM phải được giới hạn bằng một lọc thông thấp thật hiệu quả (cắt bỏ tất cả tần số lớn hơn fM của tín hiệu tương tự) 3.1.2 Lấy mẫu tín hiệu hình sin Vì Matlab không thể phát ra tín hiệu thời gian liên tục đúng nghĩa của nó được, nên ta sẽ phát ra dãy {xa[nT]} từ xa(t) bằng cách lấy mẫu nó với tần số rất cao sao cho các mẫu lấy rất sát nhau giống như tín hiệu thời gian liên tục.: xa(t)= sin(2πft) Chương trình clf; t=0:0.0005:1; f=13; xa=sin(2*pi*f*t); subplot(2,1,1); plot(t,xa); xlabel('Thoi gian'); ylabel('Tin hieu thoi gian lien tuc'); axis([0 1 -1.2 1.2]); subplot(2,1,2); T=0.03; n=0:T:1; k=0:length(n)-1;
  • 13. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 13 xs=sin(2*pi*f*n); stem(k,xs); xlabel('Chi so thoi gian'); ylabel('Tin hieu thoi gian roi rac'); axis([0 length(n)-1 -1.2 1.2])
  • 14. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 14 3.1.3 Tín hiệu không tuần hoàn và phổ biên độ trong miền tần số Để biểu diễn tín hiệu tương tự trong miền tần số, ta có thể sử dụng biến đổi Fourier liên tục thời gian để phân tích và vẽ tín hiệu Ví dụ: Cho tín hiệu tương tự xa(t)=e(-1000|t|). Xác định và vẽ tín hiệu trong miền tần số. Giải: Từ công thức biến đổi Fourier liên tục thời gian Ta phân tích được Để xác định được phổ biên độ, đầu tiên ta cần phải xấp xỉ tín hiệu tương tự thành tín hiệu có chu kỳ xác định. Sử dụng xấp xỉ e-5 ≈0, ta lấy giới hạn của t trong khoảng [-0.005,0.005] (hay từ [-5,5] ms). Tương tự để Xa(jΩ) ≈0 thì ta tìm được tần số tối đa là 2π(2000). Tín hiệu được vẽ theo chương trình sau: Dt = 0.00005; t = -0.005:Dt:0.005; xa = exp(-1000*abs(t)); Wmax = 2*pi*2000; K = 500; k = 0:1:K; W = k*Wmax/K; Xa = xa * exp(-j*t'*W) * Dt; Xa = real(Xa); W = [-fliplr(W), W(2:501)]; Xa = [fliplr(Xa), Xa(2:501)]; subplot(1,1,1) subplot(2,1,1);plot(t*1000,xa); xlabel('t in msec.'); ylabel('xa(t)') title('Analog Signal') subplot(2,1,2);plot(W/(2*pi*1000),Xa*1000); xlabel('Frequency in KHz'); ylabel('Xa(jW)*1000') title('Continuous-time Fourier Transform') 3.2. Hiện tượng biệt danh (chồng phổ) Khi tín hiệu được lấy mẫu dưới mức, tức lấy mẫu ở tần số chậm hơn tốc độ Nyquist, thì khi tái lập tín hiệu bằng cách lọc thì thành phần tần số cao của phổ lặp sẽ lẫn vào thành phần tần số cao của phổ trung tâm, và như vậy tín hiệu được tái lập sẽ không đúng.Về mặt thời gian, người ta gọi
  • 15. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 15 hiện tượng này là biệt danh (tên giả).Còn về mặt tần số người ta gọi hiện tượng này là chồng phổ. Để khắc phục hiện tượng này ta phải dùng tiền lọc chống biệt danh trước khi thực hiện việc lấy mẫu. Ví dụ: Thực hiện lấy mẫu tín hiệu xa(t)=e(- 1000|t|) tại các tần số khác nhau. Vẽ phổ biên độ của tín hiệu a) Fs=5000Hz, tín hiệu rời rạc thu được là x1(n) Do tần số tối đa của tín hiệu là fM=2000Hz nên Fs>2fM, không xảy ra hiện tượng biệt danh (chồng phổ). Chương trình Dt = 0.00005; t = -0.005:Dt:0.005; xa = exp(-1000*abs(t)); Ts = 0.0002; n = -25:1:25; x = exp(-1000*abs(n*Ts)); K = 500; k = 0:1:K; w = pi*k/K; X = x * exp(-j*n'*w); X = real(X); w = [-fliplr(w), w(2:K+1)]; X = [fliplr(X), X(2:K+1)]; subplot(1,1,1) subplot(2,1,1);plot(t*1000,xa); xlabel('t in msec.'); ylabel('xa(t)') title('Discrete Signal'); hold on stem(n*Ts*1000,x); hold off subplot(2,1,2);plot(w/pi,X); xlabel('Frequency in pi units'); ylabel('X(w)') title('Discrete-time Fourier Transform') b) Fs=1000Hz, tín hiệu rời rạc thu được là x2(n) Fs < 2FM nên tín hiệu được lấy mẫu dưới mức và xảy ra hiện tượng chồng phổ trong miền tần số Chương trình Dt = 0.00005; t = -0.005:Dt:0.005; xa = exp(-1000*abs(t)); Ts = 0.001; n = -25:1:25; x = exp(-1000*abs(n*Ts));
  • 16. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 16 K = 500; k = 0:1:K; w = pi*k/K; X = x * exp(-j*n'*w); X = real(X); w = [-fliplr(w), w(2:K+1)]; X = [fliplr(X), X(2:K+1)]; subplot(1,1,1) subplot(2,1,1);plot(t*1000,xa); xlabel('t in msec.'); ylabel('xa(t)') title('Discrete Signal'); hold on stem(n*Ts*1000,x); hold off subplot(2,1,2);plot(w/pi,X); xlabel('Frequency in pi units'); ylabel('X(w)') title('Discrete-time Fourier Transform') 3.3 Khôi phục tín hiệu Chuyển từ dạng tín hiệu rời rạc x(nT) sang dạng tín hiệu tương tự x(t). Quá trình khôi phục tín hiệu bao gồm 2 bước ; - Bước 1: các mẫu được chuyển đổi thành chuỗi các xung trọng số - Bước 2: Chuỗi xung được lọc thông qua một lọc thông thấp lý tưởng có băng thông giới hạn từ [-Fs/2 Fs/2 ] Hai quá trình này được thực hiện bằng cách sử dụng công thức toán học sau Với sinc(x)=sinπx/πx Hình ảnh minh hoạ cho qúa trình khôi phục tín hiệu
  • 17. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 17 Thực hiện các lệnh trong Matlab trong trường hợp tổng quát như sau: n=n1:n2;t=t1:t2;Fs=1/Ts;nTs=n*Ts; xa=x*sinc(Fs*(ones(length(n),1)*t-nTs'*ones(1,length(t))));
  • 18. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 18 Ví dụ: Khôi phục tín hiệu x1(n) và x2(n) thành tín hiệu xa(t) từ ví dụ trên dùng hàm sinc(x) Chương trình Ts = 0.0002; % x1(n) Fs = 1/Ts; n = -25:1:25; nTs = n*Ts; x = exp(-1000*abs(nTs)); Dt = 0.00005; t = -0.005:Dt:0.005; xa = x * sinc(Fs*(ones(length(nTs),1)*t-nTs'*ones(1,length(t)))); error = max(abs(xa - exp(-1000*abs(t)))) plot(t*1000,xa); xlabel('t in msec.'); ylabel('xa(t)') title('Reconstructed Signal from x1(n) using sinc function'); hold on stem(n*Ts*1000,x); hold off error = 0.0363 error = 0.1852 3.4 Bài tập Cho tín hiệu tương tự xa(t)=sin(20π t),0 ≤ t ≤ 1. Tín hiệu được lấy mẫu tại Ts=0.01s, 0.05s và 0.1s để có tín hiệu rời rạc x(n). a) Với mỗi Ts, vẽ x(n) tương ứng. b) Khôi phục tín hiệu ya(t) từ các tín hiệu x(n) trên dùng hàm sinc (cho Δt=0.001) và nhận xét cho mỗi trường hợp
  • 19. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 19 BÀI 4 : PHÂN TÍCH TÍN HIỆU VÀ HỆ THỐNG LTI TRONG MIỀN TẦN SỐ-BIẾN ĐỔI Z 4.1 Biến đổi Fourier rời rạc thời gian DTFT Dùng cho các tín hiệu không tuần hoàn và x(n) hiện hữu ở mọi thời gian Biến đổi DTFT thuận và nghịch Biến đổi Fourier hiện hữu nếu chuỗi hội tụ, tức Ví dụ 1: Xác định DTFT của tín hiệu x(n)=(0.5)n u(n). Vẽ tín hiệu X(ejω ) với 501 điểm trong khoảng [0,∏ ] với 4 thành phần: phổ biên độ, phổ pha, phần thực và phần ảo. Chương trình w = [0:1:500]*pi/500; X = exp(j*w) ./ (exp(j*w) - 0.5*ones(1,501)); magX = abs(X); angX = angle(X); realX = real(X); imagX = imag(X); subplot(2,2,1); plot(w/pi,magX); grid xlabel('frequency in pi units'); title('Magnitude Part'); ylabel('Magnitude') subplot(2,2,3); plot(w/pi,angX); grid xlabel('frequency in pi units'); title('Angle Part'); ylabel('Radians') subplot(2,2,2); plot(w/pi,realX); grid xlabel('frequency in pi units'); title('Real Part'); ylabel('Real') subplot(2,2,4); plot(w/pi,imagX); grid xlabel('frequency in pi units'); title('Imaginary Part'); ylabel('Imaginary')  Nếu x(n) là một chuỗi xác định N giá trị trong khoảng [n1,n2] thì DTFT trong Matlab được viết như sau: k=[0:M]; n=[n1:n2]; ( ) ( ) jn n X x n e        1 ( ) ( ) 2 jn x n X e d         ( ) n x n     
  • 20. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 20 X=x*(exp(-j*pi/M)).^(n'*k);
  • 21. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 21 Ví dụ 2: xác định và vẽ DTFT cho tín hiệu sau: x(n)=[1 2 3 4 5] với 501 điểm trong khoảng [0,∏ ] Chương trình n = -1:3; x = 1:5; k = 0:500; w = (pi/500)*k; X = x * (exp(-j*pi/500)) .^ (n'*k); magX = abs(X); angX = angle(X); realX = real(X); imagX = imag(X); subplot(2,2,1); plot(w/pi,magX); grid xlabel('frequency in pi units'); title('Magnitude Part'); ylabel('Magnitude') subplot(2,2,3); plot(w/pi,angX); grid xlabel('frequency in pi units'); title('Angle Part'); ylabel('Radians') subplot(2,2,2); plot(w/pi,realX); grid xlabel('frequency in pi units'); title('Real Part'); ylabel('Real') subplot(2,2,4); plot(w/pi,imagX); grid xlabel('frequency in pi units'); title('Imaginary Part'); ylabel('Imaginary') Kết quả ví dụ 1 Kết quả ví dụ 2 4.2 Đáp ứng tần số của hệ thống LTI Nếu hệ thống LTI có đáp ứng xung h[n], thì đáp ứng tần số của nó được xác định bằng DTFT h[n] H(ejω ) là một hàm phức của ω tuần hoàn với chu kỳ 2π nên có thể biểu diễn dưới dạng
  • 22. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 22 Trong đó, |H(Ω)| được gọi là đáp ứng biên độ,Φ(Ω) gọi là đáp ứng pha. Đáp ứng tần số của hệ thống có thể được viết từ phương trình sai phân tuyến tính hệ số hằng mô tả mô tả quan hệ vào/ra của hệ thống đó và được biểu diễn dưới dạng các hệ số của lọc Đáp ứng tần số được tính bằng lệnh có cú pháp h=freqz(b,a,w). Trong đó a,b là các hệ số của phương trình trên và w là khảong giá trị tần số tính đáp ứng.  Ví dụ: Tính đáp ứng tần số và đáp ứng pha của hệ thống LTI có biểu thức sau: Chương trình clf; w=0:pi/511:pi; num=[1 -1.9021 1]; den=[1 -1.8523 0.94833]; h=freqz(num,den,w); figure(1); subplot(2,1,1) plot(w/pi,abs(h)); title('Magnitude response'); subplot(2,1,2); plot(w/pi,angle(h)); title('Phase response'); 4.3 Biến đổi z 4.3.1 Định nghĩa Biến đổi z của tín hiệu rời rạc x(n) được định nghĩa là
  • 23. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 23 Trong đó, z là biến số phức. Định nghĩa trên còn được gọi là biến đổi z hai bên. Ta sẽ có biến đổi z một bên khi thay giới hạn từ 0 đến ∞. Vùng hội tụ (ROC): là vùng chứa giá trị z sao cho |X(z)| hữu hạn.
  • 24. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 24 4.3.2 Biến đổi z ngược Biến đổi z ngược được định nghĩa như sau Trong đó C là vòng tròn kín bao quanh gốc toạ độ nằm trong vùng hội tụ của X(z). Phép biến đổi z cho phép chúng ta phục hồi lại dãy tín hiệu rời rạc x(n) khi biết biến đổi z của nó. Phép biến đổi z ngược thường được sử dụng để tìm đáp ứng xung của lọc số. Để tính biến đổi z ngược bằng phương pháp thặng dư, ta sử dụng hàm residuez để khai triển X(z) thành các phân thức riêng sau đó dùng bảng biến đổi z để biến đổi z ngược cho mỗi phân thức riêng. Khi dùng hàm residuez, X(z) phải được viết dưới dạng hữu tỷ trong đó tử số và mẫu số là những đa thức viết theo luỹ thừa tăng dần của z-1 . Cú pháp hàm trong Matlab như sau: [R,p,C]=residuez (b,a) Với b,a là hai vecto chứa hệ số của hai đa thức B(z) và A(z). Vecto R chứa giá trị thặng dư, vecto p chưa các giá trị cực và vecto C chứa các số hạng trực tiếp. Ví dụ: Thực hiện khai triển từng phần cho biểu thức sau 2 ( ) 3 4 1 z X z z z    Chương trình Đầu tiên ta cần sắp xếp lại X(z) theo dạng các luỹ thừa của z-1 1 1 1 2 1 2 0 ( ) 3 4 3 4 z z X z z z z z              Chương trình trong Matlab b=[0 1]; a=[3 -4 1]; [R,p,C]=residuez(b,a) R= 0.5000 -0.5000 p =
  • 25. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 25 1.0000 0.3333 C = []  Vậy 1 1 0.5 0.5 ( ) 1 1 1 3 X z z z       Để viết ngược lại biểu thức X(z) ta cũng có thể dùng hàm residuez với cú pháp [b,a]=residuez(R,p,C)  4.4 Giản đồ cực không Biến đổi z X(z) của tín hiệu hay H(z) của hệ thống là một hàm hữu tỷ của hai đa thức được viết dưới dạng như sau Trong đó G là thừa số độ lợi z1,z2,..,zN là các không của X(z), N là bậc của đa thức tử số p1,p2,...,pM là các cực của X(z), M là bậc của đa thức mẫu số Vị trí các cực và các không trong mặt phẳng z được gọi là giản đồ cực-không, hay phân bố cực-không Trong Matlab, giản đồ cực-không được vẽ bằng lệnh zplane. Hàm này có 2 cách gọi: - Nếu X(z) có dạng hàm chuyển thì sư dụng lệnh zplane(num,den) với num, den là hệ số của các đa thức ở từ số và mẫu số. - Nếu các điểm không và điểm cực của hệ thống đã được cho thì dùng lệnh zplane(zeros,poles) với zeros,planes là các vecto chứa các điểm không và cực. Trong Matlab, việc xác định các điểm cực, không của hệ thống có hàm truyền hữu tỷ được thực hiện bằng hàm [z,p,k]=tf2zp(num,den). Trong đó,k là hệ số khuếch đại, z, p là các vecto chứa các điểm không, cực của hệ thống theo thứ tự tăng dần z-1 . Ví dụ: Xác định các điểm cực, không và vẽ giản đồ cực-không của hệ thống sau: 1 2 1 2 1 2 3 ( ) 2 4 4 z z H z z z          Chương trình num=[1 2 3]; den=[2 4 4]; [z,p,k]=tf2zp(num,den) zplane(num,den) % hay zplane(z,p) z =
  • 26. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 26 -1.0000 + 1.4142i -1.0000 - 1.4142i p = -1.0000 + 1.0000i -1.0000 - 1.0000i k = 0.5000
  • 27. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 27 4.5 Bài tập 1) Viết 1 hàm matlab để tính DTFT của chuỗi tín hiệu có độ dài hữu hạn có cú pháp như sau function [X]= dtft(x,n,w) Sử dụng hàm trên để tính DTFT cho tín hiệu x(n)=[4 3 2 1 2 3 4] và vẽ phổ biên độ, phổ pha của nó. 2) Tính DTFT và vẽ phổ biên độ, phổ pha của tín hiệu sau x(n)=n(0.5)n u(n). 3) Tìm biến đổi z ngược của hàm sau: 4) Cho hệ thống nhân quả y(n)=0.9y(n-1)+x(n) a) Tìm H(z) và vẽ gảin đồ cực-không b) Vẽ đáp ứng biên độ và đáp ứng pha c) Tìm đáp ứng xung h(n)
  • 28. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 28 BÀI 5: BIẾN ĐỔI DFT VÀ FFT 5.1 Biến đổi DFT 5.1.1 Định nghĩa Biến đổi Fourier (DFT) của dãyc ó chiều dài hữu hạn x(n) với 0 ≤ n ≤ N được xác định bằng biểu thức Với k=1,2,…,N-1. Biến đổi DFT ngược (IDFT) được cho bởi công thức 5.1.2 DFT trong Matlab Trong Matlab, biến đổi DFT và IDFT được thực hiện bởi hàm sau Biến đổi DFT thuận function [Xk]=dft(xn,N) % Xk la cac he so DFT có chỉ số từ 0 đến N-1 % xn la chuoi tin hieu xac dinh N % N la do dai cua DFT n=[0:1:N-1]; % vecto hang cua n k=[0:1:N-1]; % vecto hang cua k WN=exp(-j*2*pi/N); % tinh he so WN nk=n'*k; % tao ma tra NxN cua gia tri nk WNnk=WN.^nk; % ma tran DFT Xk=xn*WNnk; % vecto hang cua cac he so DFT Biến đổi DFT nghịch function [xn]=idft(Xk,N) % xn la chuoi tin hieu n diem tu 0 den N-1 % Xk la vecto hang he so DFT % N la chieu dai cua DFT n=[0:1:N-1]; % vecto hang cua n k=[0:1:N-1]; % vecto hang cua k WN=exp(-j*2*pi/N);% he so WN nk=n'*k; % tao ma tran NxN gia tri nk
  • 29. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 29 WNnk=WN.^(-nk);% ma tran IDFT Xk=xn*WNnk/N; % vecto hang cua cac gia tri IDFT
  • 30. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 30 Khi ta muốn thực hiện DFT M điểm đối với tín hiệu có chiều dài N (M>N) thì tín hiệu x[n] phải được thêm vào M-N giá trị 0 trước khi tính DFT. Việc thêm giá trị 0 được thực hiện bằng hàm zeros Ví dụ: Tính DFT 8 điểm của tín hiệu sau 1,0 3 ( ) 0, n x n otherwise       % xn=[1 1 1 1 ], N=4; Chương trình N=input('chieu dai N cua day='); M=input('chieu dai M cua X[k]='); x=[ones(1,N) zeros(1,M-N)]; n=0:1:length(x)-1; X=dft(x,M); subplot(3,1,1); stem(n,x) title(' Day x[n]'); subplot(3,1,2); k=0:1:M-1; stem(k,abs(X)); title('Bien do cua DFT X[k]') subplot(3,1,3); stem(k,angle(X)); title('Pha cua DFT X[k]'); 5.1.3 Các tính chất của DFT 5.1.3.1 Dịch chuyển vòng theo thời gian và tần số Đây là tính chất quan trọng nhất của DFT Nếu G[k] là DFT N điểm của dãy g[n] dài N mẫu thì DFT N điểm của dãy dịch vòng theo thời gian là g[(n-n0)N] sẽ là WN kn0 G[k] với WN=e(-j2π/N). Nếu G[k] là DFT N điểm của dãy g[n] dài N mẫu thì DFT N điểm của dãy WN kn0 g[n] với WN=e(-j2π/N) sẽ là G[(k-k0)N]. Trong Matlab, tính chất dịch chuyển vòng được thực hiện nhờ hàm circshift như sau function y=circshift(x,m,N) if length(x)>N error('N phai lon hon hoac bang x') end x=[x zeros(1,N-length(x))]; n=[0:1:N-1]; n=mod(n-m,N); y=x(n+1);
  • 31. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 31 Ví dụ: Cho tín hiệu x[n]=[0 1 2 3 4 5 6 7 8 9]. Thực hiện dịch chuyển vòng 6 mẫu trong khoảng N=15 Chương trình clf; x=[0 1 2 3 4 5 6 7 8 9 10]; y=circshift(a,6,15); n=0:14; x=[x zeros(1,4)]; subplot(2,1,1); stem(n,x); title('Tin hieu ban dau') subplot(2,1,2); stem(n,y); title('Tin hieu duoc dich vong') Thực hiện biến đổi DFT của tín hiệu sau khi dịch vòng để làm rõ tính chất dịch vòng trong miền thời gian Chương trình clf; x=[0 1 2 3 4 5 6 7 8 9 10]; y=circshift(x,6,15); n=0:14; x=[x zeros(1,4)]; XF=dft(x,15); YF=dft(y,15); subplot(2,2,1) stem(n,abs(XF)); title('Pho bien do cua tin hieu x') subplot(2,2,2) stem(n,abs(YF)); title('Pho bien do cua tin hieu y') subplot(2,2,3) stem(n,angle(XF)); title('Pho pha cua tin hieu x') subplot(2,2,4) stem(n,angle(YF)); title('Pho pha cua tin hieu y') 5.1.3.2 Nhân chập vòng Nếu X[k] và H[k] là 2 DFT của hai dãy có cùng chiều dài N x[n] va h[n] thì DFT N điểm của dãy nhân chập vòng giữa x[n] và h[n] sẽ là X[k]H[k] Để thực hiện nhân chập vòng ta dùng hàm Matlab sau
  • 32. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 32
  • 33. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 33 function y=circonvt(x1,x2,N) if length(x1)>N error('N phai lon hon hoac bang x1') end if length(x2)>N error('N phai lon hon hoac bang x2') end x1=[x1 zeros(1,N-length(x1))]; x2=[x2 zeros(1,N-length(x2))]; m=[0:1:N-1]; x2=x2(mod(-m,N)+1); H=zeros(N,N); for n=1:1:N H(n,:)=circshift(x2,n-1,N); end y=x1*H'; Ví dụ: Thực hiện nhân chập vòng cho hai tín hiệu x[n]=[1 2 2], h[n]=[1 2 3 4]. So sánh với nhân chập thẳng. Chương trình x=[1 2 2]; x=[1 2 3 4]; y=circonvt(x,,4) y1=conv(x,h) Kết quả y = 15 12 9 14 y1 = 1 4 9 14 14 8 5.2 Biến đổi FFT Trên thực tế, chúng ta thường gặp trường hợp thực hiện DFT với các dãy có chiều dài khác xa nhau, một dãy trong phép DFT quá dài sẽ dần đến vượt quá dung lượng của bộ nhớ và thời gian tính toán cho phép. Để có được mẫu đầu tiên của kết quả phải đợi kết thúc tất cả quá trình tính toán. Nhờ tính thuận lợi của tính chất đối xứng hình học và tính tuần hoàn của các hệ số mũ trong công thức của DFT ta có thể giảm số lượng phép nhân cần thiết trong tính toán từ N2 xuống Nlog2N với N là số mũ cơ số 2. Đối với các dãy có N không phải là cơ số mũ của 2 thì ta có thể thêm các giá trị 0 để đạt đến kết quả. Để phát triển các thuật toán DFt có khả năng tính toán cao, người ta thường chia nhỏ liên tiếp sự phức tạp DFT N điểm thànhc ác DFT cấp nhỏ hơn và đưa ra một loạt thuật toán có tính hiệu quả được gọi là tập các thuật toán biến đổi Fourier nhanh FFT
  • 34. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 34 Trong Matlab, để tính FFT ta sử dụng hàm fft và FFT ngược là ifft. Hàm này cũng có 2 cách thực hiện:  fft(x) cho DFT X[k] của x(n), cả hai dãy có cùng độ dài  fft(x,M) tính DFT M điểm của dãy x(n) có chiều dài N. Nếu M>N thì dãy x(n) phải được điền thêm M-N giá trị 0 trước khi tính DFT Nhân chập nhanh Có thể dùng thuật toán FFT để thực hiện việc nhân chập giữa 2 dãy x[n] có chiều dài Nx và dãy h[n] có chiều dài Nh. Nếu số điểm tính FFT chọn là N=2m với m=log2(Nx+Nh-1) lấy phần nguyên lớn hơn m (hàm ceiling) thì thuật toán này gọi là nhân chập nhanh. Với thuật toán này thì phép nhân chập thẳng giửa 2 dãy x[n] và h[n] khi N lớn được thực hiện rất nhanh nhờ FFT N điểm và một IFFT N điểm và một phép nhân N điểm. Hàm conv (dùng hàm filter) để tính nhân chập rất hiệu quả khi N<50. Đối với N lớn hơn, ta dùng FFT để thực hiện việc tính toán nhanh hơn. Ví dụ: So sánh thời gian thực hiện của 2 phép tính nhân chập. Cho x1[n] là các số ngẫu nhiên phân bố đều L điểm trong khoảng [0 1], x2[n] là chuỗi phân bố Gauss L điểm với giá trị trung bình =0, phương sai bằng 1. Xác định thời gian thực hiện trung bình với 1≤L≤1000. Chương trình conv_time = zeros(1,1000); fft_time = zeros(1,1000); for N = 1:1000 tc = 0; tf=0; L = 2*N-1; nu = round((log10(L)/log10(2))+0.45); L = 2^nu; for I=1:100 h = randn(1,N); x = rand(1,N); t0 = clock; y1 = conv(h,x); t1=etime(clock,t0); tc = tc+t1; t0 = clock; y2 = ifft(fft(h,L).*fft(x,L)); t2=etime(clock,t0); tf = tf+t2; end conv_time(N)=tc/100; fft_time(N)=tf/100; end n = 1:1000; subplot(1,1,1); plot(n(25:1000),conv_time(25:1000),n(25:1000),fft_time(25:1000)) save times.txt conv_time fft_time -ascii -tabs load times.txt -ascii; conv_time=times(1,:); hsconv_time=times(2,:); n = 1:1000; subplot(1,1,1); plot(n(25:1000),conv_time(25:1000),n(25:1000),hsconv_time(25:1000))
  • 35. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 35 5.3 Bài tập 1. Cho hàm x[n] =cos(0.48πn)+cos(0.52πn) a) Tìm và vẽ DFT của x[n] với N=10 b) Lặp lại câu a với N=100 2. Biến đổi chương trình ví dụ của bài tích chấp vòng để cho ra kết quả giống tích chập thẳng. 3. Tính FFT và phân tích phổ của hàm cho ở câu 1 với N=16, số điểm tính FFT là 128 điểm.
  • 36. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 36 Bài 6: THIẾT KẾ MACH LỌC FIR 6.1 Giới thiệu về lọc tương tự và lọc số 6.1.1 Tổng quan và phân lọai Trong xử lý tín hiệu, nhiệm vụ của một mạch lọc là loại bỏ những thành phần tín hiệu không mong muốn (như là tín hiệu nhiễu) hay lấy ra những thành phần có ích của tín hiệu nằm bên trong một dải tần số nhất định. Có 2 loại lọc chính là lọc tương tự và lọc số  Lọc tương tự: sử dụng những mạch điện tương tự được làm từ những thành phần như điện trở, tụ điện và opamp để tạo nên những hiệu quả lọc theo mong muốn. Những mạch lọc như thế đưọc sử dụng rộng rãi trong các ứng dụng như loại nhiễu, nâng cao chất lượng video, mạch cân bằng đồ họa trong các hệ thống hi-fi và nhiều lĩnh vực khác. Trong việc thiết kế mạch lọc tương tự , có những kỹ thuật theo những tiêu chuẩn đã được xây dựng cho những yêu cầu nhất định. Tại tất cả các tầng của mạch lọc, tín hiệu được lọc thường là tín hiệu điện thế hay dòng điện có sự tương ứng với các tính chất vật lý liên quan.  Lọc số: sử dụng bộ xử lý số thực hiện những phép tính số học hay lấy mẫu tín hiệu. Bộ xử lý có thể là PC hay là chip DSP(Digital Signal Processor) chuyên dụng. Tín hiệu tương tự ở ngõ vào đầu tiên phải được lấy mẫu và số hóa bằng bộ ADC. Kết quả thu được sẽ là một chuỗi số nhị phân và được đưa tới bộ xử lý thực hiện các phép tính trên chúng. Những phép tính này chủ yếu là những phép nhân với hằng số và phép cộng những tích số lại với nhau. Kết quả cuối cùng sau khi lọc số được chuyển đổi lại thành tín hiệu tương tự thông qua bộ DAC. Chú ý là trong lọc số, tín hiệu được thể hiện dưới dạng chuỗi số chứ không phải là dạng điện thế hay dòng điện.
  • 37. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 37
  • 38. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 38 6.1.2 Những ưu điểm của việc sử dụng mạch lọc số : 1- Mạch lọc số có thể lập trình được, họat động của nó được quyết định bởi một chương trình có trong bộ nhớ của bộ xử lý. Điều đó có nghĩa là lọc số có thể dễ dàng thay đổi mà không ảnh hưởng tới phần cứng của mạch. Trong khi đó muốn thay đổi một mạch lọc tương tự, ta phải thiết kế lại phần mạch. 2- Mạch lọc số có thể dễ dàng thiết kế , kiểm tra và thực hiện trên máy tính 3- Những đặc tính của mạch lọc tương tự (đặc biệt là đối với những thành phần tích cực) có thể thay đổi theo nhiệt độ trong khi đó mạch lọc số cực kỳ bền với nhiệt độ và thời gian. 4- Không giống như với mạch lọc tương tự, mạch lọc số có thể thực hiện ở những tần số thấp cực kỳ chính xác. Và với sự tiến bộ không ngừng của DSP, các lọc số có thể được thực hiện tại miền tần số cao (RF), là điều khó có thể đối với lọc tương tự 5- Lọc số có độ linh họat cao trong việc xử lý tín hiệu bằng nhiều cách khác nhau.Những bộ DSP nhanh có thể thực hiện việc kết hợp các lọc theo cách song hay nối tiếp, làm cho phần cứng của mạch rất đơn giản và gọn gàng so với một mạch tương tự có tính năng tương đương. 6.1.3 Thuật tóan của mạch lọc Cho một tín hiệu ban đầu là một dạng điện thế V=x(t) trong đó t là thời gian. Tín hiệu này được lấy mẫu với chu kỳ Ts. Tín hiệu được lấy mẫu tại thời điểm T = nTs là xi=x(nTs). Do đó tín hiệu được đưa đến bộ xử lý là một chuỗi các tín hiệu có ký hiệu : x0, x1, x2, x3,.. ,xn tương ứng với giá trị của tín hiệu tại các thời điểm T = 0, Ts, 2Ts, 3Ts, … với T=0 là thời điểm bắt đầu lấy mẫu. Tại thời điểm T = nTs, với n là số nguyên dương, các giá trị được lưu trong bộ nhớ của bộ xử lý là x0, x1, x2, x3,.., xn. Chú ý là các giá trị xn+1, xn+2 chưa tồn tại Ngõ ra của bộ xử lý đến DAC bao gồm một chuỗi các giá trị y0,y1, y2, y3,…,yn. Cách thức mà giá trị yn được tính từ các giá trị x0, x1, x2, x3,.., xn gọi là thuật toán của mạch lọc số. Một số mạch lọc số đơn giản như: mạch lọc độ lợi đơn vị, mạch lọc độ lợi K, mạch lọc trì hõan một đơn vị, mạch lọc hiệu số, mạch lọc lấy trung bình, mạch lọc lấy điểm giữa. 6.1.4 Bậc của mạch lọc Bậc của một lọc số là số ngõ vào trước đó (được lưu trữ trong bộ nhớ) để tính ngõ ra hiện tại. Một mạch lọc có thể có bậc từ 0 đến ∞.  . Lọc tuyến tính và bất biến thời gian (LTI) được đặc trưng bởi đáp ứng xung h(n) của nó. Đáp ứng đối với tín hiệu bất kỳ x(n) sẽ là nhân chập của h(n) với x(n) như đã trình bày ở trước. Xét từ phương trình hiệu số hay cấu trúc của lọc người ta chia lọc ra làm 2 loại lớn là đệ quy (recursive) và phi đệ quy (non- recursive).  Lọc phi đệ quy: Lọc mà tín hiệu ra chỉ phụ thuộc vào tín hiệu vào được gọi là phi đệ quy. Phương trình hiệu số của lọc đệ quy là Trong đó bk là các hệ số của lọc cũng chính là đáp ứng xung của hệ thống. Trên thực tế N sẽ là số hữu hạn vì thế lọc phi đệ quy thực tế là lọc FIR.
  • 39. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 39  Lọc đệ quy: là lọc mà tín hiệu ra phụ thuộc vào tín hiệu vào ở mọi thời điểm và cả tín hiệu ra trước đó. Phương trình hiệu số của lọc đệ quy là
  • 40. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 40 Trong đó M là bậc của lọc.Lọc có sự hồi tiếp từ ngõ ra ngược lại đến 1 nơi nào đó của ngõ vào khiến cho lọc có đáp ứng xung lâu vô hạn hay còn được gọi là lọc IIR. 6.2 Lý thuyết thiết kế mạch lọc số Việc thiết kế 1 lọc số bao gồm 3 bước chính: - Thông số kỹ thuật: Trước khi thiết kế một mạch lọc, ta cần phải biết những đặc điểm kỹ thuật của nó. Những đặc điểm này tuỳ thuộc vào vào ứng dụng yêu cầu trong đó mạch lọc được sử dụng. Có 2 loại thông số kỹ thuật là thông số kỹ thuật tuyệt đối và thông số kỹ thuật tương đối. Thông số kỹ thuật tuyệt đối - Dải qua (bandpass) [0,ωp] và δ1 là độ gợn sóng cho phép trong dải qua lý tưởng. - Dải chặn (stoppass) [ωs,π] và δ2 là độ gợn sóng cho phép trong dải chặn lý tưởng. - Dải chuyển (transition band) [ωp,ωs] và thường không có yêu cầu đặc biệt trong dải này. Thông số kỹ thuật tương đối - Độ gợn sóng trong dải qua (dB) - Độ suy giảm trong dải chặn (dB) Hai loại thông số này có liên hệ với nhau: 1 10 2 1 20log 0( 0) 1 p R         Và 2 10 1 20log 0( 1) 1 S A        - Thiết kế: Khi đã biết những đặc điểm kỹ thuật, ta sẽ sử dụng các phương pháp toán học trong việc thiết kế mạch lọc số khác nhau để xấp xỉ và tính toán các đặc điểm đó. - Thực hiện: Kết quả của quá trình tính toán ở trên cho ta được mô tả của lọc ở dạng phương trình vi phân, hàm chuyển, hay đáp ứng xung. Từ những phương trình này ta thực hiện việc thiết kế mạch.
  • 41. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 41 Hiện tại, ta chỉ tìm hiểu bước thứ 2 của quá trình trên và thực hiện việc tính toán chủ yếu trên 1 mạch lọc số thông thấp. 6.3 Thiết kế mạch lọc số FIR dùng phương pháp cửa sổ Vì thiết kế trong lĩnh vực thời gian tương ứng với nhân chập trong lĩnh vực tần số nên tiêu chuẩn thiết kế các mạch lọc FIR là tìm một cửa sổ rất hẹp mà biến đổi Fourier của nó có đỉnh cánh bên của nó rất nhỏ so với đỉnh của cánh chính. Trong trường hợp tổng quát, kỹ thuật thiết kế mạch lọc số FIR dùng hàm cửa sổ là nhân đáp ứng xung mong muốn với các hàm cửa sổ thích hợp h[n]=hd[n]*a[n] Trong đó hd[n] là đáp ứng xung lý tưởng, a[n] là đáp ứng của hàm cửa sổ. Hộp công cụ của Matlab có các hàm cửa sổ ω= boxcar(M) ω= triang(M) ω= hanning(M) ω= hamming(M) ω= blackman(M) ω= kaiser(M,β) Các hàm cửa sổ trên cho ra vecto ω chứa các hệ số cửa sổ có chiều dài M. Trong đó,hàm cửa sổ Kaiser cho ta thiết kế tối ưu 6.3.1 Các phương trình thiết kế cho hàm cửa sổ và cửa sổ Kaiser Cho những thông số kỹ thuật ban đầu của lọc là ωp, ωs, Rp và As Độ rộng vùng chuyển tiếp
  • 42. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 42 Bậc của lọc Thông số β Chương trình Matlab tạo ra một hàm đáp ứng xung thấp qua lý tưởng hd[n] như sau function hd=ideal_lp(wc,M) % wc la tan so cat(rad) %M la do dai cua loc ly tuong wc=input('Nhap tan so cat:'); M=input('Nhap bac loc:'); alpha=(M-1)/2; n=[0:1:(M-1)]; m=n-alpha+eps; hd=sin(wc*m)./(pi*m); fvtool(hd,1) Chương trình Matlab để vẽ đáp ứng biên độ trong miền tần số của lọc theo độ lớn giá trị tuyệt đối và theo dB function [db,mag,grd,w]= freqz_m(b,a) % db: do lon tuong doi duoc tinh torng khoang tu 0 den pi % mag: do lon tuyet doi tinh trong khoang tu 0 den pi %pha: dap ung pha trong khoang tu 0 den pi %w: 501 mau tan so trong khoang tu 0 den pi % b: he so cua cac da thuc tu so cua H(z) % a: he so cua cac da thuc mau so cua H(z) [H,w]=freq(b,a,1000,'whole'); H=(H(1;1:501))'; w=(w(1:1:501)); mag=abs(H); db=20*log10((mag+eps)/max(mag));
  • 43. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 43 pha=angle(H); grd=grddelay(b,a,w); Ví dụ: Thiết kế mạch lọc số thấp qua dùng hàm cửa số Kaiser với các thông số như sau ωp=0.2π , ωs=0.3π, Rp=0.25dB, As=50dB. Chương trình wp = 0.2*pi; ws = 0.3*pi; As = 50; tr_width = ws - wp; M = ceil((As-7.95)/(14.36*tr_width/(2*pi))+1) n=[0:1:M-1]; beta = 0.1102*(As-8.7); wc = (ws+wp)/2; hd = ideal_lp(wc,M); w_kai = (kaiser(M,beta))'; h = hd .* w_kai; [db,mag,pha,grd,w] = freqz_m(h,[1]); delta_w = 2*pi/1000; As = -round(max(db(ws/delta_w+1:1:501))) % Min Stopband Attenuation % Plots subplot(2,2,1); stem(n,hd); title('Ideal Impulse Response') axis([0 M-1 -0.1 0.3]); xlabel('n'); ylabel('hd(n)') ; subplot(2,2,2); stem(n,w_kai); title('Kaiser Window'); axis([0 M-1 0 1.1]);xlabel('n'); ylabel('w(n)') subplot(2,2,3); stem(n,h);title('Actual Impulse Response') axis([0 M-1 -0.1 0.3]); xlabel('n'); ylabel('h(n)') subplot(2,2,4);plot(w/pi,db);title('Magnitude Response in dB');grid;axis([0 1 -100 10]); xlabel('frequency in pi units'); ylabel('Decibels') set(gca,'XTickMode','manual','XTick',[0,0.2,0.3,1]); set(gca,'YTickMode','manual','YTick',[-50,0]) % set(gca,'YTickLabelMode','manual','YTickLabels',['50';' 0'])
  • 44. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 44 6.4 Bài tập 1) Thiết kế mạch lọc số với các thông số ωp=0.2π , ωs=0.3π, Rp=0.25dB, As=50dB sử dụng hàm cửa sổ Hamming. So sánh kết quả với hàm cửa sổ Kaiser. Bậc của lọc là bao nhiêu? 2) Cho các thông số kỹ thuật của một lọc dải qua như sau ωs1=0.2π , As=60dB ωs2=0.8 π, As=60dB wp1=0.35 π, Rp=1dB wp2=0.65 π, rp=1dB Gợi ý: Sử dụng hai mạch lọc thấp qua lý tưởng như hình trên
  • 45. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 45 BÀI 7: THIẾT KẾ MẠCH LỌC IIR 7.1 Giới thiệu mạch lọc IIR Mạch lọc IIR có đáp ứng xung lâu vô hạn thời gian, vì thế chúng giống như mạch lọc tương tự. Do đó, kỹ thuật cơ bản để thiết kế mạch lọc IIR là biến đổi các mạch lọc tương tự đã biết sang mạch lọc số sử dụng phép biến đổi Laplace giá trị phức. Kỹ thuật này gọi là biến đổi lọc A/D. Tuy nhiên kỹ thuật này chỉ áp dụng cho mạch lọc thông thấp mà thôi. Nếu muốn thiết kế các loại lọc khác như: lọc thông cao, lọc thông dải và lọc chặn dải thì ta phải áp dụng kỹ thuật biến đổi dải tần. Các bước thiết kế cơ bản - Thiết kế lọc thông thấp tương tự. - Áp dụng kỹ thuật biến đổi lọc A/D để chuyển thành lọc thông số thấp. - Áp dụng kỹ thuật biến đổi dải tần để chuyển đổi mạch lọc số thông thấp sang các mạch lọc số khác. Có hai cách thiết kế cơ bản một mạch lọc IIR dùng cả hai kỹ thuật trên 7.2 Một số loại mạch lọc thấp qua tương tự 7.2.1 Mạch lọc thấp qua Butterworth Đáp ứng biên độ Với N là bậc của mạch lọc và ΩC là tần số cắt
  • 46. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 46 7.2.2 Mạch lọc thấp qua Chebyshev Đáp ứng biên độ Với N là bậc của mạch lọc, ε là hệ số nhấp nhô trong dải thông (liên quan đến hệ số Rp) và TN là hàm Chebyshev bậc N.
  • 47. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 47
  • 48. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 48 7.2.3 Mạch lọc thấp qua Elliptic Đáp ứng biên độ Với N là bậc của mạch lọc, ε là hệ số nhấp nhô trong dải qua, UN là hàm Elliptic jacobian bậc N 7.3 Phép biến đổi lọc tương tự sang số (Kỹ thuật A/D) 7.3.1 Phương pháp bất biến xung Cho những thông số kỹ thuật ban đầu của lọc như ωp, ωs, Rp và As. Để xác định H(z) trước tiên phải thiết kế mạch lọc tương tự tương đương rồi sau đó ánh xạ thành mạch lọc số mong muốn. Các bước tiến hành - Chọn T và xác định các thông số cho mạch lọc tương tự - Thiết kế mạch lọc tương tự từ các thông số ở trên với một trong 3 mạch lọc trên.
  • 49. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 49 - Sử dụng khai triển phân thức riêng phần Ha(s) thành dạng - Biến đổi các điểm cực sk của mạch lọc tương tự thành các điểm cực của mạch lọc số pk=e sk T để thu được mạch lọc số 7.3.2 Biến đổi song tuyến Cho những thông số kỹ thuật ban đầu của lọc như ωp, ωs, Rp và As. Để xác định H(z) cần theo những bước sau đây Các bước tiến hành - Chọn giá trị T, T có thể lấy giá trị bất kỳ. Thông thường ta cho T=1 - Tính các thông số cho mạch lọc tương tự bằng các công thức - Thiết kế mạch lọc tương tự với các thông số Ωp, Ωs, Rp, As với một trong 3 loại lọc trên. - Cuối cùng, biến đổi 7.4 Thiết kế mạch lọc IIR trên Matlab Để thiết kế mạch lọc IIR dựa trên biến đổi song tuyến, công cụ xử lý tín hiệu của Matlab chứa 4 hàm số gần đúng: Buterworth, Chebyshev 1, Chebyshev 2 và Elliptic. Các hàm sau đấy được sử dụng [b,a]=butter(N,wn). [b,a]=cheby1(N,Rp, wn) [b,a]=cheby2(N,Rp, wn) [b,a]=ellip(N,Rp,As, wn) Với wn là tần số chuẩn hoá cho π Các hàm này xác định hàm truyền của mạch lọc thông thấp bậc N và với tần số wn nằm giữa khoảng 0 và 1. Tần số lấy mẫu được giả thiết là 2Hz. Dạng của hàm truyền thu được là
  • 50. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 50 Ví dụ: Thiết kế mạch lọc số thấp qua Butterworth bằng phép biến đổi song tuyến với các quy định sau ωp=0.2π , ωs=0.3π, Rp=1dB, As=15dB. Chương trình wp = 0.2*pi; ws = 0.3*pi; Rp = 1; As = 15; % Analog Prototype Specifications: T = 1; OmegaP = (2/T)*tan(wp/2); OmegaS = (2/T)*tan(ws/2); sqrt(10^(Rp/10)-1); Ripple = sqrt(1/(1+ep*ep)); Attn = 1/(10^(As/20)); N =ceil((log10((10^(Rp/10)-1)/(10^(As/10)-1)))/(2*log10(OmegaP/OmegaS))); fprintf('n*** Butterworth Filter Order = %2.0f n',N) OmegaC = OmegaP/((10^(Rp/10)-1)^(1/(2*N))); wn = 2*atan((OmegaC*T)/2); % Digital Butterworth Filter Design: wn = wn/pi; [b,a]=butter(N,wn); [b0,B,A] = dir2cas(b,a) Kết quả *** Butterworth Filter Order = 6 b0 = 5.7969e-004 B = 1.0000 2.0044 1.0045 1.0000 1.9956 0.9956 1.0000 2.0000 1.0000 A = 1.0000 -0.9459 0.2342 1.0000 -1.0541 0.3753 1.0000 -1.3143 0.7149 Hàm truyền là So sánh kết quả thiết kế 3 loại lọc với cùng yêu cầu bằng phương pháp bất biến xung ta được
  • 51. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 51 Lọc Elliptic cho kết quả thiết kế tốt nhất nhưng lại có đáp ứng pha tuyến tính trong vùng dải qua 7.5 Bài tập 1) Vẽ đáp ứng biên độ và pha cho ví dụ trên 2) Thực hiện thiết kế mạch lọc số như ví dụ trên cho loại lọc Elliptic và vẽ đáp ứng.
  • 52. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 52 BÀI 8: THIẾT KẾ MẠCH LỌC SỐ BẰNG CÔNG CỤ SPTOOL 8.1 Giới thiệu SPTool: là công cụ dùng trong xử lý tín hiệu số dạng tương tác mở. Giao diện người dùng SPTool gồm có 4 phần: Signal Browser, Filter Designer, FvTool và Spectrum Viewer Sử dụng SPTool ta có thể thực hiện được : - Phân tích tín hiệu trong Signal List box bằng Signal Browser. - Thiết kế hay thay đổi các bộ lọc với Filter Designer. - Phân tích những đáp ứng của lọc với FvTool. - Tạo và phân tích phổ của tín hiệu với Spectrum Viewer. Để thiết kế một lọc số, người dùng đưa vào các thông số yêu cầu như dạng lọc (FIR hay IIR), loại lọc (thấp qua hay cao qua), bậc của lọc,…Chương trình sẽ tính toán các hệ số của lọc tương ứng. Đồng thời người dùng có thể quan sát được một số đáp ứng của mạch lọc như đáp ứng biên độ, đáp ứng pha, đáp ứng xung… Để thực thi một chương trình ta chạy các bước sau - Khởi động Matlab, gõ sptool ở dòng lệnh. Cửa sổ Starup sẽ xuất hiện. - Chọn New để tiến hành thiết kế một mạch lọc mong muốn bằng công cụ FDATool. - Lựa chọn các thông số thích hợp. - Nhấn nút Design Filter để hoàn tất việc thiết kế. Để quan sát các đáp ứng của lọc sau khi thiết kế, click chọn View. Công cụ FVTool sẽ cho ta quan sát một số đồ thị đáp ứng: đáp ứng biên độ, đáp ứng pha, đáp ứng xung, các hệ số của lọc, giản đồ cực không,... Để trích lấy các hệ số của lọc ta chọn File Export Chọn nơi muốn lưu hệ số vào từ Export To, chọn loại thông tin sẽ export từ Export As, chọn tên biến ở Variable Name. Ngoài ra ta cũng có thể tiến hành ngược lại với File Import Filter from Workspace. 8.2 Phần thực hành Thiết kế một mạch lọc FIR thông thấp dùng cửa sổ Kaiser với các yêu cầu: Frequency pass (Fpass) = 2KHz Frequency stop (Fstop) = 3KHz Tần số lấy mẫu (Fs) = 20KHz Rp=0.25dB As=50dB Hướng dẫn 1- Khởi động Matlab, đánh sptool tại dấu nhắc lệnh.Cửa sổ Startup được mở
  • 53. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 53 2- Chọn New và nhập vào các thông số yêu cầu 3- Nhấn nút Design Filter để hoàn thành việc thiết kế
  • 54. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 54 4- Quan sát các đáp ứng của lọc vừa thiết kế bằng cách nhấn nút View từ cửa sổ Startup trong phần Filter Đáp ứng biên độ
  • 55. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 55 Đáp ứng pha Đáp ứng xung Thông tin về lọc
  • 56. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 56 Các hệ số của lọc
  • 57. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 57 Giản đồ cực-không 5- Để tiến hành export các hệ số của lọc, từ cửa sổ FDA Tool ta chọn File Export Nhấn nút Export sau khi lựa chọn xong 8.3 Bài tập 1) Thiết kế mạch lọc thấp qua loại IIR loại Butterworth với các thông số sau Frequency pass (Fpass) = 2KHz Frequency stop (Fstop) = 3KHz Tần số lấy mẫu (Fs) = 4KHz Rp=1dB As=25dB 2) Lặp lại thiết kế trên với lọc IIR loại Elliptic 3) So sánh hai kết quả vừa thiết kế được và rút ra kết luận.
  • 58. Trường Đại Học Khoa Học Tự Nhiên Giáo Trình Thực Tập Chuyên Đề 4 Khoa Vật Lý- Vật Lý Kỹ Thuật, Bộ Môn Vật Lý Điện Tử Phân Tích Và Xử Lý Tín Hiệu Số (DSP) Trang 58