Tải bản đầy đủ (.doc) (105 trang)

Đồ án tốt nghiệp đại học nghiên cứu thuật toán FFT và xây dựng ứng dụng phân tích phổ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (729.25 KB, 105 trang )

Mục Lục
Mở đầu..........................................................................................3
Chương 1: Tổng quan về Tín hiệu số và hệ thống xử lý tín
hiệu số............................................................................................5
1.1. Tín hiệu và hệ thống xử lý tín hiệu số.............................................5
1.1.1. Tín hiệu rời rạc theo thời gian:....................................................5
1.1.2. Các hệ thống xử lý tín hiệu số...................................................14
1.2. Lấy mẫu và khôi phục tín hiệu......................................................19
1.2.1. Lấy mẫu.....................................................................................20
1.2.2. Khôi phục tín hiệu.....................................................................22
1.3. Xử lý tín hiệu trong miền thời gian và miền tần số....................25
1.3.1. Xử lý tín hiệu trong miền thời gian...........................................25
1.3.2. Xử lý tín hiệu trong miền tần số................................................32

Chương 2: Biến đổi Fourier rời rạc..........................................44
2.1. Lấy mẫu trong miền tần số: Biến đổi Fourier rời rạc.................44
2.1.1. Lấy mẫu trong miền tần số và khôi phục lại tín hiệu rời rạc theo
thời gian...............................................................................................44
2.1.2. Biến đổi Fourier rời rạc(DFT)...................................................48
2.2. Phân tích tín hiệu trong miền tần số bằng DFT...........................49
2.3. Trình ứng dụng của DFT...............................................................53
2.3.1. Phân tích phổ của tín hiệu.........................................................53
2.3.2. Đáp ứng của hệ thống trong miền tần số...................................54
2.3.3. Công thức tổng chập trong miền tần số.....................................56

Chương 3: thuật toán biến đổi nhanh Fourier( FFT ) - cấu
trúc file wave...............................................................................57
3.1. Tính toán nhanh DFT – các thuật toán FFT................................57
3.1.1. Phương pháp tính trực tiếp của DFT.........................................57
3.1.2. Phương pháp chia nhỏ để tính DFT...........................................58
3.1.3. Thuật toán FFT cơ số 2 phân chia theo thời gian......................64


3.1.4.Ví dụ về tính toán fft cơ số hai với n=16...................................71
3.2. Cấu trúc file Wave..........................................................................78
3.2.1. Multimedia Windows................................................................78
3.2.2. Cấu trúc Wave file....................................................................80


CHƯƠNG 4: Thiết kế và xây dựng chương trình hiển thị phổ
tín hiệu file wave.........................................................................87
4.1. lưu đồ thuật giải và cấu trúc dữ liệu.............................................87
4.1.1. Sơ đồ khối.................................................................................87
4.1.2. Cấu trúc dữ liệu và định nghĩa..................................................88
4.2. Giao diện và thuyết minh chương trình.......................................91

Kết luận.......................................................................................94
Tài liệu tham khảo.....................................................................96

2


Mở đầu
Cuộc cách mạng khoa học và công nghệ đang diễn ra một cách sôi
động chưa từng thấy như hiện nay trên toàn thế giới thúc đẩy loài người
nhanh chóng bước sang một kỷ nguyên mới. Đó là kỷ nguyên của nền văn
minh dựa trên cơ sở công nghiệp trí tuệ. Mở đầu cho cho cuộc cách mạng
khoa học và công nghệ lần này có thể được đánh dấu bằng sự ra đời và phát
triển của máy tính cũng như các phương tiện xử lý thông tin khác, đặc biệt
là các hệ thống sử lý song song với tốc độ ngày càng cao. Cùng với sự phát
triển ngày càng nhanh chóng các công cụ sử lý tín hiệu số hiện đại. Đặc
biệt các phương pháp sử lý số này phải áp dụng có hiệu quả trong các lĩnh
vực thông tin liên lạc,phát thanh truyền hình,tự động điều khiển và các

nghành công nghệ khác. ở bất cứ nơi đâu bạn cũng sẽ gặp rất nhiều những
vật dụng trong cuộc sống được áp dụng kỹ thuật số, từ những vật dụng rất
đơn giản như những món đồ chơi trẻ em đến các vật dụng loại Hi – End đắt
tiền trong gia đình, ứng dụng trong truyền thông, các thiết bị chuyên dùng
trong truyền thông, phát thanh, truyền hình, các thiết bị của ngành khoa
học, y tế, giáo dục… đều được các nhà sản xuất tận dụng tối đa những ưu
thế của công nghệ số đưa vào trong sản phẩm của mình. Những chiếc máy
ảnh kỹ thuật số, máy tính số … với tốc độ phân giải cao nhưng kích thước
chỉ cỡ một bao thuốc lá, thậm chí là mỏng và nhỏ hơn, rất thời trang và rất
nhẹ đang dần thay thế những chiếc máy ảnh vận hành bằng cơ khí cổ điển
rất thịnh hành ở những năm cuối thế kỷ trước mà có lẽ bây giờ khi đi du
lịch, mang theo nó là một vấn đề cần phải cân nhắc, xem xét. Còn về các
dịch vụ viễn thông đa phương tiện, chắc chúng ta còn nhớ đến những chiếc
máy điện thoại để bàn quay tay, muốn thực hiện cuộc gọi thì phải đăng ký
với tổng đài, thì bây giờ tổng đài số đã được thay thế, các cuộc điện thoại

