SlideShare a Scribd company logo
1 of 32
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


                                          LỜI MỞ ĐẦU

      Xử lý tín hiệu số (Digital Signal Processing – DSP) đã trở thành một môn học cơ
sở cho nhiều ngành khoa học, kỹ thuật như: Điện, Điện Tử, Tin học, Viễn thông, Tự động
hoá ... Xử lý tín hiệu số được ứng dụng rộng rãi trong nhiều lĩnh vực và thiết bị như: CD,
VCD, DVD, camera, scanner, y khoa ..., trong các hệ thống truyền hình số, thông tin địa
lý, bản đồ số, viễn thông ..v.v..
      Phép xử lý cơ bản nhất của DSP là lọc, và các hệ thống được đề cập đến nhiều nhất
trong xử lý tín hiệu số là các bộ lọc số (Digital Filter). Nếu xét về đáp ứng xung có thể
chia các bộ lọc số thành 2 loại chính là bộ lọc có đáp ứng xung hữu hạn FIR (Finite
Impulse Response) còn gọi là lọc không đệ quy, và bộ lọc có đáp ứng xung vô hạn IIR
(Infinte Impulse Response) còn gọi là lọc đệ quy. Xét về đáp ứng tần số biên độ có thể
chia các bộ lọc, FIR hay IIR, thành 4 loại cơ bản: thông thấp, thông cao, thông dải và
chắn dải. Các bộ lọc này có thể được thiết kế bằng những phương pháp sau đây: Phương
pháp cửa sổ (Window Design Techniques), Phương pháp lấy mẫu tần số (Frequency
Sampling Design Techniques) và Phương pháp xấp xỉ tối ưu cân bằng gợn sóng
(Optimal Equiripple Design Techniques). Mỗi phương pháp đều có những đặc điểm và
ưu khuyết điểm riêng.
      Trong khuôn khổ của bài tiểu luận môn học, nhóm tôi xin phép được trình bày bài
toán thiết kế bộ lọc FIR thông dải bằng phương pháp cửa sổ và phương pháp lấy mẫu tần
số. Nội dung tiểu luận được chia thành 5 chương:
      Chương 1: Bài toán thiết kế
      Chương 2: Cơ sở lý thuyết của bộ lọc FIR
      Chương 3: Phương pháp thiết kế
      - Thiết kế lọc FIR bằng phương pháp cửa sổ
      - Thiết kế lọc FIR bằng phương pháp lấy mẫu tần số
      Chương 4:Chương trình thiết kế.
      Chương 5:Kết luận
      Nhóm tôi xin trân trọng cảm ơn Thầy giáo TS. Ngô Văn Sỹ đã tận tình hướng dẫn,
truyền đạt những kiến thức quý giá, cung cấp tài liệu tham khảo và chỉ bảo cho tôi
phương pháp làm việc khoa học.
      Trong quá trình làm tiểu luận, tuy đã hết sức cố gắng song chắc chắn không tránh
khỏi những sai sót. Rất mong nhận được sự góp ý của Thầy, các anh chị và các bạn học
viên trong lớp để nội dung của tiểu luận được hoàn chỉnh hơn.
                                                     Đà Nẵng, ngày 15 tháng 9 năm 2009



                                               -1-
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số




                            CHƯƠNG 1: BÀI TOÁN THIẾT KẾ

      Thiết kế một bộ lọc thông dãi BPF(Band Pass Filte) nghĩa là tìm hàm truyền hệ
thống H(z) hoặc phương trình hiệu của nó) có dải thông [ ω1P , ω2 P ] với dung sai δ P (hoặc
Rp theo dB) và dải chắn [ 0, ω1S ] và [ ω2S , π ] với dung sai δ S (hoặc As theo dB).
        δ P : Dung sai dãi thông
        δ S : Dung sai dãi chắn
        ω1P , ω2 P : Tần số giới hạn dãi thông
        ω1S , ω2 S : Tần số giới hạn dãi chắn
        AS: Suy hao dãi chắn
        Rp: Độ gợn sóng trong dãi thông

        Thiết kế bộ lọc thỏa mãn các chỉ tiêu đã cho với cấu trúc đơn giản nhất.
        Các thông số thiết kế:
        ω1S = 0,2π ; AS = 60dB
        ω1 p = 0,35π ; R p = 1dB
        ω 2 p = 0,65π ; R p = 1db
        ω 2 s = 0,8π ; AS = 60dB




                                                 -2-
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


         CHƯƠNG 2: CƠ SỞ LÝ THUYẾT THIẾT KẾ BỘ LỌC FIR
      Chương này sẽ trình bày sơ lược cơ sở lý thuyết thiết kế bộ lọc số FIR, cùng với
các phương pháp thiết kế nó, từ đó tìm hiểu thiết kế bộ lọc thông dãi theo cấu trúc FIR
bằng phương pháp cửa sổ và phương pháp lấy mẫu tần số.
       Đáp ứng tần số là cách rất hiệu quả và thực tế để đặc trưng một bộ lọc. Khi biết
một bộ lọc, tức là biết phương trình hiệu số của nó hay biết các hệ số của nó, ta có thể
tính được đáp ứng xung và đáp ứng tần số - Đây là bài toán phân tích. Ngược lại, khi biết
được yêu cầu đáp ứng tần số của bộ lọc, ta tìm các hệ số của bộ lọc, từ đây có thể viết
phương trình hiệu số của nó, sao cho đáp ứng tần số càng sát với yêu cầu càng tốt - đây là
bài toán thiết kế. Bài toán thiết kế thường phức tạp hơn vì có nhiều phương pháp thiết kế
khác nhau.
       Quá trình thiết kế bộ lọc được bắt đầu với các đặc tính của bộ lọc bao gồm các
ràng buộc về biên độ và pha của đáp ứng tần số, về biên độ hoặc pha của đáp ứng tần số,
các ràng buộc về đáp ứng xung đơn vị hoặc đáp ứng nấc của bộ lọc... Sau khi đã xác định
được các đặc tính bộ lọc, ta tiếp tục tìm tập các hệ số của bộ lọc mà các hệ số tạo ra một
bộ lọc chấp nhận được. Bước sau cùng là dùng hệ thống phần cứng hoặc phần mềm minh
họa, lượng tử hoá các hệ số của bộ lọc và chọn cấu trúc bộ lọc thích hợp.
2.1.Bộ lọc – lọc số:
2.1.1.Bộ lọc:
         Bộ lọc là một hệ thống xử lý tín hiệu thực hiện chức năng chọn lọc tín hiệu theo
tần số (bộ lọc cho tín hiệu trong một dãi tần số nào đó đi qua và ngăn không cho tín hiệu
trong các dãi tần khác đi qua). Dãi cho qua gọi là dãi thông, và dãi không cho qua gọi là
dãi chắn.
2.1.2.Lọc số:
         Lọc số là một trường hợp riêng của bộ lọc. Trong đó tín hiệu vào là số và tín hiệu
ra là số thường dùng máy tính, IC, vi xử lý.
         Sơ đồ khối chức năng của quá trình lọc số:


                                                                                                      Th ra
          Th                                                                         Lọc
               Lọc          Lấy mẫu         ADC          DF          DAC
          A                                                                          (khôiphục)




                              Hình 2.1: sơ đồ khối chức năng quá trình lọc


                                               -3-
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


       Phân loại lọc số:
      - Dựa vào dãi thông và dãi chắn chia làm 4 loại:
           o Lọc thông thấp LPF.
           o Lọc thông cao HPF.
           o Lọc thông dãi BPF.
           o Lọc chắn dãi BSF.
      - Căn cứ vào độ dài của đáp ứng xung h(n) của bộ lọc:
           o Đáp ứng xung hửu hạn (lọc FIR).
           o Đáp ứng xung vô hạn (lọc IIR).
      - Dựa vào tính nhân quả (khả năng thực hiện bộ lọc):
           o Bộ lọc lý tưởng.
           o Bộ lọc thực tế.
2.2.Lọc FIR thông dãi
2.2.1.Khái niệm lọc FIR thông dãi
        Lọc FIR pha tuyến tính có H(n) dài hữu hạn N ( 0 ≤ n ≤ M − 1 )
      Các bộ lọc thường được kết nối với nhau để tạo ra hệ thống có các tính chất mong
muốn. Hai loại kết nối tổng quát là nối tiếp (hay còn gọi là nối tầng - cascade) và ghép
song song. Ở đây hai hệ thống kết nối là tuyến tính và bất biến.
       Bộ lọc thông dải theo cấu trúc FIR thiết lập từ việc xây dựng bằng cách tổ hợp
(ghép song song) hai bộ lọc thông thấp với nhau. Hai bộ lọc thông thấp thiết lập một dải
tần số băng thông có tần số cắt ωC1, ωC2 tương ứng như mô tả hình 2.2 dưới đây:




                       ωc2                      +
                                                      +
                                                -                                   ωc1 ωc2


                 ωc1
                                 Hình 2.2: Mô tả sự tạo thành bộ lọc thông dãi

2.2.2.Cấu trúc bộ lọc FIR
       Một bộ lọc đáp ứng xung hữu hạn với hàm hệ thống có dạng:


                                               -4-
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số

                                                                                 M −1
                                                −1
                              H ( z ) = b0 + b1 z +  + bM −1 z       1− M
                                                                             =   ∑b z
                                                                                 n=0
                                                                                         n
                                                                                               −n



        Như vậy đáp ứng xung h(n) là:
                                       bn   0 ≤ n ≤ M −1
                              h ( n) = 
                                        0 n < 0va n > M − 1
                Và phương trình sai phân là:
                              y ( n) = b0 x( n) + b1 x (n − 1) +  + bN −1 x (n − M + 1)
       Đây chính là tích chập tuyến tính của các dãy hữu hạn.
       Bậc của bộ lọc là M-1, trong khi chiều dài của bộ lọc là M (bằng với số lượng các
hệ số). Các cấu trúc bộ lọc FIR luôn luôn ổn định, và tương đối đơn giản hơn so với các
cấu trúc bộ lọc IIR. Hơn thế nữa, các bộ lọc FIR có thể được thiết kế để có một đáp ứng
pha tuyến tính và đó là điều cần thiết trong một số ứng dụng.
       Chúng ta sẽ xem xét lần lượt các cấu trúc của bộ lọc FIR sau đây:
2.2.2.1Cấu trúc dạng trực tiếp
       Phương trình sai phân được thực hiện bởi một dãy liên tiếp các bộ trễ do không có
đường phản hồi:
                              y ( n) = b0 x( n) + b1 x (n − 1) +  + bN −1 x (n − M + 1)
       Do mẫu thức bằng đơn vị nên ta chỉ có một cấu trúc dạng trực tiếp duy nhất. Cấu
trúc dạng trực tiếp được cho trong hình 1.2 với M = 5:


      x(n)
                                   z -1         z -1               z -1                 z -1
                              b0           b1                 b2                 b3                 b4
                                                                                                         y(n)
                        Hình 2.3: Cấu trúc lọc FIR dạng trực tiếp
2.2.2.2Cấu trúc dạng ghép tầng:
       Hàm hệ thống H(z) được biến đổi thành các tích của các khâu bậc 2 với các hệ số
thực. Các khâu này được thực hiện ở dạng trực tiếp và bộ lọc tổng thể có dạng ghép tầng
của các khâu bậc 2.
                                                                b              b           
                 H ( z ) = b0 + b1 z −1 +  + bM −1 z1− M = b0 1 + 1 z −1 +  + M −1 z1− M 
                                                                b                          
                                                                   0            b0         
                        K
                 = b 0 ∏ (1 + B k ,1 z −1 + B k , 2 z − 2 )
                       k =1




                                                       -5-
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


                          M 
        Trong đó K =   , Bk,1 và Bk,2 là các số thực đại diện cho các hệ số của các khâu
                     2
bậc 2. Cấu trúc dạng ghép tầng được cho trong hình 2.4 với M = 7:

                    b0
        x(n)                                                                                 y(n)
                              -1                 -1                     -1
                            z B                 z B                 z        B3,1
                                1,1                 2,1

                            z -1 B              z -1 B              z -1 B
                                   1,2                 2,2                 3,2


                          Hình 2.4: Cấu trúc lọc FIR dạng ghép tầng
2.2.2.3Cấu trúc dạng pha tuyến tính:
       Đối với các bộ lọc chọn tần, người ta mong muốn có đáp ứng pha là hàm tuyến
tính theo tần số, nghĩa là:
                      ∠H (e jω ) = β − αω − π ≤ ω ≤ π
                                π
        Trong đó β = 0 hoặc ±     và α là một hằng số.
                                2
       Đối với bộ lọc FIR nhân quả có đáp ứng xung trong khoảng [0, M-1], thì các điều
kiện tuyến tính là:
                     h(n) = h( M − 1 − n); β = 0, 0 ≤ n ≤ M − 1
                     h(n) = −h( M − 1 − n); β = ±π / 2, 0 ≤ n ≤ M − 1
            Xét phương trình sai phân được cho trong phương trình (1.5) với đáp ứng
xung đối xứng trong phương trình (1.9), ta có:
         y ( n) = b0 x( n) + b1 x (n − 1) +  + b1 x(n − M + 2) + b0 x(n − M + 1)
               = b0 [ x( n) + x(n − M + 1)] + b1[ x(n − 1) + x (n − M + 2)] + 
  Sơ đồ khối thực hiện phương trình sai phân trên được mô tả trong hình 2.5 dưới đây
đối với cả M lẻ và M chẵn:




                                                -6-
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


   Đối với M lẻ: M = 7, còn đối với M chẵn: M = 6

                                                 z -1                    z -1
                x(n)
                                                                                           z -1
                                                                                                              M=7
                                            -1                      -1                  z -1
                                        z                       z

                             b0                    b1                      b2                     b3
                                                                                                          y(n)

                                                         z -1                    z -1
                     x(n)

                                                                                               z -1           M=6
                                                  z -1                   z -1

                                  b0                       b1                      b2
                                                                                                       y(n)

        Hình 2.5: Cấu trúc lọc FIR pha tuyến tính với các hệ số M chẵn và lẻ
   Rõ ràng, với cùng một bậc của bộ lọc (cùng M) cấu trúc pha tuyến tính sẽ tiết kiệm
được 50% các bộ nhân so với cấu trúc dạng trực tiếp.
2.2.3.Các đặc tính của bộ lọc FIR pha tuyến tính
   Trong phần này chúng ta sẽ thảo luận về hình dạng của đáp ứng xung, đáp ứng tần số
trong hàm hệ thống của các bộ lọc FIR pha tuyến tính.
   Cho h(n), trong đó 0 ≤ n ≤ M – 1, là đáp ứng xung có chiều dài N thì hàm truyền hệ
thống là:
                                   N −1                                         M −1
                         H ( z ) = ∑ h(n) z − n = z − ( N −1) ∑ h(n) z M −1− n
                                   n=0                                          n =0

     có (M-1) điểm cực ở gốc (trivial poles) và M-1 điểm không nằm ở vị trí bất kỳ trên
mặt phẳng z. Đáp ứng tần số là:
                                        M −1
                         H ( e jω ) =   ∑ h ( n )e
                                        n=0
                                                           − jωn
                                                                   , −π <ω ≤π

2.2.3.1Đáp ứng xung h(n):
   Chúng ta có thể đưa ra ràng buộc pha tuyến tính:
                                  ∠H (e jω ) = −αω, − π < ω ≤ π
        Trong đó: α là một hằng số trễ pha. Ta đã biết rằng h(n) phải đối xứng, nghĩa là:




                                                                -7-
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


                                                                             M −1
                                 h(n) = h( M − 1 − n), 0 ≤ n ≤ M − 1, α =
                                                                              2
                         Do đó h(n) là đối xứng theo α, là chỉ số đối xứng. Có hai kiểu đối
