Khóa luận Thiết kế bộ lọc số trên dsPIC ứng dụng trong việc xử lý điện tâm đồ

Hiện nay với việc phát triển của khoa học kỹ thuật và kinh tế thì chất lượng cuộc sống của con người đã được nâng lên một cách rõ rệt. Do đó nhu cầu về chăm sóc sức khỏe là một nhu cầu tất yếu không thể thiếu ở mỗi người. Một trong những mối quan tâm hàng đầu hiện nay là các bệnh lý liên quan tới tim mạch. Không phải ai cũng có khả năng trang bị cho mình những thiết bị đắt tiền để khám bệnh ngay tại nhà. Bên cạnh đó việc sản xuất các thiết bị đo điện tim bằng các mạch lọc tương tự sẽ rất tốn các linh kiện mặt khác tín hiệu điện tâm đồ chịu rất nhiều loại nhiễu tác động, và việc xử lý các nhiễu này là rất khó thực hiện trên các mạch lọc tương tự được thiết kế bằng các linh kiện điện tử. Chính vì lý do này các mạch lọc số đang dần thay thế các mạch lọc tương tự bởi những ưu điểm nổi trội của nó về độ chính xác, dễ dàng thay đổi đặc tính của bộ lọc . Luận văn của em tập trung vào việc thực hiện việc lọc số trên vi điều khiển dsPIC vừa tăng được khả năng lọc nhiễu của tín hiệu vừa tiết kiệm được các linh kiện. Điều này góp phần tăng hiệu quả ứng dụng của thiết bị và hạ giá thành sản phẩm. Một số kết quả thu được là: · Tìm hiểu về tín hiệu điện tâm đồ. · Tìm hiểu về cấu trúc của dsPIC30F3012. · Hiểu được nguyên tắc đo tín hiệu điện tâm đồ. · Xây dựng mođun mạch điện tử đo tín hiệu điện tim. · Thiết kế các bộ lọc số xử lý tín hiệu điện tim. · Khảo sát tín hiệu điện tim thu được. Hướng phát triển của đề tài tiếp tục hoàn thiện các bộ lọc số ở mức độ tối ưu hơn về khả năng sử dụng, đồng thời nghiên cứu phát triển một số ứng dụng khả thi khác của đề tài như xử lý tín hiệu nhịp thở. Việc thực hiện giải thuật trên bộ xử lí tín hiệu số DSP đang được tiếp tục để thực hiện bài toán trong thời gian thực

