Vẽ đáp ứng tần số của bộ lọc thiết kế được.. Yêu cầu nhập vào bậc bộ lọc hoặc chọn bậc tối thiểu, loại bộ lọc thông thấp, thông cao, thông dải, chắn dải… và kiểu bộ lọc Butterworth, Cheb
Trang 1XỬ LÝ SỐ TÍN HIỆU
Ghi chú:
- Ba SV thực hiện 1 đề tài và nộp 1 bài báo cáo Hạn chót 27/04/2016
- Nếu có N bài giống nhau Điểm mỗi bài sẽ bằng nhau và bằng điểm 1 bài chia cho N
- SV cần sử dụng kit TMS320C6713 thì liên hệ với GV để được vào phòng TN
Tài liệu tham khảo:
a Xử lý số tín hiệu & Wavelets – Lê Tiến Thường
b Tài liệu thí nghiệm DSP
c Help của Matlab
1/ Dùng Matlab GUI, viết 1 chương trình thiết kế bộ lọc FIR (bằng phương pháp cửa sổ).Yêu cầu nhập vào bậc của bộ lọc, loại cửa sổ (Chữ nhật, Hamming, Hanning, Kaiser…) và loại bộ lọc (thông thấp, thông cao, thông dải, chắn dải…) Xuất ra kết quả là các hệ số của bộ lọc Vẽ đáp ứng tần số của bộ lọc thiết kế được
2/ Dùng Matlab GUI, viết 1 chương trình thiết kế bộ lọc IIR (theo phương pháp Bilinear transformation) Yêu cầu nhập vào bậc bộ lọc (hoặc chọn bậc tối thiểu), loại bộ lọc (thông thấp, thông cao, thông dải, chắn dải…) và kiểu bộ lọc (Butterworth, Chebyshev Type I, Chebyshev Type II, Elliptic), các thông số của bộ lọc (Tần số cắt, độ gợn…) và tần số lấy mẫu Xuất ra kết quả là các hệ số của các Second Order Sections Vẽ đáp ứng tần số của bộ lọc thiết kế được 3/ Dùng Matlab GUI, viết 1 chương trình mô phỏng quá trình biến đổi từ một tín hiệu tương tự sang tín hiệu số (Gồm các bước prefilter, lấy mẫu,lượng tử) Cho phép chọn một trong các dạng sóng tương tự vào sẵn có, nhập tần số tín hiệu, nhập tần số cắt của bộ prefilter (lý tưởng), nhập tần số lấy mẫu, tầm lượng tử và số bit mã hóa Cho phép chọn các kiểu lượng tử khác nhau Vẽ tín hiệu và phổ tương ứng ở mỗi bước trong quá trình biến đổi (Tùy người dùng chọn mà hiển thị đồ thị tương ứng)
4/ Dùng Matlab GUI, viết 1 chương trình mô phỏng quá trình biến đổi từ một tín hiệu số sang tín hiệu tương tự (DAC)
5/ Viết chương trình C thực hiện DAC va ADC cho mã nhị phân thông thường, offset và bù 2 dựa trên nguyên tắc rút bớt
6/ Viết 1 chương trình nhỏ bằng C hoặc Matlab mô phỏng bộ lọc –chập trong đó ngõ vào là những khối riêng lẻ, đáp ứng xung là h(n)=(0.8)n Tìm ngõ ra (nếu dùng MATLAB phải viết giao diện GUI cho phép nhập các giá trị ngõ vào.)
Trang 27/ Viết 1 chương trình Matlab (thể hiện trên GUI) cho phép nhập chiều dài khối ngõ vào, giá trị ngõ vào, chiều dài đáp ứng xung, giá trị đáp ứng xung Tính chiều dài ngõ ra và giá trị ngõ ra (thể hiện trên tất cả các phương pháp đã học: bảng tích chập, dạng LTI, dạng ma trận … ) 8/ Viết chương trình bằng Matlab GUI để thực hiện xử lý và tạo hiệu ứng âm thanh, với âm thanh vào thu từ ngõ vào của soundcard, sau đó lưu thành file hoặc xuất ra ngõ ra để nghe 9/ Tìm hiểu về xử lý ảnh và viết chương trình GUI trên MATLAB thực hiện Edge Detection 10/ Dùng MATLAB Simulink để mô phỏng một hệ thống DSP gồm đầy đủ các phần: Prefilter, Sampling, Quantizing, DSP, Reconstruction Trong đó khối DSP có thể thay đổi để thực hiện các
bộ lọc khác nhau Thử thiết kế một vài bộ lọc rồi đưa vào hệ thống để mô phỏng Kiểm tra kết quả đầu ra
11/ Tìm hiểu về kit TMS320C6713 DSK và thực hiện chương trình xử lý âm thanh trên kit 12/ Tìm hiểu và viết chương trình nhận dạng ký tự DTMF bằng Matlab Tín hiệu vào lấy từ ngõ vào của soundcard, hiển thị kết quả nhận dạng trên giao diện GUI
13/ Cho 1 bộ lọc số như sau:
H(z)=H0(z)H1(z)H2(z)H3(z)
Với:
1 1
0
373 0
1
) 1 ( 313
0
)
z
z z
2 1
1
712 0 122 1 1
) 2
1 ( 147 0 )
z z
z z z
H
2 1
2 1
2
360 0 891
0
1
) 2
1 ( 117
0
)
z z
z z z
2 1
3
190 0 780 0 1
) 2
1 ( 103 0 )
z z
z z z
H
a) Hãy vẽ sơ đồ thực hiện dạng cascade của H(z) và viết phương trình sai phân
b) Xác định dạng trực tiếp và chính tắc của H(z), viết các phương trình sai phân cho mỗi dạng thực hiện
c) Tạo 100 mẫu ngõ vào theo quy tắc sau đây:
100 n 50 if
0
50 n 0 1
)
x
Tính đầu ra của bộ lọc (dùng matlab), vẽ đáp ứng đầu vào và đầu ra theo n trên cùng 1 biểu đồ Xác định các trạng thái ngõ vào tắt, trạng thái ổn định và trạng thái ngõ vào tắt
14/ Cho 1 bộ lọc có dạng cascade và trực tiếp như sau:
Trang 34 3
2 1
-2 1
2 1
9790 0 4640 3 0240 5 3.5020z
-1
1
9859 0 6065 1 1
1
993 0 8955
1
1
1 )
(
z z
z
z z
z z
z
H
Với
2
0
a) Hãy tính toán các cực của mẫu số (cho mẫu số bằng 0) và đặt chúng trên vòng tròn đơn vị của mặt phẳng phức z Vẽ đáp ứng biên độ và đáp ứng xung của bộ lọc
b) Hãy xem xét bộ lọc ở dạng cascade và làm tròn đến 2 chữ số lẻ các hệ số của các tầng bậc hai Lặp lại câu a, so sánh
c) Xem xét bộ lọc ở dạng trực tiếp và làm tròn các hệ số đến 2 chữ số lẻ Lặp lại câu a, so sánh d) Thiết kế bộ lọc FIR thông thấp với tần số cắt là c 0.3, với chiều dài N=11, N=41, N=81, N=121
Vẽ đáp ứng xung và đáp ứng biên độ của bộ lọc được thiết kế Dùng phương pháp cửa sổ chữ nhật và cửa sổ Hamming Nhận xét
15/ Thiết kế bộ lọc FIR theo phương pháp Kaiser window với:
- sampling rate f s 10KHz
- passband frequency f pass 1.5KHz
- stopband frequency f stop 2KHz
- passband attenuation A pass 0.1dB
- stopband antenuation A stop 80dB
Vẽ ứng xung và đáp ứng biên độ của bộ lọc được thiết kế So sánh khi dùng phương pháp
Hamming Nhận xét
Trang 416/ BỘ LỌC NOTCH (Notch filter)
Yêu cầu: Hãy trình bày những nội dung sau:
1 Định nghĩa bộ lọc Notch?
2 Các ứng dụng của bộ lọc Notch là gì?
3 Các đặc trưng của bộ lọc Notch:
a Dạng của đáp ứng tần số?
b Hàm truyền H(z) ?
c Sơ đồ cực / zero ?
4 Thực hành: Hãy sử dụng Matlab để thiết kế một bộ lọc Notch tùy ý:
a Trình bày cụ thể các bước thực hiện, các lệnh Matlab đã sử dụng (nếu có)
b Trình bày các thông số thiết kế
c Vẽ đáp ứng tần số và sơ đồ cực/zero của bộ lọc thiết kế được
d Viết hàm truyền của bộ lọc Notch vừa thiết kế
e Hãy minh họa bằng cách tạo ra vài tín hiệu và lọc các tín hiệu đó với bộ lọc Notch Giải thích và bình luận kết quả
f Vẽ 500 giá trị đầu tiên của vector đáp ứng xung h(n)
g Vẽ sơ đồ khối dạng trực tiếp, dạng chính tắc (canonical) và dạng cascade (ghép các tầng bậc 2) của bộ lọc Notch vừa thiết kế
h Thực hiện bộ lọc Notch vừa thiết kế trên kit TMS320C6713 dưới dạng Cascade
17/ BỘ LỌC LƯỢC (Comb filter)
Yêu cầu: Hãy trình bày những nội dung sau:
1 Định nghĩa bộ lọc Comb?
2 Các ứng dụng của bộ lọc Comb là gì?
3 Các đặc trưng của bộ lọc Comb:
a Dạng của đáp ứng tần số?
b Hàm truyền H(z) ?
c Sơ đồ cực / zero ?
4 Thực hành: Hãy sử dụng Matlab để thiết kế một bộ lọc Comb tùy ý:
a Trình bày cụ thể các bước thực hiện, các lệnh Matlab đã sử dụng (nếu có)
b Trình bày các thông số thiết kế
c Vẽ đáp ứng tần số và sơ đồ cực/zero của bộ lọc thiết kế được
d Viết hàm truyền của bộ lọc Comb vừa thiết kế
e Hãy minh họa bằng cách tạo ra vài tín hiệu và lọc các tín hiệu đó với bộ lọc Comb Giải thích và bình luận kết quả
f Vẽ 500 giá trị đầu tiên của vector đáp ứng xung h(n)
g Vẽ sơ đồ khối dạng trực tiếp, dạng chính tắc (canonical) và dạng cascade (ghép các tầng bậc 2) của bộ lọc Comb vừa thiết kế
h Thực hiện bộ lọc Comb vừa thiết kế trên kit TMS320C6713
Trang 518/ BỘ LỌC BUTTERWORTH (Butterworth filter)
Yêu cầu: Hãy trình bày những nội dung sau:
1 Các đặc trưng của bộ lọc Butterworth:
a Dạng của đáp ứng tần số?
b Sơ đồ cực / zero ?
2 Thực hành: Hãy sử dụng Matlab để thiết kế một bộ lọc Butterworth tùy ý:
a Trình bày cụ thể các bước thực hiện, các lệnh Matlab đã sử dụng (nếu có)
b Trình bày các thông số thiết kế
c Vẽ đáp ứng tần số và sơ đồ cực/zero của bộ lọc thiết kế được
d Viết hàm truyền của bộ lọc Butterworth vừa thiết kế
e Hãy minh họa bằng cách tạo ra vài tín hiệu và lọc các tín hiệu đó với bộ lọc Butterworth Giải thích và bình luận kết quả
f Vẽ 500 giá trị đầu tiên của vector đáp ứng xung h(n)
g Vẽ sơ đồ khối dạng trực tiếp, dạng chính tắc (canonical) và dạng cascade (ghép các tầng bậc 2) của bộ lọc Butterworth vừa thiết kế
h Thực hiện bộ lọc Butterworth vừa thiết kế trên kit TMS320C6713
19/ BỘ LỌC CHEBYSHEV LOẠI 1 (Chebyshev type 1 filter)
Yêu cầu: Hãy trình bày những nội dung sau:
1 Các đặc trưng của bộ lọc Chebyshev loại 1:
a Dạng của đáp ứng tần số?
b Sơ đồ cực / zero ?
2 Thực hành: Hãy sử dụng Matlab để thiết kế một bộ lọc Chebyshev loại 1 tùy ý:
a Trình bày cụ thể các bước thực hiện, các lệnh Matlab đã sử dụng (nếu có)
b Trình bày các thông số thiết kế
c Vẽ đáp ứng tần số và sơ đồ cực/zero của bộ lọc thiết kế được
d Viết hàm truyền của bộ lọc Chebyshev loại 1 vừa thiết kế
e Hãy minh họa bằng cách tạo ra vài tín hiệu và lọc các tín hiệu đó với bộ lọc Chebyshev loại 1 Giải thích và bình luận kết quả
f Vẽ 500 giá trị đầu tiên của vector đáp ứng xung h(n)
g Vẽ sơ đồ khối dạng trực tiếp, dạng chính tắc (canonical) và dạng cascade (ghép các tầng bậc 2) của bộ lọc Chebyshev loại 1 vừa thiết kế
h Thực hiện bộ lọc Chebyshev loại 1 vừa thiết kế trên kit TMS320C6713
20/ BỘ LỌC CHEBYSHEV LOẠI 2 (Chebyshev type 2 filter)
Yêu cầu: Hãy trình bày những nội dung sau:
1 Các đặc trưng của bộ lọc Chebyshev loại 2:
a Dạng của đáp ứng tần số?
b Sơ đồ cực / zero ?
2 Thực hành: Hãy sử dụng Matlab để thiết kế một bộ lọc Chebyshev loại 2 tùy ý:
Trang 6a Trình bày cụ thể các bước thực hiện, các lệnh Matlab đã sử dụng (nếu có)
b Trình bày các thông số thiết kế
c Vẽ đáp ứng tần số và sơ đồ cực/zero của bộ lọc thiết kế được
d Viết hàm truyền của bộ lọc Chebyshev loại 2 vừa thiết kế
e Hãy minh họa bằng cách tạo ra vài tín hiệu và lọc các tín hiệu đó với bộ lọc Chebyshev loại 2 Giải thích và bình luận kết quả
f Vẽ 500 giá trị đầu tiên của vector đáp ứng xung h(n)
g Vẽ sơ đồ khối dạng trực tiếp, dạng chính tắc (canonical) và dạng cascade (ghép các tầng bậc 2) của bộ lọc Chebyshev loại 2 vừa thiết kế
h Thực hiện bộ lọc Chebyshev loại 2 vừa thiết kế trên kit TMS320C6713
21/ BỘ LỌC ELLIPTIC (Elliptic filter)
Yêu cầu: Hãy trình bày những nội dung sau:
1 Các đặc trưng của bộ lọc Elliptic:
a Dạng của đáp ứng tần số?
b Sơ đồ cực / zero ?
2 Thực hành: Hãy sử dụng Matlab để thiết kế một bộ lọc Elliptic tùy ý:
a Trình bày cụ thể các bước thực hiện, các lệnh Matlab đã sử dụng (nếu có)
b Trình bày các thông số thiết kế
c Vẽ đáp ứng tần số và sơ đồ cực/zero của bộ lọc thiết kế được
d Viết hàm truyền của bộ lọc Elliptic vừa thiết kế
e Hãy minh họa bằng cách tạo ra vài tín hiệu và lọc các tín hiệu đó với bộ lọc Elliptic Giải thích và bình luận kết quả
f Vẽ 500 giá trị đầu tiên của vector đáp ứng xung h(n)
g Vẽ sơ đồ khối dạng trực tiếp, dạng chính tắc (canonical) và dạng cascade (ghép các tầng bậc 2) của bộ lọc Elliptic vừa thiết kế
h Thực hiện bộ lọc Elliptic vừa thiết kế trên kit TMS320C6713
Trang 722/ BIẾN ĐỔI FFT
Yêu cầu: Hãy trình bày những nội dung sau:
1 Biến đổi Fourier
a Nhắc lại về chuỗi Fourier
b Nhắc lại về phép biến đổi Fourier
c Biến đổi Fourier thời gian rời rạc (DTFT)
d Biến đổi Fourier rời rạc (DFT)
2 Trình bày các giải thuật FFT (Fast Fourier Transform)
3 Tìm hiểu các hàm để biến đổi Fourier trong Matlab (vd: fft, fftshift …)
4 Thực hành: Hãy minh họa các hàm tính fft của Matlab:
a Tạo 1 tín hiệu bất kỳ (đơn tone) với tần số lấy mẫu rất cao (Ví dụ 32KHz)
b Vẽ phổ của tín hiệu vừa tạo
c Lấy mẫu tín hiệu trên với tần số lấy mẫu thấp hơn (vd: fs = 8KHz)
d Tính biến đổi FFT của tín hiệu sau khi lấy mẫu
e Hãy tính FFT với các chiều dài khác nhau của tín hiệu, với các thông số FFT khác nhau và đánh giá, so sánh kết quả thu được của các trường hợp trên Vẽ các FFT tính được và so sánh với phổ của tín hiệu ban đầu (trước khi lấy mẫu lại)
f Lặp lại cho các trường hợp khác (ví dụ như tín hiệu multitone, …)
23/ MÔ PHỎNG HỆ THỐNG DSP VỚI MATLAB - SIMULINK
Yêu cầu: Hãy trình bày những nội dung sau:
1 Hãy thiết kế một hệ thống xử lý số để thực hiện một chức năng nào đó:
a Chức năng, mục đích của hệ thống?
b Sơ đồ khối của hệ thống?
c Giải thích chức năng các khối? Các thông số của mỗi khối và ý nghĩa của chúng?
d Đầu vào và đầu ra của mỗi khối?
2 Thực hành:
a Sử dụng Simulink, xây dựng sơ đồ khối của hệ thống đã thiết kế từ các block có sẵn trong thư viện
b Xác định các thông số của mỗi khối để phù hợp với thiết kế
c Mô phỏng hệ thống vừa tạo ra Hiển thị tín hiệu vào/ra của mỗi khối trong miền thời gian/ miền tần số
d Kết quả mô phỏng có phù hợp với yêu cầu thiết kế hay không? Cần phải thay đổi gì để cho phù hợp với thiết kế?
e Thay đổi và kiểm tra lại cho đến khi đạt yêu cầu thiết kế Báo cáo đầy đủ quá trình thực hiện: lặp lại bao nhiêu lần? mỗi lần thay đổi thông số nào? Tại sao?
Trang 8MỘT SỐ HÀM MATLAB
- stem, plot
- zplane, freqz
- tf2sos, sos2tf, tf2zp, zp2sos
- buttord, cheb1ord, cheb2ord, ellipord
- fft, fftshift