xứng:
                                                     M −1
      • M lẻ: Trong trường hợp này, α =                   là một số nguyên. Đáp ứng xung ứng
                                                      2
          xung được mô tả bằng hình 2.6 dưới đây:




                                 Hình 2.6 Đáp ứng xung đối xứng M lẻ
                                                       M −1
      • M chẵn:Trong trường hợp này, α =                   là một số nguyên. Đáp ứng xung ứng
                                                        2
          xung được mô tả bằng hình 2.7 dưới đây:




                              Hình 2.7: Đáp ứng xung đối xứng, M chẵn
        Ta cũng có bộ lọc FIR pha tuyến tính loại hai nếu ta yêu cầu đáp ứng pha ∠H ( e jω )
thoả mãn điều kiện:
                                 ∠H (e jω ) = β − αω      với − π < ω ≤ π
            Đáp ứng pha là đường thẳng nhưng không đi qua gốc. Trong trường hợp
này α không phải là hằng số trễ pha, nhưng:


                                               -8-
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


                              d∠H (e jω )
                                            = −α
                                   dω
        Là hằng số, chính là trễ nhóm (α là một hằng số trễ nhóm). Trong trường hợp này,
các tần số được làm trễ với một tốc độ không đổi. Nhưng một số tần số có thể được làm
trễ với tốc độ lớn hơn hoặc nhỏ hơn.
        Đối với kiểu pha tuyến tính này, có thể thấy rằng:
                                                              M −1       π
               h (n ) = −h (M − 1 − n ), 0 ≤ n ≤ M − 1 và α =      ,β= ±
                                                               2         2
               Điều này có nghĩa rằng đáp ứng xung h(n) là phản đối xứng
                                                        M −1
(antisymmetric). Chỉ số đối xứng vẫn là α =                  . Một lần nữa chúng ta lại có 2 kiểu,
                                                         2
cho M lẻ và M chẵn.
                                                     M −1
      • M lẻ: Trong trường hợp này, α =                   là một số nguyên. Đáp ứng xung được
                                                      2
          mô tả bằng hình 2.8 dưới đây:




                          Hình 2.8 Đáp ứng xung phản đối xứng, M lẻ

                                            M −1                           M −1
      Lưu ý rằng mẫu h(α) tại α =                phải bằng 0, nghĩa là, h       = 0 .M chẵn:
                                             2                             2 
                                  M −1
Trong trường hợp này, α =              không phải là một số nguyên. Đáp ứng xung được mô
                                   2
tả trong hình 2.9.




                                               -9-
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số




                    Hình 2.9 Đáp ứng xung phản đối xứng, M chẵn
2.2.3.2Đáp ứng tần số H(ejwn)
       Khi tổ hợp hai loại đối xứng và phản đối xứng với M chẵn và M lẻ, ta có bốn kiểu
lọc FIR pha tuyến tính. Đáp ứng tần số của mỗi kiểu có biểu thức và hình dạng riêng. Để
nghiên cứu các đáp ứng pha của các kiểu này, ta viết biểu thức của H(ejω) như sau:
                                                                        π      M −1
                               H (e jω ) = H r (e jω )e j(β−αω ) ; β = ± , α =
                                                                        2       2
                               jω
              Trong đó Hr(e ) là hàm đáp ứng độ lớn chứ không phải là hàm đáp ứng
biên độ. Đáp ứng độ lớn là một hàm thực, có thể vừa dương vừa âm, không giống đáp
ứng biên độ luôn luôn dương. Đáp ứng pha kết hợp với đáp ứng biên độ là một hàm
không liên tục, trong khi kết hợp với đáp ứng độ lớn là một hàm tuyến tính liên tục.
      • Bộ lọc FIR pha tuyến tính Loại-1 (Type 1): Đáp ứng xung đối xứng, M lẻ
                                               M −1
      Trong trường hợp này β = 0 , α =                    là một biến nguyên, và h ( n ) = h ( M − 1 − n ) ,
                                                  2
0 ≤ n ≤ M − 1 , thì ta có thể chứng tỏ rằng:
                                               ( M −1) / 2
                                 H (e jω ) =  ∑ a ( n ) cos ωn  e − jω( M −1) / 2
                                              n =0
                                                               
                                                                
        Trong đó:
                                            M −1
                                 a ( 0) = h                             với mẫu ở chính giữa
                                            2 
                                                M −1                            M −3
                                  a ( n ) = 2h       − n            với 1 ≤ n ≤
                                                2                                 2
    • Bộ lọc FIR pha tuyến tính Loại-2 (Type 2): Đáp ứng xung đối xứng, M chẵn
                                                                                         M −1
      Trong trường hợp này β = 0 , h ( n ) = h ( M − 1 − n ) , 0 ≤ n ≤ M − 1 , nhưng α =
                                                                                          2
không phải là một biến nguyên, thì ta có thể chứng tỏ rằng:

                                                - 10 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


                                               M / 2             1  
                                   H (e jω ) =  ∑ b( n ) cosω n −  e − jω( M −1) / 2
                                                n =1             2  
        Trong đó:
                                          M                                     M
                              b( n ) = 2h  − n               với n = 1,2,...,
                                           2                                    2
                So sánh hai công thức trên ta có:
                                                              1 
                                   H r (ω) = ∑ b( n ) cosω n − 
                                             M/2

                                             n =1             2 

                                                                 1 
             Lưu ý: Tại ω = π , ta có H r (π) = ∑ b( n ) cosπ n −  = 0 mà không cần
                                                M/2

                                                n =1             2 
quan tâm đến b(n) hoặc h(n). Do đó chúng ta không thể sử dụng loại này (h(n) đối xứng,
M chẵn) đối với bộ lọc thông cao hoặc bộ lọc chắn dải.
     • Lọc FIR pha tuyến tính Loại-3 (Type 3): Đáp ứng xung phản đối xứng, M lẻ
                                π      M −1
Trong trường hợp này ta có β = , α =           là một biến nguyên, h ( n ) = −h ( M − 1 − n ) ,
                                2         2
                      M −1
0 ≤ n ≤ M − 1 , và h       = 0 thì ta có thể chứng tỏ:
                      2 
                                                              π  M −1  
                                    ( M −1) / 2
                         H (e ) =  ∑ c( n ) sin ωn  e  2 
                                                       j  −            ω
                              jω                                    2  
                                   n =0
                                                   
                                                    

        Trong đó
                       M −1                       M
         c( n ) = 2 h       − n  với n = 1,2,...,
                       2                          2
        So sánh hai biểu thức trên ta có:
                                     ( M −1) / 2
                         H r ( ω) = ∑ c( n ) sin ωn
                                        n =0

        Lưu ý: Tại ω = 0 và ω = π , ta có H r ( ω) = 0 mà không cần quan tâm c(n) hoặc

h(n). Hơn thế nữa, e j 2 = j , điều đó có nghĩa là jH r ( ω) là thuần ảo. Do đó, loại bộ lọc này
                         π



không thích hợp đối với việc thiết kế bộ lọc thông thấp hoặc thông cao. Tuy nhiên, điều
này thích hợp đối với việc xấp xỉ các bộ vi phân và bộ biến đổi Hilbert số lý tưởng.
     • Lọc FIR pha tuyến tính Loại-4(Type 4):Đáp ứng xung phản đối xứng, M chẵn




                                                   - 11 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


                                             π
      Trong trường hợp này β =                 , h ( n ) = −h ( M − 1 − n ) , 0 ≤ n ≤ M − 1 , nhưng
                                             2
     M −1
α=        không phải là một biến nguyên, thì ta có thể chứng tỏ rằng:
      2
                                                                     π  M −1  
                                  M / 2            1   j  −   ω 
                      H (e ) =  ∑ d( n ) sin ω n −  e  2  2  
                              jω

                                   n =1            2  
                Trong đó:
                                   M                                M
                      d ( n ) = 2h  − n            với n = 1,2,...,
                                    2                                2
        So sánh hai biểu thức trên ta có:
                                                       1 
                          H r (ω) = ∑ d ( n ) sin ω n − 
                                    M/2

                                    n =1               2 
                                                   π
        Lưu ý: Tại ω = π , H r (0) = 0 và e j 2 = j . Do vậy, loại này cũng thích hợp cho việc
thiết kế các bộ vi phân số và bộ biến đổi Hilbert số.
   Bảng sau đây mô tả khả năng thích hợp trong việc thiết kế các bộ lọc và các bộ biến
đổi Hilbert số, bộ vi phân số của 4 loại lọc FIR pha tuyến tính đã nêu:

   Type              LPF           HPF         BPF          SBF          Hilbert     Differentiator
 FIR Type 1                                                
 FIR Type 2                                    
 FIR Type 3                                                                               
 FIR Type 4                                                                              




                                              - 12 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


2.2.4.Đáp ứng tần số bộ lọc thông dãi

        0                       ws1         wp1                     wp2   ws2     π

     Rp




     As




      Hình 2.9: Các chỉ tiêu của bộ lọc thông dải BPF (bandpass filter)

                                     M −1
          H ( ω ) = FT { h( n )} =   ∑ h( n ) e   − jωn
                                                          = EMBED Equation.3
                                     n=0


 1 khiω ∈ [ − ω c1 ,−ω c 2 ] vaω ∈ [ω c1 , ω c 2 ]

 0 Khi ω ∉ [ − ω c1 ,−ω c 2 ] vaω ∉ [ω c1 , ω c 2 ]

            −ωC 1 jωn ωC 2
                                  1 ω Sinω n ω Sinω
⇒ h( n ) =  ∫ e dω + ∫ e jωn dω     = C2    C2
                                                 − C1   C1

            −ωC 2
                      ωC 1      
                                  2π   π ωC 2 n   π ωC1n

       Trong đó ωC1 và ωC 2 lần lượt là tần số cắt của 2 bộ lọc thông thấp lý tưởng tương
ứng, có thể được tính từ các chỉ tiêu đã cho của bộ lọc thông dải thực tế:
        ωC1 = (ωS 1 + ωP1 ) / 2
       
       ωC 2 = (ωS 2 + ω P 2 ) / 2




                                                           - 13 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số




                     CHƯƠNG 3: PHƯƠNG PHÁP THIẾT KẾ

3.1.Phương pháp cửa sổ
       Ý tưởng cơ bản của việc thiết kế là: chọn một bộ lọc chọn tần lý tưởng (mà đáp
ứng xung luôn luôn phi nhân quả, dài vô hạn) và cắt (lấy cửa sổ - window) đáp ứng xung
của nó để thu được bộ lọc FIR có pha tuyến tính và nhân quả (linear phase and causal
FIR filter). Bởi vậy, điểm quan trọng trong phương pháp này là việc chọn một hàm cửa
sổ thích hợp và một bộ lọc lý tưởng tương ứng.
       Bộ lọc thông thấp lý tưởng (ideal LPF) có tần số cắt ω c < π được cho bởi:

                          jω
                            1.e − jω ,   nêu ω < ωC
                 H d (e ) = 
                             0,        nêuωC < ω < π
                    Đáp ứng xung hd(n)
của bộ lọc lý tưởng này được cho bởi:
                                                             sin[ω ( n − α ) ]
                                             π
                      [          ]
        hd ( n) = F −1 H d ( e jω ) =
                                         1
                                        2π   ∫π H ( e )e dω = π ( n − α )
                                                 d
                                                     ω
                                                     j  ωj n              C

                                             −

       Chú ý rằng hd(n) là đối xứng theo α, sự kiện này tiện dụng cho bộ lọc FIR có pha
tuyến tính. Ngoài ra hd(n) có độ dài vô hạn và phi nhân quả.
       Để thu được bộ lọc FIR có pha tuyến tính và nhân quả h(n) có độ dài M, ta cần có:

                        h (n) 0 ≤ n ≤ M − 1                       M −1
              h ( n) =  d                  ,                 α=
                          0       khac                             2
       Thao tác này được gọi là lấy cửa sổ (window). Tổng quát, đáp ứng xung h(n) có
thể có được bằng cách lấy đáp ứng xung của bộ lọc lý tưởng hd(n) nhân với hàm cửa sổ
w(n) như sau:
                           h(n) = hd(n). ω (n)
   Tuỳ thuộc vào cách định nghĩa hàm cửa sổ ω (n) (window function) chúng ta có những
cửa sổ thiết kế khác nhau. Chẳng hạn nếu dùng cửa sổ chữ nhật (Rectangular), thì hàm
cửa sổ được định nghĩa:
                    1,
             w(n) = 
                    0,        nếu 0≤ n ≤ M-1
                                                                                            (1.34)
                               n khác


                                                     - 14 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


      Trong miền tần số, đáp ứng của lọc FIR nhân quả H(e jω ) chính là tích chập vòng
của đáp ứng tần số bộ lọc lý tưởng Hd(e jω ) và đáp ứng tần số của hàm cửa sổ W(e jω ) :
                           H(e jω ) = Hd(e jω ) ⊗ W(e jω )
      Hình dạng của H(e jω ) có thể được mô tả trực quan trên hình 3.1. Từ hình vẽ này
chúng ta có một số nhận xét quan trọng sau đây:



                                H(e)

                                    Hd(e)



                                            Transition bandwidth




                                       Main-lobe
                                        width


                                       W(e)



                                                        Max side-lobe height




     Hình 3.1: Kết quả của việc lấy cửa sổ trong miền tần số
      • Do cửa sổ w(n) có chiều dài M hữu hạn, đáp ứng của nó có một búp chính
        (main-lobe) có độ rộng tỷ lệ với 1/M, và các búp bên (side-lobe) của nó có chiều
        cao thấp hơn.
      • Tích chập tuần hoàn sinh ra một phiên bản méo của đáp ứng xung lý tưởng Hd(e
         jω ).

      • Búp chính (main-lobe) sinh ra một dải chuyển tiếp trong H(e jω ) mà độ rộng là
        nguyên nhân tạo nên độ rộng dải chuyển tiếp (transition bandwidth). Độ rộng



                                              - 15 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


        này tỷ lệ với 1/M. Độ rộng búp chính càng lớn thì độ rộng dải chuyển tiếp càng
        lớn.
      • Các búp bên (side-lobes) sinh ra các gợn sóng có hình dạng như nhau trong cả
        dải thông và dải chắn.

       Với các chỉ tiêu bộ lọc đã cho, chọn chiều dài bộ lọc và một hàm cửa sổ w(n) với
độ rộng main-lobe hẹp nhất và hệ số suy giảm side-lobe bé nhất có thể được. Từ nhận xét
4 nêu trên ta chú ý rằng dung sai dải thông δ1 và dung sai dải chắn δ2 không thể ấn định
một cách độc lập. Ta lấy chung δ 1 = δ 2.
       Tiếp theo chúng ta xem xét các hàm cửa sổ thường được dùng, bao gồm: cửa sổ
chữ nhật (Rectangular), cửa sổ tam giác (Bartlett), cửa sổ Hanning, cửa sổ Hamming, cửa
sổ Blackman và cửa sổ Kaiser.
3.1.1Cửa sổ chữ nhật (Rectangular Window)
   Trong miền n cửa sổ chữ nhật được định nghĩa như sau:

                    1 0≤ n ≤ M-1
       w(n) =
                    0 Các trường hợp khác
3.1.2Cửa sổ tam giác (Bartlett Window)
   Với mục đích giảm biên độ của các đỉnh thứ cấp của cửa sổ chữ nhật, chúng ta chọn
một cửa sổ khác có dạng tam giác cân, gọi là cửa sổ tam giác hay cửa sổ Bartlett
   Trong miền n cửa sổ tam giác được định nghĩa như sau:

                      2n                  M-1
                      M-1           0≤ n ≤ 2
        w(n) =
                         2n         M-1
                      2-                ≤n≤M-1
                         M-1         2
                      0             Các trường hợp khác
3.1.3Cửa sổ Hanning (Hanning Window)

                                    2Π 
                                       n             4Π 
                                                        n
                      0.42 −0.5 cos      +0.08 cos     
                                    M              M  0≤ n ≤ M
         w(n) =
                      0 Các trường hợp khác

3.1.4Cửa sổ Hamming (Hamming Window)

                                     2Π 
                                        n
                      0.54 −0.46 cos                      0≤ n ≤ M
          w(n) =                     M 
                      0        Các trường hợp khác
                                           - 16 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số