3


dùng cách gọi trực tiếp quay số IDD hết sức dễ dàng, tiện dụng. Sự phát
triển bùng nổ của công nghệ thông tin làm cho các dịch vụ Internet trở nên
gần gũi và giúp cho con người trên toàn thế giới có thể trao đổi và cập nhật
thông tin trực tuyến.
Đó chính là những thành quả thấy rất rõ của việc áp dụng kỹ thuật số
mà trong đó phân tích và xử lý tín hiệu số là vấn đề cốt lõi, căn bản của hệ
thống số. Đề tài: “ Nghiên cứu thuật toán FFT và xây dựng ứng

dụng phân tích phổ của tín hiệu” sẽ làm rõ hơn về vấn đề này.
Trong phạm vi của đề tài, em đã giải quyết được một số vấn đề sau:
 Chương I: Tổng quan về tín hiệu và hệ thống xử lý tín hiệu số

 Chương II: Biến đổi tín hiệu Fourier rời rạc
 Chương III: Thuật toán biến đổi nhanh Fourier (FFT) và Cấu
trúc file Wave.
 Chương IV: Thiết kế và xây dựng chương trình hiển thị phổ tín
hiệu file Wave.
Qua thời gian nghiên cứu, tìm hiểu ứng dụng. Đặc biệt được sự giúp
đỡ tận tình của Thầy giáo Tiến sỹ Dương Tử Cường, đề tài của em đã
được hoàn thành. Tuy vậy, không thể không có những thiếu sót vì đây là
một vấn đề còn mới, ít tài liệu đề cập đến hoặc có đề cập thì cũng chỉ sơ sài
chung chung, khó có thể thuật toán hoá, chương trình hoá. Em rất mong
được sự đóng góp chân thành của các thầy cô giáo và những người quan
tâm đến vấn đề này để đề tài của em được hoàn thiện hơn. Em xin chân
thành cảm ơn sự giúp đỡ nhiệt tình của bạn bè, thầy cô giáo đặc biệt là
Thầy giáo TS Dương Tử Cường đã hướng dẫn và quan sát quá trình thực
hiện đề tài của em.

4


Chương 1: Tổng quan về Tín hiệu và hệ thống xử lý tín hiệu
số
1.1. Tín hiệu và hệ thống xử lý tín hiệu số.
1.1.1. Tín hiệu rời rạc theo thời gian:
Định nghĩa tín hiệu: Tín hiệu là biểu diễn vật lý của thông tin.
Về mặt toán học, tín hiệu được biểu diễn bởi hàm của một hoặc nhiều
biến số độc lập. Nếu biến độc lập của sự biểu diễn toán học của một tín
hiệu là liên tục thì tín hiệu đó được gọi là tín hiệu liên tục. Còn nếu tín hiệu
được biểu diễn bởi hàm của các biến rời rạc, thì tín hiệu đó được gọi là tín
hiệu rời rạc( rời rạc ở đây được hiểu là rời rạc theo biến số). Hàm của tín
hiệu rời rạc là rời rạc thì tín hiệu đó được gọi là tín hiệu số.

Tín hiệu rời rạc theo thời gian là một chuỗi số có chỉ số( được định chỉ
số) các số thực hoặc số phức. Như vậy tín hiệu rời rạc theo thời gian là hàm
của biến độc lập có kiểu số nguyên n( biến nguyên n), ta kí hiệu là x(n).
Một điều quan trọng cần phải lưu ý là tín hiệu rời rạc theo thời gian không
được định nghĩa ở các thời điểm nằm giữa hai mẫu liên tiếp nhau. Cũng sẽ
không đúng nếu cho rằng x(n) sẽ có giá trị bằng 0 nếu giá trị của x(n)
không phải là số nguyên. Rất đơn giản, tín hiệu x(n) chỉ được định nghĩa
đối với các giá trị nguyên của n. Do vậy một tín hiệu có giá trị thực x(n) sẽ
được biểu diễn bằng đồ thị ở dạng giản đồ lollipop như được trình bày
trong hình 1.1.

5


3
2.5

2

1.8
0.5

-5

1.8

1.3

4


-3

-4

-2

-1

0

1

- 1.8

2

....
n

3
- 1.3

Hình 1.1. Biểu diễn đồ thị của tín hiệu rời rạc
theo thời gian
Trong nhiều bài toán cũng như trong nhiều ứng dụng, để thuận lợi ta
xem x(n) như là một vector. Các giá trị từ x(0) đến x(N-1) của chuỗi thường
được khảo sát như là các phần tử của một vector cột như sau:
x= [x(0), x(1), … , x(N-1)]T.
Trong khi nghiên cứu, chúng ta giả sử rằng tín hiệu rời rạc theo thời
gian được định nghĩa đối với giá trị nguyên của n thuộc khoảng - ∞ < n < +