doc49 trang | Chia sẻ: lvcdongnoi | Lượt xem: 2852 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Khóa luận Thiết kế bộ lọc số trên dsPIC ứng dụng trong việc xử lý điện tâm đồ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
quan trọng trong hệ tuần hòa của động vật, với chức năng bơm đều đặn để đẩy máu theo các động mạch và đem dưỡng khí và các chất dinh dưỡng đến toàn bộ cơ Thể. Hút máu từ tĩnh mạch về tim sau đó đẩy máu đến phổi để trao đổi khí CO lấy khí O2. Tim được cấu tạo từ một loại cơ đặc biệt gọi là cơ tim. Tim người nằm trong lồng ngực, giữa hai lá phổi, dưới là cơ hoành, trên là các ống của tâm trung thất, trước là xương ức, sau là xương cột sống. Tim người gồm có bốn ngăn: 2 tâm nhĩ phía trên và 2 tâm thất phía dưới. Cơ tim của tâm thất dày hơn tâm nhĩ, của tâm thất trái dày hơn tâm thất phải. Tâm nhĩ trái nối với tĩnh mạch phổi, tâm thất trái nối với động mạch chủ. Tâm nhĩ phải nối với tĩnh mạch chủ trên và tĩnh mạch chủ dưới, tâm thất phải nối với động mạch phổi. Giữa tâm thất và tâm nhĩ có van nhĩ thất giúp cho máu không chảy ngược lại tâm nhĩ. Van này ở bên phải có ba lá (van ba lá) và bên trái có hai lá (van hai lá).Ở gốc động mạch với tâm thất có van bán nguyệt (do có hình bán nguyệt), còn gọi là van tổ chim giúp máu không chảy ngược trở lại tâm thất. Tim bơm máu nuôi dưỡng khắp thân thể nên nó cũng phải được tiếp tế đầy đủ máu và oxi. Đó là nhờ mạch máu bên phải và trái phát suất từ động mạch chủ chạy thành một vòng bao quanh quả tim. Động mạch này được gọi là mạch máu vành tim (Coronary arteries). Hình 1.1: Cấu tạo tim người 1.2 Sự hình thành điện tâm đồ Tim hoạt động được là nhờ một xung động truyền qua một hệ thống thần kinh tự động của tim. Đầu tiên, xung động đi từ nút xoang toả ra cơ nhĩ làm cho nhĩ co bóp (hay là nhĩ khử cực) trước, khi nhĩ bóp thì máu được đẩy xuống tâm thất. Sau đó nút nhĩ - thất Tawara tiếp nhận xung động truyền qua bó His xuống tâm thất làm cho tâm thất co bóp (tâm thất khử cực), lúc này thất đã đầy máu sẽ bóp mạnh đẩy máu ra ngoại biên. Hiện tượng nhĩ thất co bóp (nhĩ thất khử cực) lần lượt trước sau như thế chính là để duy trì quá trình huyết động bình thường của hệ thống tuần hoàn. Đồng thời điều đó làm cho điện tâm đồ bao gồm hai phần: một là nhĩ đồ, ghi lại dòng điện hoạt động của nhĩ, đi trước, và một thất đồ, ghi lại dòng điện của thất đi sau. Để thu được dòng điện tim, người ta phải đặt các điện cực lên cơ thể như những sensơ thu những dòng điện tim nhỏ khoảng từ 1mV-3mV. Tuỳ theo chỗ đặt các điện cực, hình dáng điện tâm đồ sẽ khác nhau. Nhưng trong thực tế để dễ dàng quan sát và chuẩn đoán tốt trong bệnh nhân, người ta quy ước đặt điện cực dương (B) bên trái quả tim, và điện cực âm (A) ở bên phải quả tim (Hình 1.2). Hình 1.2 : Quy ước các điện cực với cấu tạo của tim Do đó trên đường điện tâm đồ sẽ xuất hiện ba dạng sóng cơ bản sau : Khi tim ở trạng thái nghỉ không có dòng điện tim qua điện cực âm và điện cực dương là cân bằng nhau khi đó sẽ xuất hiện một đường thẳng, gọi đó là đường đồng điện (isoelectric line). Khi tim hoạt động (tâm thu) mà điện cực B thu được một điện thế dương tính tương đối so với điện cực A thì khi đó sẽ xuất hiện một làn sóng dương tức là ở phía trên đường đồng điện. Trái lại, khi điện cực A dương tính tương đối thì sẽ xuất hiện một làn sóng âm, nghĩa là phía trên đường đồng điện 1.2.1 Nhĩ đồ Xung động đi từ nút xoang(ở nhĩ phải) sẽ toả ra làm cho cơ nhĩ co bóp (khử cực cơ nhĩ) các đợt sóng với hướng chung là từ trên xuống dưới và từ phải sang trái. Như vậy, vectơ khử cực nhĩ(nghĩa là vectơ biễu diễn dòng điện khử cực nhĩ) sẽ có hướng từ trên xuống dưới và từ phải sang trái, làm với đường ngang một góc +490 và còn gọi là trục điện nhĩ. Lúc này điện cực B sẽ dương tính tương đối và máy sẽ ghi được một làn sóng dương thấp, nhỏ, kéo dài khoảng 0.08s gọi là sóng P. a) b) c) Hình 1.3 : Nhĩ đồ a) Quá trình khử cực ở nhĩ và trục điện nhĩ. b) Nhĩ đồ bình thường (Sóng P). c)Nhĩ đồ ghi ở chuyển đạo thực quản Khi nhĩ tái cực, nó có phát ra một dòng điện ghi lên máy bằng một sóng âm nhỏ gọi là sóng Ta (aurricular T), nhưng ngay lúc này cũng xuất hiện khử cực thất (QRS) với điện thế mạnh hơn nhiều nên trên điện tim đồ thông thường ta không nhìn thấy được sóng Ta nữa. Do đó nhĩ đồ có nghĩa là sự hoạt động của nhĩ chỉ thể hiện lên điện tim đồ bằng một làn sóng đơn độc sóng P. 1.2.2 Thất Đồ 1.2.2.1 Khử cực Khi tâm nhĩ co bóp (nhĩ khử cực) thì xung động đã bắt đầu vào nút nhĩ - thất rồi truyền qua thân và hai nhánh bó His xuống khử cực thất. Việc khử cực này bắt đầu từ phần giữa mặt trái vách liên thất đi xuyên sang mặt phải vách này, tạo ra một vectơ khử cực đầu tiên hướng từ trái sang phải: điện cực A sẽ dương tính tương đối do đó sẽ xuất hiện một làn sóng âm nhỏ và nhọn gọi là sóng Q. Sau đó, xung động truyền xuống và tiến hành khử cực đồng thời cả hai tâm thất theo hướng xuyên qua bề dày cơ tim, từ lớp dưới nội tâm mạc ra lớp dưới thượng tâm mạc. Lúc này vectơ khử cực hướng nhiều về bên trái hơn vì thất trái dày hơn và tim nằm nghiêng hướng trục tim về bên trái. Do đó, vectơ khử cực lúc này hướng từ phải sang trái; điện cực B lại dương tính tương đối và ta sẽ thu được một làn sóng dương cao, nhọn, gọi là sóng R Sau cùng, khử cực nốt vùng đáy thất lại hướng từ trái sang phải, tạo ra một vectơ hướng từ trái sang phải: máy ghi được một làn sóng âm, nhỏ, nhọn, gọi là sóng S. Như vậy khử cực thất bao gồm ba làn sóng cao nhọn Q, R, S biên thiên phức tạp nên được gọi là phức bộ QRS. Vì nó biên đổi nhanh trong một thời gian rất ngắn là khoảng 0.07s, nên còn được gọi là phức bộ nhanh, trong phức bộ này sóng lớn nhất là sóng R. Khi chúng ta tổng hợp ba vectơ khử cực Q, R, S thì chúng ta sẽ được một vectơ khử cực trung bình có hướng từ trên xuống dưới và từ phải sang trái làm với đường nằm ngang một góc là 580 (hình 1.4). Vectơ đó còn gọi là trục trung bình của điện tim, hay gọi là trục điện tim Hình 1.4: Trục điện tim bình thường Tái cực Khi thất khử cực xong, sẽ qua một thời kỳ tái cực chậm, không thể hiện một làn sóng nào hết mà nó chỉ là một đường đồng điện gọi là đoạn ST. Sau đó đến thời kỳ tái cực nhanh (sóng T). Tái cực nói chung có hướng đi xuyên qua cơ tim, từ lớp dưới thượng tâm mạc vào lớp dưới nội tâm mạc. Tái cực đi ngược chiều với khử cực như vậy là vì nó tiến hành đúng vào lúc tim bóp với cường độ mạnh nhất, làm cho lớp cơ tim dưới nội tâm mạc bị lớp ngoài nén vào quá mạnh nên tái cực muộn đi. Mặc khác trái với khử cực, tái cực tiến hành từ vùng điện dương tới vùng điện âm. Do đó, tuy nó tiến hành ngược chiều với khử cực, nó vẫn có vectơ tái cực hướng từ trên xuống dưới và từ phải sang trái (hình 1.5) làm phát sinh một làn sóng dương thấp, đầu tù gọi là sóng T. Hình 1.5: Quá trình tái cực và hình thành sóng T Nếu khi ta lấy một đường thẳng đứng qua đỉnh sóng T lấy làm trục đối xứng thì ta sẽ thấy sóng đó không đối xứng, mà có sườn lên thoai thoải hơn và sườn xuống dốc đứng hơn. Hơn nữa nó rất dài làm cho hai chân của nó rất xa nhau nên còn gọi là sóng chậm. Véctơ tái cực làm với trục bình thường một góc 380 . Và nó gần như cùng hướng với véctơ trục điện tim, Do đó sóng R cũng là sóng dương. Như vậy thất đồ được chia làm hai giai đoạn : Giai đoạn khử cực, bao gồm phức bộ QRS được gọi là pha đầu Giai đoạn tái cực, bao gồm ST và T (và cả U nữa) được gọi là pha cuối. Thời gian toàn bộ của thất đồ, kể từ đầu sóng Q đến hết sóng T, gọi là thời gian QT kéo dài khoảng 0,36s. 1.2.2.3 Truyền đạt nhĩ - thất Khi sóng P kết thúc là hết nhĩ đồ, khi bắt đầu sóng Q là bắt đầu thất đồ. Nhưng nhìn vào điện tâm đồ ta thấy giữa P và Q có một khoảng ngắn đồng điện chứng tỏ rằng sau khi nhĩ khử cực xong rồi, xung động vẫn chưa truyền đạt xuống tới thất. Nhưng khúc PQ không thể đại diện cho thời gian truyền đạt từ nhĩ tới thất. Vì chúng ta biết rằng ngay khi nhĩ còn đang khử cực thì xung động đã bắt đầu vào nút nhĩ-thất vào bắt đầu truyền đạt xuống phía thất rồi. Do đó, để đạt một mức chính xác cao hơn, người ta thường đo từ khởi điểm sóng P đến khởi điểm sóng Q(hay khởi điểm sóng P trong trường hợp không có Q) tức là khoảng PQ, và gọi đó là thời gian truyền đạt nhĩ - thất, bình thường dài từ 0,12s đến 0,20s. Như vậy, điện tim đồ bình thường của mỗi nhát bóp tim (hay một chu trình của tim) gồm 6 làn sóng nối tiếp nhau mà người ta dùng 6 chữ cái liên tiếp nhau để đặt tên là: P, Q, R, S, T, U, trong đó người ta phân ra một nhĩ đồ: sóng P, một thất đồ: các sóng Q, R, S, T, U, với thời gian truyền đạt nhĩ - thất: khoảng PQ. Với tần số tim bình thường, khoảng 75 nhịp/phút thì sau sóng T, tim sẽ nghỉ đập khoảng 0,28s thể hiện bằng một khoảng thẳng đồng điện rồi lại tiếp sang nhát bóp sau với một loạt sóng P, Q, R, S, T, U khác và cứ thế tiếp diễn mãi. Thời gian nghỉ gọi là thời kỳ tâm trương toàn thể của tim . 1.3. Một vài chuyển đạo cơ bản Điện cực âm ở cổ tay phải, điện cực dương ở cổ tay trái, gọi là chuyển đạo I, viết tắt là D1 (Hình 1.6). Hình 1.6: Sơ đồ mắc các chuyển đạo mẫu, chân nối đất để chống tạp nhiễu Các chuyển đạo trước tim Người ta thường ghi đồng loạt cho bệnh nhân 6 chuyển đạo trước tim thông dụng nhất, ký hiệu là chữ V và đánh dấu từ 1 đến 6. Đó là những chuyển đạo đơn cực, có một điện cực trung tính nối vào cực trung tâm(CT) và một điện cực thăm dò. Được đặt lần lượt trên 6 điểm ở vùng trước tim. Như vậy trục chuyển đạo của chúng sẽ là những đường thẳng hướng từ tâm điểm của tim (điểm O) tới các vị trí của điện cực tương ứng, các trục đó nằm trên những mặt phẳng nằm ngang hay gần ngang. Đứng về mặt sinh học thì V1 và V2 coi như có điện cực thăm dò đặt trúng lên vùng thành ngực ở sát ngay trên mặt thất phải và gần khối tâm nhĩ, do đó có khả năng thể hiện được những rối loạn điện học của thất phải và khối tâm nhĩ rõ ràng nhất, người ta gọi V1, V2 là các chuyển đạo trước tim phải, V5 và V6 gọi là các chuyển đạo trước tim trái. Còn chuyển đạo V3, V4 ở khu vực trung gian giữa hai thất, ngay trên vách liên thất nên được gọi là chuyển đạo trung gian. Tuy nhiên tuỳ từng người mà tư thế tim trong lồng ngực khác nhau có thể làm sai khác tin hiệu điện tim thu được giữa các điện cực và tâm thất. Hình 1.7: Các chuyển đạo trước tim 1.4. Hình dạng và các sóng của điện tâm đồ Hiện nay người ta mô tả lần lượt các sóng P, khoảng PQ, phức bộ QRS, đoạn ST, sóng T, sóng U và khoảng QT. Về mỗi sóng chúng có những đặc trưng riêng của mỗi sóng về biên độ, thời gian được tổng hợp qua các chuyển đạo thông qua các điện cực đặt ở trên da (thông thường là 12 chuyển đạo), hình dạng chung của điện tâm đồ có hình dạng sau : Hình 1.8 Điện tâm đồ bình thường và các thông số đặc trưng 1.4.1. Sóng P Sóng P là sóng khởi đầu của một chuỗi sóng các sóng tiếp theo, nó bắt đầu cho một chu kỳ co bóp mới của tim. Sóng P tiêu biểu thường có biên độ trung bình là 1,2mV, tối đa là 2mV, tối thiểu là 0,5mV. Ở trẻ em thì lớn hơn người lớn. Ở các chuyển đạo thực quản và trong buồng nhĩ, sóng P cao gấp 10 lần P2 và hình dạng giống như một phức bộ QRS. Thời gian kéo dài của sóng P tức là bề rộng của sóng P thường lớn nhất ở D2. Sóng P lớn nhất có bề rộng trung bình là 0.08s tối đa là 0.11s và tối thiểu là 0.05. Ở trẻ em thì sóng ngắn hơn người lớn. 1.4.2. Khoảng PQ Khoảng PQ là đại diện cho thời gian truyền đạt nhĩ - thất. Nó là khoảng cách đo từ khởi điểm của P tới khởi điểm của Q, thường thường người ta lấy PQ ở D2. Hình dạng của nó là một đường đồng điện. Ở người Việt Nam, PQ bình thường trung bình là 0.15s, tối đa là 0.2s, tối thiểu là 0.11s. Nhưng khi tần số tim càng nhanh thì PQ càng bị rút ngắn như ở trẻ em tối đa là khoảng 0,18s và tối thiểu là 0,1s Phức hợp QRS Theo quy ước quốc tế, trong phức bộ QRS, nếu có một sóng dương thì sóng đó gọi là sóng R. Nếu có hai sóng dương thì sóng thứ hai gọi là sóng R’ và cứ như thế R’’, R’’’ Nếu trước sóng R có một sóng âm thì sóng này được gọi là sóng Q . Nếu sau sóng R có một sóng âm thì ta gọi đó là sóng S. Sóng âm đứng sau sóng R’ gọi là sóng S’ và tương tự như vậy. Nếu một phức bộ QRS không có sóng dương mà chỉ có một sóng âm thì ta gọi nó là sóng QS (vì không thể phân biệt được nó là Q hay là S). Ngoài ra, trên mỗi sóng còn có thể có những cái móc hay nhọn khác nhau Một phức bộ QRS có thể chỉ có 1 sóng dương: R hay là một sóng âm : QS, hay là 2 sóng, Q và R hoặc R và S, hay là 3 sóng : QRS. Biên độ tương đối của một phức bộ QRS là hiệu số của tổng biên độ các sóng dương trừ đi tổng biên độ các sóng âm. Khi kết quả này là dương thì ta nói phức bộ QRS là dương. Còn khi nó là âm thì nói là phức bộ QRS là âm. Biên độ tuyệt đối của phức bộ QRS là tổng số biên độ tất cả các sóng của phức bộ đó cộng lại, không phân biệt sóng âm và sóng dương. Thời gian QRS hay bề rộng của QRS được đo từ điểm khởi điểm của sóng Q đến hết sóng S. Trong tín hiệu điện tâm đồ, QRS ở mỗi chuyển đạo có thể rộng hẹp khác nhau một vài phần trăm giây, nhưng ta chỉ cần chọn đo lấy thời gian QRS của chuyển đạo nào có QRS rộng nhất, lấy chuyển đó làm tiêu chuẩn. Thông thường trong ba chuyển đạo mẫu thì chuyển đạo QRS2 là rộng nhất. Nhưng QRS ở các chuyển đạo trước tim thường lại rộng hơn các chuyển đạo ngoại biên. Thời gian QRS bình thường trung bình là 0.07s, tối đa là 0.1s và tối thiểu là 0.05s. Riêng sóng Q thì thời gian tối đa là 0.04s ở D3, aVF và 0.03s ở các chuyển đạo khác. 1.4.3. Đoạn ST Đoạn ST này không bao gồm một làn sóng nào cả mà chỉ là một đoạn thẳng đi từ điểm tận cùng của QRS (điểm J) tới khởi điểm của sóng T. Khởi điểm của sóng T rất khó xác định bởi vì sóng T là thoai thoải. Còn điểm J thì cũng nhiều khi vô định. Vì thế thời gian của đoạn ST rất khó xác định và rất ít được dùng trong thực tế. Trái lại, người ta chú ý nhiều đến hình dạng của ST và vị trí của nó so với đường đồng điện. Do đó vị trí của ST có thể là các dạng sau: ST chênh lệch trên đường đồng điện, còn gọi là ST dương. ST chênh xuống dưới đường đồng điện, còn gọi là ST âm. ST đồng điện tức là nó trùng với đường đồng điện. Trên thực tế đại đa số người bình thường, ST đồng điện hoặc hơi chênh lên (không vượt quá 0.5mV khi đo với các máy điện tim) ở chuyển đạo ngoại biên, và thường chênh lên ở chuyển đạo trước tim (không vượt quá 1.5mV ở V4 và 1mV ở chuyển đạo trước tim khác khi đo với máy điện tim). Nói chung đường ST không bao giờ uốn cong mà đi thẳng và tiếp vào T một cách mềm mại, và cũng không bao giờ đi xuống dốc mà chỉ đi ngang hoặc hơi dốc lên. 1.4.4. Sóng T Trong thực tế đối với sóng T người ta chỉ chú trong vào hình dạng và biên độ của sóng T mà không cần tính thời gian tức là bề rộng của sóng T Khi T dương, người ta hay tả biên độ của nó bằng các từ ngữ như T cao, T bình thường, T thấp, T dẹt, T đồng điện. Bình thường, sóng T rộng và đậm nét, đỉnh tù, hai sườn không đối xứng, với sườn xuống dốc đứng hơn còn sườn lên thoai thoải với đoạn ST. 1.4.5. Khoảng QT Khoảng QT thể hiện một thời kỳ tâm thu điện học của tâm thất và được đo từ khởi điểm sóng Q tới điểm cuối sóng T Đối với QT bình thường, người ta còn có thể xem nó là QT trung bình nếu toạ độ nói trên nằm trúng vào đường cong trung bình (đường in nét đậm) Hình 1.9. Đồ thị hàm số giữa thời gian QT tính ra “phần trăm giây” (tung độ) và tần số tim trong mỗi phút. 1.4.6. Sóng U Sóng U là một sóng nhỏ, thường thì nó chỉ có mặt ở một số chuyển đạo, nhất là ở V2 rồi đến V3, và bao giờ cũng tách rời ra khỏi sóng R, đứng sau nó từ 0.01s đến 0.04s, nhưng nó bao giờ cũng dương và biên độ là 1mV ở chuyển đạo V2 và chỉ đạt lớn nhất là 2mV. Nhưng biên độ này còn tuỳ thuộc vào biên độ sóng T đi liền trước nó, khi T cao thì U cao và ngược lại. CHƯƠNG 2: CÁC BỘ LỌC SỐ Giống như các bộ lọc tín hiệu tương tự, bộ lọc số là mạch thực hiện chức năng chọn lọc tín hiệu theo tần số. Các mạch lọc số cho tín hiệu số có phổ nằm trong một dải tần số nhất định đi qua và không cho các tín hiệu có phổ nằm ngoài dải tần số đó đi qua. Dải tần số mà mạch lọc cho tín hiệu đi qua được gọi là dải thông, còn dải tần số mà mạch lọc không cho tín hiệu đi qua được gọi là dải chặn. Tần số phân cách giữa dải thông và dải chặn là tần số cắt và được ký hiệu là wc . Theo dạng của đặc tính biên độ tần số ½H(ejw)½, người ta chia các bộ lọc số thành các loại : - Bộ lọc thông thấp, có dải thông . - Bộ lọc thông cao, có dải thông . - Bộ lọc dải thông, có dải thông . - Bộ lọc dải chặn, có dải thông và . Theo dạng của đặc tính xung h(n), người ta phân biệt các bộ lọc số : Bộ lọc số có đặc tính xung hữu hạn (bộ lọc số FIR) 2.1 Các bộ lọc số lý tưởng 2.1.1 Bộ lọc thông thấp lý tưởng 2.1.1.1 Định nghĩa : Bộ lọc thông thấp lý tưởng có đặc tính biên độ tần số khi w Î [-p , p ] như sau : [2.1-2] Đặc tính biên độ tần số của bộ lọc thông thấp lý tưởng ở hình 2.1. w -p -wc 0 wc p Hình 2.1 : Đặc tính biên độ tần số của bộ lọc thông thấp lý tưởng. 2.1.1.2 Các tham số thực của bộ lọc thông thấp lý tưởng - Tần số cắt : fc - Dải thông : f Î [ 0 , fc ] - Dải chặn : f Î [fc , ¥ ] Bộ lọc thông thấp lý tưởng cho tín hiệu số có phổ nằm trong dải tần f fc đi qua. 2.1.1.3 Đặc tính xung hlp(n) của bộ lọc thông thấp lý tưởng Xét bộ lọc thông thấp lý tưởng pha tuyến tính , đặc tính tần số của nó có dạng : [2.1-3] Đặc tính xung hlp(n) của bộ lọc trên được xác định bằng IFT : [2.1-4] Theo [2.1-4], bộ lọc thông thấp lý tưởng pha tuyến tính có đặc tính xung hlp(n) dạng hàm sin giảm dần về 0 khi n ® ± ¥ . Tại n = 0 có : Đặc tính xung hlp(n) đạt cực đại tại n = 0 , và tại các điểm , với k là số nguyên. 2.1.2 Bộ lọc thông cao lý tưởng 2.1.2.1 Định nghĩa : Bộ lọc thông cao lý tưởng có đặc tính biên độ tần số khi w Î [-p , p ] như sau : [2.1-5] Đồ thị đặc tính biên độ tần số của bộ lọc thông cao lý tưởng ở hình 2.2. w -p -wc 0 wc p Hình 2.2 : Đặc tính biên độ tần số của bộ lọc thông cao lý tưởng. 2.1.2.2 Các tham số thực của bộ lọc thông cao lý tưởng - Tần số cắt : fc - Dải thông : f Î [fc , ¥ ] - Dải chặn : f Î [ 0 , fc ] Bộ lọc thông cao lý tưởng cho tín hiệu số có phổ nằm trong dải tần f > fc đi qua, chặn không cho tín hiệu trong dải tần f < fc đi qua. 2.1.2.3 Đặc tính xung hhp(n) của bộ lọc thông cao lý tưởng Xét bộ lọc thông cao lý tưởng pha tuyến tính , đặc tính tần số của nó có dạng : [2.1-6] Vì dải thông và dải chặn của bộ lọc thông cao ngược với bộ lọc thông thấp, nên có thể biểu diễn Hhp(ejw) qua Hlp(ejw) như sau : [2.1-7] Theo [2.1-7] có thể tìm được đặc tính tần số của bộ lọc thông cao từ đặc tính tần số của bộ lọc thông thấp có cùng tần số cắt. Đặc tính xung hhp(n) của bộ lọc trên được xác định bằng IFT : Hay : [2.1-8] Vì : Nên có thể viết lại [2.1-8] dưới dạng : [2.1-9] So sánh [2.1-9] với [2.1-4], có thể biểu diễn đặc tính xung hhp(n) của bộ lọc thông cao qua đặc tính xung hlp(n) của bộ lọc thông thấp : [2.1-10] Theo [2.1-10] có thể tìm được đặc tính xung hhp(n) của bộ lọc thông cao từ đặc tính xung hlp(n) của bộ lọc thông thấp có cùng tần số cắt wc . Đặc tính xung hhp(n) của bộ lọc thông cao lý tưởng là dãy chẵn, đối xứng qua trục tung và đạt cực đại tại n = 0. Khi tần số cắt thì đặc tính xung hhp (kN) = 0 tại các điểm n = kN, với k là số nguyên. 2.1.3 Bộ lọc dải thông lý tưởng 2.1.3.1 Định nghĩa : Bộ lọc dải thông lý tưởng có đặc tính biên độ tần số khi w Î [-p , p ] như sau : [2.1-11] Đồ thị đặc tính biên độ tần số của bộ lọc dải thông lý tưởng ở hình 2.3. w -p -wc1 -wc2 0 wc1 wc2 p Hình 2.3 : Đặc tính biên độ tần số của bộ lọc dải thông lý tưởng. 2.1.3.2 Các tham số thực của bộ lọc dải thông lý tưởng - Tần số cắt : fc1 , fc2 - Dải thông : f Î [fc1 , fc2 ] - Dải chặn : f Î [ 0 , fc1 ] và [fc2 , ¥ ] Bộ lọc dải thông lý tưởng cho tín hiệu số có phổ nằm trong dải tần fc1 fc2 đi qua, chặn không cho tín hiệu ngoài dải tần đó đi qua. 2.1.3.3 Đặc tính xung hbp(n) của bộ lọc dải thông Xét bộ lọc dải thông lý tưởng có pha tuyến tính , đặc tính tần số của nó có dạng : [2.1-12] Có thể biểu diễn Hbp(ejw) qua đặc tính tần số Hlp1(ejw) và Hlp2(ejw) của các bộ lọc thông thấp lý tưởng có tần số cắt wc1 và wc2 tương ứng : [2.1-13] Theo [2.1-13] có thể tìm được đặc tính tần số của bộ lọc dải thông có tần số cắt wc1 và wc2 , từ đặc tính tần số của hai bộ lọc thông thấp có tần số cắt wc1 và wc2 tương ứng. Đặc tính xung hbp(n) của bộ lọc trên được xác định bằng IFT : [2.1-14] [2.1-15] Hay : [2.1-16] Theo [2.1-16] có thể tìm được đặc tính xung hbp(n) của bộ lọc dải thông theo đặc tính xung hlp1(n) và hlp2(n) của các bộ lọc thông thấp có tần số cắt wc1 và wc2 tương ứng. 2.1.4 Bộ lọc dải chặn lý tưởng 2.1.4.1 Định nghĩa : Bộ lọc dải chặn lý tưởng có đặc tính biên độ tần số khi w Î [-p , p ] như sau : [2.1-17] Đồ thị đặc tính biên độ tần số của bộ lọc dải chặn lý tưởng ở hình 2.4. 2.1.4.2 Các tham số thực của bộ lọc dải chặn lý tưởng - Tần số cắt : fc1 , fc2 - Dải thông : f Î [ 0 , fc1 ] và [fc2 , ¥ ] - Dải chặn : f Î [fc1 , fc2 ] Bộ lọc dải chặn lý tưởng chặn không cho tín hiệu số có phổ nằm trong dải tần fc1 fc2 đi qua, cho tín hiệu số ngoài dải tần đó đi qua. w -p -wc1 -wc2 0 wc1 wc2 Hình 2.4 : Đặc tính biên độ tần số của bộ lọc dải chặn lý tưởng. 2.1.4.3. Đặc tính xung hbs(n) của bộ lọc dải chặn lý tưởng Xét bộ lọc dải chặn lý tưởng pha tuyến tính , đặc tính tần số của nó có dạng : [2.1-18] Có thể biểu diễn Hbs(ejw) qua đặc tính tần số Hlp1(ejw) và Hlp2(ejw) của các bộ lọc thông thấp lý tưởng có tần số cắt wc1 và wc2 như sau : [2.1-19] Theo [2.1-19] có thể tìm được đặc tính tần số của bộ lọc dải chặn có các tần số cắt wc1 và wc2 từ đặc tính tần số của hai bộ lọc thông thấp có tần số cắt wc1 và wc2 tương ứng. Biểu diễn Hbs(ejw) qua đặc tính tần số Hbp(ejw) của bộ lọc dải thông: [2.1-20] Theo [2.1-20] có thể tìm được đặc tính tần số của bộ lọc dải chặn có các tần số cắt wc1 và wc2 , từ đặc tính tần số của bộ lọc dải thông có tần số cắt tương ứng. Đặc tính xung hbs(n) của bộ lọc trên được xác định bằng IFT : [2.1-21] [2.1-22] Hay : [2.1-23] Hoặc : [2.1-24] Theo [2.1-23] có thể tìm được đặc tính xung hbp(n) của bộ lọc dải chặn khi biết đặc tính xung hlp1(n) và hlp1(n) của các bộ lọc thông thấp tương ứng. Theo [2.1-24] có thể tìm được đặc tính xung hbs(n) của bộ lọc dải chặn khi biết đặc tính xung hbp(n) của bộ lọc dải thông tương ứng. 2.2 Tham số của các bộ lọc số thực tế Tất cả các bộ lọc số lý tưởng có đặc tính biên độ tần số dạng chữ nhật, nên đặc tính xung của chúng đều là dãy không nhân quả có độ dài vô hạn, vì thế không thể thực hiện được các bộ lọc số lý tưởng. Đặc tính biên độ tần số của bộ lọc số thực tế thường có độ nhấp nhô trong dải thông và dải chặn, với hai biên là sườn dốc (xem hình 5.9) . Hình 2.5 : Đặc tính biên độ tần số của một bộ lọc thông thấp thực tế. Để đặc trưng cho bộ lọc thực tế, người ta sử dụng các tham số sau : 1. Loại bộ lọc : Thông thấp, thông cao, dải thông, dải chặn. 2. Tần số giới hạn dải thông wc (hay fc ). 3. Tần số giới hạn dải chặn wp (hay fp ). 4. Độ rộng dải quá độ Dw p = |wp - wc|(hay Dfp ). 5. Độ nhấp nhô trong dải thông d1. Trong dải thông, đặc tính biên độ tần số ½H(ejw)½ phải thỏa mãn điều kiện : (1 - d1) £ ½H(ejw)½ £ (1 + d1) [2.1-25] 6. Độ nhấp nhô trong dải chặn d2. Trong dải chặn, đặc tính biên độ tần số ½H(ejw)½ phải thỏa mãn điều kiện : ½H(ejw)½ £ d2 [2.1-26] Bộ lọc số thực tế có Dwp , d1 và d2 càng nhỏ thì đặc tính biên độ tần số càng gần giống dạng chữ nhật, nên độ chọn lọc tín hiệu càng tốt. 2.3 Các bộ lọc thực tế 2.3.1 Bộ lọc đáp ứng xung hữu hạn FIR 2.31.1 Đặc tính xung h(n) của các bộ lọc số FIR pha tuyến tính Các bộ lọc số FIR có đặc tính xung h(n) hữu hạn, nên hàm hệ thống là : Vì đặc tính xung h(n) hữu hạn, nên bộ lọc FIR luôn ổn định, có nghĩa là tất cả các điểm cực của hàm hệ thống H(z) nằm trong đường tròn đơn vị |z| = 1 . Đặc tính tần số của bộ lọc số FIR : Trong chương này chỉ nghiên cứu các bộ lọc số FIR có pha tuyến tính : [2.2-1] Trong đó a và b là các hằng số, và a là thời gian truyền lan của tín hiệu qua bộ lọc : [2.2-2] Theo [2.2-2] tất cả các thành phần tần số của tín hiệu đi qua bộ lọc số FIR pha tuyến tính đều bị giữ trễ như nhau, vì thế tín hiệu không bị méo dạng phổ. Vì H(ejw) tuần hoàn với chu kỳ 2p nên chỉ cần nghiên cứu đặc tính biên độ tần số ½H(ejw)½ và pha q(w) khi (-p £ w £ p) hoặc (0 £ w £ 2p). Mặt khác, nếu bộ lọc số có đặc tính xung h(n) là dãy thực thì theo tính chất của biến đổi Fourier có : và : Như vậy, ½H(ejw)½ là hàm chẵn và đối xứng, còn q(w) là hàm lẻ và phản đối xứng. Vì thế, khi đặc tính xung h(n) là dãy thực thì chỉ cần nghiên cứu bộ lọc số trong khoảng (0 £ w £ p). Theo [5.2-1] , có hai trường hợp bộ lọc FIR pha tuyến tính : 1. b = 0 Þ q(w) = - aw 2. b ¹ 0 Þ q(w) = b - aw 2.3.1a Trường hợp b = 0 , q(w) = - aw Khai triển công thức Euler, biểu diễn đặc tính tần số dưới dạng : [2.2-3] Mặt khác có : [2.2-4] Từ [2.2-3] và [2.2-4] có : Suy ra : Vì sin0 = 0 và cos0 = 1 nên có thể viết lại biểu thức trên dưới dạng : Từ đây có 2 trường hợp, a = 0 là bộ lọc pha không, và a ¹ 0 . Trường hợp a = 0 : Tức là h(n) ¹ 0 khi n = 0, và h(n) = 0 với mọi n ¹ 0. Bộ lọc như vậy không có ý nghĩ thực tế và không thể thực hiện được, vì tín hiệu truyền qua bộ lọc luôn bị giữ trễ, cho dù thời gian giữ trễ là rất nhỏ. Trường hợp a ¹ 0 : Hay: Vậy : Tiếp tục biến đổi lượng giác sẽ nhận được phương trình : [2.2-5] Phương trình dạng chuỗi Fourier trên có một nghiệm duy nhất tại : [2.2-6] và : với [2.2-7] Theo [2.2-7] , đặc tính xung h(n) của bộ lọc số FIR pha tuyến tính khi b = 0 là dãy đối xứng. - Khi b = 0 và N lẻ, gọi là bộ lọc số FIR pha tuyến tính loại 1. - Khi b = 0 và N chẵn, gọi là bộ lọc số FIR pha tuyến tính loại 2. 2.3.1b Trường hợp b ¹ 0 , j(w) = b - aw Bằng cách biến đổi tương tự như trường hợp trên, nhận được : [2.2-8] Phương trình dạng chuỗi Fourier trên có một nghiệm duy nhất tại : ; [2.2-9] và : với [2.2-10] Theo [2.2-10] , đặc tính xung h(n) của bộ lọc số FIR pha tuyến tính trong trường hợp b ¹ 0 là dãy phản đối xứng. - Khi b ¹ 0 và N lẻ gọi là bộ lọc số FIR pha tuyến tính loại 3. - Khi b ¹ 0 và N chẵn gọi là bộ lọc số FIR pha tuyến tính loại 4. Nhận xét : - Bộ lọc số FIR pha tuyến tính loại 3 và loại 4 có đặc tính xung h(n) phản đối xứng. - Tâm phản đối xứng của h(n) tại điểm n = a . Nếu N lẻ thì a là số nguyên và tâm phản đối xứng của h(n) trùng với mẫu tại n = (N - 1)/2 và tại đó h(n) = 0. Còn nếu N chẵn thì a là số thập phân và tâm phản đối xứng nằm giữa hai mẫu tại n = [(N/2) - 1] và n = (N/2). Như vậy. có bốn loại bộ lọc số FIR pha tuyến tính q(w) = b -aw : - Bộ lọc loại 1 : b = 0 , N lẻ, đặc tính xung h(n) đối xứng. - Bộ lọc loại 2 : b = 0 , N chẵn, đặc tính xung h(n) đối xứng. - Bộ lọc loại 3 : b = ± p/2 , N lẻ, đặc tính xung h(n) phản đối xứng. - Bộ lọc loại 4 : b = ± p/2 , N chẵn, đặc tính xung h(n) phản đối xứng. 2.3.2 Đặc tính tần số của bộ lọc số FIR pha tuyến tính Khi h(n) là dãy thực thì chỉ cần khảo sát đặc tính tần số H(ejw) của bộ lọc số FIR pha tuyến tính trong đoạn w Î [ 0 ¸ p ] . 2.2.2a Đặc tính tần số của bộ lọc FIR pha tuyến tính loại 1 Bộ lọc FIR pha tuyến tính loại 1 có q(w) = -aw và N lẻ, đặc tính tần số là : Vì N lẻ nên khai triển biểu thức trên thành tổng của ba thành phần : Đổi biến thành phần thứ 3, đặt => , khi thì , khi thì : Đảo chiều chỉ số và đổi lại biến của thành phần thứ 3 theo n : Vì bộ lọc FIR pha tuyến tính loại 1 có , nên : [2.2-11] Trong đó : Hay : Do đó : Hay : Đổi biến, đặt => , khi thì , khi thì , nhận được : Đổi biến m trở về n, đảo cận của tổng và thêm cos(w.0) = 1 vào số hạng đầu : Hay : [2.2-12] Với các hệ số của chuỗi : và khi [2.2-13] Từ [2.2-12] , đặc tính biên độ tần số của bộ lọc FIR pha tuyến tính loại 1 : [2.2-14] Với các hệ số a(n) phụ thuộc vào đặc tính xung h(n) theo [2.2-13] . Đặc tính pha : [2.2-15] Nhận xét : Vì cos(0) = 1 nên bộ lọc FIR pha tuyến tính loại 1 không thể dùng để làm bộ lọc có ½H(ejw)½ = 0 tại w = 0 , đó là các bộ lọc thông cao và dải thông [trừ khi bộ lọc có đặc tính xung với ]. 2.3.2b Đặc tính tần số của bộ lọc FIR pha tuyến tính loại 2 Bộ lọc FIR pha tuyến tính loại 2 có q(w) = -aw và N chẵn, đặc tính tần số là : Vì N chẵn nên khai triển biểu thức trên thành tổng của hai thành phần : Đổi biến tổng thứ hai, và biến đổi tương tự ở mục 2.2.2a , nhận được : [2.2-16] Với các hệ số : [2.2-17] Từ đó có đặc tính biên độ tần số của bộ lọc FIR pha tuyến tính loại 2 : [2.2-18] Với các hệ số b(n) phụ thuộc vào đặc tính xung h(n) theo [2.2-17]. Đặc tính pha : [2.2-19] Nhận xét : Khi w = ± p thì với mọi n nên ½H(ejw)½ = 0 khi w = ± p . Như vậy, bộ lọc FIR pha tuyến tính loại 2 không thể dùng để xây dựng bộ lọc có đặc tính biên độ tần số khác 0 tại w = ± p , đó là bộ lọc thông cao và bộ lọc dải chặn. 2.3.2c Đặc tính tần số của bộ lọc FIR pha tuyến tính loại 3 Bộ lọc FIR pha tuyến tính loại 3 có q(w) = b -aw và N lẻ, đặc tính tần số là : Vì N lẻ nên khai triển biểu thức trên thành tổng của ba thành phần : Vì bộ lọc FIR pha tuyến tính loại 3 có đặc tính xung h(n) phản đối xứng nên tại n = (N - 1)/2 thì h(n) = 0 . Do đó biểu thức trên có dạng : Đổi biến tổng thứ hai, đặt m = (N - 1 - n) => n = (N - 1 - m), nhận được : Đổi lại biến m thành n và đảo chiều chỉ số của tổng thứ hai : Vì bộ lọc FIR pha tuyến tính loại 3 có , nên : Tiếp tục biến đổi tương tự ở mục 2.2.2a , nhận được : [2.2-20] Với các hệ số : [2.2-21] Từ đó có đặc tính biên độ tần số của bộ lọc FIR pha tuyến tính loại 3 : [2.2-22] Với các hệ số c(n) phụ thuộc vào đặc tính xung h(n) theo [2.2-21]. Đặc tính pha : Suy ra : và [2.2-23] Nhận xét : Với w = 0 và w = ± p thì và với mọi n, nên khi đó ½H(ejw)½ = 0 . Bộ lọc FIR pha tuyến tính loại 3 không thể dùng để xây dựng bộ lọc có đặc tính biên độ tần số khác 0 tại w = 0 và w = ± p đó là các bộ lọc thông thấp, thông cao và bộ lọc dải chặn. Như vậy, bộ lọc FIR pha tuyến tính loại 3 chỉ xây dựng được bộ lọc dải thông. 2.3.3 Bộ lọc đáp ứng xung vô hạn IIR Tương tự như bộ lọc số FIR, bộ lọc số IIR cũng có cấu trúc dạng trực tiếp, cấu trúc dạng nối tiếp, cấu trúc dàn và cấu trúc dàn thang. Ngoài ra còn có thêm nhiều cấu trúc song song. 2.3.3.1 Cấu trúc bộ lọc số IIR dạng trực tiếp Hàm truyền đạt hữu tỷ đặc trưng cho bộ lọc số IIR: H(z)= (2.3.3) Có thể được xem như gồm hai hệ nối tiếp, nghĩa là: H(z) = H1(z)H2(z). Ở đây, H1(z) chứa các điểm không và H2(z) chứa các điểm cực của H(z), tức là: H1(z) = và H2(z) = y(n) Hình 2.6 cấu trúc trực tiếp loại I x(n) Hình 2.7 cấu trúc trực tiếp loại II (N = M ) 2.3.2.2 Cấu trúc bộ lọc số IIR dạng nối tiếp Giả sử ta xét một hệ IIR bậc cao có hàm truyền đạt cho ở (2.3.3). Không mất tính tổng quát nếu ta giả thiết N ≥M. Có thể phân tích hệ thành các hệ con bậc hai nối tiếp, vì thế có thể biểu diễn H (z) dưới dạng: H(z)= G ở đây k là phần nguyên của (N+1)/2, Hk(z) có dạng tổng quát: Hk(z) = (2.2.2) và G là tham số khuếch đại cố định, được xác định theo (2.2.2) là G = b0 . Cũng giống như trường hợp hệ FIR theo cấu trúc nối tiếp, tham số khuếch đại G có thể được phân bố bằng nhau cho k mắt lọc, sao cho G= G1G…Gk.. Các hệ số { aki} và { bki} trong các hệ con bậc hai là thực. Điều này nói lên rằng, khi hình thành các hệ con bậc hai hay các thừa số bậc hai trong (2.2.2), ta phải nhóm các cặp cực không liên hợp phức với nhau. Nếu N > M, một hệ thống con bậc hai sẽ có các hệ số ở tử số bằng không, nghĩa là hoặc bk2 = 0, hoặc bk1 = 0, hoặc cả hai đều bk1 =bk2 = 0. đối với mọi số k nào đấy. Hơn nữa, nếu N là lẻ, một trong các hệ con, chẳng hạn Hk(z), phải có ak2= 0 vì thế hệ thống con là bậc nhất. Để duy trì tính môđun khi thực hiện H(z), thông thường người ta dùng hệ thống con bậc hai cơ bản trong cấu trúc nối tiếp và có một vài hệ số lấy giá trị không ở một số hệ con. Mỗi hệ con bậc hai với hàm truyền đạt có dạng (2.2.2) có thể được thể hiện theo dạng trực tiếp loại II. Vì có nhiều cách ghép cặp các cực và các không của H(z) thành các mắt bậc hai nối tiếp và có một số xếp thứ tự các hệ thống con, nên có thể thu được các cấu trúc nối tiếp là tương đương đối với một độ chính xác bất định, các thể hiện khác nhau một cách đáng kể khi được thực hiện với các phép số học có độ chính xác nhất định. Hình 2.8 cấu trúc nối tiếp các hệ thống bậc hai 2.4. Phương pháp lặp và thuật toán chuyển đổi Parks-McClellan Khởi đầu chúng ta không cần biết tập các tần số cực trị |ωn| cũng không biết các tham số |α(k)| và . Để tìm các tham số này, chúng ta dùng một thuật toán lặp, gọi là thuật toán chuyển đổi Parks-McClellan. Nội dung của thuật toán này được tóm tắt như sau: Trước tiên chúng ta dự đoán một tập tần số cực trị |ωn| sau đó lần lượt tính , P(ω) và hàm sai số E(ω). Từ hàm sai số E(ω) chúng ta xác định tập (L + 2) tần số cực trị mới và tiến trình này được lặp lại cho đến khi đạt được tập tấn số cực trị tối ưu. Thuật toán chuyển đổi Parks-McClellan được trình bày dưới dạng lưu đồ: Tính tối ưu trên tập hợp tần số cực trị Xác đinh P(ω) bằng cách nội suy trên M + 1 Xấp xỉ tối ưu Chọn ra M + 2 cực trị lớn nhất Chọn L + 2 tần số cực trị ban đầu Tính hàm sai số E(ω) và tìm lại các cực trị mà ở đó | E(ω) | Các tần số cực trị có thay đổi không ? Có nhiều hơn M +2 cực trị có Không Lưu đồ thuật toán Park- McClellan Áp dụng phương pháp Park- McClellan vào phương pháp lặp để thiết kế bộ lọc FIR pha tuyến tính theo các bước sau: Bước 1: chọn loại bộ lọc lý tưởng và xác định đáp ứng biên độ |Hdr(ω)|, sau đó chọn hàm trọng số W(ω) (dựa theo các chỉ tiêu kỹ thuật của bộ lọc thực tế), chọn chiều dài của bộ lọc số M, suy ra L Bước 2: Chọn loại bộ lọc theo các trường hợp và xác định bài toán gần đúng E(ω) = W(ω)|Hdr(ω) – P(ω)| Bước 3: Sử dụng thuật toán Parks-McClellan để giải bài toán gần đúng này. Cụ thể như sau: Chọn ra tập hợp L + 2 điểm tần số rời rạc ban đầu, trong dải tần số [0, ]. Rabiner, McClellan, …và Parks (1975) đã đề ra công thức tính có hiệu quả hơn, như sau: Trong đó = Xác định P(ω) từ : vì P(ω) là một đa thức lượng giác có dạng: P(ω) = ; với x = cos(ω) Ta có Ta có thể dùng công thức nội suy Lagrange để tính P(ω), đó là: Xác định hàm lỗi E(ω) bởi công thức: Trên một tập dày các điểm tần số. Thông thường, số điểm tần số để tính E(ω) là 16M, với M là chiều dài của bộ lọc. Nếu |E(ω)| > ở một hay nhiều tần số trên |ω| thì một tập (L+ 2) tần số cực trị mới được chọn và tiến trình được lặp. Vì tập tần số cực trị mới được chọn tương ứng với các đỉnh của hàm sai số |E(ω)| , nên theo thuật toán này, giá trị của tăng lên sau mỗi lần lặp cho tới khi nó hội tụ đến một giới hạn trên, và đạt được lời giải tối ưu cho bài toán xấp xỉ Chebyshev. Khi |E(ω)| với tất cả các tần số trong tập các điểm tần số, thì lời giải tối ưu đã tìm được. Bước 4: Xác định đáp ứng xung h(n) của bộ lọc thực tế. Ta có thể thực hiện bằng 2 cách: Từ P(ω) (theo lời giải tối ưu), ta sẽ lấy mẫu P(ω) theo M điểm, sau đó xác định các hệ số và dùng IDFT để tính h(n). Từ P(ω) (theo lời giải tối ưu), ta sẽ tính trực tiếp h(n) mà không cần tính qua bước trung gian là , bởi vì ta đã có: Hr(ω) = Q(ω)P(ω) tại các tần số ω = 2k/M, k = 0, 1, … (M-1)/2 cho M lẻ Hay k = 0,1,… M/2 cho M chẵn Sau đó h(n) có thể được xác định tùy theo loại mạch lọc được thiết kế. CHƯƠNG 3: GIỚI THIỆU VỀ VI XỬ LÝ dsPIC30F3012 3.1. Tổng quan về dsPIC Được sản xuất bởi Hãng công nghệ Microchip Technology Inc. – nhà sản xuất đứng đầu về doanh thu trên thế giới về các sản phẩm vi xử lý 8 bit, tuy nhiên dòng sản phẩm dsPIC cũng ngày càng chiếm lĩnh vị trí cao trong thị phần vi xử lý 16 bit. Vi xử lý dsPIC ngoài chức năng của một vi điều khiển thông thường với bộ xử lí mang sức mạnh 16 bit (có khả năng xử lí dữ liệu có độ dài 16 bit). Với tốc độ tính toán cao dựa trên kiến trúc RISC, kết hợp các chức năng điều khiển tiện ích của một bộ vi điều khiển hiệu năng cao 16-bit (high-performance 16-bit microcontroller), có thể thực hiện chức năng của một bộ xử lý tín hiệu số (DSP) nên dsPIC còn có thể được xem là một bộ điều khiển tín hiệu số (Digital Signal Controller – DSC). Có thể thấy nhà sản xuất đã đưa ra một cặp giải pháp gắn bó: đơn chip – đơn chỉ dẫn cho thiết kế hệ thống nhúng. Các thiết bị dsPIC có thể đạt tới tốc độ xử lý 40 MIPS (Mega Instruction Per Second - triệu lệnh trên một giây), thích hợp với ngôn ngữ lập trình C, tích hợp bộ nhớ Flash, bộ nhớ dữ liệu EEPROM, các ngoại vi hiệu năng cao và rất đa dạng các thư viện phần mềm cho phép thực hiện các giải thuật nhúng với hiệu suất cao một cách dễ dàng trong một khoảng thời gian ngắn. Với các kiến trúc vi điều khiển quen thuộc, các bộ điều khiển tín hiệu số dsPIC (dsPIC DSCs) có thể được sử dụng rộng rãi trong các ứng dụng như: điều khiển motor và biến đổi nguồn, các sensor tốc độ cao, tiếng nói và âm thanh, internet và các modem kết nối, viễn thông, mã hoá và tự động hoá v.v.. Cấu trúc vi xử lý dsPIC30F3012 dsPIC30F3012 là một loại vi xử lý 16-bit nhỏ gọn, 18 chân, nhưng do mang chức năng xử lí tín hiệu số nên nó được tích hợp bộ nhớ chương trình lớn (Flash, SRAM, EEPROM), các ngoại vi mạnh (ADC 12-bit 8 kênh, Timer 32-bit …), tốc độ xử lý cao (có thể lên tới 40 MIPS). Hình 3.1: Cấu trúc của dsPIC30F3012 3.2 Đặc điểm chính của dsPIC30F3012 3.2.1. Đặc điểm của một CPU kiến trúc RISC Tập lệnh cơ bản gồm 84 lệnh Chế độ định địa chỉ linh hoạt Độ dài lệnh 24-bit, độ dài dữ liệu 16-bit Bộ nhớ chương trình Flash 24 Kbytes Bộ nhớ RAM độ lớn 1Kbytes Bộ nhớ EEPRO Mảng 16 thanh ghi làm việc 16-bit Tốc độ làm việc lên tới 40 MIPS 3.2.2 Đặc điểm của bộ xử lí tín hiệu số Nạp dữ liệu song song Hai thanh ghi chứa 40-bit có hỗ trợ bão hoà logic Thực hiện phép nhân hai số 17 bit trong một chu kỳ máy Tất cả các lệnh DSP đều thực hiện trong một chu kỳ máy Dịch trái dịch phải 16 bit trong một chu kỳ máy 3.2.3. Các ngoại vi đặc trưng Dòng ra, vào ở các chân I/O lớn: 25mA Timer 16 bit, có thể ghép 2 Timer 16 bit thành một Timer 32 bit. Chức năng Capture 16 bit Các bộ so sánh PWM 16 bit Module SPI 3 dây (hỗ trợ chế độ Frame) Module I2C, hỗ trợ chế độ đa chủ tớ, địa chỉ từ 7 bit đến 10 bit UART có khả năng địa chỉ hóa, hỗ trợ bộ đệm FIFO. 3.2.4. Các đặc trưng Analog Bộ chuyển đổi tương tự số (ADC) 12bit Tốc độ lấy mẫu tối đa 100 Ksps( kilo samples per second) Tối đa 10 kênh ADC lối vào Thực hiện biến đổi cả trong chế độ Sleep và Idle Chế độ nhận biết điện thế thấp khả trình Tạo Reset bằng nhận điện áp khả trình Các đặc trưng của một vi điều khiển Bộ nhớ Flash: ghi/ xóa lên tới 10000 lần (điều kiện công nghiệp) và 100 000 lần (thông thường). Khả năng tự nạp chương trình dưới sự điều khiển của sofware Watch Dog Timer mềm dẻo với bộ tạo dao động RC nguồn thấp trên chip. Chế độ bảo vệ fimware khả lập trình Khả năng tự lập trình nối tiếp trên mạch điện Có thể lựa chọn các chế độ quản lý nguồn : Sleep hoặc Idle 3.3. Công cụ DSP Công cụ DSP bao gồm một bộ nhân tốc độ cao hai số 17-bit, một bộ dịch, và một bộ tổng/hiệu 40-bit (với hai thanh chứa) Công cụ DSP cũng có khả năng thực hiện di chuyển nội dung từ thanh chứa tới thanh chứa mà không cần dữ liệu thêm vào. Các lệnh này là ADD, SUB và NEG. Vi xử lý dsPIC30F được thiết kế theo kiến trúc lệnh thực hiện trong một chu kỳ do đó không thể hoạt động đồng thời công cụ DSP với các lệnh của MCU. Tuy nhiên tài nguyên của một vài khối số học và logic của MCU có thể được sử dụng đồng thời bởi những lệnh tương tự nhau (ví dụ lệnh ED và EDAC). Công cụ DSP có những lựa chọn được xác định bằng việc thay đổi các bit của thanh ghi CORCON (CPU Core Configuration register) được liệt kê dưới đây: Thực hiện phép nhân DSP phân số hoặc số nguyên (bit IF). Thực hiện phép nhân DSP số có dấu hoặc không dấu (bit US) Tự động bật tắt chế độ bão hoà thanh ghi AccA (bit SATA) Tự động bật tắt chế độ bão hoà thanh ghi AccB (bit SATB) Tự động bật tắt chế độ bão hoà cho việc ghi vào bộ nhớ dữ liệu (bit SATDW) Lựa chọn chế độ bão hoà cho thanh chứa (ACCSAT) Tổ chức bộ nhớ của dsPIC30F3012 Không gian địa chỉ chương trình có độ lớn 4M từ lệnh. Bản đồ không gian bộ nhớ chương của dsPIC30F3012 được chỉ ra trong hình 3.4. Bộ nhớ chương trình có thể được địa chỉ hoá bởi một giá trị 24-bit bởi bộ đếm chương trình (PC), hoặc bảng lệnh địa chỉ hiệu dụng (EA), hoặc không gian dữ liệu EA khi không gian chương trình được sắp xếp và địa chỉ hoá. Chú ý rằng, địa chỉ không gian chương trình được tăng lên với bước là 2 giữa các từ chương trình để tạo ra sự tương thích với việc địa chỉ hoá không gian dữ liệu. Truy cập không gian chương trình người sử dụng bị giới hạn trong dải 4M địa chỉ của từ lệnh (từ 0x000000 tới 0x7FFFFE) với tất cả các lệnh truy cập, trừ hai lệnh TBLRD/TBLWT - sử dụng bit 7 của thanh ghi TBLPAG để xác định người sử dụng hoặc thiết lập cấu hình truy cập bộ nhớ. Kiến trúc của dsPIC cho phép nạp dữ liệu rộng 24-bit tới bộ nhớ chương trình, do đó các lệnh luôn luôn được xếp hàng tuy nhiên kiến trúc của nó có cải tiến so với kiến trúc máy tính Hadvard nên dữ liệu cũng có thể được đưa ra ở trong không gian chương trình. 3.4. Các bộ định thời Timer Trong vi xử lý dsPIC30F3012 có tới ba bộ định thời (Timer) 16-bit. Trong đó các Timer có thể hoạt động riêng biệt, riêng hai Timer 2 và 3 có thể kết hợp với nhau để trở thành một Timer 32 bit. Về cấu trúc các Timer này khác nhau vì hai Timer 2 và 3 có thể kết hợp còn Timer 1 thì không. Timer 1 có cấu trúc kiểu A Timer 2 kiểu B và Timer 3 kiểu C. Về hoạt động các Timer có hoạt động gần giống nhau do đó chỉ trình bày về Timer 1. Timer 1 có thể hoạt động với nguồn tạo dao động tần số thấp 32KHz, và chế độ không đồng bộ với nguồn tạo dao động ngoài. Đặc điểm riêng biệt của Timer 1 đó là có thể dùng trong các ứng dụng thời gian thực. Phần tiếp theo sẽ mô tả chi tiết cách thiết lập và sử dụng Timer 1 với ba chế độ: Timer16-bit Trong chế độ này, timer sẽ tăng sau mỗi chu kỳ lệnh đến khigiá trị của timer bằng giá trị của thanh ghi chu kỳ PR1 (Period Register) thì sẽ reset về ‘0’ và tiếp tục đếm. Counter đồng bộ 16-bit. Trong chế độ này, timer sẽ tăng ở mỗi sườn lên của của xung nhịp ngoài mà được đồng bộ với pha của các xung nhịp trong. Timer tăng đến giá trị nằm trong thanh ghi PR1 thì dừng và reset timer về ‘0’ rồi tiếp tục đếm lên. Counter không đồng bộ 16-bit. Khi hoạt động trong chế độ này, timer sẽ tăng dần sau mỗi sườn lên của xung nhịp bên ngoài tác động vào. Timer sẽ tăng dần đến khi giá trị của nó bằng thanh ghi PR1 thì bị reset về ‘0’ rồi lại tiếp tục đếm lên. Hệ số chia tần của bộ định thời Xung nhịp đầu vào (Fosc/4 hoặc xung nhịp ngoài) đưa vào Timer 16-bit và có thể được chia tần số theo các tỉ lệ sau: 1:1, 1:8, 1:64, 1:256 được xác định bởi các bit TCKPS của thanh ghi T1CON. Hệ số chia tần này (prescaler) có thể bị xoá khi xảy ra một trong các điều kiện sau: Ghi vào TMR Ghi vào thanh ghi T1CON (trừ việc ghi vào bit T1ON) Reset thiết bị, như POR và BOR 3.5. Bộ chuyển đổi tương tự số ADC Bộ chuyển đổi tương tự số 12-bit cho phép biến đổi tín hiệu tương tự đầu vào sang số độ dài 12-bit. Module này dựa trên thanh ghi SAR (Successive Approximation Register – thanh ghi xấp xỉ) và cung cấp tốc độ lấy mẫu tối đa lên tới 100 ksps. ADC của dsPIC30F3012 có tới 10 kênh tương tự lối vào được kết hợp cả lấy mẫu và giữ mẫu. Lối ra của bộ lấy và giữ mẫu là lối vào của bộ chuyển đổi - tạo ra kết quả biến đổi. Điện thế tương tự chuẩn có thể là điện thế nguồn cung cấp (AVDD/AVSS) hoặc mức điện thế của các chân VREF+/VREF-. Bộ biến đổi ADC của dsPIC bao gồm 6 thanh ghi: Ba thanh ghi điều khiển A/D: ADCON1, ADCON2, ADCON3 Chức năng điều khiển hoạt động của ADC. Thanh ghi lựa chọn lối vào: ADCHS Lựa chọn kênh vào để biến đổi. Thanh ghi cấu hình cổng ADPCFG Cấu hình cổng trở thành lối vào tương tự hoặc vào ra số. Thanh ghi lựa chọn quét Hình 3.2. Sơ đồ khối cơ bản của ADC 12-bit 3.6. Các bước thực hiện biến đổi A/D Thiết lập cấu hình cho module A/D Cấu hình các chân là lối vào tương tự, điện thế chuẩn và vào ra số. Chọn các kênh lối vào cần biến đổi. Chọn xung nhịp cho biến đổi. Cho phép module ADC có thể hoạt động. Cấu hình cho ngắt ADC nếu cần. Xóa cờ ngắt ADIF. Lựa chọn mức ưu tiên ngắt cho biến đổi A/D. Bắt đầu lấy mẫu. Đợi đủ thời gian cần thiết để hoàn thành Kết thúc lấy mẫu, bắt đầu biến đổi. Đợi biến đổi kết thúc bởi một trong hai điều kiện sau: Đợi ngắt từ ADC. Đợi bit DONE được set.. Đọc kết quả từ bộ đệm biến đổi A/D và xóa bit ADIF nếu cần. CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM 4.1 Xây dựng mạch phần cứng. Hình 4.1 Sơ đồ nguyên lý của mạch Hình 4.2 modul đo điện tâm đồ Trong ứng dụng này, em xây dựng một modul đo điện tâm đồ. Hình vẽ 4.1 mô tả sơ đồ khối các mô đun từng phần trong mô đun đo điện tâm đồ. Tín hiệu thu được từ các điện cực (chính là những cảm biến) khi điện thế trên da thay đổi, Tín hiệu điện áp này được đưa vào bộ khuyếch đại thuật toán OPA2335 nhằm khuyếch đại tín hiệu và dịch mức tín hiệu. Sau khi qua khối khuyếch đại, tín hiệu được đưa tới vi điều khiển dsPIC30F3012. Trong vi điều khiển loại này có khối chức năng biến đổi ADC và khối truyền thông nối tiếp UART. Khối biến đổi tương tự số ADC sẽ chuyển đổi tín hiệu điện áp tới lối vào thành các giá trị số dạng BCD. Các giá trị số đó sau khi qua tiền xử lý, sẽ được gửi về máy tính nhờ khối chức năng truyền thông nối tiếp. Trên máy tính PC, có một phần mềm thu nhận dữ liệu gửi về, và thực hiện xử lý dữ liệu này để vẽ lên màn hình PC dạng tín hiệu thu được và xác định nhịp tim thu được. 4.2. Xây dựng bộ lọc số trên dsPIC30F3012 Tín hiệu điện tim có nghĩa nằm trong dải tần từ 0.05Hz đến 80Hz. Trong dải tần này thành phần 50Hz do nhiễu nguồn là rất lớn. Vì vậy việc lọc nhiễu 50Hz là một vấn đề lớn. Trong khóa luận này bộ ADC trong dsPIC30F3012 được đặt ở chế độ lấy mẫu F= 200 Hz. Các hệ số được đưa vào dsPIC30F3012 là các số ở dạng Q15 Trong chế độ 16-bit Độ dài dải dữ liệu của Q15 là từ -1.0 đến 0.999969482 sẽ tương ứng với 0x8000 đến 0x7FFF bao gồm cả 0 và có độ chính xác tới 3.01518×10. Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 Q11 Q12 Q13 Q14 Q15 Ví dụ chuyển đổi: dạng Frational : 0x2002 => Q2 = 1; Q14 = 1; Qx =0; Suy ra số dạng float tương ứng sẽ là : 0x2002 = 2 + 2= 0.250061035 4.2.1. Bộ lọc thông thấp (Lowpassfilter) Bộ lọc thông thấp (lowpassfilter ) được thiết kế dựa trên bộ lọc FIR pha tuyến tính. Sử dụng công cụ FDATOOL của Matlab ta lấy ra được các hệ số của bộ lọc: Bộ lọc được thiết kế với các thông số sau: Bộ lọc FIR dùng cửa sổ Hamming với số bậc là: 74 = 200 Hz = 80 Hz dùng thuật toán chuyển đổi sang Q15 ta được các hệ số: .hword 0xffeb, 0x000e, 0x10000, 0xffef, 0x0020, 0xffdb, 0x001b, 0x10000, 0xffda, 0x004a .hword 0xffa9, 0x003f, 0x10000, 0xffab, 0x009f, 0xff49, 0x0081, 0x10000, 0xff58, 0x0134 .hword 0xfea3, 0x00f4, 0x10000, 0xfec8, 0x023a, 0xfd7a, 0x01c5, 0x10000, 0xfdae, 0x0459 .hword 0xfae7, 0x03c2, 0x10000, 0xfa2c, 0x0cba, 0xecc1, 0x17e9, 0x6666, 0x17e9, 0xecc1 .hword 0x0cba, 0xfa2c, 0x10000, 0x03c2, 0xfae7, 0x0459, 0xfdae, 0x10000, 0x01c5, 0xfd7a .hword 0x023a, 0xfec8, 0x10000, 0x00f4, 0xfea3, 0x0134, 0xff58, 0x10000, 0x0081, 0xff49 .hword 0x009f, 0xffab, 0x10000, 0x003f, 0xffa9, 0x004a, 0xffda, 0x10000, 0x001b, 0xffdb .hword 0x0020, 0xffef, 0x10000, 0x000e, 0xf Hình 4.3 đáp ứng biên độ của bộ lọc thông thấp 4.2.2. Bộ lọc Notchfilter Tần số tại: Trong đó f = 50 Hz và =200 Hz z = cos() + jsin() z = cos() – jsin() hàm truyền của bộ lọc Ta có: Ta suy ra: b00=1/G; b01=-2*cos()/G; b02=1/G; Từ đó ta tính được các hệ số b0 = [b00 b01 b02]; a0 = [1 a01 a02]; b00=0.5000; b01=0.0; b02=0.5000; a00=1; a01=0.0; a02=0.0; Hình 4.4 đáp ứng biên độ và đáp ứng pha của bộ lọc NotchFilter 50Hz 4.2.3 Hoạt động của các bộ lọc: Dạng tín hiệu điện tâm đồ trước khi đi qua bộ lọc số: Hình 4.5 Tín hiệu điện tâm đồ ban đầu khi chưa lọc Hình 4.6 đáp ứng biên độ của tín hiệu khi chưa có lọc Từ hình vẽ ta thấy rằng tín hiệu điện tâm đồ khi chưa lọc chịu rất nhiều loại nhiễu, đặc biệt phải kể đến là nhiễu 50Hz. Các loại nhiễu này trộn vào tín hiệu làm ta gần như không thể phân biệt được đâu là tín hiệu điện tâm đồ chính xác. Dạng tín hiệu điện tâm đồ sau khi đi qua bộ lọc thông thấp: Hình 4.7 Tín hiêu điện tâm đồ sau khi đi qua bộ lọc thông thấp Hình 4.8 Đáp ứng biên độ của bộ lọc thông thấp Từ hai hình vẽ trên ta thấy rằng sau khi đi qua bộ lọc thông thấp tín hiệu nhiễu tần số cao đã được lọc đi rất nhiều về cơ bản. Tuy nhiên từ đáp ứng biên độ của bộ lọc thông thấp ta nhận thấy rằng những thành phần tần số cao đã bị triệt tiêu chỉ còn lại nhiễu 50Hz là nhiễu nhiều nhất. Dạng tín hiệu điện tâm đồ khi đi qua bộ thông thấp và Notch filter: Hình 4.9: Tín hiệu ra sau khi đi qua các bộ lọc Hình 4.10 đáp ứng biên độ của bộ lọc Notch filter 50Hz Từ đồ thị ta thấy rằng nhiễu 50Hz đã bị triệt tiêu. Kết quả tín hiệu thu được là tương đối chuẩn và có thể dùng cho chẩn đoán bệnh nhân. 4.3 Kết luận Sau quá trình học tập và nghiên cứu dưới sự giúp đỡ, chỉ bảo tận tình của các thầy hướng dẫn cùng các thầy cô trong khoa, khoá luận tốt nghiệp với đề tài “Thiết kế bộ lọc số trên dsPIC ứng dụng trong việc xử lý điện tâm đồ” đã hoàn thành. Một số kết quả thu được là: Tìm hiểu về tín hiệu điện tâm đồ. Tìm hiểu về cấu trúc của dsPIC30F3012. Hiểu được nguyên tắc đo tín hiệu điện tâm đồ. Xây dựng mođun mạch điện tử đo tín hiệu điện tim. Thiết kế các bộ lọc số xử lý tín hiệu điện tim. Khảo sát tín hiệu điện tim thu được. Hướng phát triển của đề tài tiếp tục hoàn thiện các bộ lọc số ở mức độ tối ưu hơn về khả năng sử dụng, đồng thời nghiên cứu phát triển một số ứng dụng khả thi khác của đề tài như xử lý tín hiệu nhịp thở. Việc thực hiện giải thuật trên bộ xử lí tín hiệu số DSP đang được tiếp tục để thực hiện bài toán trong thời gian thực… TÀI LIỆU THAM KHẢO [1] Đoàn Hòa Minh, Xử lý tín hiệu số, nxb ĐH Cần Thơ [2] PGS.TS Nguyễn Quốc Trung, Xử lý tín hiệu số và lọc số , nxb Khoa học và Kỹ Thuật [3] Microchip Technology Inc, dsPIC30F2011/2012/3012/3013 Data Sheet [4] Lê Thanh Bằng, Xây dựng hệ đo tín hiệu điện tâm đồ, khóa luận tốt nghiệp, Đại học công nghệ, 2006. [5] Phan Duy Hùng, Eric Castelli, Phạm Thị Ngọc Yến, Lọc nhiễu tín hiệu điện tim, Trung tâm nghiên cứu quốc tế MICA – Đại học Bách Khoa Hà Nội. [6] Giáo sư Trần Đỗ Trinh, Hướng dẫn đọc điện tim, Nhà xuất bản Y học 2003 [7] Hướng dẫn lập trình của các phần mềm Matlab 7.0 và Labview 7.0 [8] C.Britton Rorabaugh, Digital Filter Designer’s Handbook, Mcgraw-Hill Website : [9] [10] [11]

Các file đính kèm theo tài liệu này:

  • docThiết kế bộ lọc số trên dsPIC ứng dụng trong việc xử lý điện tâm đồ.doc