3.1.5Cửa sổ Blackman (Blackman Window)

                                      2Π 
                                         n             4Π 
                                                          n
                        0.42 −0.5 cos      +0.08 cos                                        0≤ n ≤ M
           w(n) =                     M              M 
                       0        Các trường hợp khác




                      Hình 3.2Hình dạng một số cửa sổ thường dùng
3.1.6Các bước thiết kế
      - Dựa vào As chọn cửa sổ thiết kế
      - Từ Fp, FS →tính TW →Tính M
      - Tính hàm cửa sổ w(n)M
                                                      FC1
                                ωC1 = 2πf C1 = 2π
                                                      f S1      f C 1 = ( f S 1 + f P1 ) / 2
        - Tính tần số cắt                                ; 
                                ωC 2 = 2πf C 2 = 2π
                                                      FC 2      fC 2 = ( f S 2 + f P2 ) / 2
                                                      fS 2
        - Tính h(n) lý tưởng
                                               M −1
        - Dịch chuyển h(n) sang phải             mẫu, sau đó nhân với w(n)N
                                                2
                           M −1
        hd ( n) = h(n −         ) w(n)
                            2


                                                 - 17 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


            Hd(n): là đáp ứng xung của bộ lọc thiết kế.
            - Từ Hd(n) tính Hd(Z) → Xây dựng sơ đồ cấu trúc.
            - Lượng tử hóa và mã hóa các hệ số của bộ lọc
            - Kiểm tra lại: Nếu không thỏa mãn yêu cầu thì tăng độ dài từ mã biểu diễn hệ số
bộ lọc.
3.2.Phương pháp lấy mẫu tần số
3.2.1Định nghĩa phương pháp lấy mẫu tần số
            Phương pháp lấy mẫu tần số sử dụng phép biến đổi Fourier rời rạc (DFT). Vì bộ
lọc số lý tưởng có đặc tính biên độ tần số H (e jω ) dạng hình chữ nhật nên không thể
thực hiện được trên thực tế. Cơ sở của phương pháp lấy mẫu tần số là xấp xỉ đặc tính tần
               jω
số H N (e           ) của bộ lọc số cần tổng hợp theo đặc tính tần số H (e jω ) của bộ lọc số lý
tưởng cùng loại.
            Việc xấp xỉ được thực hiện bằng cách lấy mẫu tần số qua DFT, tức là làm cho các
                       jω
mẫu của H N (e              ) và H (e jω ) bằng nhau tại các tần số rời rạc ωk = kω1 = (k.2π/N):

                                H N ( e jω )   ω kω
                                                = 1       = H ( e j ω)   ω kω
                                                                          = 1


                                  Hay:          H N (e jkω1 ) = H (e jkω1 )

            Bằng cách như vậy, tại các điểm tần số rời rạc ωk = kω1, sai số xấp xỉ giữa
H N (e jω ) và H (e jω ) bằng 0, còn tại các tần số ở giữa khoảng kω1 và (k+1)ω1 thì sai số
xấp xỉ là hữu hạn. Sai số xấp xỉ sẽ giảm nhỏ nếu giảm tần số lấy mẫu cơ bản ω 1 = (2π /
N), điều đó tương ứng với tăng độ dài N của đặc tính xung h(n)N của bộ lọc số được tổng
hợp.
                                                                              jω
            Ta có thể xác định được đặc tính biên độ tần số H N (e                 ) của 4 loại bộ lọc số
FIR pha tuyến tính theo công thức sau:


                                            sin(0.5 Nω N −1             A(k ) N
                            H N (e jω ) =
                                                 N
                                                       ∑(−1) k          ω kπ 
                                                                                    (1)
                                                       k =0
                                                                   sin  −        
                                                                       2       N 

            Đặc tính pha θ(ω) của bộ lọc FIR pha tuyến tính loại 1 và loại 2:



                                                 - 18 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


                                         N −1                     N −1
                            ϕ N (ω ) = −     .ω = − αω , với α =      .ω
                                         2                        2 

        Đặc tính pha θ(ω) của bộ lọc FIR pha tuyến tính loại 3 và loại 4:
                                π  N −1                      π         N −1
                   ϕ N (ω ) =    −     .ω = β − αω , với β =   và α =      .ω
                                2  2                         2         2 
                                                                         jω
        Để đánh giá sai số khi xấp xỉ đặc tính tần số H N (e                  ) theo đặc tính tần số bộ lọc
lý tưởng H (e jω ) , người ta dung hàm sai số:

                                      E (e ω ) = H (e jω ) − H N (e jω )

3.2.2Các bước thiết kế bộ lọc theo kiểu lấy mẫu tần số
     Các bước tổng hợp đặc tính xung h(n)N của bộ lọc số FIR pha tuyến tính theo
phương pháp lấy mẫu tần số như sau:
        Bước 1: Chọn số điểm lấy mẫu N (chính là độ dài của đặc tính xung). Thực hiện
                             jω
lấy mẫu đặc tính biên độ H (e ) của bộ lọc lý tưởng cùng loại trong một chu kỳ

0<=ω<2π để nhận được đặc tính biên độ tần số rời rạc H (k ) N của bộ lọc số FIR pha
tuyến tính cần tổng hợp.
                                                       jω
        Bước 2: Xác định đặc tính biên độ tần số H N (e ) của bộ lọc số FIR pha tuyến
tính cần tổng hợp bằng biểu thức nội suy sau:


                                             sin(0.5Nω ) N −1            A(k ) N
                            H N ( e jω ) =
                                                  N
                                                         ∑ (−1) k
                                                         k =0            ω kπ 
                                                                    sin  −      
                                                                        2 N 
                      jω
        Để tính H N (e ) theo công thức trên, trước hết cần xác định A(k)N:

-   Đối với các bộ lọc loại 1 và loại 4, từ H (k ) N phải lấy A(k)N đối xứng trong khoảng
    1<=k<= (N-1). Hơn nữa, bộ lọc loại 4 có A(0)N = 0

-   Đối với bộ lọc loại 2 và loại 3, từ H (k ) N phải lấy A(k)N phản đối xứng trong khoảng
    1<=k<= (N-1). Hơn nữa bộ lọc loại 3 phải có A(0)N = 0.



                                                 - 19 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số

                                                       jω
        Bước 3: Kiểm tra đặc tính biên độ tần số H N (e ) có đạt các tiêu chí kỹ thuật đã
                                       jω          jω
cho δ1, δ2, ωc, Δω hay không? Hoặc E (e ) max ≤ E(e ) p

       Nếu đạt tất cả các tiêu chí kỹ thuật đã cho thì giảm số điểm lấy mẫu N và thực
hiện lại các bước trên cho đến khi chọn được N min đảm bảo đạt tất cả các chỉ tiêu kỹ thuật
đã cho.
        Nếu không đạt thì tăng số điểm lấy mẫu N và thực hiện lại các bước trên cho đến
                            jω
khi chọn được Nmin để H N (e ) của bộ lọc cần tổng hợp đạt được tất cả các chỉ tiêu kỹ
thuật đã cho.
        Bước 4: Xác định đặc tính xung h(n)N của bộ lọc số FIR pha tuyến tính cần tổng
hợp:
                                          h(n) N = IDFT [ H (k N ]

    -   Đối với bộ lọc loại 1: để tìm h(n)N có thể tính IDFT theo công thức:
                                                        N −1
                                     A(0) N 2            2
                                                                                    kπ       
                          h1 (n) N =
                                       N
                                           +
                                             N
                                                        ∑ (−1)
                                                        k =1
                                                                 k
                                                                     A(k ) N . cos  (2n + 1) 
                                                                                   N         

    -   Đối với bộ lọc loại 2: để tìm h(n)N có thể tính IDFT theo công thức:
                                                    N
                                                      −1
                                    A(0) N 2        2
                                                                                    kπ       
                         h2 (n) N =
                                      N
                                          +
                                            N
                                                    ∑ (−1)
                                                    k =1
                                                               k
                                                                     A(k ) N . cos  ( 2n + 1)
                                                                                   N         

    -   Đối với bộ lọc loại 3: để tìm h(n)N có thể tính IDFT theo công thức:
                                        N −1
                                    2    2
                                                                       kπ       
                         h3 (n) N =
                                    N
                                        ∑ (−1)
                                        k =1
                                                 k +1
                                                        A(k ) N . sin  ( 2n + 1)
                                                                      N         

    -   Đối với bộ lọc loại 4: để tìm h(n)N có thể tính IDFT theo công thức:
                                                                   N
                                                                     −1
                                    (−1) n  N   2                2
                                                                                               kπ       
                         h4 (n) N =
                                      N
                                          A  −
                                            2 N N
                                                                   ∑ (−1)
                                                                   k =1
                                                                            k
                                                                                A(k ) N . sin  (2n + 1) 
                                                                                              N         




                                               - 20 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số




                    CHƯƠNG 4: CHƯƠNG TRÌNH THIẾT KẾ

4.1.Thiết kế theo phương pháp cửa sổ.
4.1.1.Tính toán thiết kế.
          Các bước tính toán thiết kế lọc FIR thông dãi với các thông số sau:
          ω1S = 0,2π ; AS = 60dB
          ω1 p = 0,35π ; R p = 1dB
          ω 2 p = 0,65π ; R p = 1db
          ω 2 s = 0,8π ; AS = 60dB
      -     Với AS =60dB chọn cửa sổ Blackman với hàm cửa sổ như sau:
                            2πn             4πn 
              0,42 − 0,5 cos    + 0,08 cos       0≤n≤M
       w(n) =                M             M 
              
                               0                  n  0andn  M
      -   Tính M với :
       ∆ω1 = ω1P − ω1S = 0,35π − 0,2π = 0,15π
                                                   → TW = MIN (∆ω1 , ∆ω 2 ) = 0.15π
       ∆ω 2 = ω 2 S − ω 2 P = 0,8π − 0.65π = 0,15π
                 11π       11π
      ⇒M =           +1 =       + 1 = 74.3 → chọn M=75
                 TW       0,15π
      - Tìm tần số cắt:
      ωC1 = ( ω1P + ω1S ) / 2 = (0,2π + 0,35π ) / 2 = 0,275π
      ωC 2 = ( ω 2 P + ω 2 S ) / 2 = ( 0,65π + 0,8π ) / 2 = 0,725π
      -     Tìm Hd(n) lý tưởng bộ lọc thông dãi có:
              −ωC 1 jωn ωC 2       1   ω SinωC 2 n ωC1 SinωC1
⇒ hd ( n ) =  ∫ e dω + ∫ e jωn dω     = C2        −
              −ωC 2
                        ωC 1       2π
                                         π ωC 2 n    π ω C1 n
      -  Tìm đáp ứng xung h(n) của bộ lọc thực tế (bộ lọc cần thiết kế):
       Đáp ứng xung của bộ lọc thông dải thực tế được tính bằng cách lấy đáp ứng xung
lý tưởng nhân với hàm cửa sổ đây chính là thao tác lấy cửa sổ.
               h(n) = hd(n).w(n)
       Đến đây chúng ta đã có được bộ lọc cần thiết kế.




                                                 - 21 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


4.1.2.Thuật toán giải quyết bài toán
         Trong phần này sẽ thực hiện chương trình thiết kế bộ lọc thông dải bằng cách sử
dụng cửa sổ Blackman. Chương trình sẽ nhận các chỉ tiêu yêu cầu của bộ lọc cần thiết
kế, sau đó thực hiện các bước thiết kế để tìm được đáp ứng xung h(n).
         Để khảo sát bộ lọc vừa thiết kế, chương trình cũng sẽ thực hiện tính toán và vẽ đáp
ứng biên độ - tần số của bộ lọc theo dB, cũng như vẽ các đáp ứng xung lý tưởng hd(n),
hàm cửa sổ w(n) và đáp ứng xung bộ lọc thực tế h(n).
         Chương trình được viết và chạy trên nền Matlab 6.5, với việc sử dụng một số hàm
hỗ trợ có sẵn của Matlab cho xử lý tín hiệu số, và một số hàm viết thêm được tham khảo
từ tài liệu [1] (các hàm dưới dạng các file .m).
                       SƠ ĐỒ THUẬT TOÁN


                                    Begin


                                Nhập các chỉ tiêu
                                w1s, w1p, w2p, w2s,
                                      As, Rp



                 NO               Chỉ tiêu có
                                  hợp lệ


                                   YES

                                     Tính M


                               Tìm hàm cửa sổ w(n)
                               (Gọi hàm của Matlab
                                w=blackman(M) )


                            Tính hd(n)
                            h(n)=hd(n).w(n)


                             Vẽ hd(n), w(n), h(n) và
                            đáp ứng biên độ (dB) của
                                 bộ lọc thiết kế.

                                                  - 22 -
                                      END
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số




4.1.3.Chương trình Matlab
4.1.3.1Các hàm sử dụng
       Hàm Ideal_lp( ω C ,M): Tính đáp ứng xung của bộ lọc thông thấp bậc M
       function hd = ideal_lp(wc,M);
       % Ided LouPass filter computation
       % [hd] = ideal_lp(wc,M)
       % kd = ideal impulse response betveen 0 to M-1
       % wc = cutoff frequency in radians
       % M = length of the ideal filter
       alpha =(M-1)/2;
       n = [0:1:(M-1)];
       m = n - alpha + eps;
       hd = sin(wc*m)./(pi*m);
       freqz_m(b,a): Tính đáp ứng tần số của bộ lọc FIR có đáp ứng xung h.
       function [db,mag,pha,grd,w] = freqz_m(b,a);
       % Modified version of freqz subroutine
       % ....................................
       % [db,mag,pha.grd.wl = freqz_m(b,a);
       % db - Relative magnitude in dB computed over 0 to pi radians
       % mag - absolute magnitude computed over 0 to pi radians
       % pha = Phase response in radians over 0 to pi radians
       % grd = Craup delay over 0 to pi radians
       %w = 501 frequency samples between 0 to pi radians
       % b = numerator polynomial of A h ) (for FIR: b=h)
       % a = denominator polynomial of H(z) (for FIR: a=[1])
       [H,w] = freqz(b,a,1000,'whole' ) ;
       H = (H(1:1:501))'; w = (w(1:1:501))';
       mag = abs(H) ;
       db=20*log10((mag+eps)/max(mag));
       pha = angle (H) ;
       grd = grpdelay(b,a,w);



                                              - 23 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


4.1.3.2Chương trình thực hiện
      ws1=0.2*pi;
      wp1=0.35*pi;
      wp2=0.65*pi;
      ws2=0.8*pi;
      As=60;
      TW=min((wp1-ws1),(ws2-wp2));
      M=ceil(11*pi/TW)+1;
      M=75;
      n=[0:M-1]
      wc1=(ws1+wp1)/2; wc2=(ws2+wp2)/2;
      hd=ideal_lp(wc2,M)-ideal_lp(wc1,M);
      % tinh cua so blackman
      w_bla=(blackman(M))';
      %tinh dap ung xung thc te
      h=hd.*w_bla;
      % tim dap ung xung tan so cua bo loc FIR
      [db,mag,pha,grd,w] = freqz_m(h,[1]);
      delta_w = 2*pi/1000;
      disp(['Actual Passband Ripple:'])
      % do gon song dai thong
      Rp = -min(db(wp1/delta_w+1:1:wp2/delta_w)) ;
      As = -round(max(db(ws2/delta_w+1:1:501))) ;
      % ve dap ung xung
      Subplot(2,2,1); stem (n,hd); title('dap ung xung ly tuong');
      %Axis(0 M-1 -0.4 0.5);
      xlabel ('n'); ylabel('h(n)');
      Subplot (2,2,2); stem(n,w_bla); title('ham cua so w(n)N');
      %Axis(0 M-1 0 1.1);
      xlabel('n'); ylabel('w(n)');
      Subplot(2,2,3); stem(n,h);title('dap ung xung thuc te');
      %Axis(0 M-1 -0.4 0.5);
      xlabel('n');ylabel('h(n)');
      Subplot(2,2,4);plot(w/pi,db);%axis(0 1 -150 10];
      Title('dap ung cuong do theo db');
      Xlabel('tan so trong gioi han pi');


                                              - 24 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


      Ylabel('dB');
4.1.3.3Kết quả chạy chương trình
       Các chỉ tiêu thiết kế:
       ω1S = 0,2π ; AS = 60dB
       ω1 p = 0,35π ; R p = 1dB
        ω 2 p = 0,65π ; R p = 1db
        ω 2 s = 0,8π ; AS = 60dB
      Kết quả chạy chương trình thiết kế:
      M=75
      Rp=0.003
      AS=75dB
      Như vậy bộ lọc vừa thiết kế thỏa mãn yêu cầu của bài toán.
      Hình dạng của đáp ứng xung lý tưởng, đáp ứng xung thực tế bộ lọc, hàm cửa sổ
Blackman, và đáp ứng biên độ tần số (theo dB) của bộ lọc được cho như trên




                               Hình 4.1: Mô tả đáp ứng sau khi thiết kế




                                              - 25 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


4.2.Thiết kế lọc Fir theo phương pháp lấy mẫu tần số
4.2.1.Tính toán thiết kế.
        Theo ý tưởng cơ bản
        Chúng ta chọn M=40 do đó chúng ta có mẫu tần số tại ω s1 đó là tại k =4
                                                            2π
                                            ω1s = 0.2π =       4
                                                            40

        Và mẫu tiếp theo tại ω1 p đó là tại k=7:
                                                            2π
                                           ω1 p = 0.2π =       7
                                                            40

        Và mẫu tiếp theo tại ω s 2 đó là tại k=13:
                                                            2π
                                           ω 2 p = 0.2π =      13
                                                            40

        Và mẫu tiếp theo tại ω 2 p đó là tại k=16:
                                                            2π
                                           ω 2 s = 0.2π =      16
                                                            40

        Do đó chúng ta có 6 mẫu trong stopband [ 0 ≤ ω ≤ ω1s ] và 9 mẫu trong passband [
ω1 p ≤ ω ≤ ω 2 p ] và 6 mẫu trong stopband [ ω 2 p ≤ ω ≤ π ]. Từ 7.36 chúng ta có:

                 H r ( K ) =[zeros(1,6),ones(1,9),zeros(1,11),ones(1,9),zeros(1,5)]

                                  40 − 1
        Khi chọn M=40, α =               = 19.5 với giá trị này thì thuộc bộ đáp ứng pha tuyến
                                    2
        Tính Type-2, từ [7.37] chúng ta có:
                                            2π
                                     − 19.5    k = −19.5πk ,    0 ≤ k ≤ 19
                           ∠H (k ) =        20
                                     + 1.95π (40 − k ),
                                                          20 ≤ k ≤ 39
      - Tìm đáp ứng xung h(n)
      Phương pháp thiết kế tối ưu:
        Điều kiện thuận lợi để chọn giá trị T1 và T2 cho M=40 và 7 mẫu trong passband
là:
                                    T1 = 0.109021, T2 = 0.59417456

        Do đó:

                                              - 26 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


H r ( ω ) = [zeros(1,5),T1,T2,ones(1,7),T2,T1,zeros(1,9),T1,T2,ones(1,7),T2,T1,zeros(1,4)]
4.2.2.Chương trình Matlab.
4.2.2.1Chương trình thực hiện.
       Theo ý tưởng cơ bản :
        >>M = 40; alpha = (M-1)/2; l = 0:M-1; wl = (2*pi/M)*l;
        >>Hrs = [zeros(1,6),ones(1,9),zeros(1,11),ones(1,9),zeros(1,5)];
        >>Hdr = [0,0,1,1,0,0]; wdl = [0,0.275,0.275,0.725,0.725,1];
        >>k1 = 0:floor((M-1)/2); k2 = floor((M-1)/2)+1:M-1;
        >>angH = [-alpha*(2*pi)/M*k1, alpha*(2*pi)/M*(M-k2)];
        >>H = Hrs.*exp(j*angH);
        >>h = real(ifft(H,M));
        >> [db,mag,pha,grd,w] = freqz_m(h,1);
        >> [Hr,ww,a,L] = Hr_Type2(h);
        >>subplot(1,1,1)
        >>subplot(2,2,1);plot(wl(1:21)/pi,Hrs(1:21),'o',wdl,Hdr);
        >>axis([0,1,-0.1,1.1]); title('Frequency samples: M=40')
        >>xlabel(' '); ylabel('Hr(k)')
        >>set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,1])
        >>set(gca,'YTickMode','manual','YTick',[0,1]); grid
        >>subplot(2,2,2); stem(l,h); axis([-1,M,-0.1,0.3])
        >>title('Impulse response');ylabel('h(n)');text(M+1,-0.1,'n')
        >>subplot(2,2,3); plot(ww/pi,Hr,wl(1:21)/pi,Hrs(1:21),'o');
        >>axis([0,1,-0.2,1.2]); title('amplitude response')
        >>xlabel('frequency in pi unit'); ylabel('Hr(w)')
        >>set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,11])
        >>set(gca,'YTickMode','manual','YTick',[0,1]); grid
        >>subplot(2,2,4);plot(w/pi,db); axis([0,1,-200,10]); grid
        >>title('Magnitude response'); xlabel('frequency in pi unit');

                                              - 27 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


        >>ylabel('decibel');
        >>set(gca,'XTickMode','Manual','XTick',[0,0.2,0.35,0.65,0.8,1]);
        >>set(gca,'YTickMode','Manual','YTick',[-60;0]);
       >>set(gca,'YTickLabelMode','manual','YTickLabels',['60';' 0'])
      Phương pháp thiết kế tối ưu:
      >>M = 40; alpha = (M-1)/2; l = 0:M-1; wl = (2*pi/M)*l;
      >>T1 = 0.109021; T2 = 0.59417456;
      >>Hrs =
      [zeros(1,5),T1,T2,ones(1,7),T2,T1,zeros(1,9),T1,T2,ones(1,7),T2,T1,zeros(1,4)];
      >>Hdr = [0,0,1,1,0,0]; wdl = [0,0.2,0.35,0.65,0.8,1];
      >>k1 = 0:floor((M-1)/2); k2 = floor((M-1)/2)+1:M-1;
      >>angH = [-alpha*(2*pi)/M*k1, alpha*(2*pi)/M*(M-k2)];
      >>H = Hrs.*exp(j*angH);
      >>h = real(ifft(H,M));
      >> [db,mag,pha,grd,w] = freqz_m(h,1);
      >> [Hr,ww,a,L] = Hr_Type2(h);
      >>subplot(1,1,1)
      >>subplot(2,2,1);plot(wl(1:21)/pi,Hrs(1:21),'o',wdl,Hdr);
      >>axis([0,1,-0.1,1.1]); title('Frequency Sanmples: M=40,T1=0.5941, T2=0.109')
      >>xlabel(''); ylabel('Hr(k)')
      >>set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,1]); grid
      >>subplot(2,2,2); stem(l,h); axis([-1,M,-0.4,0.4]); grid
      >>title('Impulse Response');ylabel('h(n)');text(M+1,-0.4,'n')
      >>subplot(2,2,3); plot(ww/pi,Hr,wl(1:21)/pi,Hrs(1:21),'o');
      >>axis([0,1,-0.1,1.1]); title('Amplitude Response')
      >>xlabel('Frequency in pi units'); ylabel('Hr(w)')
      >>set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,1]); grid



                                              - 28 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


      >>subplot(2,2,4);plot(w/pi,db); axis([0,1,-100,10]); grid
      >>title('Magnitude'); xlabel('Frequency in pi units');
      >>ylabel('Decibels');
      >>set(gca,'XTickMode','Manual','XTick',[0,0.2,0.35,0.65,0.8,1]);
      >>set(gca,'YTickMode','Manual','YTick',[-60;0]);
      >>set(gca,'YTickLabelMode','manual','YTickLabels',['60';' 0'])