∞. Theo qui ước chúng ta cũng sẽ xem x(n) như là “ mẫu thứ n” của tín
hiệu, thậm chí nếu tín hiệu này vốn đã là tín hiệu rời rạc( không phải là kết
quả của quá trình lấy mẫu tín hiệu rời rạc). Nếu cho rằng x(n) là tín hiệu
nhận được do quá trình lấy mẫu của tín hiệu tương tự xa(t) thì x(n) = x(nT),
trong đó T là chu kỳ lấy mẫu( thời gian giữa hai lần lấy mẫu liên tiếp nhau).
Chú ý: Chúng ta sẽ sử dụng x(n) như là cách viết đơn giản của x(nT)
hoặc hiểu là với T = 1.
Thông thường ta nhận được các tín hiệu rời rạc theo thời gian từ việc
lấy mẫu một tín hiệu thời gian liên tục( continuous-time signal) kết hợp với
bộ biến đổi tương tự – số ADC( analog to digital converter). Thí dụ như tín
hiệu liên tục xa(t) được lấy mẫu với tần số lấy mẫu là fs = 1/Ts( nghĩa là

6


trong 1 giây ta có fs mẫu) để tạo ra tín hiệu được lấy mẫu ( rời rạc theo thời
gian ) x(n), x(n) quan hệ với xa(t) như sau: x(n) = xa(nTs).
Tuy nhiên không phải tất cả các tín hiệu rời rạc theo thời gian đều có
được theo cách trên. Một số tín hiệu được khảo sát là các chuỗi xuất hiện
một cách tự nhiên rời rạc theo thời gian mà không cần đến bộ biến đổi
tương tự - số để biến đổi tín hiệu tương tự thành tín hiệu rời rạc theo thời
gian. Ví dụ cho tín hiệu loại này như giá cả hàng ngày trên thị trường cổ
phiếu, thống kê dân số, kiểm kê kho hàng và các số vệt đen ở bề mặt của
mặt trời.v.v…
Ngoài phương pháp sử dụng đồ thị như mô tả trên hình 1.1 còn có một
số phương pháp khác tương đối thuận tiện được dùng để biểu diễn tín hiệu(
hoặc dãy) rời rạc theo thời gian. Các phương pháp này bao gồm:
a. Biểu diễn bằng hàm
Ví dụ:


1, với n = 1, 4
3, với n = 2
(1.1.1)
0, với các giá trị n khác

x(n) =

b. Biểu diễn bằng bảng
Ví dụ:
n

...

-2

-1

0

1

2

3

4

5

6


...

0

0

0

1

3

0

1

0

0

...
x(n)

c. Biểu diễn qua dãy số
Ví dụ:

7



Tín hiệu hoặc dãy vô hạn được mô tả qua ví dụ dưới đây:
x(n) = {... 0, 0, 0, 1, 3, 0, 1, 0, 0, ...}
Trong đó kí hiệu

(1.1.2)

dùng để chỉ thời điểm gốc( n = 0).

Dãy x(n) có giá trị bằng 0 với n < 0 được biểu diễn bằng cách sau:
x(n) = {0, 1, 3, 0, 1, 0, 0, ...}

(1.1.3)

ở đây thời điểm gốc đối với dãy x(n) với giá trị bằng 0 nếu n < 0 được
hiểu như là điểm bên trái nhất của dãy.
Dãy hữu hạn có thể được biểu diễn bằng cách:
x(n) = {3, -1, -2, 5, 0, 1, 0, 9}

(1.1.4)

Nếu dãy hữu hạn thoả mãn điều kiện x(n) = 0 với n < 0 thì dãy có thể
được biểu diễn theo cách như sau:
x(n) = {0, 1, 3, 0, 1}

(1.1.5)

Tín hiệu trong (1.1.4) có chứa 8 giá trị mẫu hoặc tám điểm (theo thời
gian) và được gọi là dãy có tám điểm. Cũng tương tự như vậy, dãy biểu
diễn bởi (1.1.5) là dãy 5 điểm.
1. Tín hiệu phức

Một cách tổng quát, tín hiệu rời rạc theo thời gian có thể có giá trị
phức. Thật vậy, trong một số ứng dụng quan trong như thông tin số, các tín
hiệu phức phát sinh một cách tự nhiên. Tín hiệu phức có thể được biểu diễn
bằng các phần thực ( real part ) và phần ảo( imaginary part).
z(n) = a(n) + jb(n) = Re{z(n)} + jIm{z(n)}
hoặc được biểu diễn ở dạng cực( polar form) theo biên độ( amplitude) và
pha( phase)
z(n) = │z(n)│exp[jarg{z(n)}]
Biên độ có thể được suy ra từ các phần thực và phần ảo như sau:
│z(n)│2 = Re2{z(n)} + Im2{z(n)}
Trong khi đó pha được tính theo công thức
arg{z(n)} = tan-1Im{z(n)}/Re{z(n)}

8


Nếu z(n) là một chuỗi phức, liên hợp phức( complex conjugate) ký
hiệu là z*(n) được thành lập bằng cách thay đổi dấu trong phần ảo của z(n)
z*(n) = Re{z(n)} - jIm{z(n)} = │z(n)│exp[- jarg{z(n)}]
2. Một vài tín hiệu rời rạc cơ bản.
Mặc dù hầu hết các tín hiệu mang thông tin trong thực tế là các hàm
phức tạp theo thời gian( complicated functions of time ), nhưng dưới đây là
một số tín hiệu rời rạc theo thời gian tuy đơn gian nhưng rất quan trọng. Nó
rất hay xuất hiện và thường được sử dụng trong lý thuyết về tín hiệu và hệ
thống rời rạc theo thời gian để biểu diễn và mô tả các tín hiệu phức tạp hơn.
Các tín hiệu cơ bản này là: xung đơn vị( unit sample), nấc đơn vị( unit
step), tín hiệu dốc đơn vị và hàm mũ( exponential)
a. Dãy mẫu đơn vị
Tín hiệu này còn được gọi là dãy xung đơn vị và được định nghĩa như
sau:


(n) =

1, với n = 0
0, với n ≠ 0

(1.1.6)

Như vậy, dãy mẫu đơn vị là tín hiệu chỉ có một giá trị duy nhất bằng 1
đơn vị tại thời điểm n = 0 trong khi tất cả các giá trị còn lại đều bằng 0.
Khác với xung đơn vị (n) của tín hiệu tương tự, dãy mẫu đơn vị về mặt
toán học không vướng và phức tạp như tín hiệu này. Tín hiệu dãy xung đơn
vị đóng một vai trò hết sức quan trọng và được mô tả bằng đồ thị như trên
hình 1.2.

9


(n)
1

….
n
-3 -2 -1 0 1 2 3
Hình 1.2. Biểu diễn đồ thị của tín hiệu mẫu
đơn vị
b. Dãy nhảy bậc đơn vị
Dãy này còn được gọi là tín hiệu nhảy bậc đơn vị hay hàm bậc thang
và được định nghĩa qua hàm sau:
1, với n ≥ 0

0, với n < 0

(n) =

(1.1.7)

Giữa tín hiệu nhẩy bậc đơn vị và tín hiệu xung đơn vị có mối quan hệ:
n

u ( n )   ( n  k )
k 0

Tương tự, một xung đơn vị có thể được viết thành sai biệt của hai tín
hiệu nấc đơn vị:

(n) = u(n) – u(n - 1)

Tín hiệu nhảy bậc đơn vị được mô tả trên hình 1.3.
u(n)
1


n
-3 -2 -1 0 1 2 3
Hình 1.3. Biểu diễn bằng đồ thị tín hiệu nhẩy
bậc đơn vị
c. Tín hiệu dốc đơn vị

10



Tín hiệu này được ký hiệu bằng ur(n) và được định nghĩa qua công
thức:

ur(n) =

n, với n ≥ 0
0, với n < 0

(1.1.8)

Tín hiệu này được mô tả trên hình 1.4.
ur(n
)


n
-3 -2 -1 0 1 2 3
Hình 1.4. Biểu diễn bằng đồ thị tín hiệu dốc
đơn vị
d. Hàm mũ
Chuỗi hàm mũ được định nghĩa bởi x(n) = an trong đó a là số thực

hoặc số phức. Chuỗi hàm mũ có tầm quan trọng đặc biệt khi

a e j0 với

 0 là một số thực. Trong trường hợp này, x(n) là một hàm mũ phức:
e j0 cos( n 0 )  j sin( n 0 ) .
Nghiên cứu các hàm mũ phức rất hữu ích trong việc phân rã

Fourier( Fourier decomposition) các tín hiệu.
3. Phân loại tín hiệu rời rạc
Các phương pháp toán học được dùng trong việc phân tích tín hiệu và
hệ thống rời rạc theo thời gian hoàn toàn phụ thuộc vào đặc thù của tín

11


hiệu. Dưới đây chúng ta sẽ phân loại các tín hiệu rời rạc theo thời gian tuỳ
theo các đặc thù này.
a. Tín hiệu năng lượng và tín hiệu công suất
Năng lượng E của tín hiệu x(n) được định nghĩa bằng công thức:


E   | x (n) | 2
n 

(1.1.9)

