Nghiên cứu mã sửa lỗi cho m ạng cảm biến không dây Trần Trọng Nghĩa Trường Đại học Công nghệ Chuyên ngành: Kỹ thuật Điện tử; Mã số: 60 52 70 Cán bộ hướng dẫn khoa học: PGS.TS Vương đạo Vy Năm bảo vệ: 2012
Nghiên cứu mã sửa lỗi cho mạng cảm biến không dây Trần Trọng Nghĩa Trường Đại học Công nghệ Chuyên ngành: Kỹ thuật Điện tử; Mã số: 60 52 70 Cán bộ hướng dẫn khoa học: PGS.TS Vương đạo Vy Năm bảo vệ: 2012 Abstract. Giới thiệu tổng quan về mạng cảm biến không dây: nêu rõ vai trò phạm vi ứng dụng, cũng như những thách thức gặp phải. Tìm hiểu các chức năng nhiệm vụ của từng phân lớp trong mô hình kiến trúc mạng, đồng thời giới thiệu về chuẩn không dây thường được sử dụng trong mạng cảm biến: chuẩn không dây IEEE 802.15.4. Tìm hiểu mã sữa lỗi. Giới thiệu những kiến thức cơ bản về mô hình truyền tin, điều kiện các kênh truyền, và các kỹ thuật sửa lỗi được sử dụng cho mạng truyền dữ liệu nói chung và mạng không dây nói riêng. Chương này sẽ tập trung giới thiệu kỹ thuật mã sửa lỗi chuyển tiếp, thường được sử dụng để sửa các mẫu lỗi đơn bit, sửa các mẫu lỗi hai bit trong truyền dữ liệu. Trong đó, sẽ đi sâu tìm hiểu mã khối tuyến tính, mã Hamming, mã dịch vòng được ứng dụng nhiều trong kỹ thuật sửa lỗi chuyển tiếp. Tiến hành áp dụng mã sửa lỗi trong mạng cảm biến không dây: khảo sát những tình huống lỗi đặc trưng của mạng cảm biến không dây, đồng thời tính toán giải quyết bài toán sửa lỗi truyền dữ liệu trong mạng cảm biến không dây; đánh giá hiệu quả các kỹ thuật sửa lỗi được áp dụng. Keywords: Kỹ thuật điện tử; Mạng cảm biến không dây; Mã sửa lỗi; Truyền tin Content. MỞ ĐẦU Trong quá trình phát triển khoa học, những cuộc các mạng về công nghệ đóng một vai trò rất quan trọng, làm thay đổi từng ngày từng giờ cuộc sống của con người, theo hướng hiện đại hơn. Đi đôi với quá trình phát triển ấy, những thay đổi theo chiều hướng xấu, do chính tác động của con người đối với tự nhiên, đối với môi trường sống cũng đang diễn ra, tác động ngược trở lại; như ô nhiễm môi trường, thay đổi khí hậu, hiệu ứng nhà kính, v.v . Áp dụng các công nghệ của các ngành điện tử, công nghệ thông tin và viễn thông vào trong thực tiễn cuộc sống là yêu cầu cấp thiết nhằm đạt được chất lượng cuộc sống tốt hơn. Công nghệ cảm biến không dây được tích hợp từ các công nghệ: kỹ thuật điện tử, tin học và viễn thông, được ứng dụng rộng rãi phục vụ các nhu cầu, các mục đích khác nhau của con người. Rất nhiều chuẩn công nghệ không dây ra đời: chuẩn không dây IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, bluetooth, IEEE 802.15.4 . trong đó các chuẩn không dây phù hợp với mức tiêu thụ năng lượng thấp được chú trọng nghiên cứu và phát triển, giải quyết được nhiều vấn đề từ sự tương tác giữa con người với tự nhiên. Tuy nhiên quá trình truyền tin trong công nghệ mạng không dây luôn xảy ra tình trạng lỗi, truyền sai thông tin do tác động nhiễu của môi trường. Trên cơ sở đó các kỹ thuật sửa lỗi được nghiên cứu để phục vụ cho việc tối ưu kênh truyền, tối ưu năng lượng, tăng độ tin cậy kênh truyền trong hệ thống mạng cảm biến không dây. Với mục đích đó, em đã quyết định nghiên cứu và xây dựng luận văn tốt nghiệp: “Nghiên cứu mã sửa lỗi trong mạng cảm biến không dây ”. Nội dung tìm hiểu của luận văn gồm 3 chương, trình bày các vấn đề sau: Chương 1: Tổng quan về mạng cảm biến không dây Giới thiệu tổng quan về mạng cảm biến không dây: Trong đó nêu rõ vai trò phạm vi ứng dụng, cũng như những thách thức gặp phải. Chương 1 cũng tìm hiểu các chức năng nhiệm vụ của từng phân lớp trong mô hình kiến trúc mạng, đồng thời giới thiệu về chuẩn không dây thường được sử dụng trong mạng cảm biến: chuẩn không dây IEEE 802.15.4. Chương 2: Mã sữa lỗi Chương 2 giới thiệu những kiến thức cơ bản về mô hình truyền tin, điều kiện các kênh truyền, và các kỹ thuật sửa lỗi được sử dụng cho mạng truyền dữ liệu nói chung và mạng không dây nói riêng. Chương này sẽ tập trung giới thiệu kỹ thuật mã sửa lỗi chuyển tiếp, thường được sử dụng để sửa các mẫu lỗi đơn bit, sửa các mẫu lỗi hai bit trong truyền dữ liệu. Trong đó, sẽ đi sâu tìm hiểu mã khối tuyến tính, mã Hamming, mã dịch vòng được ứng dụng nhiều trong kỹ thuật sửa lỗi chuyển tiếp. Chương 3: Áp dụng mã sửa lỗi trong mạng cảm biến không dây Chương này sẽ khảo sát những tình huống lỗi đặc trưng của mạng cảm biến không dây, đồng thời tính toán giải quyết bài toán sửa lỗi truyền dữ liệu trong mạng cảm biến không dây; đánh giá hiệu quả các kỹ thuật sửa lỗi được áp dụng. CHƢƠNG 1. TỔNG QUAN VỀ MẠNG CẢM BIẾN KHÔNG DÂY 1. Mạng cảm biến không dây - Giới thiệu về mạng cảm biến không dây: Mạng cảm biến không dây (Wireless Sensor Networks) là một tập hợp các thiết bị cảm biến, sử dụng cách thức liên kết, truyền tin không dây (sóng vô tuyến) để thực hiện các tương tác với tự nhiên, như giám sát môi trường; cập nhật trạng thái qua các sự kiện, những hiện tượng xảy ra trong những môi trường khác nhau. 1.1. Các ứng dụng mạng cảm biến không dây Giới thiệu các mô hình ứng dụng của mạng cảm biến không dây: Mô hình phát hiện sự kiện Mô hình cập nhật giá trị đo theo chu kỳ Mô hình cập nhật, tính toán giá trị hoặc thông số môi trường Mô hình theo vết những đối tượng di động Giới thiệu các ứng dụng mạng cảm biến không dây trong thực tế: Ứng dụng trong quân sự Ứng dụng giám sát môi trường Ứng dụng trong dịch vụ y tế chăm sóc sức khỏe Ứng dụng trong phát triển ngôi nhà thông minh Ứng dụng giám sát và điều khiển công nghiệp 1.2. Thách thức trong mạng cảm biến không dây Mạng cảm biến không dây có rất nhiều vấn đề, thách thức thu hút sự nghiên cứu của các nhà khoa học: Vấn đề năng lượng Đảm bảo chi phí sản xuất thấp Tích hợp bộ định vị Kiểu mạng triển khai Bảo mật Khả năng mở rộng Thách thức về thiết kế 1.3. Đặc điểm của mạng cảm biến không dây Trình bày các đặc điểm của mạng cảm biến không dây, từ phần cứng hoạt động của các nút mạng cho đến các yêu cầu về chất lượng QoS Kích thước vật lý nhỏ Hoạt động đồng thời Khả năng liên kết vật lý và phân cấp điều khiển Tính đa dạng trong thiết kế Hoạt động tin cậy 1.4. Kiến trúc và giao thức phân tầng mạng cảm biến không dây Mạng cảm biến không dây có sự phân cấp cho các nút mạng; Nút mạng cảm biến đóng vai trò thu thập dữ liệu, định tuyến và truyền dữ liệu Nút mạng gốc có vai trò thực thi nhiệm vụ của mạng cảm biến không dây, chuyển tiếp dữ liệu tới trung tâm dữ liệu Hình 1.3: Cấu trúc mạng cảm biến không dây[6] Nghiên cứu các giao thức phân tầng trong kiến trúc mạng cảm biến không dây: Lớp vật lý Lớp liên kết số liệu Lớp mạng Lớp giao vận Lớp ứng dụng Mặt phẳng quản lý tác vụ Mặt phẳng quản lý tính di động Mặt phẳng quản lý nguồn Hình 1.4: Giao thức phân tầng trong mạng cảm biến không dây [6] 2. Chuẩn không dây IEEE 802.15.4 Giới thiệu về chuẩn không dây IEEE 802.15.4, chuẩn không dây được dùng phổ biến cho kiến trúc mạng cảm biến không dây 2.1. Lớp vật lý của chuẩn IEEE 802.15.4 Lớp vật lý sử dụng 27 kênh truyền vật lý: 16 kênh truyền trong dải tần 2450 MHz và 10 kênh truyền trong dải tần 915 MHz và 1 kênh truyền ở dải tần 868 MHz. Hình 1.5: Các dải tần vật lý trong chuẩn không dây IEEE 802.15.4 [6] Các kỹ thuật điều chế được sử dụng trong lớp vật lý chuẩn không dây IEEE 802.15.4 Dải Tần Điều chế Tốc độ bit Tốc độ ký tự 868 - 868.6 MHz BPSK 20 kb/s 20kS/s 902 – 9028 MHz BPSK 40 kb/s 40 kS/s 2400 – 2483.5 MHz O-QPSK 250 kb/s 62.5 kS/s Bảng 1.2: Dải tần số và tốc độ của lớp vật lý chuẩn IEEE 802.15.4 [6] 2.2. Lớp vật lý chuẩn IEEE 802.15.4 ở dải tần 2.4 GHz Xây dựng lớp vật lý ở dải tần 2.4 GHz trong chuẩn không dây IEEE 802.15.4 với chuỗi giả ngẫu nhiên Hình 1.7: Điều chế trong lớp vật lý chuẩn IEEE 802.15.4 [4] Sơ đồ ánh xạ giá trị của ký tự sang giá trị chip Bảng 1.3 : Ánh xạ các ký tự sang giá trị chip [4] Trạng thái pha I và Q trong điều chế O-QPSK : Hình 1.8: Các pha điều chế trong O-QPSK [4] 3. Kết luận chƣơng Chương 1 đã trình bày, giới thiệu một cách khái quát về mạng cảm biến không dây, phạm vi ứng dụng, những thách thức, và kiến trúc phân tầng của mạng cảm biến không dây. Mô hình giao thức phân tầng của mạng cảm biến không dây được xây dựng dựa trên mô hình phân lớp OSI, khác biệt nhất là mô hình phân tầng mạng cảm biến không dây có thêm 3 mặt phẳng quản lý, phối hợp với các phân lớp để thực thi nhiệm vụ một cách tốt hơn. Ngoài ra, chương 1 cũng giới thiệu về chuẩn không dây IEEE 802.15.4, thường được sử dụng phổ biến trong hệ thống mạng cảm biến không dây, đặc biệt là cấu trúc lớp vật lý hoạt động ở dải tần 2.4 GHz – dải tần phổ biến của kết nối không dây. CHƢƠNG 2. MÃ SỬA LỖI 1. Các mô hình truyền tin 1.1. Mô hình hệ truyền tin Hình 2.1: Mô hình hệ truyền tin [7] 1.2. Phân loại kênh truyền Các kênh truyền có nhiễu là các kênh truyền không nhớ, nhiễu sẽ ảnh hưởng độc lập đến mỗi ký tự truyền. Đối với kênh truyền có nhớ thì nhiễu kênh truyền không tác động lên quá trình truyền. 1.3. Tính toán hiệu suất Hiệu suất của hệ thống truyền tin được mã hóa xác định bằng xác suất giải mã lỗi và độ lợi của việc mã hóa so với hệ thống không mã hóa cùng truyền tin với tốc độ như nhau. 2. Mã sửa lỗi Có 2 kỹ thuật phát hiện và sửa lỗi thường được áp dụng - Kỹ thuật yêu cầu phát lại tự động (Automatic Repeat Request): có khả năng phát hiện lỗi nhưng không có cách tiếp cận hợp lý để sửa gói tin nhận được khi có lỗi, thay vào đó kỹ thuật này yêu cầu truyền lại các gói tin dữ liệu khi các gói tin dữ liệu nhận được có lỗi - Kỹ thuật sửa lỗi chuyển tiếp (Forward error correction): kỹ thuật này sử dụng mã sửa lỗi, bằng cách thêm những bit dư thừa để khối nhận dựa vào đó kiểm lỗi các gói tin trước khi truyền. 2.1. Mã khối tuyến tính Trong mã khối tuyến tính C(n,k), từ mã tương ứng v được tính như sau: .v uG (2.3) trong đó G được gọi là ma trận sinh của mã khối tuyến tính C(n,k). 00 01 0, 1 10 11 1, 1 1,0 1,1 1, 1 . 1 0 0 . 0 0 1 0 . 0 . . . . . . . . . . 0 0 0 . 1 nk nk k k k k n k p p p p p p G PI p p p (2.4) các thành phần của ma trận P là 0 hoặc 1; p ij =0 hoặc 1, và I k là ma trận đơn vị k x k. Ma trận kiểm lỗi H có dạng như sau: 00 10 1,0 01 11 1,1 0, 1 1, 1 1, 1 . 1 0 . 0 . 0 1 . 0 . . . . . . . . . 0 0 . 1 k k T nk n k n k k n k p p p p p p H I P p p p (2.8) trong đó P T là ma trận chuyển vị của P 2.2. Hội chứng lỗi và sửa lỗi Gọi 0 1 1 . n r r r r là vectơ nhận được tại đầu ra của kênh truyền. r v e với 0 1 1 ( , , ., ) n e e e e Khi phát hiện lỗi, với s là hội chứng lỗi: . T s r H (2.10) Khi đó s được gọi là hội chứng lỗi của r. . ( ). . . T T T T s r H v e H v H e H trong đó . T vH =0 nên . T s e H (2.13) Quá trình sửa lỗi được tiến hành như sau: 1) Tính toán các hội chứng lỗi s từ các vectơ r tại đầu thu (phương trình (2.12)) 2) Giải phương trình (2.14) để tìm e 3) tính toán từ mã v * : v * =r +e 2.3. Khoảng cách tối thiểu của mã khối Khoảng cách tối thiểu giữa 2 từ mã trong mã khối tuyến tính là: min min wd (2.18) 2.4. Khả năng phát hiện lỗi và khả năng sửa lỗi của mã khối tuyến tính 2.4.1. Khả năng phát hiện lỗi của mã khối tuyến tính Mã khối tuyến tính C(n,k) với khoảng cách tối thiểu d min có khả năng phát hiện chính xác d min – 1 lỗi. 2.4.2. Khả năng sửa lỗi của mã khối tuyến tính Mã khối tuyến tính C(n,k) với khoảng cách tối thiểu d min đảm bảo sửa được lỗi từ các mẫu lỗi t =[(d min -1)/2]. Thông số t được gọi là khả năng sửa lỗi ngẫu nhiên của mã min min 11 1 22 dd t t t 2.5. Mã Hamming 2.5.1. Mã hóa Mã Hamming là mã khối tuyến tính, điều kiện với mọi số nguyên m ≥3: (1) chiều dài mã n = 2 m - 1; (2) số bit thông tin k = 2 m – m -1; (3) số bit kiểm lỗi n- k = m; (4) khoảng cách tối thiểu d min ≥ 3 2.5.2. Giải mã Để giải mã cho mã Hamming sử dụng ma trận kiểm lỗi H: () T T T T T T s Hr H v e Hv He He (2.22) 2.6. Mã vòng tuyến tính Cyclic 2.6.1. Mã Cyclic Một mã khối tuyến tính C(n,k) được gọi là mã dịch vòng tuyến tính cyclic nếu mỗi dịch vòng của từ mã trong C(n,k) cũng là từ mã trong C(n,k) Đa thức dịch vòng () ( ) ( )( 1) ( ) i n i X v X q X X v X 2.6.2. Ma trận sinh, ma trận kiểm lỗi Ma trận sinh 0 1 2 0 1 2 0 1 2 . . . . . 0 0 0 . . 0 0 . . . . . 0 0 . . 0 0 0 . . . . . 0 . . 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . nk nk nk g g g g g g g g g g g g G 0 1 2 . . . . . . . . . . . . . . 0 0 . . . 0 . . . . . nk g g g g (2.27) trong đó g 0 =g n-k =1 Ma trận kiểm lỗi 1 2 0 1 2 0 1 2 0 12 . . . . . 0 . . . . 0 0 . . . . . 0 . . . 0 0 0 . . . . . . . . 0 . . . . . . . . . . . . . . . 0 0 . . . 0 . . . . k k k k k k k k k k k k h h h h h h h h H h h h h h h h 0 . h (2.28) Mối quan hệ: 1 ( ) ( ) n X g X h X 2.6.3. Mã hóa cho mã tuyến tính dịch vòng Quá trình mã hóa cho mã tuyến tính dịch vòng được tiến hành trong ba bước: (1) Nhân bản tin u(X) với X n-k (2) chia X n-k u(X) cho g(X): ( ) ( ) ( ) ( ) nk X u X a X g X b X (3) tính dạng từ mã ( ) ( ) nk b X X u X 2.6.4. Tính toán hội chứng lỗi và sửa lỗi Chia đa thức r(X) cho đa thức sinh g(X) ( ) ( ) ( ) ( )r X a X g X s X Mối quan hệ giữa mẫu lỗi và hội chứng syndrome ( ) ( ) ( ) ( ) ( )e X a X b X g X s X Điều kiện mã khối tuyến tính dịch vòng C(n,k) có khả năng sửa chính xác min 1 1 22 d nk t lỗi. 3. Kết Luận Chƣơng Chương 2 đã trình bày đã trình bày tổng quan về đặc tính mã hóa và giải mã, của các mã khối tuyến tính. Điều kiện về khoảng cách d min của mã khối tuyến tính, và mối liên hệ về khả năng sửa t lỗi : t =[(d min -1)/2] Chương 2 cũng tập trung tìm hiểu về mã Hamming, mã có vai trò sửa được mẫu lỗi 1 bit trong truyền dữ liệu và mã dịch vòng tuyến tính có khả năng sửa được mẫu lỗi 2 bit trở lên. CHƢƠNG 3. ÁP DỤNG MÃ SỬA LỖI - MẠNG CẢM BIẾN KHÔNG DÂY 1. Đặc trƣng lỗi trong mạng cảm biến không dây Trong nghiên cứu của Shen và Abedi [9] nghiên cứu về tỉ lệ mất gói theo khoảng cách Hình 3.1: Tỉ lệ mất gói theo khoảng cách [9] Kết quả thống kê từ hình vẽ 3.1 [9] cho thấy tỉ lệ mất gói trung bình vào khoảng 10 -2 khi khoảng cách tăng lên trên 4.5m. Đây là khoảng cách trung bình giữa các nút mạng trong mạng cảm biến không dây, vì thế tỉ lệ 10 -2 đảm bảo độ tin cậy đối với việc truyền gói tin giữa 2 nút mạng, nên việc truyền lại gói tin trong trường hợp này là không cần thiết Nghiên cứu về đặc trưng lỗi trong mạng cảm biến không dây của Jaein Jeong, Chang Tie Ee [10] đánh giá các khối lỗi gặp được trong mạng cảm biến không dây: Hình 3.2: Chiều dài khối lỗi [10] Kết quả được hiển thị trên hình 3.2 [10] cho thấy các Chipcon có đặc trưng lỗi, các khối lỗi chủ yếu là lỗi đơn bit và lỗi hai bit, các khối lỗi có chiều dài lớn hơn chiếm tỉ lệ rất thấp, gần như không đáng kể. 2. Ứng dụng mã sửa lỗi trong việc khắc phục mẫu lỗi 1-bit, mẫu lỗi 2-bit Ngữ cảnh về truyền dữ liệu trong mạng cảm biến không dây: “Khi truyền dữ liệu qua mạng cảm biến không dây, phải chèn bao nhiêu bít dư thừa để đảm bảo chắc chắn rằng các mẫu lỗi 1 – bit mẫu lỗi 2 – bit sẽ được khắc phục chính xác tại nút mạng nhận?”