4.2.2.2 Kết quả chạy chương trình
       Theo ý tưởng cơ bản :




                               Hình 4.2: Mô tả đáp ứng sau khi thiết kế


        Nhận xét:
       - Lỗi xấp xỉ là hiệu của đáp ứng lý tưởng và đáp ứng thực tế bằng không tại các tần
    số được lấy mẫu.
        - Lỗi xấp xỉ ở tất cả các tần số khác nhau phụ thuộc vào hình dạng của đáp ứng tần
    số lý tưởng; nghĩa là, đáp ứng tần số lý tưởng càng sắc nét thì lỗi xấp xỉ càng lớn.



                                              - 29 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


        - Lỗi càng lớn khi ở gần cạnh dải và càng bé khi ở bên trong dải.
       Quan sát độ thị hình 4.2 thì độ suy hao dải chắn tối thiểu khoảng 16dB không thỏa
mãn với giá trị As=60dB đã cho. Do vậy phương pháp xứ lý này không chấp nhận được.
       Để có được hệ số suy giảm tốt hơn, chúng ta phải tăng M tạo ra các mẫu tự do ở
dải chuyển tiếp nghĩa là, chúng ta thay đổi các giá trị của chúng để thu được hệ số suy
giảm lớn nhất đối với M và độ rộng dải chuyển tiếp đã cho. Trong thực tế thì trong dải
chuyến tiếp người ta chọn một hoặc hai mẫu. Đây được gọi là phương pháp thiết kế tối
ưu.
      Phương pháp thiết kế tối ưu:




                               Hình 4.3: Mô tả đáp ứng sau khi thiết kế
      Nhận xét:
      Độ suy hao dải chẵn tối thiểu bây giờ là 60dB. So với giá thiết thì có thể chấp
nhận được. Do đó chấp nhận bộ lọc FIR pha tuyến tính mà đáp ứng tấn số của nó độ gợn
song của biên độ là hằng số.




                                              - 30 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


                                 CHƯƠNG 5: KẾT LUẬN
       Tiểu luận đã trình bày tóm tắc các vấn đề lý thuyết cơ bản về thiết kế bộ lọc số
FIR. Nêu các đặc tính bộ lọc số cần xác định và các phương pháp khi thiết kế bộ lọc. Đó
chính phương pháp sử dụng hàm cửa sổ và phương pháp lấy mẫu tần số. Đã đi sâu tìm
hiểu hai phương pháp để thiết kế bộ lọc số FIR thông dãi.
      Sau khi tìm hiểu lý thuyết cơ bản phương pháp lấy mẫu tần số, tiểu luận vận dụng
MATLAB để minh hoạ lý thuyết đồng thời nêu ra bài toán thiết kế và cách giải quyết, so
sánh kết quả đạt được.
      Sau khi thiết kế lọc FIR thông dãi theo hai phương pháp trên thu được các ưu
nhược điểm khi sử dụng phương pháp như sau:
        Các nhược điểm:
        Đối với phương pháp sử dụng hàm cửa sổ và lấy mẫu tần số:
    -   Không thể ấn định trước các tần số của dải W p và Ws trong thiết kế.

    -   Không thể ấn định cả hai hệ số gợn sóng δ1 và δ 2 một cách đồng thời.
    -   Các lỗi xấp xỉ, là hiệu của đáp ứng lý tưởng và đáp ứng thực tế không phân bố đều
        đặn trên các khoảng dải tần.
        Đế loại trừ ba nhược điểm nêu trên thì ta có các kỹ thuật sau:
    -   Đối với lọc FIR có pha tuyến tính, có thể đạt đến một tập các điều kiện để có thể
        cải thiện sao cho giải pháp thiết kế là tối ưu theo nghĩa tối thiểu hoá lỗi xấp xỉ cực
        đại (đôi khi được gọi là lỗi minimax hoặc lỗi Chebyshev ).
    -   Các bộ lọc có tính chất này được gọi là bộ lọc cân bằng gợn sóng vì lỗi xấp xỉ
        được phân bố đều đặn trên cả dải thông và dải chắn.
    -   Các kết quả này đạt được trong các bộ lọc bậc-thấp.




                                              - 31 -
Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số


TÀI LIỆU THAM KHẢO
1. Hồ Văn Sung, Xử lý số tín hiệu, NXB Giáo Dục,2003
2. Lý thuyết và bài tập xử lý tín hiệu số-Tống Văn On, NXB Lao Động - Xã Hội,2002
3.Xử lý tín hiệu và lọc số-Nguyễn Quốc Trung, NXB Khoa Học và Kỹ Thuật,2002
4.Xử lý tín hiệu số-Quách Tuấn Ngọc, NXB Giáo Dục,1995
5.Digital Signal Processing Using Matlab V4-Vinay K.Ingle-John G.Proakis.




                                              - 32 -

More Related Content

What's hot

phương pháp hình thang,Công thức Simpson
phương pháp hình thang,Công thức Simpson phương pháp hình thang,Công thức Simpson
phương pháp hình thang,Công thức Simpson caovanquy
 
Các cấu trúc lệnh trong C
Các cấu trúc lệnh trong CCác cấu trúc lệnh trong C
Các cấu trúc lệnh trong Cpnanhvn
 
Xu lytinhieuso thay.tv_loan
Xu lytinhieuso thay.tv_loanXu lytinhieuso thay.tv_loan
Xu lytinhieuso thay.tv_loanTrung Nguyen
 
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
 
Xu lý tín hiệu số
Xu lý tín hiệu sốXu lý tín hiệu số
Xu lý tín hiệu sốHao Truong
 
xử lý số tín hiệu -Chuong 2
xử lý số tín hiệu -Chuong 2xử lý số tín hiệu -Chuong 2
xử lý số tín hiệu -Chuong 2Ngai Hoang Van
 
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại vi
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại viĐề Cương ôn tập kiến trúc máy tính và thiết bị ngoại vi
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại viĐỗ Đức Hùng
 
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768nataliej4
 
Bai giang xlths
Bai giang xlthsBai giang xlths
Bai giang xlthsthuydt1
 
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
 
xử lý số tín hiệu -Chuong 4
xử lý số tín hiệu -Chuong 4xử lý số tín hiệu -Chuong 4
xử lý số tín hiệu -Chuong 4Ngai Hoang Van
 
Các lệnh-cơ-bản-của-giải-tích-1
Các lệnh-cơ-bản-của-giải-tích-1Các lệnh-cơ-bản-của-giải-tích-1
Các lệnh-cơ-bản-của-giải-tích-1thaicuia
 
Công thức truyền tin
Công thức truyền tinCông thức truyền tin
Công thức truyền tinakprovip
 
Chuong 5.1 mang 4 cuc
Chuong 5.1 mang 4 cucChuong 5.1 mang 4 cuc
Chuong 5.1 mang 4 cucthanhyu
 
thuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu sothuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu soKimkaty Hoang
 
Ky Thuat So buu chinh vien thong
Ky Thuat So buu chinh vien thongKy Thuat So buu chinh vien thong
Ky Thuat So buu chinh vien thonghuy2501
 
Chuong 04 mach logic
Chuong 04 mach logicChuong 04 mach logic
Chuong 04 mach logicAnh Ngoc Phan
 

What's hot (20)

Đề 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
 
phương pháp hình thang,Công thức Simpson
phương pháp hình thang,Công thức Simpson phương pháp hình thang,Công thức Simpson
phương pháp hình thang,Công thức Simpson
 
Các cấu trúc lệnh trong C
Các cấu trúc lệnh trong CCác cấu trúc lệnh trong C
Các cấu trúc lệnh trong C
 
Xu lytinhieuso thay.tv_loan
Xu lytinhieuso thay.tv_loanXu lytinhieuso thay.tv_loan
Xu lytinhieuso thay.tv_loan
 
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ố
 
Xu lý tín hiệu số
Xu lý tín hiệu sốXu lý tín hiệu số
Xu lý tín hiệu số
 
Btl xlths 2 cuoi cung
Btl xlths 2 cuoi cungBtl xlths 2 cuoi cung
Btl xlths 2 cuoi cung
 