Trong đó |x(n)| là modul của tín hiệu. Với cách định nghĩa này thì công
thức (1.1.9) có thể được sử dụng để tính năng lượng của tín hiệu phức
cũng như tín hiệu thực.
Năng lượng của tín hiệu có thể là hữu hạn hay vô hạn. Nếu E là hữu
hạn (0lượng của tín hiệu rời rạc, thông thường người ta sử dụng thêm chỉ số x đối
với E và viết là: Ex
Rất nhiều tín hiệu với năng lượng vô hạn lại có công suất hữu hạn.
Công suất trung bình của tín hiệu rời rạc theo thời gian x(n) được định
nghĩa bằng biểu thức sau:
N

1
P  lim
| x ( n) | 2

N  2N 1
n  N

(1.1.10)

Nếu định nghĩa năng lượng tín hiệu của dãy x(n) trong khoảng hữu
hạn –N ≤ n ≤ N là:
N

E N   | x ( n) | 2
n  N

(1.1.11)

thì có thể xác định năng lượng tín hiệu E qua biểu thức:

12


E lim E N
N 

và công suất trung bình của tín hiệu x(n):
1
EN
N   2N 1


P  lim

(1.1.12)

Rõ ràng rằng nếu E là hữu hạn thì P = 0. Trong khi đó nếu E là vô hạn
thì công suất trung bình P có thể là hữu hạn hoặc vô hạn. Nếu P là hữu
hạn( và khác 0) tín hiệu sẽ được gọi là tín hiệu công suất. Dưới đây sẽ mô
tả một ví dụ về kiểu năng lượng này.
Ví dụ 1: Xác định năng lượng và công suất của dãy nhẩy bậc đơn vị
Công suất trung bình của tín hiệu nhẩy bậc đơn vị là:
N
1
N1
1  1/ N 1
P  lim
u 2 (n)  lim
 lim


N   2N 1
N   2N 1
N   2 1/ N
2
n 0

Từ đây suy ra rằng tín hiệu nhẩy bậc đơn vị là tín hiệu công suất.
Cũng tương tự như vậy có thể nhận thấy rằng hàm mũ phức x(n) =
j n


Ae

có công suất trung bình là A2 vì vậy đây là tín hiệu công suất. Tuy

vậy có thể thấy rằng tín hiệu dốc đơn vị không phải là tín hiệu năng lượng
cũng không phải là tín hiệu công suất.
b. Tín hiệu tuần hoàn và không tuần hoàn
Các tín hiệu rời rạc theo thời gian luôn luôn có thể được phân loại
thành tín hiệu tuần hoàn(periodic) và tín hiệu không tuần hoàn( aperiodic).
Tín hiệu x(n) được gọi là tuần hoàn với chu kỳ N nếu với mỗi số nguyên
dương N, ta có:
x(n+N) = x(n) với mọi n

(1.1.13)

13


Giá trị nhỏ nhất của N thoả mãn biểu thức (1.1.13) được gọi là chu kỳ
cơ bản. Nếu không có bất cứ một giá trị nào của N để (1.1.13) là đúng thì
tín hiệu được gọi là không tuần hoàn. Hình 1.5 là một ví dụ về tín hiệu tuần
hoàn

x(n)

1

n
-2 -1 0 1 2 3 4
Hình 1.5. Mô tả bằng đồ thị của tín hiệu tuần hoàn

Khi khảo sát tín hiệu hình Sin ta cũng thấy rằng tín hiệu:
x(n) = Asin2f0n

(1.1.14)

là tín hiệu tuần hoàn nếu f0 là một số hữu tỷ, hay nói cách khác f0 có thể
được biểu diễn qua biểu thức:
f0 = k/N

(1.1.15)

trong đó k và N là những số nguyên.
Năng lượng của tín hiệu tuần hoàn x(n) trong một chu kỳ hay trong
một khoảng 0 ≤ n ≤ N – 1 là hữu hạn nếu x(n) nhận các giá trị hữu hạn
trong một chu kỳ. Tuy vậy, năng lượng của tín hiệu tuần hoàn với - ∞ ≤ n ≤
∞ là vô hạn. Mặt khác, công suất trung bình của tín hiệu tuần hoàn là hữu
hạn và bằng công suất trung bình trong một chu kỳ. Như vậy, nếu x(n) là tín
hiệu tuần hoàn với tần số cơ bản N và có các giá trị hữu hạn thì công suất
của nó được xác định qua biểu thức:

14


P

1
N

N1


 | x (n) |

2

(1.1.16)

n 0

Suy ra rằng tín hiệu tuần hoàn là tín hiệu công suất.
1.1.2. Các hệ thống xử lý tín hiệu số
1. Mô tả vào/ra hệ thống
Một hệ thống rời rạc theo thời gian là một toán tử toán học hoặc phép
ánh xạ biến đổi một tín hiệu( ngõ vào) thành một tín hiệu khác( ngõ ra) dựa
vào một tập cố định các quy luật và các phép toán. Các tính chất vào – ra
của một hệ thống có thể được chỉ ra theo một trong nhiều cách khác nhau.
Quan hệ vào/ra này có thể được biểu diễn nhờ vào một quy luật toán học
hoặc bằng biểu thức toán học:
y(n) ≡ T[x(n)]
trong đó T là ký hiệu của phép biến đổi hoặc toán tử.
Hoặc biểu diễn:
x(n)

T

y(n)

....

....
x(n)

Tín hiệu hoặc
kích thích vào

Hệ thống rời
rạc theo thời
gian – T[.]

y(n)
Tín hiệu hoặc
đáp ứng ra

Hình 1.10. Biểu diễn bằng sơ đồ khối của hệ thống rời rạc
theo thời gian

Theo cách biểu diễn này thì y(n) là đáp ứng của hệ thống T với kích
thích là x(n).

15


Việc phân loại các hệ thống xử lý tín hiệu rời rạc được thực hiện thông
qua các điều kiện ràng buộc đối với phép biến đổi T.
2. Biểu diễn hệ thống rời rạc theo thời gian bằng sơ đồ khối.
Để có thể biểu diễn các hệ thống rời rạc theo thời gian bằng sơ đồ khối
việc trước tiên là cần phải xây dựng một số khối thực hiện một số công việc
cơ bản. Thông qua các khối này chúng ta có thể xây dựng nên các hệ thống
phức tạp hơn.
a. Bộ nhân với hằng số( constant multiplier).
Phép toán này được mô tả trên hình 1.11 và biểu diễn một phép lấy tỷ
lệ của tín hiệu đầu vào x(n). Chú ý rằng đây cũng là phép toán tức thì.

x(n)

c

y(n) = cx(n)

Hình 1.11. Biểu diễn qua sơ đồ của hệ nhân với
hằng số
b. Bộ cộng( Adder)
Hình 1.12 mô tả một hệ thống (bộ cộng) thực hiện cộng hai dãy tín
hiệu với kết quả là một dãy khác – dãy tổng y(n).
Chú ý rằng trong quá trình thực hiện thao tác cộng ta không cần phải
lưu trữ bất cứ một giá trị trung gian nào bởi vì phép cộng được thực hiện
tức thì không nhớ.
x1(n)

+

y(n) = x1(n) +
x2(n)

x2(n)
Hình 1.12. Hình biểu diễn qua sơ đồ bộ cộng
c. Bộ nhân tín hiệu( signal multiplier)

16


Hình 1.13. biểu diễn một bộ nhân của hai dãy tín hiệu với kết quả là
một dãy tích y(n). Cũng giống như hai trường hợp trước, ở đây phép nhân

cũng là phép toán không nhớ.
x1(n)

X

y(n) = x1(n) x2(n)

x2(n)
Hình 1.13. Hình biểu diễn qua sơ đồ của hệ nhân
d. Phần tử trễ đơn vị.
Phần tử trễ đơn vị( unit delay element) là hệ thống đặc biệt có tác dụng
làm trễ tín hiệu đi qua với thời gian bằng một đơn vị. Hệ thống này được
mô tả trên hình 1.14. Nếu tín hiệu đầu vào là x(n) thì tín hiệu ra là y(n) =
x(n - 1), rõ ràng rằng để có thể nhận được tín hiệu đầu ra y(n) ở thời điểm n
thì giá trị mẫu đầu vào x(n) ở thời điểm trước đó (n - 1) cần được lưu trữ
lại.
x(n)

Z-1

y(n) = x(n 1)

Hình 1.14. Biểu diễn qua sơ đồ của
phần tử trễ
Như vậy hệ thống này là hệ thống có nhớ. Trong miền Z phần tử này
được ký hiệu bởi z-1.
e. Phần tử vượt trước đơn vị( Unit advance element).
Trái ngược với hệ trễ đơn vị, hệ vượt trước đơn vị sẽ chuyển đầu vào
x(n) dịch về trước một mẫu theo thời gian để có thể nhận được ở đầu ra tín
hiệu y(n) = x(n+1). Hình 1.15 là cách biểu diễn hệ thống này trong đó z là

ký hiệu của hệ thống.

17


x(n)

Z

y(n) = x(n
+ 1)

Hình 1.15. Biểu diễn qua sơ đồ của phần tử
vượt trước
3. Phân loại các hệ thống rời rạc theo thời gian.
Các hệ thống rời rạc theo thời gian có thể được phân loại dựa vào các
tính chất mà hệ thống có được. Các tính chất quan trọng thường dùng nhất
là: Tuyến tính, bất biến, nhân quả, nhớ và không nhớ, ổn định và khả
đảo….
a. Hệ thống nhớ và không nhớ
Hệ thống rời rạc theo thời gian được gọi là không nhớ( memoryless)
hoặc tĩnh( static) nếu tín hiệu ra của nó ở mọi thời điểm chỉ phụ thuộc vào
tín hiệu đầu vào ở cùng một thời điểm mà không phụ thuộc vào các giá trị
mẫu của các tín hiệu đầu vào trong quá khứ hoặc tương lai. Ngược lại hệ
thống là có nhớ hoặc biến đổi( dynamic).
Các hệ thống được mô tả bằng các quan hệ vào/ra.:
y(n) = cx(n)
y(n) = nx(n) + bx3(n)
đều là các hệ thống không nhớ bởi vì các giá trị của y(n) chỉ phụ thuộc vào
giá trị tín hiệu đầu vào ở cùng một thời điểm.

Ngược lại hệ thống: y(n) = x(n) + x(n - 1) là hệ thống có nhớ vì y(n)
không chỉ phụ thuộc vào giá trị tín hiệu đầu vào ở cùng một thời điểm mà
còn phụ thuộc vào quá khứ.
b. Hệ thống bất biến và không bất biến theo thời gian

18


Một hệ thống được gọi là bất biến theo thời gian nếu như đặc trưng
vào/ra của nó không thay đổi theo thời gian tức là:
Nếu:

x(n) T  y (n)

T
x
(
n

k
)


 y (n  k )
thì suy ra:

đối với mọi tín hiệu đầu vào x(n) và mọi thời gian dịch chuyển k.
c. Hệ tuyến tính và không tuyến tính.
Các hệ thống có thể được chia làm hai loại: tuyến tính và không tuyến
tính. Hệ thống được gọi là tuyến tính nếu nó thoả mãn nguyên lý xếp

chồng. Nguyên lý này đòi hỏi rằng đáp ứng của hệ thống với tác động là
tổng của các tín hiệu sẽ bằng tổng các đáp ứng của hệ thống khi tác động
đầu vào là từng tín hiệu riêng lẻ tức là:
T[a1x1(n) + a2x2(n)] = T[a1x1(n)] + T[a2x2(n)]
đối với mọi dãy tín hiệu đầu vào x1(n), x2(n) và các hằng số a1, a2.
d. Hệ nhân quả và không nhân quả
Một hệ thống được gọi là nhân quả nếu tín hiệu đầu ra của nó tại một
thời điểm bất kỳ n( nghĩa là y(n)) chỉ phụ thuộc vào tín hiệu đầu vào trong
quá khứ và tại thời điểm đang xét. [ tức là chỉ phụ thuộc vào x(n), x(n - 1),
x(n - 2), .....] và không phụ thuộc vào các tín hiệu đầu vào trong tương lai
[x(n+1), x(n+2), ....]. Như vậy tín hiệu đầu ra y(n) có thể được biểu diễn
như sau:
y(n) = F[x(n), x(n - 1), x(n - 2), ...]
trong đó F[.] biểu diễn một hàm số bất kỳ.
Ngược lại, hệ thống được gọi là không nhân quả nếu tín hiệu đầu ra
không những chỉ phụ thuộc vào các tín hiệu đầu vào ở hiện tại và quá khứ
mà còn phụ thuộc vào tín hiệu đầu vào trong tương lai.
e. Hệ ổn định và không ổn định.

19


Trong nhiều ứng dụng, đáp ứng y(n) của hệ thống được giới hạn mỗi
khi biên độ tín hiệu đầu vào bị giới hạn. Một hệ thống có tính chất này
được gọi là hệ thống có tính ổn định theo nghĩa đầu vào giới hạn và đầu ra
giới hạn là BIBO( bounded input – bounded output) nghĩa là tồn tại hai số
hữu hạn Mx và My để:
│x(n)│ ≤ Mx < ∞
│y(n)│ ≤ My < ∞
đối với mọi n. Nếu dãy đầu vào là hữu hạn và dãy đầu ra là vô hạn thì hệ

thống được gọi là không ổn dịnh.
1.2. Lấy mẫu và khôi phục tín hiệu.
Trong đa số trường hợp, các tín hiệu rời rạc theo thời gian nhận được
từ việc lấy mẫu một tín hiệu liên tục theo thời gian, chẳng hạn như các tín
hiệu âm tần và tiếng nói, các dữ liệu radar và siêu âm, các tín hiệu địa chấn
và sinh học… Quá trình biến đổi các tín hiệu liên tục này thành dạng số
được gọi là biến đổi tương tự thành số ( analog-to-digital conversion: A/D).
Quá trình ngược lại, tái tạo tín hiệu tương tự từ các mẫu của tín hiệu này
được gọi là biến đổi số thành tương tự (digtal-to-analog conversion: D/A).
Chúng ta sẽ khảo sát các vấn đề liên quan đến biến đổi A/D và D/A. Nền
tảng cho việc khảo sát này là định lý lấy mẫu (sampling theorem), định lý
này cung cấp cho ta các điều kiện cần có để một tín hiệu tương tự có thể
được biểu diễn duy nhất theo các mẫu của tín hiệu này.

1.2.1. Lấy mẫu.
Một bộ biến đổi A/D sẽ biến đổi tín hiệu tương tự thành một chuỗi
số( lấy mẫu). Tín hiệu ngõ vào đưa đến bộ biến đổi A/D; xa(t) là hàm có giá
trị thực theo một biến liên tục t. Như vậy, với mỗi giá trị của t, hàm xa(t) có
thể có một giá trị thực nào đó.
Tín hiệu ngõ ra của bộ biến đổi A/D la một dòng bit (bit stream) tương
ứng với một chuỗi rời rạc theo thời gian x(n), chuỗi này có biên độ được

20


lượng tử hoá đối với mỗi giá trị của n, nghĩa là biên độ là một trong một số
hữu hạn các giá trị có thể có được. Các thành phần của một bộ biến đổi
A/D được mô tả trong hình dưới.
Đầu tiên là bộ lấy mẫu (sampler), bộ này đôi khi còn gọi là bộ biến
đổi liên tục thành rời rạc (continuous-to-discrete C/D) hoặc bộ biến đổi

A/D lý tưởng. Bộ lấy mẫu biến đổi tín hiệu liên tục theo thời gian xa(t) tại
những thời điểm là bội số nguyên của chu kỳ lấy mẫu Ts, x(n) = xa(nTs).
Các tín hiệu rời rạc theo thời gian, một cách điển hình, được tạo thành
bằng cách lấy mẫu có chu kỳ hay tuần hoàn( periodically sampling) một tín
hiệu liên tục theo thời gian x(n) = xa(nTs).
Khoảng cách giữa các mẫu Ts được gọi là chu kỳ lấy mẫu và fs = 1/Ts
là tần số lấy mẫu tính bằng số mẫu trong 1 giây. Một phương pháp tiện lợi
để khảo sát quá trình lấy mẫu này là trước tiên tín hiệu liên tục được nhân


với chuỗi xung tuần hoàn

s a (t )    (t  nTS )
n 

để tạo ra tín hiệu được

lấy mẫu( sampled signal):


x S (t )  x a (t ).s a (t )   x a (nTS ) (t  nTS )
n 

Kế đến, tín hiệu được lấy mẫu được biến đổi thành tín hiệu rời rạc
theo thời gian bằng cách ánh xạ các xung có khoảng cách thời gian là Ts
thành một chuỗi tín hiệu là x(n) trong đó các giá trị của các mẫu được định
chỉ số bằng các biến nguyên n:
x(n) = xa(nTs)
Ta hãy xét một ví dụ: Giả sử xa(t) là tín hiệu tuần hoàn bị giới hạn
băng thông sao cho Xa(j) = 0 với || >0 như minh họa ở hình 1.16.


21


Nếu xa(t) được lấy mẫu với tần số lấy mẫu là s ≥ 20, biến đổi Fourier
của xs(t) được tạo thành bằng cách lập lại có chu kỳ Xa(j) như được minh
họa ở hình 1.17.
Xa(j)


-0
0
Hình 1.16. Hình dạng phổ khi băng thông của tín hiệu
bị giới
X (j)hạn
s


-s

-0

0

s

Hình 1.17. Chu kỳ lấy mẫu được lặp lại

Tuy nhiên nếu s < 20, phổ bị dịch Xa(j - jks) sẽ chồng lấp và khi các
phổ này được cộng để tạo ra Xs(j), kết quả được minh họa ở hình 1.18.

Xs(j )

-s

-s/2

s

s/2

Hình 1.18. Hiện tượng phổ bị chồng lấp

Việc chồng lấp các thành phần phổ được gọi là aliasing. Khi aliasing
xuất hiện (hay còn gọi là bị alias), phổ tần suất (frequency content) của
xa(t) bị sai lệch và Xa(j) không được tái tạo từ Xs(j).

22


Như đã được minh họa trong ví dụ trên, nếu xa(t) hoàn toàn bị giới hạn
băng thông sao cho tần số cao nhất của xa(t) là 0, và nếu tần số lấy mẫu lớn
hơn 20, s ≥ 20, aliasing không xuất hiện và tín hiệu xa(t) có thể được khôi
phục từ các mẫu xa(nTs) của tín hiệu này bằng một bộ lọc thấp. Sau đây là
phát biểu của định lý lấy mẫu Nyquist:
Định lý lấy mẫu: Nếu xa(t) là tín hiệu hoàn toàn bị giới hạn băng
thông, Xa(j) = 0 với || > 0 thì xa(t) có thể được khôi phục từ các mẫu

xa(nTs) của tín hiệu này nếu

s 


2
 2 0
Ts
.

Tần số 0 được gọi là tần số Nyquist và tần số lấy mẫu tối thiểu s = 20
được gọi là tốc độ Nyquist ( Nyquist rate).
Do các tín hiệu được tim thấy trong các hệ thống vật lý không bao giờ
có băng thông bị giới hạn hoàn toàn, một bộ lọc tương tự nhằm loại bỏ
aliasing được sử dụng để lọc tín hiệu trước khi lấy mẫu. Mục đích của việc
lọc này là tối thiểu hoá các năng lượng trên tần số Nyquist và giảm số
lượng aliasing trong bộ biến đổi A/D.
1.2.2. Khôi phục tín hiệu.
Như đã được phát biểu trong định lý lấy mẫu, nếu xa(t) là tín hiệu hoàn
toàn bị giới hạn băng thông, Xa(j) = 0 với || > 0và nếu Ts < /0 thì xa(t)
có thể được khôi phục từ các mẫu x(n) = xa(nTs) . Quá trình khôi phục bao
gồm hai bước như được minh họa trong hình 1.19.
x(n)

xs(t)

xa(t
Bộ lọc
)
thông
thấp lý
Hình 1.19. Bộ khôi phục tín hiệu rời
rạc thành liên tục có bộ
tưởng

Biến đổi
các xung

lọc khôi phục thông thấp

23


Trước tiên các mẫu x(n) được biến đổi thành một chuỗi xung,



x s (t )   x(n) (t  nTs )
n 

và kế đến xa(t) được lọc bằng một bộ lọc khôi

phục (reconstruction filter), bộ lọc này là bộ lọc thông thấp lý tưởng có đáp

ứng tần số cho bởi:



T
,
|

|

s


Ts

H r ( j )  
 0, |  | 

Ts

. Hệ thống này được gọi là bộ

biến đổi rời rạc thành liên tục lý tưởng (D/C). Do đáp ứng xung của bộ lọc

hr (t ) 
khôi phục là:

sin(t / Ts )
t / Ts tín hiệu đầu ra của bộ lọc này sẽ là:





n 

n 

x a (t )   x(n) hr (t  nTs )   x( n)

sin  (t  nTs ) / Ts
 (t  nTs )

 (t  nTs ) / Ts

Công thức nội suy này trình bày cách thức xa(t) được khôi phục từ các
mẫu x(n) = xa(nTs). Trong miền tần số, công thức nội suy trên trở thành:


X a ( j)   x(n) H r ( j)e  jTs
n 

24




X a ( j)  H r ( j)  x(n)e  jnTs  H r ( j) X (e jTs )
n 

Dạng trên tương đương với:



jTs
 Ts X (e ), |  |
Ts
X a ( j )  
 0, Trong các trường hợp khác

Như vậy X(ej) được lập tỉ lệ theo tần số ( = Ts) và sau đó bộ lọc
thông thấp loại bỏ mọi tần số trong phổ tuần hoàn X (e


jTs

) , các tần số

này cao hơn tần số cắt c = /Ts. Do ta không thể thực hiện một bộ lọc thông
thấp lý tưởng, nhiều bộ biến đổi D/A sử dụng một bộ giữ bậc 0( zero-order
holder) cho bộ lọc khôi phục.

1,0 t Ts
h0 (t ) 
 0,Trong các trường hợp khác
Đáp ứng xung của bộ giữ bậc 0 là:

Và đáp ứng tần số là:

H 0 ( j) e  jTs / 2

sin(Ts / 2)
/2

Sau khi chuỗi các mẫu của xa(nTs) đã được biến đổi thành các xung,
bộ giữ bậc 0 tạo ra một xấp xỉ dạng bậc thang cho xa(t) như được trình bày
trong hình 1.20. Với bộ giữ bậc thang 0, ta thường “xử lý sau” tín hiệu ngõ
ra với một bộ lọc khôi phục bổ chính( reconstruction compensation filter),
đáp ứng tần số lấy gần đúng là:

25



×