xử lý số tín hiệu -Chuong 2
xử lý số tín hiệu -Chuong 2xử lý số tín hiệu -Chuong 2
xử lý số tín hiệu -Chuong 2
 
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại vi
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại viĐề Cương ôn tập kiến trúc máy tính và thiết bị ngoại vi
Đề Cương ôn tập kiến trúc máy tính và thiết bị ngoại vi
 
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768
Ngân hàng đề môn điện tử số kỹ thuật số ( có đáp án) 4797768
 
Bai giang xlths
Bai giang xlthsBai giang xlths
Bai giang xlths
 
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
 
xử lý số tín hiệu -Chuong 4
xử lý số tín hiệu -Chuong 4xử lý số tín hiệu -Chuong 4
xử lý số tín hiệu -Chuong 4
 
Lttt b11
Lttt b11Lttt b11
Lttt b11
 
Các lệnh-cơ-bản-của-giải-tích-1
Các lệnh-cơ-bản-của-giải-tích-1Các lệnh-cơ-bản-của-giải-tích-1
Các lệnh-cơ-bản-của-giải-tích-1
 
Công thức truyền tin
Công thức truyền tinCông thức truyền tin
Công thức truyền tin
 
Chuong 5.1 mang 4 cuc
Chuong 5.1 mang 4 cucChuong 5.1 mang 4 cuc
Chuong 5.1 mang 4 cuc
 
thuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu sothuc hanh xu ly tin hieu so
thuc hanh xu ly tin hieu so
 
Ky Thuat So buu chinh vien thong
Ky Thuat So buu chinh vien thongKy Thuat So buu chinh vien thong
Ky Thuat So buu chinh vien thong
 
Chuong 04 mach logic
Chuong 04 mach logicChuong 04 mach logic
Chuong 04 mach logic
 

Similar to Attachments 17 12_2009

Baibao dolph chebyshev
Baibao dolph chebyshevBaibao dolph chebyshev
Baibao dolph chebyshevluu2311
 
Thông tin quang_coherent
Thông tin quang_coherentThông tin quang_coherent
Thông tin quang_coherentVinh Nguyen
 
Thong tin quang 1 viet em
Thong tin quang 1 viet emThong tin quang 1 viet em
Thong tin quang 1 viet emanhthanhphong
 
Thong tin quang 1 viet em
Thong tin quang 1 viet emThong tin quang 1 viet em
Thong tin quang 1 viet emanhthanhphong
 
Tổng hợp câu hỏi môn thông tin số
Tổng hợp câu hỏi môn thông tin sốTổng hợp câu hỏi môn thông tin số
Tổng hợp câu hỏi môn thông tin sốHuan Tran
 
Cân bằng kênh bằng phương pháp zff và mmse
Cân bằng kênh bằng phương pháp zff và mmseCân bằng kênh bằng phương pháp zff và mmse
Cân bằng kênh bằng phương pháp zff và mmseThanh Hoa
 
CHƯƠNG 6 THÔNG TIN SỐ TRUYỀN DẪN TÍN HIỆU SỐ TRÊN KÊNH THỰC
CHƯƠNG 6 THÔNG TIN SỐ TRUYỀN DẪN TÍN HIỆU SỐ TRÊN KÊNH THỰCCHƯƠNG 6 THÔNG TIN SỐ TRUYỀN DẪN TÍN HIỆU SỐ TRÊN KÊNH THỰC
CHƯƠNG 6 THÔNG TIN SỐ TRUYỀN DẪN TÍN HIỆU SỐ TRÊN KÊNH THỰClykhnh386525
 
ứNg dụng phép biến đổi wavelet trong xử lý ảnh
ứNg dụng phép biến đổi wavelet trong xử lý ảnhứNg dụng phép biến đổi wavelet trong xử lý ảnh
ứNg dụng phép biến đổi wavelet trong xử lý ảnhThanh Hoa
 
De thi ca nhan khong chuyen 2006
De thi ca nhan khong chuyen 2006De thi ca nhan khong chuyen 2006
De thi ca nhan khong chuyen 2006huynhsp2
 
Chuong 5_ KỸ THUẬT ĐIỀU CHẾ SỐ.pdf
Chuong 5_ KỸ THUẬT ĐIỀU CHẾ SỐ.pdfChuong 5_ KỸ THUẬT ĐIỀU CHẾ SỐ.pdf
Chuong 5_ KỸ THUẬT ĐIỀU CHẾ SỐ.pdfCngNguynHuy8
 
Giaotrinh thd dtcb-b1-ok
Giaotrinh thd dtcb-b1-okGiaotrinh thd dtcb-b1-ok
Giaotrinh thd dtcb-b1-okBac Nguyen
 
Nmlt c16 ky_thuatlaptrinhdequy_in
Nmlt c16 ky_thuatlaptrinhdequy_inNmlt c16 ky_thuatlaptrinhdequy_in
Nmlt c16 ky_thuatlaptrinhdequy_inHuy Nguyễn
 

Similar to Attachments 17 12_2009 (20)

Baibao dolph chebyshev
Baibao dolph chebyshevBaibao dolph chebyshev
Baibao dolph chebyshev
 
5 1
5 15 1
5 1
 
Thông tin quang_coherent
Thông tin quang_coherentThông tin quang_coherent
Thông tin quang_coherent
 
BTLXLSTH.pdf
BTLXLSTH.pdfBTLXLSTH.pdf
BTLXLSTH.pdf
 
Thong tin quang 1 viet em
Thong tin quang 1 viet emThong tin quang 1 viet em
Thong tin quang 1 viet em
 
Thong tin quang 1 viet em
Thong tin quang 1 viet emThong tin quang 1 viet em
Thong tin quang 1 viet em
 
Tổng hợp câu hỏi môn thông tin số
Tổng hợp câu hỏi môn thông tin sốTổng hợp câu hỏi môn thông tin số
Tổng hợp câu hỏi môn thông tin số
 
Cân bằng kênh bằng phương pháp zff và mmse
Cân bằng kênh bằng phương pháp zff và mmseCân bằng kênh bằng phương pháp zff và mmse
Cân bằng kênh bằng phương pháp zff và mmse
 
Xlths
XlthsXlths
Xlths
 
Xlths
XlthsXlths
Xlths
 
4 tuan nguyenvan
4 tuan nguyenvan4 tuan nguyenvan
4 tuan nguyenvan
 
CHƯƠNG 6 THÔNG TIN SỐ TRUYỀN DẪN TÍN HIỆU SỐ TRÊN KÊNH THỰC
CHƯƠNG 6 THÔNG TIN SỐ TRUYỀN DẪN TÍN HIỆU SỐ TRÊN KÊNH THỰCCHƯƠNG 6 THÔNG TIN SỐ TRUYỀN DẪN TÍN HIỆU SỐ TRÊN KÊNH THỰC
CHƯƠNG 6 THÔNG TIN SỐ TRUYỀN DẪN TÍN HIỆU SỐ TRÊN KÊNH THỰC
 
ứNg dụng phép biến đổi wavelet trong xử lý ảnh
ứNg dụng phép biến đổi wavelet trong xử lý ảnhứNg dụng phép biến đổi wavelet trong xử lý ảnh
ứNg dụng phép biến đổi wavelet trong xử lý ảnh
 
De thi ca nhan khong chuyen 2006
De thi ca nhan khong chuyen 2006De thi ca nhan khong chuyen 2006
De thi ca nhan khong chuyen 2006
 
Chuong 5_ KỸ THUẬT ĐIỀU CHẾ SỐ.pdf
Chuong 5_ KỸ THUẬT ĐIỀU CHẾ SỐ.pdfChuong 5_ KỸ THUẬT ĐIỀU CHẾ SỐ.pdf
Chuong 5_ KỸ THUẬT ĐIỀU CHẾ SỐ.pdf
 
Ktvt
KtvtKtvt
Ktvt
 
Đề tài: Kỹ thuật ghép kênh tín hiệu số nâng cao hiệu suất, HAY
Đề tài: Kỹ thuật ghép kênh tín hiệu số nâng cao hiệu suất, HAYĐề tài: Kỹ thuật ghép kênh tín hiệu số nâng cao hiệu suất, HAY
Đề tài: Kỹ thuật ghép kênh tín hiệu số nâng cao hiệu suất, HAY
 
Luận văn: Nghiên cứu kỹ thuật ghép kênh tín hiệu số, HOT
Luận văn: Nghiên cứu kỹ thuật ghép kênh tín hiệu số, HOTLuận văn: Nghiên cứu kỹ thuật ghép kênh tín hiệu số, HOT
Luận văn: Nghiên cứu kỹ thuật ghép kênh tín hiệu số, HOT
 
Giaotrinh thd dtcb-b1-ok
Giaotrinh thd dtcb-b1-okGiaotrinh thd dtcb-b1-ok
Giaotrinh thd dtcb-b1-ok
 
Nmlt c16 ky_thuatlaptrinhdequy_in
Nmlt c16 ky_thuatlaptrinhdequy_inNmlt c16 ky_thuatlaptrinhdequy_in
Nmlt c16 ky_thuatlaptrinhdequy_in
 

Attachments 17 12_2009

  • 1. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số LỜI MỞ ĐẦU Xử lý tín hiệu số (Digital Signal Processing – DSP) đã trở thành một môn học cơ sở cho nhiều ngành khoa học, kỹ thuật như: Điện, Điện Tử, Tin học, Viễn thông, Tự động hoá ... Xử lý tín hiệu số được ứng dụng rộng rãi trong nhiều lĩnh vực và thiết bị như: CD, VCD, DVD, camera, scanner, y khoa ..., trong các hệ thống truyền hình số, thông tin địa lý, bản đồ số, viễn thông ..v.v.. Phép xử lý cơ bản nhất của DSP là lọc, và các hệ thống được đề cập đến nhiều nhất trong xử lý tín hiệu số là các bộ lọc số (Digital Filter). Nếu xét về đáp ứng xung có thể chia các bộ lọc số thành 2 loại chính là bộ lọc có đáp ứng xung hữu hạn FIR (Finite Impulse Response) còn gọi là lọc không đệ quy, và bộ lọc có đáp ứng xung vô hạn IIR (Infinte Impulse Response) còn gọi là lọc đệ quy. Xét về đáp ứng tần số biên độ có thể chia các bộ lọc, FIR hay IIR, thành 4 loại cơ bản: thông thấp, thông cao, thông dải và chắn dải. Các bộ lọc này có thể được thiết kế bằng những phương pháp sau đây: Phương pháp cửa sổ (Window Design Techniques), Phương pháp lấy mẫu tần số (Frequency Sampling Design Techniques) và Phương pháp xấp xỉ tối ưu cân bằng gợn sóng (Optimal Equiripple Design Techniques). Mỗi phương pháp đều có những đặc điểm và ưu khuyết điểm riêng. Trong khuôn khổ của bài tiểu luận môn học, nhóm tôi xin phép được trình bày bài toán thiết kế bộ lọc FIR thông dải bằng phương pháp cửa sổ và phương pháp lấy mẫu tần số. Nội dung tiểu luận được chia thành 5 chương: Chương 1: Bài toán thiết kế Chương 2: Cơ sở lý thuyết của bộ lọc FIR Chương 3: Phương pháp thiết kế - Thiết kế lọc FIR bằng phương pháp cửa sổ - Thiết kế lọc FIR bằng phương pháp lấy mẫu tần số Chương 4:Chương trình thiết kế. Chương 5:Kết luận Nhóm tôi xin trân trọng cảm ơn Thầy giáo TS. Ngô Văn Sỹ đã tận tình hướng dẫn, truyền đạt những kiến thức quý giá, cung cấp tài liệu tham khảo và chỉ bảo cho tôi phương pháp làm việc khoa học. Trong quá trình làm tiểu luận, tuy đã hết sức cố gắng song chắc chắn không tránh khỏi những sai sót. Rất mong nhận được sự góp ý của Thầy, các anh chị và các bạn học viên trong lớp để nội dung của tiểu luận được hoàn chỉnh hơn. Đà Nẵng, ngày 15 tháng 9 năm 2009 -1-
  • 2. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số CHƯƠNG 1: BÀI TOÁN THIẾT KẾ Thiết kế một bộ lọc thông dãi BPF(Band Pass Filte) nghĩa là tìm hàm truyền hệ thống H(z) hoặc phương trình hiệu của nó) có dải thông [ ω1P , ω2 P ] với dung sai δ P (hoặc Rp theo dB) và dải chắn [ 0, ω1S ] và [ ω2S , π ] với dung sai δ S (hoặc As theo dB). δ P : Dung sai dãi thông δ S : Dung sai dãi chắn ω1P , ω2 P : Tần số giới hạn dãi thông ω1S , ω2 S : Tần số giới hạn dãi chắn AS: Suy hao dãi chắn Rp: Độ gợn sóng trong dãi thông Thiết kế bộ lọc thỏa mãn các chỉ tiêu đã cho với cấu trúc đơn giản nhất. Các thông số thiết kế: ω1S = 0,2π ; AS = 60dB ω1 p = 0,35π ; R p = 1dB ω 2 p = 0,65π ; R p = 1db ω 2 s = 0,8π ; AS = 60dB -2-
  • 3. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số CHƯƠNG 2: CƠ SỞ LÝ THUYẾT THIẾT KẾ BỘ LỌC FIR Chương này sẽ trình bày sơ lược cơ sở lý thuyết thiết kế bộ lọc số FIR, cùng với các phương pháp thiết kế nó, từ đó tìm hiểu thiết kế bộ lọc thông dãi theo cấu trúc FIR bằng phương pháp cửa sổ và phương pháp lấy mẫu tần số. Đáp ứng tần số là cách rất hiệu quả và thực tế để đặc trưng một bộ lọc. Khi biết một bộ lọc, tức là biết phương trình hiệu số của nó hay biết các hệ số của nó, ta có thể tính được đáp ứng xung và đáp ứng tần số - Đây là bài toán phân tích. Ngược lại, khi biết được yêu cầu đáp ứng tần số của bộ lọc, ta tìm các hệ số của bộ lọc, từ đây có thể viết phương trình hiệu số của nó, sao cho đáp ứng tần số càng sát với yêu cầu càng tốt - đây là bài toán thiết kế. Bài toán thiết kế thường phức tạp hơn vì có nhiều phương pháp thiết kế khác nhau. Quá trình thiết kế bộ lọc được bắt đầu với các đặc tính của bộ lọc bao gồm các ràng buộc về biên độ và pha của đáp ứng tần số, về biên độ hoặc pha của đáp ứng tần số, các ràng buộc về đáp ứng xung đơn vị hoặc đáp ứng nấc của bộ lọc... Sau khi đã xác định được các đặc tính bộ lọc, ta tiếp tục tìm tập các hệ số của bộ lọc mà các hệ số tạo ra một bộ lọc chấp nhận được. Bước sau cùng là dùng hệ thống phần cứng hoặc phần mềm minh họa, lượng tử hoá các hệ số của bộ lọc và chọn cấu trúc bộ lọc thích hợp. 2.1.Bộ lọc – lọc số: 2.1.1.Bộ lọc: Bộ lọc là một hệ thống xử lý tín hiệu thực hiện chức năng chọn lọc tín hiệu theo tần số (bộ lọc cho tín hiệu trong một dãi tần số nào đó đi qua và ngăn không cho tín hiệu trong các dãi tần khác đi qua). Dãi cho qua gọi là dãi thông, và dãi không cho qua gọi là dãi chắn. 2.1.2.Lọc số: Lọc số là một trường hợp riêng của bộ lọc. Trong đó tín hiệu vào là số và tín hiệu ra là số thường dùng máy tính, IC, vi xử lý. Sơ đồ khối chức năng của quá trình lọc số: Th ra Th Lọc Lọc Lấy mẫu ADC DF DAC A (khôiphục) Hình 2.1: sơ đồ khối chức năng quá trình lọc -3-
  • 4. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số  Phân loại lọc số: - Dựa vào dãi thông và dãi chắn chia làm 4 loại: o Lọc thông thấp LPF. o Lọc thông cao HPF. o Lọc thông dãi BPF. o Lọc chắn dãi BSF. - Căn cứ vào độ dài của đáp ứng xung h(n) của bộ lọc: o Đáp ứng xung hửu hạn (lọc FIR). o Đáp ứng xung vô hạn (lọc IIR). - Dựa vào tính nhân quả (khả năng thực hiện bộ lọc): o Bộ lọc lý tưởng. o Bộ lọc thực tế. 2.2.Lọc FIR thông dãi 2.2.1.Khái niệm lọc FIR thông dãi Lọc FIR pha tuyến tính có H(n) dài hữu hạn N ( 0 ≤ n ≤ M − 1 ) Các bộ lọc thường được kết nối với nhau để tạo ra hệ thống có các tính chất mong muốn. Hai loại kết nối tổng quát là nối tiếp (hay còn gọi là nối tầng - cascade) và ghép song song. Ở đây hai hệ thống kết nối là tuyến tính và bất biến. Bộ lọc thông dải theo cấu trúc FIR thiết lập từ việc xây dựng bằng cách tổ hợp (ghép song song) hai bộ lọc thông thấp với nhau. Hai bộ lọc thông thấp thiết lập một dải tần số băng thông có tần số cắt ωC1, ωC2 tương ứng như mô tả hình 2.2 dưới đây: ωc2 + + - ωc1 ωc2 ωc1 Hình 2.2: Mô tả sự tạo thành bộ lọc thông dãi 2.2.2.Cấu trúc bộ lọc FIR Một bộ lọc đáp ứng xung hữu hạn với hàm hệ thống có dạng: -4-
  • 5. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số M −1 −1 H ( z ) = b0 + b1 z +  + bM −1 z 1− M = ∑b z n=0 n −n Như vậy đáp ứng xung h(n) là: bn 0 ≤ n ≤ M −1 h ( n) =   0 n < 0va n > M − 1 Và phương trình sai phân là: y ( n) = b0 x( n) + b1 x (n − 1) +  + bN −1 x (n − M + 1) Đây chính là tích chập tuyến tính của các dãy hữu hạn. Bậc của bộ lọc là M-1, trong khi chiều dài của bộ lọc là M (bằng với số lượng các hệ số). Các cấu trúc bộ lọc FIR luôn luôn ổn định, và tương đối đơn giản hơn so với các cấu trúc bộ lọc IIR. Hơn thế nữa, các bộ lọc FIR có thể được thiết kế để có một đáp ứng pha tuyến tính và đó là điều cần thiết trong một số ứng dụng. Chúng ta sẽ xem xét lần lượt các cấu trúc của bộ lọc FIR sau đây: 2.2.2.1Cấu trúc dạng trực tiếp Phương trình sai phân được thực hiện bởi một dãy liên tiếp các bộ trễ do không có đường phản hồi: y ( n) = b0 x( n) + b1 x (n − 1) +  + bN −1 x (n − M + 1) Do mẫu thức bằng đơn vị nên ta chỉ có một cấu trúc dạng trực tiếp duy nhất. Cấu trúc dạng trực tiếp được cho trong hình 1.2 với M = 5: x(n) z -1 z -1 z -1 z -1 b0 b1 b2 b3 b4 y(n) Hình 2.3: Cấu trúc lọc FIR dạng trực tiếp 2.2.2.2Cấu trúc dạng ghép tầng: Hàm hệ thống H(z) được biến đổi thành các tích của các khâu bậc 2 với các hệ số thực. Các khâu này được thực hiện ở dạng trực tiếp và bộ lọc tổng thể có dạng ghép tầng của các khâu bậc 2.  b b  H ( z ) = b0 + b1 z −1 +  + bM −1 z1− M = b0 1 + 1 z −1 +  + M −1 z1− M   b   0 b0  K = b 0 ∏ (1 + B k ,1 z −1 + B k , 2 z − 2 ) k =1 -5-
  • 6. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số M  Trong đó K =   , Bk,1 và Bk,2 là các số thực đại diện cho các hệ số của các khâu 2 bậc 2. Cấu trúc dạng ghép tầng được cho trong hình 2.4 với M = 7: b0 x(n) y(n) -1 -1 -1 z B z B z B3,1 1,1 2,1 z -1 B z -1 B z -1 B 1,2 2,2 3,2 Hình 2.4: Cấu trúc lọc FIR dạng ghép tầng 2.2.2.3Cấu trúc dạng pha tuyến tính: Đối với các bộ lọc chọn tần, người ta mong muốn có đáp ứng pha là hàm tuyến tính theo tần số, nghĩa là: ∠H (e jω ) = β − αω − π ≤ ω ≤ π π Trong đó β = 0 hoặc ± và α là một hằng số. 2 Đối với bộ lọc FIR nhân quả có đáp ứng xung trong khoảng [0, M-1], thì các điều kiện tuyến tính là: h(n) = h( M − 1 − n); β = 0, 0 ≤ n ≤ M − 1 h(n) = −h( M − 1 − n); β = ±π / 2, 0 ≤ n ≤ M − 1 Xét phương trình sai phân được cho trong phương trình (1.5) với đáp ứng xung đối xứng trong phương trình (1.9), ta có: y ( n) = b0 x( n) + b1 x (n − 1) +  + b1 x(n − M + 2) + b0 x(n − M + 1) = b0 [ x( n) + x(n − M + 1)] + b1[ x(n − 1) + x (n − M + 2)] +  Sơ đồ khối thực hiện phương trình sai phân trên được mô tả trong hình 2.5 dưới đây đối với cả M lẻ và M chẵn: -6-
  • 7. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số Đối với M lẻ: M = 7, còn đối với M chẵn: M = 6 z -1 z -1 x(n) z -1 M=7 -1 -1 z -1 z z b0 b1 b2 b3 y(n) z -1 z -1 x(n) z -1 M=6 z -1 z -1 b0 b1 b2 y(n) Hình 2.5: Cấu trúc lọc FIR pha tuyến tính với các hệ số M chẵn và lẻ Rõ ràng, với cùng một bậc của bộ lọc (cùng M) cấu trúc pha tuyến tính sẽ tiết kiệm được 50% các bộ nhân so với cấu trúc dạng trực tiếp. 2.2.3.Các đặc tính của bộ lọc FIR pha tuyến tính Trong phần này chúng ta sẽ thảo luận về hình dạng của đáp ứng xung, đáp ứng tần số trong hàm hệ thống của các bộ lọc FIR pha tuyến tính. Cho h(n), trong đó 0 ≤ n ≤ M – 1, là đáp ứng xung có chiều dài N thì hàm truyền hệ thống là: N −1 M −1 H ( z ) = ∑ h(n) z − n = z − ( N −1) ∑ h(n) z M −1− n n=0 n =0 có (M-1) điểm cực ở gốc (trivial poles) và M-1 điểm không nằm ở vị trí bất kỳ trên mặt phẳng z. Đáp ứng tần số là: M −1 H ( e jω ) = ∑ h ( n )e n=0 − jωn , −π <ω ≤π 2.2.3.1Đáp ứng xung h(n): Chúng ta có thể đưa ra ràng buộc pha tuyến tính: ∠H (e jω ) = −αω, − π < ω ≤ π Trong đó: α là một hằng số trễ pha. Ta đã biết rằng h(n) phải đối xứng, nghĩa là: -7-
  • 8. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số M −1 h(n) = h( M − 1 − n), 0 ≤ n ≤ M − 1, α = 2 Do đó h(n) là đối xứng theo α, là chỉ số đối xứng. Có hai kiểu đối xứng: M −1 • M lẻ: Trong trường hợp này, α = là một số nguyên. Đáp ứng xung ứng 2 xung được mô tả bằng hình 2.6 dưới đây: Hình 2.6 Đáp ứng xung đối xứng M lẻ M −1 • M chẵn:Trong trường hợp này, α = là một số nguyên. Đáp ứng xung ứng 2 xung được mô tả bằng hình 2.7 dưới đây: Hình 2.7: Đáp ứng xung đối xứng, M chẵn Ta cũng có bộ lọc FIR pha tuyến tính loại hai nếu ta yêu cầu đáp ứng pha ∠H ( e jω ) thoả mãn điều kiện: ∠H (e jω ) = β − αω với − π < ω ≤ π Đáp ứng pha là đường thẳng nhưng không đi qua gốc. Trong trường hợp này α không phải là hằng số trễ pha, nhưng: -8-
  • 9. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số d∠H (e jω ) = −α dω Là hằng số, chính là trễ nhóm (α là một hằng số trễ nhóm). Trong trường hợp này, các tần số được làm trễ với một tốc độ không đổi. Nhưng một số tần số có thể được làm trễ với tốc độ lớn hơn hoặc nhỏ hơn. Đối với kiểu pha tuyến tính này, có thể thấy rằng: M −1 π h (n ) = −h (M − 1 − n ), 0 ≤ n ≤ M − 1 và α = ,β= ± 2 2 Điều này có nghĩa rằng đáp ứng xung h(n) là phản đối xứng M −1 (antisymmetric). Chỉ số đối xứng vẫn là α = . Một lần nữa chúng ta lại có 2 kiểu, 2 cho M lẻ và M chẵn. M −1 • M lẻ: Trong trường hợp này, α = là một số nguyên. Đáp ứng xung được 2 mô tả bằng hình 2.8 dưới đây: Hình 2.8 Đáp ứng xung phản đối xứng, M lẻ M −1  M −1 Lưu ý rằng mẫu h(α) tại α = phải bằng 0, nghĩa là, h   = 0 .M chẵn: 2  2  M −1 Trong trường hợp này, α = không phải là một số nguyên. Đáp ứng xung được mô 2 tả trong hình 2.9. -9-
  • 10. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số Hình 2.9 Đáp ứng xung phản đối xứng, M chẵn 2.2.3.2Đáp ứng tần số H(ejwn) Khi tổ hợp hai loại đối xứng và phản đối xứng với M chẵn và M lẻ, ta có bốn kiểu lọc FIR pha tuyến tính. Đáp ứng tần số của mỗi kiểu có biểu thức và hình dạng riêng. Để nghiên cứu các đáp ứng pha của các kiểu này, ta viết biểu thức của H(ejω) như sau: π M −1 H (e jω ) = H r (e jω )e j(β−αω ) ; β = ± , α = 2 2 jω Trong đó Hr(e ) là hàm đáp ứng độ lớn chứ không phải là hàm đáp ứng biên độ. Đáp ứng độ lớn là một hàm thực, có thể vừa dương vừa âm, không giống đáp ứng biên độ luôn luôn dương. Đáp ứng pha kết hợp với đáp ứng biên độ là một hàm không liên tục, trong khi kết hợp với đáp ứng độ lớn là một hàm tuyến tính liên tục. • Bộ lọc FIR pha tuyến tính Loại-1 (Type 1): Đáp ứng xung đối xứng, M lẻ M −1 Trong trường hợp này β = 0 , α = là một biến nguyên, và h ( n ) = h ( M − 1 − n ) , 2 0 ≤ n ≤ M − 1 , thì ta có thể chứng tỏ rằng: ( M −1) / 2 H (e jω ) =  ∑ a ( n ) cos ωn  e − jω( M −1) / 2  n =0    Trong đó:  M −1 a ( 0) = h  với mẫu ở chính giữa  2   M −1  M −3 a ( n ) = 2h  − n với 1 ≤ n ≤  2  2 • Bộ lọc FIR pha tuyến tính Loại-2 (Type 2): Đáp ứng xung đối xứng, M chẵn M −1 Trong trường hợp này β = 0 , h ( n ) = h ( M − 1 − n ) , 0 ≤ n ≤ M − 1 , nhưng α = 2 không phải là một biến nguyên, thì ta có thể chứng tỏ rằng: - 10 -
  • 11. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số M / 2   1   H (e jω ) =  ∑ b( n ) cosω n −  e − jω( M −1) / 2  n =1   2   Trong đó: M  M b( n ) = 2h  − n  với n = 1,2,...,  2  2 So sánh hai công thức trên ta có:   1  H r (ω) = ∑ b( n ) cosω n −  M/2 n =1   2    1  Lưu ý: Tại ω = π , ta có H r (π) = ∑ b( n ) cosπ n −  = 0 mà không cần M/2 n =1   2  quan tâm đến b(n) hoặc h(n). Do đó chúng ta không thể sử dụng loại này (h(n) đối xứng, M chẵn) đối với bộ lọc thông cao hoặc bộ lọc chắn dải. • Lọc FIR pha tuyến tính Loại-3 (Type 3): Đáp ứng xung phản đối xứng, M lẻ π M −1 Trong trường hợp này ta có β = , α = là một biến nguyên, h ( n ) = −h ( M − 1 − n ) , 2 2  M −1 0 ≤ n ≤ M − 1 , và h   = 0 thì ta có thể chứng tỏ:  2   π  M −1   ( M −1) / 2 H (e ) =  ∑ c( n ) sin ωn  e  2  j  −  ω jω 2    n =0    Trong đó  M −1  M c( n ) = 2 h  − n  với n = 1,2,...,  2  2 So sánh hai biểu thức trên ta có: ( M −1) / 2 H r ( ω) = ∑ c( n ) sin ωn n =0 Lưu ý: Tại ω = 0 và ω = π , ta có H r ( ω) = 0 mà không cần quan tâm c(n) hoặc h(n). Hơn thế nữa, e j 2 = j , điều đó có nghĩa là jH r ( ω) là thuần ảo. Do đó, loại bộ lọc này π không thích hợp đối với việc thiết kế bộ lọc thông thấp hoặc thông cao. Tuy nhiên, điều này thích hợp đối với việc xấp xỉ các bộ vi phân và bộ biến đổi Hilbert số lý tưởng. • Lọc FIR pha tuyến tính Loại-4(Type 4):Đáp ứng xung phản đối xứng, M chẵn - 11 -
  • 12. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số π Trong trường hợp này β = , h ( n ) = −h ( M − 1 − n ) , 0 ≤ n ≤ M − 1 , nhưng 2 M −1 α= không phải là một biến nguyên, thì ta có thể chứng tỏ rằng: 2  π  M −1   M / 2   1   j  −   ω  H (e ) =  ∑ d( n ) sin ω n −  e  2  2   jω  n =1   2   Trong đó: M  M d ( n ) = 2h  − n  với n = 1,2,...,  2  2 So sánh hai biểu thức trên ta có:   1  H r (ω) = ∑ d ( n ) sin ω n −  M/2 n =1   2  π Lưu ý: Tại ω = π , H r (0) = 0 và e j 2 = j . Do vậy, loại này cũng thích hợp cho việc thiết kế các bộ vi phân số và bộ biến đổi Hilbert số. Bảng sau đây mô tả khả năng thích hợp trong việc thiết kế các bộ lọc và các bộ biến đổi Hilbert số, bộ vi phân số của 4 loại lọc FIR pha tuyến tính đã nêu: Type LPF HPF BPF SBF Hilbert Differentiator FIR Type 1     FIR Type 2   FIR Type 3    FIR Type 4     - 12 -
  • 13. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số 2.2.4.Đáp ứng tần số bộ lọc thông dãi 0 ws1 wp1 wp2 ws2 π Rp As Hình 2.9: Các chỉ tiêu của bộ lọc thông dải BPF (bandpass filter) M −1 H ( ω ) = FT { h( n )} = ∑ h( n ) e − jωn = EMBED Equation.3 n=0  1 khiω ∈ [ − ω c1 ,−ω c 2 ] vaω ∈ [ω c1 , ω c 2 ]   0 Khi ω ∉ [ − ω c1 ,−ω c 2 ] vaω ∉ [ω c1 , ω c 2 ]  −ωC 1 jωn ωC 2  1 ω Sinω n ω Sinω ⇒ h( n ) =  ∫ e dω + ∫ e jωn dω  = C2 C2 − C1 C1  −ωC 2  ωC 1   2π π ωC 2 n π ωC1n Trong đó ωC1 và ωC 2 lần lượt là tần số cắt của 2 bộ lọc thông thấp lý tưởng tương ứng, có thể được tính từ các chỉ tiêu đã cho của bộ lọc thông dải thực tế:  ωC1 = (ωS 1 + ωP1 ) / 2  ωC 2 = (ωS 2 + ω P 2 ) / 2 - 13 -
  • 14. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số CHƯƠNG 3: PHƯƠNG PHÁP THIẾT KẾ 3.1.Phương pháp cửa sổ Ý tưởng cơ bản của việc thiết kế là: chọn một bộ lọc chọn tần lý tưởng (mà đáp ứng xung luôn luôn phi nhân quả, dài vô hạn) và cắt (lấy cửa sổ - window) đáp ứng xung của nó để thu được bộ lọc FIR có pha tuyến tính và nhân quả (linear phase and causal FIR filter). Bởi vậy, điểm quan trọng trong phương pháp này là việc chọn một hàm cửa sổ thích hợp và một bộ lọc lý tưởng tương ứng. Bộ lọc thông thấp lý tưởng (ideal LPF) có tần số cắt ω c < π được cho bởi: jω 1.e − jω , nêu ω < ωC H d (e ) =   0, nêuωC < ω < π Đáp ứng xung hd(n) của bộ lọc lý tưởng này được cho bởi: sin[ω ( n − α ) ] π [ ] hd ( n) = F −1 H d ( e jω ) = 1 2π ∫π H ( e )e dω = π ( n − α ) d ω j ωj n C − Chú ý rằng hd(n) là đối xứng theo α, sự kiện này tiện dụng cho bộ lọc FIR có pha tuyến tính. Ngoài ra hd(n) có độ dài vô hạn và phi nhân quả. Để thu được bộ lọc FIR có pha tuyến tính và nhân quả h(n) có độ dài M, ta cần có:  h (n) 0 ≤ n ≤ M − 1 M −1 h ( n) =  d , α=  0 khac 2 Thao tác này được gọi là lấy cửa sổ (window). Tổng quát, đáp ứng xung h(n) có thể có được bằng cách lấy đáp ứng xung của bộ lọc lý tưởng hd(n) nhân với hàm cửa sổ w(n) như sau: h(n) = hd(n). ω (n) Tuỳ thuộc vào cách định nghĩa hàm cửa sổ ω (n) (window function) chúng ta có những cửa sổ thiết kế khác nhau. Chẳng hạn nếu dùng cửa sổ chữ nhật (Rectangular), thì hàm cửa sổ được định nghĩa: 1, w(n) =  0, nếu 0≤ n ≤ M-1 (1.34) n khác - 14 -
  • 15. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số Trong miền tần số, đáp ứng của lọc FIR nhân quả H(e jω ) chính là tích chập vòng của đáp ứng tần số bộ lọc lý tưởng Hd(e jω ) và đáp ứng tần số của hàm cửa sổ W(e jω ) : H(e jω ) = Hd(e jω ) ⊗ W(e jω ) Hình dạng của H(e jω ) có thể được mô tả trực quan trên hình 3.1. Từ hình vẽ này chúng ta có một số nhận xét quan trọng sau đây: H(e) Hd(e) Transition bandwidth Main-lobe width W(e) Max side-lobe height Hình 3.1: Kết quả của việc lấy cửa sổ trong miền tần số • Do cửa sổ w(n) có chiều dài M hữu hạn, đáp ứng của nó có một búp chính (main-lobe) có độ rộng tỷ lệ với 1/M, và các búp bên (side-lobe) của nó có chiều cao thấp hơn. • Tích chập tuần hoàn sinh ra một phiên bản méo của đáp ứng xung lý tưởng Hd(e jω ). • Búp chính (main-lobe) sinh ra một dải chuyển tiếp trong H(e jω ) mà độ rộng là nguyên nhân tạo nên độ rộng dải chuyển tiếp (transition bandwidth). Độ rộng - 15 -
  • 16. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số này tỷ lệ với 1/M. Độ rộng búp chính càng lớn thì độ rộng dải chuyển tiếp càng lớn. • Các búp bên (side-lobes) sinh ra các gợn sóng có hình dạng như nhau trong cả dải thông và dải chắn. Với các chỉ tiêu bộ lọc đã cho, chọn chiều dài bộ lọc và một hàm cửa sổ w(n) với độ rộng main-lobe hẹp nhất và hệ số suy giảm side-lobe bé nhất có thể được. Từ nhận xét 4 nêu trên ta chú ý rằng dung sai dải thông δ1 và dung sai dải chắn δ2 không thể ấn định một cách độc lập. Ta lấy chung δ 1 = δ 2. Tiếp theo chúng ta xem xét các hàm cửa sổ thường được dùng, bao gồm: cửa sổ chữ nhật (Rectangular), cửa sổ tam giác (Bartlett), cửa sổ Hanning, cửa sổ Hamming, cửa sổ Blackman và cửa sổ Kaiser. 3.1.1Cửa sổ chữ nhật (Rectangular Window) Trong miền n cửa sổ chữ nhật được định nghĩa như sau: 1 0≤ n ≤ M-1 w(n) = 0 Các trường hợp khác 3.1.2Cửa sổ tam giác (Bartlett Window) Với mục đích giảm biên độ của các đỉnh thứ cấp của cửa sổ chữ nhật, chúng ta chọn một cửa sổ khác có dạng tam giác cân, gọi là cửa sổ tam giác hay cửa sổ Bartlett Trong miền n cửa sổ tam giác được định nghĩa như sau: 2n M-1 M-1 0≤ n ≤ 2 w(n) = 2n M-1 2- ≤n≤M-1 M-1 2 0 Các trường hợp khác 3.1.3Cửa sổ Hanning (Hanning Window)  2Π  n  4Π  n 0.42 −0.5 cos  +0.08 cos   M   M  0≤ n ≤ M w(n) = 0 Các trường hợp khác 3.1.4Cửa sổ Hamming (Hamming Window)  2Π  n 0.54 −0.46 cos  0≤ n ≤ M w(n) =  M  0 Các trường hợp khác - 16 -
  • 17. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số 3.1.5Cửa sổ Blackman (Blackman Window)  2Π  n  4Π  n 0.42 −0.5 cos  +0.08 cos  0≤ n ≤ M w(n) =  M   M  0 Các trường hợp khác Hình 3.2Hình dạng một số cửa sổ thường dùng 3.1.6Các bước thiết kế - Dựa vào As chọn cửa sổ thiết kế - Từ Fp, FS →tính TW →Tính M - Tính hàm cửa sổ w(n)M FC1 ωC1 = 2πf C1 = 2π f S1  f C 1 = ( f S 1 + f P1 ) / 2 - Tính tần số cắt ;  ωC 2 = 2πf C 2 = 2π FC 2  fC 2 = ( f S 2 + f P2 ) / 2 fS 2 - Tính h(n) lý tưởng M −1 - Dịch chuyển h(n) sang phải mẫu, sau đó nhân với w(n)N 2 M −1 hd ( n) = h(n − ) w(n) 2 - 17 -
  • 18. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số Hd(n): là đáp ứng xung của bộ lọc thiết kế. - Từ Hd(n) tính Hd(Z) → Xây dựng sơ đồ cấu trúc. - Lượng tử hóa và mã hóa các hệ số của bộ lọc - Kiểm tra lại: Nếu không thỏa mãn yêu cầu thì tăng độ dài từ mã biểu diễn hệ số bộ lọc. 3.2.Phương pháp lấy mẫu tần số 3.2.1Định nghĩa phương pháp lấy mẫu tần số Phương pháp lấy mẫu tần số sử dụng phép biến đổi Fourier rời rạc (DFT). Vì bộ lọc số lý tưởng có đặc tính biên độ tần số H (e jω ) dạng hình chữ nhật nên không thể thực hiện được trên thực tế. Cơ sở của phương pháp lấy mẫu tần số là xấp xỉ đặc tính tần jω số H N (e ) của bộ lọc số cần tổng hợp theo đặc tính tần số H (e jω ) của bộ lọc số lý tưởng cùng loại. Việc xấp xỉ được thực hiện bằng cách lấy mẫu tần số qua DFT, tức là làm cho các jω mẫu của H N (e ) và H (e jω ) bằng nhau tại các tần số rời rạc ωk = kω1 = (k.2π/N): H N ( e jω ) ω kω = 1 = H ( e j ω) ω kω = 1 Hay: H N (e jkω1 ) = H (e jkω1 ) Bằng cách như vậy, tại các điểm tần số rời rạc ωk = kω1, sai số xấp xỉ giữa H N (e jω ) và H (e jω ) bằng 0, còn tại các tần số ở giữa khoảng kω1 và (k+1)ω1 thì sai số xấp xỉ là hữu hạn. Sai số xấp xỉ sẽ giảm nhỏ nếu giảm tần số lấy mẫu cơ bản ω 1 = (2π / N), điều đó tương ứng với tăng độ dài N của đặc tính xung h(n)N của bộ lọc số được tổng hợp. jω Ta có thể xác định được đặc tính biên độ tần số H N (e ) của 4 loại bộ lọc số FIR pha tuyến tính theo công thức sau: sin(0.5 Nω N −1 A(k ) N H N (e jω ) = N ∑(−1) k  ω kπ  (1) k =0 sin  −  2 N  Đặc tính pha θ(ω) của bộ lọc FIR pha tuyến tính loại 1 và loại 2: - 18 -
  • 19. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số  N −1  N −1 ϕ N (ω ) = − .ω = − αω , với α =  .ω  2   2  Đặc tính pha θ(ω) của bộ lọc FIR pha tuyến tính loại 3 và loại 4: π  N −1 π  N −1 ϕ N (ω ) = − .ω = β − αω , với β = và α =  .ω 2  2  2  2  jω Để đánh giá sai số khi xấp xỉ đặc tính tần số H N (e ) theo đặc tính tần số bộ lọc lý tưởng H (e jω ) , người ta dung hàm sai số: E (e ω ) = H (e jω ) − H N (e jω ) 3.2.2Các bước thiết kế bộ lọc theo kiểu lấy mẫu tần số Các bước tổng hợp đặc tính xung h(n)N của bộ lọc số FIR pha tuyến tính theo phương pháp lấy mẫu tần số như sau: Bước 1: Chọn số điểm lấy mẫu N (chính là độ dài của đặc tính xung). Thực hiện jω lấy mẫu đặc tính biên độ H (e ) của bộ lọc lý tưởng cùng loại trong một chu kỳ 0<=ω<2π để nhận được đặc tính biên độ tần số rời rạc H (k ) N của bộ lọc số FIR pha tuyến tính cần tổng hợp. jω Bước 2: Xác định đặc tính biên độ tần số H N (e ) của bộ lọc số FIR pha tuyến tính cần tổng hợp bằng biểu thức nội suy sau: sin(0.5Nω ) N −1 A(k ) N H N ( e jω ) = N ∑ (−1) k k =0  ω kπ  sin  −  2 N  jω Để tính H N (e ) theo công thức trên, trước hết cần xác định A(k)N: - Đối với các bộ lọc loại 1 và loại 4, từ H (k ) N phải lấy A(k)N đối xứng trong khoảng 1<=k<= (N-1). Hơn nữa, bộ lọc loại 4 có A(0)N = 0 - Đối với bộ lọc loại 2 và loại 3, từ H (k ) N phải lấy A(k)N phản đối xứng trong khoảng 1<=k<= (N-1). Hơn nữa bộ lọc loại 3 phải có A(0)N = 0. - 19 -
  • 20. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số jω Bước 3: Kiểm tra đặc tính biên độ tần số H N (e ) có đạt các tiêu chí kỹ thuật đã jω jω cho δ1, δ2, ωc, Δω hay không? Hoặc E (e ) max ≤ E(e ) p Nếu đạt tất cả các tiêu chí kỹ thuật đã cho thì giảm số điểm lấy mẫu N và thực hiện lại các bước trên cho đến khi chọn được N min đảm bảo đạt tất cả các chỉ tiêu kỹ thuật đã cho. Nếu không đạt thì tăng số điểm lấy mẫu N và thực hiện lại các bước trên cho đến jω khi chọn được Nmin để H N (e ) của bộ lọc cần tổng hợp đạt được tất cả các chỉ tiêu kỹ thuật đã cho. Bước 4: Xác định đặc tính xung h(n)N của bộ lọc số FIR pha tuyến tính cần tổng hợp: h(n) N = IDFT [ H (k N ] - Đối với bộ lọc loại 1: để tìm h(n)N có thể tính IDFT theo công thức: N −1 A(0) N 2 2  kπ  h1 (n) N = N + N ∑ (−1) k =1 k A(k ) N . cos  (2n + 1)  N  - Đối với bộ lọc loại 2: để tìm h(n)N có thể tính IDFT theo công thức: N −1 A(0) N 2 2  kπ  h2 (n) N = N + N ∑ (−1) k =1 k A(k ) N . cos  ( 2n + 1) N  - Đối với bộ lọc loại 3: để tìm h(n)N có thể tính IDFT theo công thức: N −1 2 2  kπ  h3 (n) N = N ∑ (−1) k =1 k +1 A(k ) N . sin  ( 2n + 1) N  - Đối với bộ lọc loại 4: để tìm h(n)N có thể tính IDFT theo công thức: N −1 (−1) n  N  2 2  kπ  h4 (n) N = N A  −  2 N N ∑ (−1) k =1 k A(k ) N . sin  (2n + 1)  N  - 20 -
  • 21. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số CHƯƠNG 4: CHƯƠNG TRÌNH THIẾT KẾ 4.1.Thiết kế theo phương pháp cửa sổ. 4.1.1.Tính toán thiết kế. Các bước tính toán thiết kế lọc FIR thông dãi với các thông số sau: ω1S = 0,2π ; AS = 60dB ω1 p = 0,35π ; R p = 1dB ω 2 p = 0,65π ; R p = 1db ω 2 s = 0,8π ; AS = 60dB - Với AS =60dB chọn cửa sổ Blackman với hàm cửa sổ như sau:   2πn   4πn  0,42 − 0,5 cos  + 0,08 cos  0≤n≤M w(n) =   M   M    0 n  0andn  M - Tính M với : ∆ω1 = ω1P − ω1S = 0,35π − 0,2π = 0,15π → TW = MIN (∆ω1 , ∆ω 2 ) = 0.15π ∆ω 2 = ω 2 S − ω 2 P = 0,8π − 0.65π = 0,15π 11π 11π ⇒M = +1 = + 1 = 74.3 → chọn M=75 TW 0,15π - Tìm tần số cắt: ωC1 = ( ω1P + ω1S ) / 2 = (0,2π + 0,35π ) / 2 = 0,275π ωC 2 = ( ω 2 P + ω 2 S ) / 2 = ( 0,65π + 0,8π ) / 2 = 0,725π - Tìm Hd(n) lý tưởng bộ lọc thông dãi có:  −ωC 1 jωn ωC 2  1 ω SinωC 2 n ωC1 SinωC1 ⇒ hd ( n ) =  ∫ e dω + ∫ e jωn dω  = C2 −  −ωC 2  ωC 1  2π  π ωC 2 n π ω C1 n - Tìm đáp ứng xung h(n) của bộ lọc thực tế (bộ lọc cần thiết kế): Đáp ứng xung của bộ lọc thông dải thực tế được tính bằng cách lấy đáp ứng xung lý tưởng nhân với hàm cửa sổ đây chính là thao tác lấy cửa sổ. h(n) = hd(n).w(n) Đến đây chúng ta đã có được bộ lọc cần thiết kế. - 21 -
  • 22. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số 4.1.2.Thuật toán giải quyết bài toán Trong phần này sẽ thực hiện chương trình thiết kế bộ lọc thông dải bằng cách sử dụng cửa sổ Blackman. Chương trình sẽ nhận các chỉ tiêu yêu cầu của bộ lọc cần thiết kế, sau đó thực hiện các bước thiết kế để tìm được đáp ứng xung h(n). Để khảo sát bộ lọc vừa thiết kế, chương trình cũng sẽ thực hiện tính toán và vẽ đáp ứng biên độ - tần số của bộ lọc theo dB, cũng như vẽ các đáp ứng xung lý tưởng hd(n), hàm cửa sổ w(n) và đáp ứng xung bộ lọc thực tế h(n). Chương trình được viết và chạy trên nền Matlab 6.5, với việc sử dụng một số hàm hỗ trợ có sẵn của Matlab cho xử lý tín hiệu số, và một số hàm viết thêm được tham khảo từ tài liệu [1] (các hàm dưới dạng các file .m). SƠ ĐỒ THUẬT TOÁN Begin Nhập các chỉ tiêu w1s, w1p, w2p, w2s, As, Rp NO Chỉ tiêu có hợp lệ YES Tính M Tìm hàm cửa sổ w(n) (Gọi hàm của Matlab w=blackman(M) ) Tính hd(n) h(n)=hd(n).w(n) Vẽ hd(n), w(n), h(n) và đáp ứng biên độ (dB) của bộ lọc thiết kế. - 22 - END
  • 23. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số 4.1.3.Chương trình Matlab 4.1.3.1Các hàm sử dụng Hàm Ideal_lp( ω C ,M): Tính đáp ứng xung của bộ lọc thông thấp bậc M function hd = ideal_lp(wc,M); % Ided LouPass filter computation % [hd] = ideal_lp(wc,M) % kd = ideal impulse response betveen 0 to M-1 % wc = cutoff frequency in radians % M = length of the ideal filter alpha =(M-1)/2; n = [0:1:(M-1)]; m = n - alpha + eps; hd = sin(wc*m)./(pi*m); freqz_m(b,a): Tính đáp ứng tần số của bộ lọc FIR có đáp ứng xung h. function [db,mag,pha,grd,w] = freqz_m(b,a); % Modified version of freqz subroutine % .................................... % [db,mag,pha.grd.wl = freqz_m(b,a); % db - Relative magnitude in dB computed over 0 to pi radians % mag - absolute magnitude computed over 0 to pi radians % pha = Phase response in radians over 0 to pi radians % grd = Craup delay over 0 to pi radians %w = 501 frequency samples between 0 to pi radians % b = numerator polynomial of A h ) (for FIR: b=h) % a = denominator polynomial of H(z) (for FIR: a=[1]) [H,w] = freqz(b,a,1000,'whole' ) ; H = (H(1:1:501))'; w = (w(1:1:501))'; mag = abs(H) ; db=20*log10((mag+eps)/max(mag)); pha = angle (H) ; grd = grpdelay(b,a,w); - 23 -
  • 24. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số 4.1.3.2Chương trình thực hiện ws1=0.2*pi; wp1=0.35*pi; wp2=0.65*pi; ws2=0.8*pi; As=60; TW=min((wp1-ws1),(ws2-wp2)); M=ceil(11*pi/TW)+1; M=75; n=[0:M-1] wc1=(ws1+wp1)/2; wc2=(ws2+wp2)/2; hd=ideal_lp(wc2,M)-ideal_lp(wc1,M); % tinh cua so blackman w_bla=(blackman(M))'; %tinh dap ung xung thc te h=hd.*w_bla; % tim dap ung xung tan so cua bo loc FIR [db,mag,pha,grd,w] = freqz_m(h,[1]); delta_w = 2*pi/1000; disp(['Actual Passband Ripple:']) % do gon song dai thong Rp = -min(db(wp1/delta_w+1:1:wp2/delta_w)) ; As = -round(max(db(ws2/delta_w+1:1:501))) ; % ve dap ung xung Subplot(2,2,1); stem (n,hd); title('dap ung xung ly tuong'); %Axis(0 M-1 -0.4 0.5); xlabel ('n'); ylabel('h(n)'); Subplot (2,2,2); stem(n,w_bla); title('ham cua so w(n)N'); %Axis(0 M-1 0 1.1); xlabel('n'); ylabel('w(n)'); Subplot(2,2,3); stem(n,h);title('dap ung xung thuc te'); %Axis(0 M-1 -0.4 0.5); xlabel('n');ylabel('h(n)'); Subplot(2,2,4);plot(w/pi,db);%axis(0 1 -150 10]; Title('dap ung cuong do theo db'); Xlabel('tan so trong gioi han pi'); - 24 -
  • 25. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số Ylabel('dB'); 4.1.3.3Kết quả chạy chương trình Các chỉ tiêu thiết kế: ω1S = 0,2π ; AS = 60dB ω1 p = 0,35π ; R p = 1dB ω 2 p = 0,65π ; R p = 1db ω 2 s = 0,8π ; AS = 60dB Kết quả chạy chương trình thiết kế: M=75 Rp=0.003 AS=75dB Như vậy bộ lọc vừa thiết kế thỏa mãn yêu cầu của bài toán. Hình dạng của đáp ứng xung lý tưởng, đáp ứng xung thực tế bộ lọc, hàm cửa sổ Blackman, và đáp ứng biên độ tần số (theo dB) của bộ lọc được cho như trên Hình 4.1: Mô tả đáp ứng sau khi thiết kế - 25 -
  • 26. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số 4.2.Thiết kế lọc Fir theo phương pháp lấy mẫu tần số 4.2.1.Tính toán thiết kế. Theo ý tưởng cơ bản Chúng ta chọn M=40 do đó chúng ta có mẫu tần số tại ω s1 đó là tại k =4 2π ω1s = 0.2π = 4 40 Và mẫu tiếp theo tại ω1 p đó là tại k=7: 2π ω1 p = 0.2π = 7 40 Và mẫu tiếp theo tại ω s 2 đó là tại k=13: 2π ω 2 p = 0.2π = 13 40 Và mẫu tiếp theo tại ω 2 p đó là tại k=16: 2π ω 2 s = 0.2π = 16 40 Do đó chúng ta có 6 mẫu trong stopband [ 0 ≤ ω ≤ ω1s ] và 9 mẫu trong passband [ ω1 p ≤ ω ≤ ω 2 p ] và 6 mẫu trong stopband [ ω 2 p ≤ ω ≤ π ]. Từ 7.36 chúng ta có: H r ( K ) =[zeros(1,6),ones(1,9),zeros(1,11),ones(1,9),zeros(1,5)] 40 − 1 Khi chọn M=40, α = = 19.5 với giá trị này thì thuộc bộ đáp ứng pha tuyến 2 Tính Type-2, từ [7.37] chúng ta có:  2π − 19.5 k = −19.5πk , 0 ≤ k ≤ 19 ∠H (k ) =  20 + 1.95π (40 − k ),  20 ≤ k ≤ 39 - Tìm đáp ứng xung h(n) Phương pháp thiết kế tối ưu: Điều kiện thuận lợi để chọn giá trị T1 và T2 cho M=40 và 7 mẫu trong passband là: T1 = 0.109021, T2 = 0.59417456 Do đó: - 26 -
  • 27. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số H r ( ω ) = [zeros(1,5),T1,T2,ones(1,7),T2,T1,zeros(1,9),T1,T2,ones(1,7),T2,T1,zeros(1,4)] 4.2.2.Chương trình Matlab. 4.2.2.1Chương trình thực hiện. Theo ý tưởng cơ bản : >>M = 40; alpha = (M-1)/2; l = 0:M-1; wl = (2*pi/M)*l; >>Hrs = [zeros(1,6),ones(1,9),zeros(1,11),ones(1,9),zeros(1,5)]; >>Hdr = [0,0,1,1,0,0]; wdl = [0,0.275,0.275,0.725,0.725,1]; >>k1 = 0:floor((M-1)/2); k2 = floor((M-1)/2)+1:M-1; >>angH = [-alpha*(2*pi)/M*k1, alpha*(2*pi)/M*(M-k2)]; >>H = Hrs.*exp(j*angH); >>h = real(ifft(H,M)); >> [db,mag,pha,grd,w] = freqz_m(h,1); >> [Hr,ww,a,L] = Hr_Type2(h); >>subplot(1,1,1) >>subplot(2,2,1);plot(wl(1:21)/pi,Hrs(1:21),'o',wdl,Hdr); >>axis([0,1,-0.1,1.1]); title('Frequency samples: M=40') >>xlabel(' '); ylabel('Hr(k)') >>set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,1]) >>set(gca,'YTickMode','manual','YTick',[0,1]); grid >>subplot(2,2,2); stem(l,h); axis([-1,M,-0.1,0.3]) >>title('Impulse response');ylabel('h(n)');text(M+1,-0.1,'n') >>subplot(2,2,3); plot(ww/pi,Hr,wl(1:21)/pi,Hrs(1:21),'o'); >>axis([0,1,-0.2,1.2]); title('amplitude response') >>xlabel('frequency in pi unit'); ylabel('Hr(w)') >>set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,11]) >>set(gca,'YTickMode','manual','YTick',[0,1]); grid >>subplot(2,2,4);plot(w/pi,db); axis([0,1,-200,10]); grid >>title('Magnitude response'); xlabel('frequency in pi unit'); - 27 -
  • 28. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số >>ylabel('decibel'); >>set(gca,'XTickMode','Manual','XTick',[0,0.2,0.35,0.65,0.8,1]); >>set(gca,'YTickMode','Manual','YTick',[-60;0]); >>set(gca,'YTickLabelMode','manual','YTickLabels',['60';' 0']) Phương pháp thiết kế tối ưu: >>M = 40; alpha = (M-1)/2; l = 0:M-1; wl = (2*pi/M)*l; >>T1 = 0.109021; T2 = 0.59417456; >>Hrs = [zeros(1,5),T1,T2,ones(1,7),T2,T1,zeros(1,9),T1,T2,ones(1,7),T2,T1,zeros(1,4)]; >>Hdr = [0,0,1,1,0,0]; wdl = [0,0.2,0.35,0.65,0.8,1]; >>k1 = 0:floor((M-1)/2); k2 = floor((M-1)/2)+1:M-1; >>angH = [-alpha*(2*pi)/M*k1, alpha*(2*pi)/M*(M-k2)]; >>H = Hrs.*exp(j*angH); >>h = real(ifft(H,M)); >> [db,mag,pha,grd,w] = freqz_m(h,1); >> [Hr,ww,a,L] = Hr_Type2(h); >>subplot(1,1,1) >>subplot(2,2,1);plot(wl(1:21)/pi,Hrs(1:21),'o',wdl,Hdr); >>axis([0,1,-0.1,1.1]); title('Frequency Sanmples: M=40,T1=0.5941, T2=0.109') >>xlabel(''); ylabel('Hr(k)') >>set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,1]); grid >>subplot(2,2,2); stem(l,h); axis([-1,M,-0.4,0.4]); grid >>title('Impulse Response');ylabel('h(n)');text(M+1,-0.4,'n') >>subplot(2,2,3); plot(ww/pi,Hr,wl(1:21)/pi,Hrs(1:21),'o'); >>axis([0,1,-0.1,1.1]); title('Amplitude Response') >>xlabel('Frequency in pi units'); ylabel('Hr(w)') >>set(gca,'XTickMode','manual','XTick',[0,0.2,0.35,0.65,0.8,1]); grid - 28 -
  • 29. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số >>subplot(2,2,4);plot(w/pi,db); axis([0,1,-100,10]); grid >>title('Magnitude'); xlabel('Frequency in pi units'); >>ylabel('Decibels'); >>set(gca,'XTickMode','Manual','XTick',[0,0.2,0.35,0.65,0.8,1]); >>set(gca,'YTickMode','Manual','YTick',[-60;0]); >>set(gca,'YTickLabelMode','manual','YTickLabels',['60';' 0']) 4.2.2.2 Kết quả chạy chương trình Theo ý tưởng cơ bản : Hình 4.2: Mô tả đáp ứng sau khi thiết kế Nhận xét: - Lỗi xấp xỉ là hiệu của đáp ứng lý tưởng và đáp ứng thực tế bằng không tại các tần số được lấy mẫu. - Lỗi xấp xỉ ở tất cả các tần số khác nhau phụ thuộc vào hình dạng của đáp ứng tần số lý tưởng; nghĩa là, đáp ứng tần số lý tưởng càng sắc nét thì lỗi xấp xỉ càng lớn. - 29 -
  • 30. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số - Lỗi càng lớn khi ở gần cạnh dải và càng bé khi ở bên trong dải. Quan sát độ thị hình 4.2 thì độ suy hao dải chắn tối thiểu khoảng 16dB không thỏa mãn với giá trị As=60dB đã cho. Do vậy phương pháp xứ lý này không chấp nhận được. Để có được hệ số suy giảm tốt hơn, chúng ta phải tăng M tạo ra các mẫu tự do ở dải chuyển tiếp nghĩa là, chúng ta thay đổi các giá trị của chúng để thu được hệ số suy giảm lớn nhất đối với M và độ rộng dải chuyển tiếp đã cho. Trong thực tế thì trong dải chuyến tiếp người ta chọn một hoặc hai mẫu. Đây được gọi là phương pháp thiết kế tối ưu. Phương pháp thiết kế tối ưu: Hình 4.3: Mô tả đáp ứng sau khi thiết kế Nhận xét: Độ suy hao dải chẵn tối thiểu bây giờ là 60dB. So với giá thiết thì có thể chấp nhận được. Do đó chấp nhận bộ lọc FIR pha tuyến tính mà đáp ứng tấn số của nó độ gợn song của biên độ là hằng số. - 30 -
  • 31. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số CHƯƠNG 5: KẾT LUẬN Tiểu luận đã trình bày tóm tắc các vấn đề lý thuyết cơ bản về thiết kế bộ lọc số FIR. Nêu các đặc tính bộ lọc số cần xác định và các phương pháp khi thiết kế bộ lọc. Đó chính phương pháp sử dụng hàm cửa sổ và phương pháp lấy mẫu tần số. Đã đi sâu tìm hiểu hai phương pháp để thiết kế bộ lọc số FIR thông dãi. Sau khi tìm hiểu lý thuyết cơ bản phương pháp lấy mẫu tần số, tiểu luận vận dụng MATLAB để minh hoạ lý thuyết đồng thời nêu ra bài toán thiết kế và cách giải quyết, so sánh kết quả đạt được. Sau khi thiết kế lọc FIR thông dãi theo hai phương pháp trên thu được các ưu nhược điểm khi sử dụng phương pháp như sau: Các nhược điểm: Đối với phương pháp sử dụng hàm cửa sổ và lấy mẫu tần số: - Không thể ấn định trước các tần số của dải W p và Ws trong thiết kế. - Không thể ấn định cả hai hệ số gợn sóng δ1 và δ 2 một cách đồng thời. - Các lỗi xấp xỉ, là hiệu của đáp ứng lý tưởng và đáp ứng thực tế không phân bố đều đặn trên các khoảng dải tần. Đế loại trừ ba nhược điểm nêu trên thì ta có các kỹ thuật sau: - Đối với lọc FIR có pha tuyến tính, có thể đạt đến một tập các điều kiện để có thể cải thiện sao cho giải pháp thiết kế là tối ưu theo nghĩa tối thiểu hoá lỗi xấp xỉ cực đại (đôi khi được gọi là lỗi minimax hoặc lỗi Chebyshev ). - Các bộ lọc có tính chất này được gọi là bộ lọc cân bằng gợn sóng vì lỗi xấp xỉ được phân bố đều đặn trên cả dải thông và dải chắn. - Các kết quả này đạt được trong các bộ lọc bậc-thấp. - 31 -
  • 32. Tiểu luận thiết kế lọc FIR thông dãi bằng phương pháp cửa sổ và phương pháplấy mẫu tần số TÀI LIỆU THAM KHẢO 1. Hồ Văn Sung, Xử lý số tín hiệu, NXB Giáo Dục,2003 2. Lý thuyết và bài tập xử lý tín hiệu số-Tống Văn On, NXB Lao Động - Xã Hội,2002 3.Xử lý tín hiệu và lọc số-Nguyễn Quốc Trung, NXB Khoa Học và Kỹ Thuật,2002 4.Xử lý tín hiệu số-Quách Tuấn Ngọc, NXB Giáo Dục,1995 5.Digital Signal Processing Using Matlab V4-Vinay K.Ingle-John G.Proakis. - 32 -