Academia.eduAcademia.edu
Đồ án tốt nghiệp M CL C L IC M N ............................................................................................ i L I NÓI Đ U .......................................................................................... ii DANH SÁCH CÁC T VI T T T ...................................................... iii Chư ng I: Tổng quan về m ng c m bi n không dây ........................... 4 1.1. Giới thiệu mạng cảm biến không dây. .......................................................... 4 1.2. Cấu trúc mạng cảm biến không dây............................................................... 5 1.2.1. Đặc điểm c a cấu trúc mạng cảm biến ................................................ 6 1.2.2. Các thành phần cơ bản c a một node cảm biến ............................. 8 1.2.3. Mô hình mạng trong mạng cảm biến không dây ............................ 11 1.3. Các ứng dụng của mạng cảm biến không dây ......................................... 16 1.3.1. ng dụng trong quân đội......................................................................... 16 1.3.2. ng dụng trong môi trường.................................................................... 16 1.3.3. ng dụng trong chăm sóc s c khỏe .................................................... 17 1.3.4. ng dụng trong gia đình .......................................................................... 18 1.4. Kết luận ................................................................................................................... 18 Chư ng II: Đa thơm nh p môi trư ng trong m ng WSN ................. 19 2.1. Giới thiệu ................................................................................................................ 19 2.2. Thủ tục thâm nhập môi tr ng MAC trong WSN ................................. 19 2.2.1. Các loại MAC trong mạng WSN.......................................................... 19 2.2.2. Yêu cầu c a giao th c MAC trong mạng WSN.............................. 20 ..................................... 23 2.2.4. Vấn đề trong truy cập kênh không dây ............................................... 25 2.3. Thủ tục cạnh tranh trong giao thức MAC của WSN ............................. 28 ................................................................................................ 28 2.3.2. .............................................................................................. 31 2.4. Giới thiệu về IEEE 802.15.4 MAC .............................................................. 33 Nguyễn Thị Khánh Chi - CT902 Đồ án tốt nghiệp 2.4.1. Phương th c mạng và cấu trúc siêu khung ..................................... 34 2.4.2. Quản lý khe thời gian đảm bảo ............................................................. 36 2.4.3. Chế độ truyền dữ liệu ................................................................................ 36 2.5. Kết luận ................................................................................................................... 37 Chư ng III. Thực nghi m, đánh giá hi u qu truyền nh n gói tin trong m ng c m bi n không dây .......................................................... 38 3.1. Mục đích, yêu cầu và thiết bị thực nghiệm ............................................... 38 3.1.1. Mục đích ......................................................................................................... 38 3.1.2. Yêu cầu thực nghiệm.................................................................................. 38 3.1.3. Các thiết bị thực nghiệm .......................................................................... 39 3.2. Giới thiệu về phần mềm nhúng ...................................................................... 39 3.2.1. Các bước cơ bản xây dựng một phần mềm nhúng ........................ 41 3.2.2 Phần mềm nhúng viết cho CC1010 ....................................................... 41 3.3. Thực nghiệm đo hiệu quả truyền nhận gói tin trong mạng WSN .... 47 3.3.1. Sơ đồ thực nghiệm và thuật toán ......................................................... 48 3.3.2. Tiến hành thực nghiệm và các kết quả đo được ............................. 50 3.4. Kết luận và h ớng nghiên cứu tiếp theo .................................................... 53 K T LU N ............................................................................................. 57 TÀI LI U THAM KH O ..................................................................... 58 Nguyễn Thị Khánh Chi - CT902 Đồ án tốt nghiệp L IC M N L i đầu tiên em xin đ ợc bày tỏ lòng biết ơn chân thành và sâu sắc đến PGS.TS. V ơng Đạo Vy, giảng viên tr ng Đại học Công Nghệ – Đại học Quốc Gia Hà Nội , ng i đư trực tiếp h ớng dẫn và chỉ bảo tận tình cho em hoàn thành đồ án này. Em xin cảm ơn các thầy giáo, cô giáo và các cán bộ trong Khoa Công nghệ thông tin Tr ng Đại học Dân lập Hải Phòng đư cung cấp kiến thức cho em suốt những học kỳ qua, để em có nền tảng cơ s thực hiện đồ án này. Cuối cùng, em xin cảm ơn gia đình và bạn bè luôn tạo điều kiện thuận lợi, động viên và giúp đỡ em trong suốt th i gian học tập, cũng nh quá trình nghiên cứu, hoàn thành đồ án này Em xin chân thành cảm ơn! Hải Phòng, 07/2009 Sinh viên Nguyễn Thị Khánh Chi Nguyễn Thị Khánh Chi - CT902 i Đồ án tốt nghiệp L I NÓI Đ U Ngày nay nh có những tiến bộ nhanh chóng trong khoa học và công nghệ sự phát triển của những mạng bao gồm các cảm biến giá thành rẻ, tiêu thụ ít năng l ợng và đa chức năng đư nhận đ ợc những sự chú ý đáng kể. Hiện nay ng i ta đang tập trung triển khai các mạng cảm biến để áp dụng vào trong cuộc sống hàng ngày. Đó là các lĩnh vực về y tế, quân sự, môi tr ng, giao thông… Trong một t ơng lai không xa, các ứng dụng của mạng cảm biến sẽ tr thành một phần không thể thiếu trong cuộc sống con ng i nếu chúng ta phát huy đ ợc hết các điểm mạnh mà không phải mạng nào cũng có đ ợc nh mạng cảm biến không dây. Tuy nhiên mạng cảm ứng đang phải đối mặt với rất nhiều thách thức, một trong những thách thức lớn nhất đó là nguồn năng l ợng bị giới hạn và không thể nạp lại. Hiện nay rất nhiều nhà nghiên cứu đang tập trung vào việc cải thiện khả năng sử dụng hiệu quả năng l ợng của mạng cảm biến trong từng lĩnh vực khác nhau. Mạng cảm biến là một lĩnh vực rất sâu rộng, đồ án “Đa thâm nhập môi tr ng trong mạng WSN” sẽ giới thiệu một cách khái quát nhất về các đặc điểm của mạng cảm biến không dây. Sau đó tập trung tìm hiểu về thủ tục đa thâm nhập môi tr ng cạnh tranh trong mạng cảm biến không dây và đánh giá hiệu quả truyền nhận gói tin bằng phần mềm nhúng trong môi tr ng mạng cảm biến không dây. Đồ án này gồm có 3 ch ơng: Ch ơng 1: Tổng quan về mạng cảm biến không dây Ch ơng 2: Đa thâm nhập môi tr ng trong mạng WSN Ch ơng 3: Thực nghiệm và đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Nguyễn Thị Khánh Chi - CT902 ii Đồ án tốt nghiệp DANH SÁCH CÁC T ACK VI T T T Tin báo nhận Acknowledge Bộ chuyển đổi t ơng tự/số ADC Analog Digital Converter sang số/t ơng tự GPS Geopositioning System Hệ thống định vị địa lý Institute IEEE of and Tổ chức kỹ nghệ Điện và Electrical Điện Tử Electronic Engineering Điều khiển truy cập môi MAC tr Medium Access Control ng Th i gian truy cập cạnh CAP Contention Access Period tranh PHY Physical Tầng vật lý RF Radio Frequency Sóng radio ROM Read-Only Memory Bộ nhớ chỉ đọc RAM Random-Access Memory Bộ nhớ truy cập ngẫu nhiên GTS Guaranteed Time Slot Khe th i gian đảm bảo WSN Wireless Sensor Network Mạng cảm biến không dây Đa truy cập phân chia theo TDMA Time-division multiple access Carrier Sense Multiple Access CSMA PDA th i gian Đa truy cập cảm nhận sóng mang Thiết bị số hỗ trợ cá nhân Personal Digital Assistant Nguyễn Thị Khánh Chi - CT902 iii Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN Chư ng I: Tổng quan về m ng c m bi n không dơy 1.1. Gi i thi u m ng c m bi n không dơy. * Định nghĩa: Một mạng cảm biến không dây là một mạng không dây mà các node mạng là các vi điều khiển sau khi đã được cài đặt phần mềm nhúng kết hợp với các bộ phát sóng vô tuyến cùng với các cảm biến và nó có khả năng thu nhận, xử lý dữ liệu từ các node mạng và môi trường xung quanh node mạng. Những node cảm biến này bao gồm các thành phần: bộ vi xử lý rất nhỏ, bộ nhớ giới hạn, bộ thu phát không dây, nguồn nuôi. Kích th ớc của các con cảm biến thay đổi tùy thuộc vào từng ứng dụng. Do số l ợng các node mạng lớn, có thể đ ợc triển khai nhiều những nơi địa lý phức tạp, nên khả năng thay thế nguồn nuôi cho từng node mạng là gần nh không thể. Do vậy việc quản lý năng l ợng để tăng th i gian sống của các con cảm biến là một vấn đề trọng tâm trong mạng cảm biến không dây ( bao gồm lựa chọn phần cứng, ch ơng trình nhúng tại các node). B i vậy mà tùy theo các loại ứng dụng mà ta có thể lựa chọn các node mạng phù hợp. * Đặc điểm của mạng cảm biến không dây: - Khả năng tự cấu hình, yêu cầu ít hoặc không có sự can thiệp của con ng i - Truyền thông vô tuyến và truyền đa b ớc - Triển khai với số l ợng lớn trên phạm vi rộng - Cấu hình mạng th ng xuyên thay đổi do môi tr node mạng lỗi Nguyễn Thị Khánh Chi - CT902 4 ng truyền hoặc Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN - Năng l ợng, bộ nhớ, khả năng xử lý có hạn Nh khả năng triển khai trên một phạm vi rộng và khả năng tự cấu hình cho mục đích giám sát, cảnh báo…. Ví dụ nh giám sát cảnh báo cháy rừng, cảnh báo lũ, và trong quân sự. Thêm vào đó sử dụng kênh truyền vô tuyến nên không phải đầu t triển khai cơ s hạ tầng mạng, các thiết bị phần cứng có khả năng tích hợp cao và tốn ít năng l ợng. B i vậy các ứng dụng của mạng cảm nhận không dây ngày càng phổ biến cho các ứng dụng nh : quân sự, các ứng dụng gia đình, giám sát, cảnh báo… 1.2. C u trúc m ng c m bi n không dơy Các node cảm biến đ ợc phân bố trong một tr ng cảm biến, chức năng của các node là thu thập dữ liệu của đối t ợng tại khu vực nó đ ợc triển khai, truyền và chuyển tiếp dữ liệu về node cơ s ( Base station, Sink). Hình 1.1. Cấu trúc mạng cảm biến Sink là một thực thể, tại đó thông tin đ ợc yêu cầu. Sink có thể là thực thể bên trong mạng (là một node cảm biến) hoặc ngoài mạng. Thực thể ngoài mạng có thể là một thiết bị thực sự ví dụ nh máy tính xách tay mà Nguyễn Thị Khánh Chi - CT902 5 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN t ơng tác với mạng cảm biến, hoặc cũng đơn thuần chỉ là một gateway mà nối với mạng khác lớn hơn nh Internet nơi mà các yêu cầu thực sự đối với các thông tin lấy từ một vài node cảm biến trong mạng. 1.2.1. Đặc điểm c a cấu trúc mạng cảm biến Nh trên ta đư biết mạng cảm biến không dây đ ợc triển khai với số l ợng lớn các node cảm biến trên một phạm vi rộng, các node cảm biến có các giới hạn về khả năng l u trữ đặc biệt là vấn đề về năng l ợng. D ới đây là một số đặc điểm nổi bật trong cấu trúc mạng cảm biến: Khả năng chịu lỗi: thể hiện th việc mạng vẫn hoạt động bình ng, duy trì những chức năng của nó ngay cả khi một số node mạng không hoạt động do thiếu năng l ợng, do những h hỏng vật lý hoặc do ảnh h ng của môi tr ng. Khả năng mở rộng: tùy thuộc vào các ứng dụng cụ thể mà số l ợng các node cảm biến đ ợc triển khai. Do đó mạng mới cần phải có khả năng m rộng để có thể làm việc với số l ợng lớn các node cảm biến đ ợc triển khai. Môi trường triển khai: Các node cảm biến đ ợc thiết lập dày đặc, rất gần hoặc trực tiếp bên trong các hiện t ợng để quan sát. Vì thế, chúng làm việc những vùng xa xôi con ng có thể làm việc bên trong các máy móc lớn, những vùng môi tr thuộc vào môi tr i khó có thể kiểm soát đ ợc. Chúng ng ô nhiễm, d ới đáy biển, hoặc trong gia đình hoặc những tòa nhà lớn... Tùy ng đ ợc triển khai mà các node cảm biến đ ợc thiết kế cho phù hợp. Phương tiện truyền dẫn: những mạng cảm biến multihop, các node đ ợc kết nối bằng những ph ơng tiện không dây. Các đ Nguyễn Thị Khánh Chi - CT902 6 ng kết nối Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN này có thể tạo nên b i sóng vô tuyến, hồng ngoại hoặc những ph ơng tiện quang học. Để thiết lập sự hoạt động thống nhất của những mạng này, các ph ơng tiện truyền dẫn phải đ ợc chọn phù hợp. Chi phí sản xuất: Vì các mạng cảm biến bao gồm một số l ợng lớn các node cảm biến nên chi phí của mỗi node rất quan trọng trong việc điều chỉnh chi phí của toàn mạng. Do vậy chi phí của mỗi node cảm biến phải giữ mức thấp. Ràng buộc về phần c ng: Vì số l ợng các node trong mạng rất nhiều nên các node cảm biến cần phải có các ràng buộc về phần cứng nh sau: Kích th ớc phải nhỏ, tiêu thụ năng l ợng thấp, có khả năng hoạt động những nơi có mật độ cao, chi phí sản xuất thấp, có khả năng tự trị và hoạt động không cần có ng i kiểm soát, thích nghi với môi tr ng. Topo mạng cảm biến (network topology): Trong mạng cảm biến, hàng trăm đến hàng nghìn node đ ợc triển khai trên tr ng cảm biến. Mật độ các node có thể lên tới 20node/m3. Do số l ợng các node cảm biến rất lớn nên cần phải thiết lập một topo mạng ổn định. Chúng ta có thể kiểm tra các vấn đề liên quan đến việc duy trì và thay đổi cấu hình 3 pha sau: - Pha tiền triển khai và triển khai: các node cảm biến có thể đặt lộn xộn hoặc xếp theo trật tự trên tr ng cảm biến. Chúng có thể đ ợc triển khai bằng cách thả từ máy bay xuống, tên lửa, hoặc có thể đặt từng cái một. - Pha hậu triển khai: sau khi triển khai, những sự thay đổi cấu hình phụ thuộc vào việc thay đổi vị trí các node cảm biến, khả năng đạt trạng thái không kết nối (phụ thuộc vào nhiễu, việc di chuyển các vật cản,…), năng l ợng thích hợp, những sự cố, và nhiệm vụ cụ thể. Nguyễn Thị Khánh Chi - CT902 7 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN - Pha triển khai lại: Sau khi triển khai cấu hình, ta vẫn có thể thêm vào các node cảm biến khác để thay thế các node gặp sự cố hoặc tùy thuộc vào sự thay đổi chức năng. Sự tiêu thụ điện năng (power consumption): Các node cảm biến không dây có thể coi là một thiết bị vi điện tử chỉ có thể đ ợc trang bị nguồn năng l ợng giới hạn ( <0.5Ah, 1.2V ). Trong một số ứng dụng, việc bổ sung nguồn năng l ợng không thể thực hiện đ ợc. Cho nên khoảng th i gian sống của các code cảm biến phụ thuộc mạnh vào th i gian sống của pin. Nhiệm vụ chính của các node cảm biến trong tr ng cảm biến là phát hiện ra các sự kiện, thực hiện xử lý dữ liệu cục bộ nhanh chóng, và sau đó truyền dữ liệu đi. Vì thế sự tiêu thụ năng l ợng đ ợc chia làm 3 vùng: cảm nhận (sensing), giao tiếp (communicating), và xử lý dữ liệu (data processing). Vì vậy, việc duy trì và quản lý nguồn năng l ợng đóng một vai trò quan trọng. 1.2.2. Các thành phần cơ bản c a một node cảm biến Một node cảm biến đ ợc cấu thành b i 4 thành phần cơ bản: đơn vị cảm biến ( a sensing unit), đơn vị xử lý ( a processing unit), đơn vị truyền dẫn ( a transceiver unit) và bộ nguồn ( a power unit). Ngoài ra có thể có thêm những thành phần khác tùy thuộc vào từng ứng dụng nh là hệ thống định vị ( location finding system), bộ phát nguồn ( power generator) và bộ phận di động ( mobilizer). Các đơn vị cảm biến ( sensing units) bao gồm cảm biến và bộ chuyển đổi tín hiệu t ơng tự thành tín hiệu số ( Analog to Digital Converter- ADCs). Dựa trên những hiện t ợng quan sát đ ợc, tín hiệu t ơng tự tạo ra b i sensor đ ợc chuyển sang tín hiệu số bằng bộ ADC, sau đó đ ợc đ a vào bộ xử lý. Bộ xử lý th ng liên quan đến một bộ phận l u trữ nhỏ, quản lý những thủ tục làm cho node cảm biến hợp tác với nhau để thực hiện nhiệm vụ cảm biến Nguyễn Thị Khánh Chi - CT902 8 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN đ ợc định tr ớc. Bộ thu phát kết nối với node mạng. Một trong những thành phần quan trọng của một node cảm biến là bộ phận cung cấp quản lý năng l ợng. Bộ phận này có thể đ ợc hỗ trợ b i một bộ phận tiếp thu năng l ợng nh pin mặt tr i. Node cảm biến còn có thể có những bộ phận nhỏ khác phụ thuộc vào từng ứng dụng cụ thể. Hình1.2: Cấu tạo node cảm biến a. Cảm biến Do giới hạn băng thông và nguồn, các thiết bị WSN chỉ hỗ trợ bộ cảm biến tốc độ dữ liệu thấp. Với các ứng dụng bộ cảm biến đa chức năng, mỗi thiết bị có một vài loại sensor trên bo mạch. Tùy theo mỗi ứng dụng sẽ có một loại sensor riêng: sensor nhiệt độ, sensor ánh sáng, sensor độ ẩm, sensor áp suất, sensor gia tốc, sensor từ, sensor âm thanh, hay thậm chí là sensor hình ảnh có độ phân giải thấp… b. Bộ xử lý nhúng năng lượng thấp Vi xử lý là thiết bị quan trọng nhất trong node mạng cảm nhận không dây, thực hiện thu thập dữ liệu từ các node, sau đó xử lý tr ớc khi gửi đi, và nhận dữ liệu từ các node khác. Nguyên nhân nó đ ợc lựa chọn trong các hệ Nguyễn Thị Khánh Chi - CT902 9 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN thống nhúng là mềm dẻo trong kết nối với các thiết bị khác nh thiết bị cảm biến, tiêu thụ năng l ợng thấp nh khả năng chuyển sang chế độ ngủ khi đó chỉ có một phần của vi điều khiển hoạt động, hơn nữa th hợp ngay trên bộ vi xử lý. Một đặc điểm rất đ ợc ng ng có bộ nhớ tích i lập trình yêu thích là khả năng lập trình bằng ngôn ngữ bậc cao (C, C++). c. Bộ nhớ/Lưu trữ (Memory/Storage) Đ ợc sử dụng để l u trữ dữ liệu thu từ các node cảm biến, hoặc gói dữ liệu từ các node khác, có 2 loại kiến trúc bộ nhớ là: kiến trúc havard và kiến trúc von newman, điểm khác nhau của 2 kiến trúc này là trong kiến trúc havard thì bộ nhớ dữ liệu và ch ơng trình tách biệt nhau khi đó dữ liệu th ng đ ợc chứa trong RAM còn ch ơng trình đ ợc chứa trong ROM hoặc bộ nhớ FLASH, còn trong kiến trúc von newman thì dữ liệu và ch ơng trình đ ợc l u cùng với nhau, th ng là trên RAM, nh ợc điểm của nó là dữ liệu sẽ bị mất khi tắt nguồn, b i vậy ch ơng trình hoặc hệ điều hành th ng đ ợc l u trữ trên ROM, EEPROM, hoặc bộ nhớ flash ( gần t ơng tự nh EEPROM). Chất l ợng bộ nhớ và l u trữ trên bo mạch của thiết bị WSN th ng bị giới hạn đáng kể do giá thành thiết bị thấp. d. Bộ thu phát sóng vô tuyến Thiết bị WSN có tốc độ thấp (10100kbps) và là thiết bị vô tuyến không dây dải ngắn (nhỏ hơn 100m). Trong WSN thì truyền vô tuyến là một quá trình sử dụng công suất mạnh nhất, do đó nó cần phải kết hợp có hiệu quả công suất giữa các chế độ ngủ (sleep) và chế độ hoạt động. e. Hệ thống định vị địa lý GPS (Geopositioning System) Trong rất nhiều ứng dụng WSN, điều cực kỳ quan trọng là nhận biết đ ợc vị trí của các số đo cảm biến. Cách đơn giản để nhận biết vị trí là cấu Nguyễn Thị Khánh Chi - CT902 10 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN hình tr ớc vị trí của các cảm biến khi trải ra. Nh ng cách này chỉ khả thi trong một số điều kiện triển khai nhất định. Ví dụ cụ thể đối với hệ thống bên ngoài tòa nhà: Khi một mạng đ ợc triển khai, thông tin dễ dàng thu đ ợc qua vệ tinh gốc GPS. Tuy nhiên, tại các ứng dụng, do hạn chế của môi tr node đ ợc trang bị GPS. Trong tr ng và kinh phí, chỉ một phần nhỏ các ng hợp này, các node khác nhau (nh ng vẫn trong cùng mạng) chỉ thu đ ợc vị trí của nhau một cách gián tiếp qua giao thức định vị mạng. f. Nguồn năng lượng (Power source) Là thành phần cốt yếu của mạng cảm nhận, trong đó 2 vấn đề cần quan tâm là khả năng l u trữ và cung cấp năng l ợng, và khả năng thay thế nguồn. Th ng thì nguồn đây th ng là pin, và khả năng thay thế trong node mạng là không thế do địa hình triển khai và số node mạng lớn, do vậy phải chọn nguồn ổn định có khả năng hoạt động phù hợp với yêu cầu của ứng dụng và môi tr ng hoạt động. 1.2.3. Mô hình mạng trong mạng cảm biến không dây a. Node nguồn và node cơ sở Một vài kiểu đối t ợng giám sát của mạng cảm biến theo kiểu phát hiện sự kiện, hoặc theo chu kỳ; chức năng của chúng là phát hiện và gửi dữ liệu tại khu vực mà nó giám sát về node cơ s , nơi tập trung và xử lý toàn bộ dữ liệu của các node khác gửi về, th ng có 3 loại node cơ s : có thể là một node trong mạng t ơng tự nh các node con khác với loại node cơ s này th ng nó chỉ dùng để nhận dữ liệu sau đó chuyển tới PC để xử lý, loại node cơ s thứ 2 có thể là một thiết bị cầm tay hoặc PDA đ ợc sử Nguyễn Thị Khánh Chi - CT902 11 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN dụng để t ơng tác với mạng cảm nhận, loại thứ 3 là node cảm nhận có thể đ ợc nối qua gateway để tới một mạng lớn hơn là internet. Hình1.3: Loại node cơ sở trong mạng WSN Hình1.4: Kết nối 2 mạng cảm nhận qua kênh truyền trên internet b. Mạng đơn bước và mạng đa bước Trạm con Trạm gốc Hình1.5a. Truyền đơn bước trong WSN Nguyễn Thị Khánh Chi - CT902 12 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN Trạm gốc Trạm trung gian Trạm con Hình1.5b. Truyền đa bước trong WSN - Mạng đơn b ớc đơn giản là từ node con ta có thể gửi dữ liệu trực tiếp về node cơ s , mạng loại này th tr ng là mạng nhỏ, thông th ng hợp mạng đơn b ớc đ ợc coi là một tr ng ng hợp đặc biệt của mạng đa b ớc khi xem xét trên một phạm vi nhỏ. - Trong tr ng hợp trên phạm vi lớn dữ liệu không thể gửi trực tiếp từ node con về node cơ s thì dữ liệu sẽ đ ợc gửi qua các node trung gian tr ớc khi tới node cơ s , ta gọi đây là truyền đa b ớc. Đôi khi không phải vì không thể truyền trực tiếp từ node con tới node cơ s mà ng i ta mới dùng node trung gian, do dùng node trung gian để giảm công suất và chia đều tiêu tán năng l ợng giữa các node. Nh vậy các node con ngoài nhiệm vụ thu nhận dữ liệu còn phải chuyển tiếp dữ liệu về trạm cơ s . Tuy truyền đa b ớc có thể giải quyết bài toán về khoảng cách nh ng lại gặp phải vấn đề là sử dụng năng l ợng hiệu quả, và xung đột khi có quá nhiều node có yêu cầu gửi dữ liệu tới một trạm để chuyển tiếp, ví dụ trong một topo mạng phổ biến dạng cây, dạng l ới thì những node càng gần trạm gốc thì càng phải chuyển tiếp nhiều gói tin. Nguyễn Thị Khánh Chi - CT902 13 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN c. Mô hình phân lớp trong mạng WSN Hình1.6: Mô hình phân lớp mạng cảm biến - Lớp vật lý: cung cấp các kỹ thuật điều chế, phát và thu. - Lớp liên kết dữ liệu: Vì môi tr ng có tạp âm và các node cảm biến có thể di động, giao thức điều khiển truy nhập môi tr ng (MAC) phải xét đến vấn đề công suất và phải có khả năng tối thiểu hoá việc va chạm với thông tin quảng bá của các node lân cận. - Lớp mạng: quan tâm đến việc chọn đ ng số liệu đ ợc cung cấp b i lớp truyền tải. - Lớp truyền tải: giúp duy trì luồng số liệu nếu ứng dụng mạng cảm biến yêu cầu. Tuỳ theo nhiệm vụ cảm biến, các loại phần mềm ứng dụng khác nhau có thể đ ợc xây dựng và sử dụng lớp ứng dụng. Ngoài ra, các phần quản lý năng l ợng, di chuyển và nhiệm vụ sẽ giám sát việc sử dụng công suất, sự di chuyển và thực hiện nhiệm vụ giữa các node cảm biến. Những phần này giúp các node cảm biến phối hợp nhiệm vụ cảm biến và tiêu Nguyễn Thị Khánh Chi - CT902 thụ công 14 suất tổng thể thấp hơn. Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN - Phần quản lý năng lượng: điều khiển việc sử dụng công suất của node cảm biến. Ví dụ, node cảm biến có thể tắt khối thu của nó sau khi thu đ ợc một bản tin từ một node lân cận. Điều này giúp tránh tạo ra các bản tin giống nhau. Cũng vậy, khi mức công suất của node cảm biến thấp, node cảm biến phát thông tin quảng bá tới các node lân cận để thông báo nó có mức công suất thấp và không thể tham gia vào các bản tin chọn đ ng. Công suất còn lại sẽ đ ợc dành riêng cho nhiệm vụ cảm biến. - Phần quản lý di động: phát hiện và ghi lại sự di chuyển của các node cảm biến để duy trì tuyến tới ng i sử dụng và các nút cảm biến có thể l u vết của các node cảm biến lân cận. Nh xác định đ ợc các node cảm biến lân cận, các node cảm biến có thể cân bằng giữa công suất của nó và nhiệm vụ thực hiện. - Phần quản lý nhiệm vụ: dùng để làm cân bằng và lên kế hoạch các nhiệm vụ cảm biến trong một vùng xác định. Không phải tất cả các node cảm biến trong vùng đó điều phải thực hiện nhiệm vụ cảm biến tại cùng một th i điểm. Kết quả là một số node cảm biến thực hiện nhiệm vụ nhiều hơn các node khác tuỳ theo mức công suất của nó. Những phần quản lý này là cần thết để các node cảm biến có thể làm việc cùng nhau theo một cách thức sử dụng hiệu quả công suất, chọn đ ng số liệu trong mạng cảm biến di động và phân chia tài nguyên giữa các node cảm biến. Chúng ta chỉ xem xét lớp liên kết dữ liệu để hiểu đ ợc thủ tục điều khiển thâm nhập môi tr ng (MAC) trong mạng cảm biến không dây. Nguyễn Thị Khánh Chi - CT902 15 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN 1.3. Các ng d ng của m ng c m bi n không dơy WSN ngày càng đ ợc sử dụng nhiều trong hoạt động công nhiệp và dân dụng. Một số ứng dụng cơ bản của WSN: 1.3.1. ng dụng trong quân đội Một vài ứng dụng quân đội của mạng cảm biến là quan sát lực l ợng, trang thiết bị, theo dõi chiến tr Hình1.6: ng, phát hiện giám sát mục tiêu,… ng dụng trong quân đội Theo dõi mục tiêu: mạng cảm biến có thể đ ợc triển khai những nơi quan trọng cần theo dõi, các node cảm biến cần nhanh chóng cảm nhận các dữ liệu và tập trung dữ liệu gửi về trong vài phút tr ớc khi giám sát đ ợc mục tiêu. 1.3.2. ng dụng trong môi trường Một vài ứng dụng môi tr ng trong mạng cảm biến bao gồm: theo dõi sự di c của các loài chim, cảnh báo cháy rừng, phát hiện lũ lụt,… Nguyễn Thị Khánh Chi - CT902 16 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN Hình1.7: 1.3.3. ng dụng trong môi trường ng dụng trong chăm sóc s c khỏe Một vài ứng dụng về sức khỏe đối với mạng cảm biến là giám sát bệnh nhân, các triệu chứng, quản lý thuốc trong bệnh viện, theo dõi và kiểm tra bác sĩ và bệnh nhân trong bệnh viện… Hình1.8: ng dụng trong y tế Theo dõi bác sĩ và bệnh nhân trong bệnh viện: Mỗi bệnh nhân đ ợc gắn một node cảm biến nhỏ và nhẹ, mỗi một node cảm biến này có nhiệm vụ riêng, ví dụ có node cảm biến xác định nhịp tim, có node cảm biến phát hiện Nguyễn Thị Khánh Chi - CT902 17 Đồ án tốt nghiệp Chương I: Tổng quan về mạng WSN áp suất máu, bác sĩ cũng có thể mang node cảm biến để cho bác sĩ có thể xác định đ ợc vị trí của họ trong bệnh viện. 1.3.4. ng dụng trong gia đình Trong lĩnh vực tự động hóa gia đình, các node cảm biến đ ợc đặt các phòng để đo nhiệt độ. Không những thế, chúng còn đ ợc dùng để phát hiện những sự dịch chuyển trong phòng và thông báo lại thông tin này đến thiết bị báo động trong tr ng hợp không có ai nhà. 1.4. K t lu n Ch ơng này đư giới thiệu về mạng cảm biến không dây, cấu trúc của mạng cảm biến và các ứng dụng của mạng cảm biến không dây trong nhiều lĩnh vực dân sự cũng nh quân sự, y tế, môi tr ng… Qua đó thấy rõ đ ợc tầm quan trọng của mạng cảm biến với cuộc sống. Với sự phát triển nhanh chóng của công nghệ ngày nay hứa hẹn thêm nhiều ứng dụng mới của mạng cảm biến. Nguyễn Thị Khánh Chi - CT902 18 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN Chư ng II: Đa thơm nh p môi trư ng trong m ng WSN 2.1. Gi i thi u Một thách thức phổ biến trong mạng l ới không dây là vấn đề về xung đột. Xung đột có thể xảy ra nếu nh giao thức thâm nhập môi tr ng cho phép 2 hay nhiều node gửi dữ liệu tại cùng một th i điểm, xung đột có thể là nguyên nhân làm cho trạm thu không thể nhận dữ liệu chính xác. Thủ tục thâm nhập môi tr ng MAC đư đ ợc phát triển để hỗ trợ mỗi node để quyết định khi nào và làm thế nào để truy cập vào các kênh trong môi tr truyền vô tuyến. Lớp MAC th ng ng đ ợc coi nh là một tầng d ới của lớp liên kết dữ liệu trong mô hình phân lớp mạng. Mục đích của thủ tục thâm nhập môi tr ng MAC là truyền gói tin một cách hiệu quả, ổn định. 2.2. Thủ t c thơm nh p môi trư ng MAC trong WSN Một thủ tục MAC phục vụ nh một thành phần đầy đủ trong thông tin liên lạc máy tính. Nó cho phép các node trong một mạng cụ thể, cả có dây và không dây phối hợp với nhau trong một ph ơng tiện truyền thông ( kênh) chia sẻ để xử lý hiệu quả và có hiệu quả đối với các kênh truy cập. Ngoài ra nó còn quản lý các hoạt động khác nh : chu kỳ ngủ - thức, xác định và cập nhật các hàng xóm, tránh xung đột các gói, bảo mật, phát hiện và báo lỗi… 2.2.1. Các loại MAC trong mạng WSN Phạm trù đầu tiên của thủ tục MAC đ ợc biết đến nh truy cập cạnh tranh. Tất cả các node trong một mạng cạnh tranh với nhau để truy cập kênh. Cơ chế cơ bản nh là các kênh dành riêng là thích hợp khi nó tự do hoạt động. Nếu không, một node sẽ đi vào chế độ im lặng và định lại trạng thái Nguyễn Thị Khánh Chi - CT902 19 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN kênh sau một khoảng th i gian. Điều này đ ợc lặp đi lặp lại cho đến khi kênh đ ợc đảm bảo hoặc số l ợng tối đa cho phép là cố gắng gần đ ợc. Loại thứ 2 đ ợc biết đến là truy cập tự do cạnh tranh, đó mỗi node đ ợc chỉ định một khoảng th i gian để truy cập vào các kênh. Việc phân bố này đ ợc thông qua một node trung gian hoặc trạm cơ s (Base Station) hoặc thông qua phân giải giữa các node liên quan đến thông tin liên lạc. Truy cập lập lịch là một ví dụ khác về thủ tục MAC đó các node quảng bá các hoạt động lập lịch ( ngủ, thức, truyền tải và nhận) ngay lập tức cho tất cả các node hàng xóm. Node nhận sẽ điều chỉnh lịch biểu để đảm bảo tự do xung đột thông tin liên lạc trên mạng. Ph ơng pháp thứ 4 đ ợc biết đến nh ph ơng pháp tiếp cận lai. Nó kết hợp 2 hoặc nhiều hơn các kỹ thuật đ ợc đề cập tr ớc đó. 2.2.2. Yêu cầu c a giao th c MAC trong mạng WSN Một trong những yêu cầu cơ bản của giao thức MAC trong mạng WSN là giảm thiểu xung đột các gói xảy ra khi hai hay nhiều node cùng kiểm soát kênh truyền cùng một lúc. Các giải pháp này là phù hợp với hiệu quả thiết lập và cơ chế hiệu quả kênh truy cập. Nói chung xung đột không thể đ ợc khắc phục hoàn toàn trong mạng không dây. Tuy nhiên với một giao thức MAC tốt xuất hiện sẽ giảm thiểu đ ợc điều đó xảy ra. Nguồn của gói xung đột bao gồm truy cập đồng th i và vấn đề ' node ẩn '. Một yêu cầu khác của một giao thức MAC trong mạng WSN là hiệu quả năng lượng ( Energy Efficiency). Nh đư đề cập trên, mạng WSN là không tự nhiên b i nguồn năng l ợng hạn chế. Để kéo dài tuổi thọ của một node cảm biến, các nguồn năng l ợng lãng phí phải đ ợc thu nhỏ. Chúng Nguyễn Thị Khánh Chi - CT902 20 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN bao gồm các gói xung đột, lắng nghe nhàn rỗi, nghe lỏm,…cũng nh truyền và nhận các thông điệp. Giảm xung đột gói là yêu cầu cơ bản nhất để giảm nhàn rỗi ngẫu nhiên 'backoff' (nghe) và truyền lại gói tin. Ngoài ra giao thức MAC cũng giảm thiểu kiểm soát việc truyền các gói tin và cho phép các node đi vào chế độ ngủ khi không hoạt động trong một khoảng th i gian. Sau đó đ ợc lập lịch có hiệu quả b i vì chuyển tiếp th ng xuyên từ trạng thái ngủ sang trạng thái hoạt động và ng ợc lại, tiêu thụ t ơng đối lớn một số l ợng lớn năng l ợng. Trong mạng ad hoc, các node cộng tác với nhau trong một cách thức phân phối để thực hiện một chức năng bao gồm các kênh truy cập. Đây là yêu cầu quan trọng trong sự vắng mặt của node kiểm soát trung tâm hoặc gateway tới phối hợp node. Ngay cả khi gateway bị chiếm, hợp tác giữa các node cũng cần thiết b i vì gateway có thể không có đủ nguồn lực để hỗ trợ lớn số l ợng node và trong tr ng hợp nó lỗi, tổng mạng bị lỗi có thể ngăn ngừa đ ợc. Vì vậy các node cảm biến phải linh hoạt và có lỗi. Mở rộng và thích nghi ( Scalability and Adaptivity) đề cập đến khả năng của giao thức MAC theo các thay đổi trong kích th ớc, mật độ, và Topo mạng. Các node trong WSN có thể sẽ không đ ợc mobile đánh giá cao nh ng các thay đổi topo mạng có thể xảy ra khi node tr thành hoạt động và không hoạt động hoặc khi node mới đ ợc bổ sung vào mạng. Các đặc điểm khác bao gồm trễ, thông l ợng, công bằng, và sự tận dụng kênh. Độ trễ ( Latency) đó là sự trì hoưn từ khi node gửi có một gói tin để gửi cho đến khi gói tin đ ợc nhận thành công b i node nhận. Trong mạng cảm biến, sự quan trọng của độ trễ phụ thuộc vào ứng dụng. Trong những ứng dụng nh giám sát hoặc theo dõi, các node cảm biến sẽ thận trọng trong th i Nguyễn Thị Khánh Chi - CT902 21 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN gian dài và không hoạt động gì cho đến khi một sự kiện nào đó đ ợc phát hiện. Những ứng dụng này có thể th ng bỏ qua sự trễ thông điệp bổ sung nào đó, b i vì tốc độ mạng là kiểu đặc tr ng của c ng độ nhanh hơn tốc độ của một đối t ợng vật lý. Tốc độ của đối t ợng đ ợc cảm biến đặt một ranh giới về tốc độ phản ứng mà mạng phải đạt đ ợc. Trong khoảng th i gian không có sự kiện cảm ứng, có rất ít dữ liệu trao đổi trong mạng. Sự trễ mức nhỏ hơn một giây cho một kh i tạo một thông báo sau khoảng th i gian nhàn rỗi thì không quan trọng bằng sự tiết kiệm năng l ợng và th i gian hoạt động của thiết bị. Nh ng ng ợc lại, sau khi cảm biến xác định đ ợc sự kiện, hoạt động với độ trễ thấp tr thành điều quan trọng. Thông lượng ( Throughput) (th ng đ ợc đo theo bit hoặc byte / giây) đề cập tới số l ợng của dữ liệu chuyển thành công từ một nơi gửi đến một nơi nhận trong một khoảng th i gian cho tr ớc. Nhiều nhân tố ảnh h ng đến thông l ợng, bao gồm hiệu quả của sự tránh xung đột, sự tận dụng kênh, độ trễ, và xử lý thông tin điều khiển. Giống với độ trễ, sự quan trọng của thông l ợng phụ thuộc vào loại ứng dụng. Những ứng dụng cảm biến mà yêu cầu th i gian sống dài th ng chấp nhận độ trễ nhiều hơn và thông l ợng thấp hơn. Một thuộc tính liên quan gọi là goodput, thể hiện thông l ợng đ ợc đo chỉ b i dữ liệu đ ợc nhận b i nơi nhận mà không có bất kỳ lỗi nào. Fairness( công bằng) thể hiện khả năng những ng i dùng khác nhau, những node, hoặc những ứng dụng khác nhau cùng nhau chia sẻ kênh truyền một cách nh nhau. Nó là một thuộc tính quan trọng trong mạng tiếng nói hoặc những mạng dữ liệu truyền thống, một khi mỗi ng i dùng mong muốn một cơ hội nh nhau để gửi hoặc nhận dữ liệu cho những ứng dụng của chính mình. Tuy nhiên, trong những mạng cảm biến, tất cả các node hợp tác cho một thao tác chung đơn lẻ. Nguyễn Thị Khánh Chi - CT902 tại th i điểm đặc biệt, một node có thể có 22 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN nhiều dữ liệu hơn để gửi so với các node khác. Vì thế, hơn là đối xử nh nhau đối với mỗi node, thành công là đ ợc đo b i toàn bộ sự thực hiện của ứng dụng, và fairness đối với từng node hoặc từng ng i dùng tr nên ít quan trọng. Sự tận dụng kênh ( Channel utilization) phản chiếu toàn bộ băng thông của kênh đ ợc tận dụng trong truyền thông ra sao. Nó cũng đ ợc đề cập nh sự tận dụng băng thông hoặc dung l ợng kênh truyền. Đó là một vấn đề quan trọng đối với hệ thống điện thoại tế bào hoặc mạng cục bộ không dây (WLANs), khi băng thông là tài nguyên quý giá nhất trong những hệ thống nh vậy và các nhà cung cấp dịch vụ đều muốn càng nhiều ng i dùng càng tốt. Mặt khác, số những node hoạt động trong mạng cảm biến chủ yếu đ ợc xác định b i loại ứng dụng. Tận dụng kênh là một mục tiêu thứ yếu trong mạng cảm biến. Tóm lại, các vấn đề nêu trên là những thuộc tính tiêu biểu của một giao thức MAC. Đối với mạng cảm biến không dây, những yếu tố quan trọng nhất là tránh xung đột có hiệu quả, hiệu quả năng l ợng, m rộng và thích nghi với mật độ và số l ợng node. Còn những thuộc tính khác là thứ yếu. Năng : Nguyên n . Nguyễn Thị Khánh Chi - CT902 23 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN . . Chi . (0 . . Tr . , . Nguyễn Thị Khánh Chi - CT902 24 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN ghe goodput. . 2.2.4. Vấn đề trong truy cập kênh không dây a. Phát hiện xung đột Xung đột xảy ra khi hai hay nhiều node cố gắng để truy cập vào các kênh cùng một lúc. Nó đ ợc phát hiện khi có quá nhiều tiếng ồn trong các kênh hoặc L i báo nhận (ACK) từ đích là không nhận đ ợc. Tuy nhiên phát hiện xung đột dựa trên những kỹ thuật có thể không có hiệu quả b i vì các gói có thể thiếu hoặc hỏng trong các ph ơng tiện truyền thông không dây. Không có giải pháp cho những vấn đề này và chứng minh rằng xung đột xảy ra là thích hợp cho các tr ng hợp nh thế này. b. Vấn đề node ẩn Vấn đề node ẩn là một vấn đề cổ điển trong các mạng không dây hai hay nhiều node đ ợc 'ẩn' hoặc đó có ngoài phạm vi truyền của nhau, cố gắng liên lạc với cùng một điểm đến ( đích) đồng th i. Xung đột không đ ợc phát hiện là b i vì nó xảy ra nhận (ACK) các điểm đến, không phải là mư nguồn, và L i báo từ các điểm đến có thể đ ợc vô hiệu hoá. Nguyễn Thị Khánh Chi - CT902 25 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN Điều này đ ợc minh hoạ trong hình 2.1; đây, node A đ ợc truyền tới node B. Node C, nằm ngoài vùng sóng radio của A, sẽ cảm nhận đ ợc kênh truyền nhàn rỗi và bắt đầu truyền gói tới node B. Trong tr ng hợp này, CSMA truyền thông ngăn ngừa xung đột b i vì A và C ẩn cho mỗi node. Hình2.1 : Node ẩn Để tránh xung đột do vấn đề này, một thủ tục bắt tay (RTS / CTS) (Karn, 1990) đư đ ợc giới thiệu. Một node với dữ liệu cụ thể sẽ gửi thông điệp quảng bá RTS đến một điểm đến. Nếu các điểm đến là sẵn sàng để liên lạc, một thông điệp CTS đ ợc trả lại. B i thông điệp trao đổi đ ợc quảng bá rộng trong tự nhiên, tất cả các node trong phạm vi sẽ đ ợc thông báo về các kênh dành riêng. Tuy nhiên ph ơng pháp này không hoàn toàn tránh xung đột đặc biệt là trong mạng multihop. Hình 2.3 mô tả sự không đầy đủ của thủ tục bắt tay RTS / CTS. Nguyễn Thị Khánh Chi - CT902 26 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN Hình2. 2: Th tục bắt tay RTS/CTS c. Vấn đề node hiện B i vấn đề thông tin liên lạc trong mạng không dây th ng đ ợc dựa trên quảng bá, node không đ ợc tham gia vào các thông tin liên lạc sẽ có thể ngăn chặn các thông điệp đ ợc trao đổi. Việc ngăn chặn không cố ý này node hiện đang truy cập kênh, do đó mạng giảm hiệu lực và thông l ợng kênh. - Vấn đề node hiện đ ợc minh hoạ trong hình 2.3; đây, trong khi node C truyền tới node D, node B có một gói cần truyền cho node A. B i vì node B trong khoảng của C, nó nhận thấy kênh bận và không có khả năng truyền. Tuy nhiên, trong lý thuyết, vì D nằm ngoài khoảng của B, và A nằm ngoài khoảng của C, 2 sự truyền này không xung đột với nhau. Việc truyền b i B sẽ bị hoưn lại vì lưng phí băng thông. Nguyễn Thị Khánh Chi - CT902 27 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN Hình2.3 : Node hiện 2.3. Thủ t c c nh tranh trong giao th c MAC của WSN Trong thủ tục cạnh tranh, cơ hội truyền dữ liệu chia đều cho tất cả các node hàng xóm. Nếu chỉ có một node hàng xóm cần truyền dữ liệu thì không vấn đề gì, tuy nhiên nếu có 2 hoặc nhiều node muốn truyền khi đó chúng phải cạnh tranh với nhau để giành quyền truyền dữ liệu, 2 quan trọng của nhóm giao thức này là ALOHA và CSMA. 2.3.1. Aloha Hệ thống Aloha nói chung đ ợc mô tả nh một hệ thống truyền thông máy tính không dây đầu tiên sử dụng sự truy nhập ngẫu nhiên. Trong thủ tục Aloha một node khi truyền dữ liệu nó gửi đi ngay lập tức, không hề có sự liên hệ với các node khác b i vậy khả năng xảy ra xung đột là rất cao, khi phát hiện xung đột phía nhận sẽ gửi một xác nhận cho thuộc Nguyễn Thị Khánh Chi - CT902 28 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN tính của gói tin nhận, phía gửi sẽ ch một th i gian ngẫu nhiên và bắt đầu truyền lại. Giao thức truy cập môi tr ng này có thể đơn giản nh là: “ Chỉ cần nói chuyện khi bạn thấy thích nó”. Hình 2.4 : Các gói tin được truyền trong thời gian tùy ý Dạng đơn giản nhất của đa truy nhập là Aloha không chia rãnh và Aloha chia rãnh. a. Aloha không chia rãnh Trong Aloha không chia rãnh, trạm đ ợc phép truy cập vào kênh bất cứ khi nào nó có dữ liệu để truyền. B i vì mối đe dọa tồn tại xung đột dữ liệu, mỗi trạm sẽ có sự giám sát việc nó truyền không quảng bá hoặc ch l i báo nhận(ACK) từ trạm điểm đến. Bằng cách so sánh với các gói tin đ ợc truyền với gói tin nhận đ ợc hoặc bằng việc thiếu của l i báo nhận (ACK), trạm truyền có thể xác định sự thành công của gói tin đ ợc truyền. Nếu truyền không thành công nó sẽ đ ợc truyền lại sau một khoảng th i gian ngẫu nhiên để giảm xác suất của tái xung đột. Nguyễn Thị Khánh Chi - CT902 29 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN Hình 2.5 : Aloha không chia rãnh - Không cần thiết phải đồng bộ hóa - Không cần thiết phải cố định chiều dài các gói b. Aloha chia rãnh - Th i gian đ ợc chia thành các “ khe” trong khoảng th i gian của một gói, các gói cố định kích th ớc. - Khi một node có một gói để gửi, nó sẽ ch cho đến khi bắt đầu khe kế tiếp để gửi nó. Yêu cầu đồng bộ hóa. - Nếu không các node khác sẽ cố gắng truyền trong khe th i gian, việc truyền đó là thành công. Nếu không thì xảy ra “xung đột”, gói xung đột đ ợc truyền lại sau một th i gian trễ ngẫu nhiên. Hình 2.6: Aloha chia rãnh Nguyễn Thị Khánh Chi - CT902 30 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN Hệ thống đồng bộ: Th i gian chia thành các khe, các khe có kích th ớc bằng th i gian truyền gói cố định khi gói sẵn sàng để truyền, đợi cho đến khi bắt đầu khe tiếp theo. Các gói có thể chồng tréo hoàn toàn hoặc không chồng chéo. * u điểm – Nh ợc điểm của Aloha  u điểm: - Đơn giản, ít quan trọng. - Không cần thiết có sự phân phối giữa những ng  Nh ợc điểm: i tham gia. - Xung đột có thể và sẽ xảy ra nếu node gửi không kiểm tra trạng thái kênh. - Node gửi không có kiến thức về việc truyền dẫn thành công. 2.3.2. CSMA Một giao thức MAC cổ điển khác là giao thức đa truy cập cảm nhận sóng mang (CSMA). Trong CSMA, một node muốn truyền tr ớc hết phải lắng nghe kênh để đánh giá nó có rỗi không. Nếu kênh nhàn rỗi, node sẽ tiến tới việc truyền. Nếu kênh bận, node sẽ đợi một chu kỳ backoff ngẫu nhiên để cố truyền lại. CSMA với dò xung đột là kỹ thuật cơ bản đ ợc sử dụng trong chuẩn IEEE 802.3/Ethernet. Tuy nhiên vẫn ch a giải quyết đ ợc vấn đề node ẩn, node hiện. Trong mạng Ethernet, CSMA đ ợc sử dụng với chế độ CSMA/CD (cảm nhận sóng mang dò xung đột): chế độ này hoạt động nh CSMA th ng nh ng trong quá trình truyền, node đồng th i lắng nghe, nhận lại các dữ liệu gửi đi xem có xung đột không. Nếu phát hiện xung đột, node sẽ truyền 1 tín Nguyễn Thị Khánh Chi - CT902 31 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN hiệu nghẽn để các node khác nhận ra và dừng việc gửi gói trong 1 th i gian ngẫu nhiên backoff tr ớc khi cố gửi lại, tức là có khả năng dò xung đột nh ng vẫn không tránh đ ợc. Vì vậy, trong các dạng mạng phức tạp hơn nh mạng không dây hay WSN thì ng i ta dùng chế độ CSMA/CA. Chế độ này là CSMA tránh xung đột và có khả năng giải quyết vấn đề node ẩn, node hiện. * Th tục đa truy cập cảm nhận sóng mang tránh xung đột ( MACA hay CSMA/CA) Giao thức MACA hay CSMA/CA của Karn giới thiệu cách sử dụng 2 thông báo điều khiển nó có thể giải quyết về cơ bản vấn đề node ẩn và hiện. Ban đầu khi một node nhận gói dữ liệu mới để truyền đi, nó ch một th i gian trễ ngẫu nhiên, mục đích của việc làm này nhằm làm giảm tính đồng bộ của các node khi phát hiện sự kiện xảy ra (vì nếu khi 2 node xảy ra xung đột mà trong lần thử tiếp theo nếu có cùng th i gian ch thì vẫn không tránh khỏi xung đột), trong th i gian ch ngẫu nhiên đó node có thể đặt trạng thái ngủ, trong th i gian nghe ngóng node sẽ thực hiện cảm nhận sóng mang. + Nếu nh môi tr ng truyền đang bận, sau một số lần thử mà vẫn không thành công nó sẽ dừng lại và ch một th i gian ngẫu nhiên, phụ thuộc vào số lần thử và th i gian ngủ của node, sau đó nó lại tiếp tục nghe ngóng môi tr ng, cứ nh vậy khi tới một giới hạn nào đó mà vẫn không thành công thì gói sẽ bị bỏ qua. + Trong tr ng hợp môi tr ng rỗi, một node muốn gửi một thông điệp, node sẽ phát ra một gói RTS để mong đợi tín hiệu truyền. Nếu tín hiệu cho phép nhận gói, nó sẽ phát ra một gói CTS. Khi nơi gửi nhận đ ợc CTS, nó bắt đầu truyền gói ch bản tin ACK. Khi một node gần nghe thấy một RTS sẽ gửi đến các node khác một thông điệp ngăn chặn quá trình truyền Nguyễn Thị Khánh Chi - CT902 32 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN của nó và ch đợi tín hiệu trả l i CTS. Nếu một CTS không trong trạng thái lắng nghe, node có thể bắt đầu quá trình truyền dữ liệu. Nếu một CTS đ ợc nhận, nó sẽ chú ý có hay không một RTS đ ợc lắng nghe tr ớc đó, một node sẽ ngăn chặn quá trình truyền của chúng trong khoảng th i gian đủ để cho phép kết thúc quá trình truyền dữ liệu t ơng ứng. Với những điều kiện lý t ng (ví dụ nh bỏ đi khả năng xung đột RTS/CTS, hay giao tiếp 2 chiều, không mất dữ liệu và các hiệu ứng giữ), có thể coi sơ đồ MACA có khả năng giải quyết cả vấn đề về node ẩn và node hiện. Với các ví dụ đơn giản nh trên, node C lắng nghe thông điệp CTS và loại bỏ xung đột truyền. Nó giải quyết vấn đề node hiện chỗ node C lắng nghe các thông điệp RTS của node B, nó sẽ không nhận CTS từ node A và nh vậy có thể truyền gói dữ liệu của nó sau th i gian đợi đủ. Tùy từng tr ng hợp mà CSMA có thể thay đổi th i gian ch , th i gian nghe ngóng là ngẫu nhiên hay cố định. CSMA – CA trong mạng không dây và thủ tục CSMA – trong mạng có dây: về cơ bản thì 2 thì tục này giống nhau là đều dựa vào việc cảm nhận sóng mang, tuy nhiên thủ tục truy cập CSMA – CA chỉ đ ợc gọi là tránh xung đột, do nó không thể phát hiện khi có xung đột xảy ra, do chế độ truyền là bán song công, nút mạng tại một th i điểm chỉ có thể thu hoặc phát dữ liệu 2.4. Gi i thi u về IEEE 802.15.4 MAC Định nghĩa chuẩn IEEE 802.15.4 (IEEE, 2003) là giao thức MAC và vật lý (PHY) của mạng cá nhân không dây tốc độ thấp (LR-WPANs). Đây là mạng cho phù hợp với các ứng dụng đơn giản mà có yêu cầu kết nối tốc độ thấp, băng thông thấp, và điện năng tiêu thụ thấp. Nó hoạt động trong Nguyễn Thị Khánh Chi - CT902 33 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN một miền khoảng 10m hoặc ít hơn và có thể đ ợc m rộng đến 100m tùy thuộc vào ứng dụng yêu cầu. 2.4.1. Phương th c mạng và cấu trúc siêu khung a. Phương th c mạng Trên lớp mạng có 2 kiểu node: Node đa năng, nghĩa là nó có thể hoạt động đảm nhiệm vai trò của nhiều chức năng khác nhau, kiểu node thứ 2 là node có chức năng giới hạn nó chỉ có thể hoạt động nh một thiết bị. Một thiết bị phải liên kết với node điều khiển, trong mạng hình sao thiết bị điều khiển có thể hoạt động dựa trên liên kết 1-1, hoặc đa liên kết nh trong mạng cá nhân. Một thiết bị điều hành th ng thực hiện những nhiệm vụ sau: - Nó quản lý những thiết bị liên kết với nó. - Cấp địa chỉ cho những thiết bị đó, tất cả các node IEEE 802.15.4 có 64 bit địa chỉ, địa chỉ này cũng có thể ngắn hơn tùy theo yêu cầu của ứng dụng - Trong chế độ báo hiệu IEEE 802.15.4 nó phát một khung báo hiệu thông báo cho các node, và thiết bị điều hành có thể xử lý những yêu cầu của các node trong các khe th i gian đ ợc chỉ ra trong tín hiệu thông báo. - Nó trao đổi dữ liệu với các thiết bị ngang hàng với nó b. Cấu trúc siêu khung Nguyễn Thị Khánh Chi - CT902 34 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN Hình2.7 : Cấu trúc siêu khung Mọi siêu khung đều có độ dài nh nhau, trạm điều hành bắt đầu mỗi siêu khung bằng cách gửi một khung dữ liệu cảnh báo, khung cảnh báo này sẽ chứa dữ liệu mô tả thông tin độ dài và những thông tin liên quan khác những siêu khung tiếp theo. Một siêu khung đ ợc chia thành 2 khoảng: hoạt động và không hoạt động. - Trong th i gian không hoạt động, tất cả các node bao gồm cả node điều khiển sẽ trạng thái ngủ, khi th i gian không hoạt động kết thúc nó lập tức bị đánh thức để nhận thông tin thông báo từ node điều hành, th i gian không hoạt động này cũng có thể đ ợc bỏ qua. - Th i gian hoạt động đ ợc chia thành 16 khe, khe đầu tiên là khung cảnh báo, những khung còn lại đ ợc chia thành 2 vùng, th i điểm cạnh tranh truy cập (CAP) sau đó là các khe th i gian “đảm bảo” (GTS). Độ dài của th i gian hoạt động và không hoạt động cũng nh độ dài của mỗi khe và số khe th i gian có thể điều chỉnh đ ợc bằng ch ơng trình. Node điều hành hoạt động trong toàn bộ th i gian hoạt động, nó liên lạc với các thiết bị hoạt động trong khe th i gian đảm bảo khi đ ợc phép. Trong Nguyễn Thị Khánh Chi - CT902 35 Đồ án tốt nghiệp Chương II: Đa thâm nhập môi trường trong mạng WSN hầu hết khe th i gian đảm bảo nó có thể chuyển sang chế độ ngủ. Trong khoảng th i gian cạnh tranh truy cập, thiết bị có thể tắt chế độ truyền nhận nếu không có dữ liệu để truyền. 2.4.2. Quản lý khe thời gian đảm bảo Node điều hành sẽ phân khe th i gian đảm bảo cho thiết bị khi có yêu cầu trong khoảng th i gian cạnh tranh, một c đ ợc sử dụng để chỉ ra khe th i gian yêu cầu là khe nhận hay truyền dữ liệu. Trong khe truyền dữ liệu thiết bị sẽ truyền gói tới node điều hành và ng ợc lại trong tr ng hợp là khe nhận. Khi nhận đ ợc gói tin yêu cầu ngay lập tức nó sẽ gửi gói tin ACK thông báo rằng nó đư nhận đ ợc yêu cầu, khi node điều hành đủ tài nguyên nó sẽ phân khoảng th i gian đảm bảo cho node, nó sẽ chèn thông tin mô tả về khoảng th i gian đảm bảo trong khung thông báo tiếp theo, phần thông tin mô tả về th i gian đảm bảo nó sẽ chỉ ra địa chỉ của node gửi yêu cầu, số l ợng và vị trí của khe th i gian trong khe th i gian đảm bảo trong siêu khung. Và thiết bị có thể sử dụng khe th i gian đ ợc phân đó. Nếu không đủ tài nguyên nó sẽ gửi một thông báo là khe th i gian đư hết, khi đó thiết bị sẽ ch gửi lại yêu cầu vào lần sau. 2.4.3. Chế độ truyền dữ liệu Giả sử thiết bị có dữ liệu muốn gửi tới node điều hành, nếu nh thiết bị đư đ ợc phân khe th i gian đảm bảo, nó sẽ hoạt động tr ớc khi khe th i gian bắt đầu và ngay lập tức truyền dữ liệu mà không hề có thao tác thăm dò tránh xung đột. Trong tr ng hợp thiết bị ch a đ ợc phân khe th i gian nó sẽ gửi gói dữ liệu tại th i điểm cạnh tranh truy cập sử dụng giao thức đa truy cập cảm nhận sóng mang, sau đó nút điều hành gửi ACK. Nguyễn Thị Khánh Chi - CT902 36 Đồ án tốt nghiệp Trong tr Chương II: Đa thâm nhập môi trường trong mạng WSN ng hợp dữ liệu truyền từ node điều hành tới thiết bị, nếu thiết bị đư đ ợc phân trong khe th i gian đảm bảo thì dữ liệu sẽ đ ợc truyền ngay lập tức mà không cần yêu cầu xác nhận. Trong tr ng hợp phổ biến nhất khi node điều hành không thể sử dụng để nhận trong khoảng th i gian đảm bảo, thì một thủ tục bắt tay đ ợc thực hiện giữa thiết bị và trạm điều hành, trạm điều hành sẽ gửi một thông báo vùng đệm dữ liệu cho thiết bị bao gồm cả địa chỉ của thiết bị trong tr ng địa chỉ của khung thông báo. Trong thực tế khi thiết bị tìm thấy địa chỉ của nó trong tr ng địa chỉ nó sẽ gửi một gói dữ liệu yêu cầu đặc biệt trong khoảng th i gian cạnh tranh. Trạm điều hành sẽ trả l i bằng bản tin ACK và sẵn sàng nhận dữ liệu tới. Trong tr ng hợp không gửi thành công thiết bị sẽ gửi lại yêu cầu trong những siêu khung tiếp theo. 2.5. K t lu n Mục tiêu của tất cả các thủ tục thâm nhập là tiết kiệm năng l ợng, trễ thấp và tỷ lệ truyền thành công cao. Trong ch ơng này ta đư biết đ ợc trong mạng cảm nhận không dây có bao nhiêu thủ tục thâm nhập; các thuộc tính và sự cân đối MAC trong mạng WSN; vấn đề node ẩn, node hiện trong mạng WSN; Tập trung vào tìm hiểu thủ tục cạnh tranh giao thức MAC trong mạng WSN. Tuy nhiên không có thủ tục nào là tối u, tùy từng ứng dụng cụ thể để lựa chọn thủ tục thâm nhập môi tr ng phù hợp. Trong ch ơng tiếp theo ta sẽ lựa chọn một giao thức cạnh tranh, viết ch ơng trình phần mềm nhúng cho các node mạng theo giao thức đó để đánh giá đ ợc hiệu quả truyền nhận gói tin trong mạng WSN. Nguyễn Thị Khánh Chi - CT902 37 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Chư ng III. Thực nghi m, đánh giá hi u qu truyền nh n gói tin trong m ng c m bi n không dơy 3.1. M c đích, yêu c u vƠ thi t bị thực nghi m 3.1.1. Mục đích Viết phần mềm nhúng cho các node mạng áp dụng thủ tục truy nhập môi tr ng cạnh tranh Aloha từ đó xây dựng mô hình thí nghiệm khảo sát quá trình hoạt động và đo hiệu quả truyền nhận gói tin của mạng WSN. Từ đó rút ra kết luận so sánh và đánh giá. 3.1.2. Yêu cầu thực nghiệm Thực nghiệm sau cần đ ợc thực hiện: o Đo hiệu quả truyền nhận gói tin giữa các node mạng WSN Nh ta đư biết mục đích của thâm nhập môi tr ng là truyền gói một tin cách hiệu quả, ổn định. Áp dụng thủ tục truy nhập môi tr ng cạnh tranh Aloha tức là một node khi truyền dữ liệu nó gửi đi ngay lập tức, không hề có sự liên hệ với node khác. Trong đồ án này ta chỉ xét tr ng hợp một node truyền dữ liệu cho một node khác và viết giải thuật để đánh giá hiệu quả truyền nhận của 2 node này trong mạng cảm biến không dây bằng cách thêm một hàm Delay, tức th i gian nghỉ giữa 2 lần truyền liên tiếp để node nhận có thể nhận và xử lý kịp dữ liệu từ đó xác định đ ợc hiệu quả truyền nhận giữa các node trong mạng. Thí nghiệm cần đ ợc đo đạc nhiều lần các môi tr ng truyền nhận với khoảng Delay và khoảng cách khác nhau để chỉ ra rõ sự tác động của chúng đến hiệu quả truyền nhận gói tin. Nguyễn Thị Khánh Chi - CT902 38 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây 3.1.3. Các thiết bị thực nghiệm Hệ thống WSN đ ợc kết nối với máy tính thông qua cáp nối RS232, do đó việc thu nhận dữ liệu từ node mạng về máy tính sẽ thực hiện truyền qua giao tiếp RS232 (cổng COM). Ngôn ngữ lập trình đ ợc sử dụng đây là ngôn ngữ C, ch ơng trình dịch là Keil µVision2.0/3.0. Vi điều khiển (VĐK) đ ợc lựa chọn để xây dựng node mạng đây là CC1010. Việc chọn VĐK hợp lý sẽ làm cho quá trình xây dựng hệ thống đ ợc rút ngắn, hệ thống hoạt động ổn định, tin cậy và đạt các chỉ tiêu đề ra: Tiêu thụ năng l ợng thấp. Tích hợp ADC để có thể ghép nối với cảm biến t ơng tự. Bộ nhớ ch ơng trình cũng nh bộ nhớ dữ liệu có kích th ớc hợp lý. Kích th ớc vật lý nhỏ. Có công cụ phát triển giúp ng i phát triển xây dựng hệ thống dễ dàng và thuận tiện nh : sử dụng ngôn ngữ cấp cao, có các th viện hỗ trợ cho việc cảm nhận cũng nh truyền nhận không dây, hỗ trợ gỡ lỗi… Giá thành rẻ. 3.2. Gi i thi u về ph n mềm nhúng Phần mềm nhúng đang có những b ớc đột phá mới, tạo ra những cuộc cách mạng triệt để trong t ơng lai. Lý do của sự phát triển này xuất phát từ những nhu cầu bức thiết của thực tế và những b ớc tiến mạnh mẽ trong công nghệ phần cứng. Một phần mềm nhúng phải kết hợp chặt chẽ với môi tr Nguyễn Thị Khánh Chi - CT902 39 ng Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây của nó bao gồm phần cứng và các hệ thống liên quan. Nó có những ràng buộc về tốc độ xử lý, dung l ợng bộ nhớ và mức tiêu thụ điện năng... Một phần mềm nhúng tốt là phần mềm phải đảm bảo các yếu tố trên và đó cũng là h ớng phát triển quan trọng của các phần mềm nhúng. Điểm mấu chốt của các phần mềm nhúng ngày nay là việc lựa chọn các ph ơng pháp. Vì vậy mà không thể bỏ đi các tính năng “cứng” của phần mềm nh các phần mềm truyền thống khác. Một phần mềm nhúng ngày nay đ ợc phát triển theo cách sau: Liên kết phần mềm nhúng từ d ới lên trên, từ các lớp trừu t ợng o đến các chức năng hệ thống. Liên kết phần mềm nhúng với các nền lập trình đ ợc - các nền hỗ o trợ nó cung cấp các ph ơng tiện cần thiết để đánh giá xem các ràng buộc đ a ra có thỏa mưn hay không? Để làm đ ợc nh vậy thì thực chất cần phải phát triển các kỹ thuật hình thức mức trừu t ợng để có những đánh giá sớm cùng với các nhóm công cụ và ph ơng pháp đúng đắn. Mặt khác cũng cần phải xem xét phần mềm nhúng và kiến trúc phần cứng của nó trong một tổng thể cân đối. Do phải thỏa mưn nhiều yếu tố khác nhau về phần cứng, môi tr ng, giá thành, hiệu năng nên tồn tại nhiều thách thức trong phát triển phần mềm nhúng ngày nay, nh : o Tăng c ng việc tái sử dụng. o Đồng thiết kế phần cứng, phần mềm. o Xây dựng mô hình các thuộc tính phi chức năng. o Chuyển đổi các phần mềm thành các dịch vụ thông qua các thành phần phần mềm. o Kiến trúc hệ thống và kiến trúc phần mềm. Nguyễn Thị Khánh Chi - CT902 40 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây o Đánh giá và kiểm định mức hệ thống. o T ơng thích phần cứng và phần mềm nh các cấu trúc có thể định cấu hình lại và các thành phần Plug and Play. o Xây dựng các hệ thống có khả năng tổ hợp đ ợc nh các thành phần phần mềm có thể tái sử dụng. 3.2.1. Các bước cơ bản xây dựng một phần mềm nhúng Phần mềm nhúng viết cho các họ vi xử lý có thể sử dụng các ngôn ngữ khác nhau nh C/C++ hoặc Assembly. Tuỳ theo tiêu chí xây dựng hệ thống mà lựa chọn ngôn ngữ thích hợp. Từ đó cũng chọn ch ơng trình dịch thích hợp. Ngày nay, do nhu cầu phát triển hệ thống nhanh, bảo trì dễ dàng nên ngôn ngữ đ ợc lựa chọn th ng là ngôn ngữ cấp cao nh C/C++. Quy trình xây dựng một phần mềm bất kỳ th ng trải qua các b ớc sau: - Tìm hiểu bài toán - Phân tích - Thiết kế - Viết ch ơng trình - Kiểm thử Việc xây dựng phần mềm nhúng cũng tuân theo trình tự các b ớc nh trên. Ngoài ra, phần mềm nhúng còn có đặc tr ng là làm việc trực tiếp với phần cứng. Do đó để kiểm soát quá trình làm việc với các thành phần chấp hành có đúng đắn hay không là điều đặc biệt quan trọng. 3.2.2 Phần mềm nhúng viết cho CC1010 Phần mềm nhúng viết cho CC1010 đ ợc viết bằng ngôn ngữ C, sử dụng các th viện cho CC1010 do hưng Chipcon cung cấp, ch ơng trình biên dịch Keil µVision 2.0. Nguyễn Thị Khánh Chi - CT902 41 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Ch ơng trình dịch Keil µVision 2.0 do hưng Keil Elektronik GmbH xây dựng là một môi tr ng phát triển tích hợp (IDE) dùng để xây dựng các ch ơng trình cho các họ VĐK t ơng thích 8051 của Intel. Đây là bộ ch ơng trình dịch cho phép ng i viết ch ơng trình soạn thảo ch ơng trình, dịch ch ơng trình và gỡ lỗi trên cùng một môi tr ng. Ch ơng trình dịch hỗ trợ cho cả ngôn ngữ C và Assembly. Hưng Chipcon cũng cung cấp bộ th viện CC1010IDE hỗ trợ cho việc xây dựng phần mềm cho VĐK CC1010. Đây là bộ th viện giúp cho việc xây dựng ch ơng trình cho CC1010 đ ợc dễ dàng và nhanh chóng. CC1010IDE dựa trên công cụ phát triển “µVision2” của hưng Keil ™ Elektronik GmbH. Công cụ này cung cấp một khung (framework) cho hầu hết các đặc điểm của CC1010IDE và cũng hỗ trợ hầu hết cho các VĐK họ 8051. Trình soạn thảo là một công cụ chủ yếu để soạn thảo các file nguồn và file hợp ngữ. Nó cũng cung cấp các chức năng trợ giúp khác nh giao diện đồ hoạ (Graphic User Interface - GUI), cần cho mô phỏng/gỡ lỗi (mư lệnh dạng hợp ngữ, thanh ghi, bộ nhớ, các cửa sổ theo dõi, b ớc lệnh, …). Thêm vào đó, IDE cũng cung cấp các giao diện với th viện liên kết động (Dynamic Linking Library – DLL) đ ợc sử dụng để mô phỏng và gỡ lỗi trên mạch. Một điểm đặc biệt của bộ dịch là có thể chuyển các file nguồn đ ợc viết bằng C sang dạng hợp ngữ, để sau đó có thể tối u hoá mư lệnh. Dạng hợp ngữ sau đó đ ợc chuyển thành các file đối t ợng (mư máy hoặc dữ liệu nhị phân). Cuối cùng, bộ liên kết đ a ra dạng file thực thi dạng Intel HEX và có thể nạp vào bộ nhớ Flash của VĐK. Mô hình của một phần mềm nhúng viết cho CC1010 nh sau: Nguyễn Thị Khánh Chi - CT902 42 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Ch ơng trình ứng dụng Th viện C chuẩn Th viện tiện ích Chipcon (Chipcon utility library-CUL) Th viện phần cứng (Hardware abstraction library – HAL) Các file định nghĩa phần cứng (Hardware definition file - HDF) Các file định nghĩa ph n c ng - Hardware Definition Files (HDF) Các file định nghĩa phần cứng định nghĩa địa chỉ các thanh ghi, ánh xạ vectơ ngắt và các hằng số phần cứng khác. Chúng cũng th ng dùng các macro cho CC1010EB, và các định nghĩa hỗ trợ hợp ngữ và ngôn ngữ C. Thư vi n ph n c ng - Hardware Abstraction Library (HAL) Để hỗ trợ việc phát triển ch ơng trình nhanh chóng và dễ dàng, Chipcon cung cấp th viện các macro và các hàm truy cập phần cứng C1010 dễ dàng. Những th viện này nằm trong Th Viện Phần Cứng (HAL) và thi hành một giao tiếp phần cứng trừu t ợng đối với ch ơng trình ng Nh đó ch ơng trình ng i dùng. i dùng có thể truy cập ngoại vi của vi điều khiển, thông qua các l i gọi hàm/macro, mà không cần hiểu chi tiết về phần cứng. Thư vi n HAL hỗ tr các ch c năng sau: - Truyền nhận không dây - Đo cường độ RSSI - Truyền nhận RS232 - Làm việc với ADC - Xử lý thời gian thực - Mã hoá DES Nguyễn Thị Khánh Chi - CT902 43 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây - Thiết lập các bộ định thời - Làm việc với các cổng Thư vi n ti n ích Chipcon - Chipcon Utility Library (CUL) Bên cạnh module HAL CC1010IDE cũng cung cấp một th viện cho truyền thông RF đặt trong Th Viện Tiện Ích (CUL). Th viện này th ng dùng cho các ứng dụng RF điển hình, và cung cấp một giao thức RF đầy đủ. Th viện CUL hỗ trợ các chức năng sau: - Truyền nhận không dây - Tính toán Mã dư vòng (CRC) - Xử lý Thời gian thực (Realtime Clock) Cả hai th viện HAL và CUL đều hỗ trợ Truyền nhận không dây và xử lý th i gian thực. Tuy nhiên, các hàm hơn, ng th viện CUL làm việc mức cao i viết ch ơng trình cũng dễ dàng và tiện lợi hơn, nh ng bù lại cũng kém mềm dẻo hơn so với sử dụng các hàm th viện HAL. Do vậy, đối với những ứng dụng đòi hỏi sự phức tạp thì th ng dùng th viện HAL. Phần mềm WSN viết cho CC1010 Phần mềm viết cho node mạng cho WSN cần thực hiện những chức năng cơ bản sau: o Cảm nhận o Tính toán o Truyền thông Một thách thức là phải thực hiện tất cả những công việc trên vào một VĐK bị ràng buộc về mặt tài nguyên. Điều đó đòi hỏi ch ơng trình viết càng ngắn và càng tốn ít bộ nhớ càng tốt, trong khi vẫn đảm bảo việc viết ch ơng trình nhanh, bảo trì và nâng cấp dễ dàng. Nguyễn Thị Khánh Chi - CT902 44 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Đối với việc truyền thông, ch ơng trình sử dụng các hàm trong bộ th viện HAL của Chipcon. Ch ơng trình truyền thông cho CC1010 thực hiện theo các b ớc sau: o Khởi tạo RF: thiết lập tần số RF, tốc độ truyền, cách điều chế tín hiệu, công suất phát. Trong ch ơng trình cụ thể, các thông số trên lần l ợt có giá trị là: 868MHz, 2.4kb/s, mư hoá Manchester, 4 dBm. Các khai báo này đ ợc đặt trong một cấu trúc RF_SETTINGS đ ợc khai báo nh sau: RF_RXTXPAIR_SETTINGS code RF_SETTINGS = { 0x4B, 0x2F, 0x15, // Modem 0, 1 and 2: Manchester, 2.4 kBaud 0x75, 0xA0, 0x00, // Freq A 0x58, 0x32, 0x8D, // Freq B 0x01, 0xAB, // FSEP 1 and 0 0x40, // PLL_RX 0x30, // PLL_TX 0x6C, // CURRENT_RX 0xF3, // CURRENT_TX 0x32, // FREND 0xFF, // PA_POW 4dBm 0x00, // MATCH 0x00, // PRESCALER }; Việc kh i tạo RF theo các b ớc trình tự sau: halRFCalib(&RF_SETTINGS, &RF_CALDATA); INT_GLOBAL_ENABLE (INT_OFF); INT_SETFLAG (INUM_RF, INT_CLR); Nguyễn Thị Khánh Chi - CT902 45 //chuẩn hoá RF //cấm ngắt toàn cục //xoá ngắt RF Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây INT_PRIORITY (INUM_RF, INT_HIGH);//mức u tiên ngắt RF là cao //RF hoạt động RF_SET_BYTEMODE(); chế độ byte RF_SET_PREAMBLE_COUNT(PREAMBLE_BYTE_COUNT); //thiết lập số byte dẫn đ ng RF_SET_SYNC_BYTE(RF_SUITABLE_SYNC_BYTE);//thiết lập byte // đồng bộ MODEM1=(MODEM1&0x03)|0x24; //lọc trung bình // Reset preamble detection PDET &= ~0x80; PDET |= 0x80; INT_ENABLE (INUM_RF, INT_OFF); //cấm ngắt ngắt RF INT_GLOBAL_ENABLE (INT_ON); //cho phép ngắt toàn cục o Nhận dữ liệu RF: việc nhận dữ liệu RF thông qua ngắt. Mỗi khi nhận đ ợc một byte, VĐK sinh ra một ngắt. Ch ơng trình xử lý ngắt có nhiệm vụ đ a byte này vào một bộ đệm. Khi toàn bộ gói tin đư nhận xong, ngắt này bị cấm để ch xử lý xong bộ đệm. Quá trình nhận một byte từ bộ đệm RFBUF vào bộ đệm ch ơng trình nh sau: //nhận một byte từ RFBUF vào bộ đệm rf_rx_buf tại vị trí rf_rx_index; rf_rx_buf[rf_rx_index] = RF_RECEIVE_BYTE(); rf_rx_index++; //tăng chỉ số lên 1 Byte đầu tiên của bộ đệm ch ơng trình rf_rx_buf [0] l u độ dài gói tin. Việc nhận dữ liệu kết thúc khi rf_rx_index bằng giá trị độ dài gói tin, nghĩa là: rf_rx_index = rf_rx_buf[0]; Nguyễn Thị Khánh Chi - CT902 46 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Sau khi toàn bộ gói tin RF đư nhận đ ợc, ch ơng trình sẽ phân tích gói tin, lọc ra các dữ liệu cần thiết. Nếu là node Master, nó sẽ truyền dữ liệu nhận đ ợc về PC qua cổng RS232. Nếu là Slave, nó sẽ thực hiện việc cảm nhận, tính toán rồi truyền dữ liệu về Master. o Truyền dữ liệu RF: việc truyền dữ liệu RF đ ợc thực hiện b i các hàm/macro trong th viện HAL của Chipcon nh sau: halRFSetRxTxOff(RF_TX, &RF_SETTINGS, &RF_CALDATA);//turn on TX RF_START_TX(); //bắt đầu truyền halRFSendPacket(PREAMBLE_BYTE_COUNT,&txDataBuffer[0],4 //truyền dữ liệu tại txDataBuffer với độ dài là 4 ); halRFSetRxTxOff(RF_RX,&RF_SETTINGS,&RF_CALDATA);//turn on //RX RF_START_RX(); // bắt đầu chế độ nhận INT_SETFLAG (INUM_RF, INT_CLR); //xoá c ngắt RF INT_ENABLE (INUM_RF, INT_ON); //cho phép ngắt RF 3.3. Thực nghi m đo hi u qu truyền nh n gói tin trong m ng WSN * Dụng cụ và các thiết bị thực nghiệm: Thành phần chính của thực nghiệm gồm: Một node tín hiệu truyền đi còn node thứ hai thu nhận tín hiệu, đ ợc nối trực tiếp với máy tính hoặc tích hợp sẵn màn hình LCD để dễ theo dõi, thu thập xử lý thông tin nhận đ ợc ( hình 3.1). Nguyễn Thị Khánh Chi - CT902 47 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Hình 3.1 Dụng cụ thực nghiệm * Các thông số thiết lập cơ bản cho CC1010: Sử dụng các switch trên CC1010EB để truyền một gói tin chuẩn. Các led báo hiệu trên CC10101EB bao gồm: - Led xanh: chỉ thị đang truyền tín hiệu. - Led vàng: chỉ thị đang nhận tín hiệu. - Led đỏ: chỉ thị quá trình truyền/nhận lỗi. - Led lá cây: chỉ thị quá trình truyền/nhận tốt. * Thí nghiệm đo hiệu quả truyền nhận gói tin trong mạng WSN 3.3.1. Sơ đồ thực nghiệm và thuật toán Nguyễn Thị Khánh Chi - CT902 48 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Hình 3.2: Sơ đồ thực nghiệm Các dụng cụ thí nghiệm đ ợc sắp xếp nh hình 3.2. Node cơ s nối trực tiếp với máy tính qua cổng RS232 nhận kết quả truyền từ node cảm nhận. Thực hiện di chuyển node cảm nhận để đo hiệu quả nhận gói tin các khoảng cách khác nhau. Các node đ ợc lập trình lần l ợt thay đổi giá trị Delay. Kết quả đo đ ợc node cơ s xử lý và hiển thị, cho phép khảo sát hiệu quả truyền tỷ lệ truyền gói tin phụ thuộc khoảng cách giữa nơi truyền, nơi nhận. Sau đó đo hiệu quả truyền nhận theo sự thay đổi khoảng cách và khoảng delay giữa chúng. Vấn đề quan trọng trong thí nghiệm này là cài đặt các phần mềm t ơng ứng để các node cơ s và node cảm nhận thực hiện chức năng của chúng. Ta có giải thuật của hai node nh hình d ới: Node truyền gửi lần l ợt 100 gói data có số thứ tự từ 1 đến 100. Node nhận có hai tham số test và error . Kh i đầu 2 giá trị này này bằng 0. Khi có data gửi đến: if ( test > data) error = data -1; else error = error + (data - test -1); test =data; Nguyễn Thị Khánh Chi - CT902 49 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Trong đó: test là chứa giá trị nhận đ ợc tr ớc đó, data là giá trị nhận đ ợc hiện tại, error là số lỗi truyền. Kh i tạo Kh i tạo Data=1 Test=0, Error=0 Truyền data Nhận data F Delay Có data? T F Error= error + ( data- test – 1) Test = data Test> data T Data= Data+1 Error= data -1 F Data>10 0 T F Hiển thị Data= 100 T Hình 3.3a: Thuật toán node truyền Hình 3.3b: Thuật toán node nhận Nếu gói tin gửi thành công, số lỗi error đ ợc giữ nguyên, nếu mất gói hoặc lỗi thì error tăng lên một giá trị chính bằng giá trị truyền đúng mới nhất trừ đi giá trị tr ớc khi bắt đầu lỗi và trừ đi 1. 3.3.2. Tiến hành thực nghiệm và các kết quả đo được Mối liên hệ khoảng cách và hiệu quả truyền nhận gói tin: Tiến hành đo tỷ lệ nhận gói của quá trình truyền nhận khác nhau, cho ta đồ thị nh hình 3.14. môi tr ng khoảng không rộng lớn, không có vật chắn (thí nghiệm đ ợc thực hiện 10AM-11AM, nhiệt độ trung bình tầm 29- 36oC, ít ng Nguyễn Thị Khánh Chi - CT902 50 các địa điểm sân Mỹ Đình vào i qua lại) và môi Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây tr ng có vật chắn: cây cối, nhà… (thí nghiệm đ ợc thực hiện tại sân tr i qua lại) Hiệu quả truyền nhận gói % ĐHQG Hà Nội tầm 3PM-5PM, nhiệt độ 26-34oC, th i gian ít ng ng Khoảng cách (m) Hình 3.4: Đồ thị biểu diễn sự liên hệ giữa khoảng cách và hiệu quả truyền nhận gói tin Nhận thấy, kết quả đo SVĐ Mỹ Đình cho tỷ lệ nhận gói tin cao hơn cùng một khoảng cách và khoảng cách truyền nhận đây cũng xa hơn. Tuy nhiên, trên thực tế kết quả quá trình nhận gói tin thực hiện b i các bộ nhận tại các vị trí khác nhau từ bên phát là không có quy tắc hay không theo cùng một h ớng. Tiến hành đo với các trục cùng tâm trong khoảng truyền nhận cho các đ ng truyền nhận gói tin thực nh hình 3.5. Đ ng bao của các điểm có cùng tỷ lệ nhận gói có hình dạng con sứa chứ không phải là một đ ng tròn. Có những điểm khoảng cách xa nh ng lại có tỷ lệ truyền nhận gói tin tốt hơn. Điều này có thể đ ợc giải thích là do Nguyễn Thị Khánh Chi - CT902 51 những vị trí có fading tác động Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây mạnh làm cho tín hiệu bị sai lệch thì tỷ lệ nhận gói tin sẽ giảm xuống. Vì vậy tuy khoảng cách gần hơn nh ng hiệu quả truyền gói lại thấp hơn. Hình 3.5: Đường biểu diễn tỷ lệ nhận gói tin thực theo khoảng cách Thực nghiệm đo hiệu quả nhận gói tin khi thay đổi khoảng cách và khoảng delay: Tiến hành thí nghiệm trong phạm vi một tòa nhà. Sử dụng các node mạng: một node cơ s đ ợc kết nối máy tính qua RS232 làm nhiệm vụ truyền tín hiệu và node thu nhận tín hiệu đ ợc tích hợp sẵn màn hình LCD để dễ theo dõi, thu thập xử lý thông tin nhận đ ợc, di chuyển node thu nhận tín hiệu các khoảng cách khác nhau. Lần l ợt thay đổi khoảng delay ta sẽ thu đ ợc các kết quả đo nh trên trục đồ thị: Nguyễn Thị Khánh Chi - CT902 52 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin Hiệu quả truyền nhận gói % trong mạng cảm biến không dây Khoảng cách (m) Hình3.6: Đồ thị biểu diễn sự phụ thuộc c a hiệu quả truyền nhận gói tin vào khoảng delay và khoảng cách Nhận xét: Khi node cảm nhận di chuyển theo các khoảng cách ta sẽ thấy có sự thay đổi đáng kể hiệu quả truyền nhận gói tin khi thay đổi khoảng delay giữa chúng. Kết quả đo thực nghiệm cho thấy tỷ lệ nhận gói tin tốt khi Delay nằm khoảng cách 5m đến 10m. trong khoảng 20000< Delay < 50000 Nh vậy khoảng delay có ảnh h ng đến tỷ lệ nhận gói theo khoảng cách trong mạng cảm biến không dây. 3.4. K t lu n vƠ hư ng nghiên c u ti p theo Tr ng hợp thí nghiệm sử dụng thủ tục Aloha cho 2 node trong mạng WSN ta thấy: Nguyễn Thị Khánh Chi - CT902 53 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Trong khi bên nhận chỉ có thực hiện quá trình nhận, xử lý số liệu và hiển thị thì bên truyền sẽ phải có một khoảng th i gian nghỉ giữa các lần truyền để đảm bảo lúc truyền đi thì bên nhận cũng đư sẵn sàng nhận gói tin. Th i gian nghỉ này có ảnh h ng đến hiệu quả truyền nhận gói tin trong mạng. Khi giữa node truyền và node nhận đồng bộ về mặt khe th i gian nh vậy thì trong một phạm vi về mặt địa lý ta có thể xác định đ ợc các miền: Miền kết Hiệu quả truyền nhận gói % nối, miền chuyển tiếp và miền không kết nối. Khoảng cách (m) Hình 3.7: Các miền c a hiệu quả truyền nhận gói tin trong mạng WSN + Miền kết nối là vùng trong khoảng cách mà cho tỷ lệ nhận gói cao. + Xa hơn miền này tỷ lệ nhận gói tin giảm xuống và có xác suất khác nhau, gọi là miền chuyển tiếp. Miền này có độ rộng tùy thuộc từng môi Nguyễn Thị Khánh Chi - CT902 54 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây tr ng truyền nhận. Sự xuất hiện miền này cho phép giải thích tính không đối xứng về không gian của tỷ lệ nhận gói tin. + Xa hơn miền chuyển tiếp gọi là miền không kết nối, tại đây tỷ lệ nhận gói tin là rất thấp. Tuy nhiên, nếu thí nghiệm đ ợc áp dụng với 3 hay nhiều node mạng thì th i gian nghỉ giữa 2 lần truyền tăng lên nhiều. Do đó nó cũng ảnh h ng đến hiệu quả truyền nhận gói tin trong mạng. Tuy nhiên các miền sẽ không bị thay đổi nếu có giải thuật cho các node tốt. Sau đây là giải thuật cho 3 node mạng: Thuật toán node cơ s : Kh i tạo Gửi yêu cầu Nhận Xử lý, hiển thị Hình 3.8: Thuật toán node cơ sở Nguyễn Thị Khánh Chi - CT902 55 Đồ án tốt nghiệp Chương III. Thực nghiệm, đánh giá hiệu quả truyền nhận gói tin trong mạng cảm biến không dây Thuật toán node cảm nhận 1 và 2: Kh i tạo Kh i tạo Nhận Ok? Nhận F Ok? T F T Truyền Delay Truyền Delay Hình 3.9: Thuật toán node cảm nhận 1 và 2 Cho nên h ớng nghiên cứu tiếp theo của đồ án này chính là dựa vào giải thuật 3 node mạng trên, viết ch ơng trình thích hợp cho các node để tăng hiệu quả truyền nhận gói tin trong mạng, khắc phục nh ợc điểm của thủ tục cạnh tranh môi tr ng Aloha trong mạng WSN. Nguyễn Thị Khánh Chi - CT902 56 Đồ án tốt nghiệp Kết luận K T LU N Trong phạm vi đồ án này, em đư nghiên cứu đ ợc tổng quan về mạng WSN, thủ tục điều khiển thâm nhập môi tr ng cạnh tranh trong mạng WSN và lựa chọn một thủ tục cạnh tranh trong mạng WSN để viết ch ơng trình phần mềm nhúng đánh giá hiệu quả truyền nhận gói tin cho 2 node mạng trong mạng WSN. Do còn hạn chế về mặt tài liệu cũng nh về phần thực tế của đề tài nên khoá luận không tránh khỏi những thiếu sót. Vì vậy em rất mong đ ợc sự phê bình, đóng góp của các thầy, cô và các bạn sinh viên quan tâm tới vấn đề này để đồ án của em đ ợc hoàn thiện tốt hơn. Một lần nữa em xin chân thành cám ơn PGS.TS V ơng Đạo Vy giảng viên tr ng ĐHCN- ĐHQG Hà Nội đư nhiệt tình giúp đỡ em trong th i gian vừa qua; cám ơn các thầy, cô và các bạn trong tr động viên và giúp đỡ em làm tốt khoá luận! Nguyễn Thị Khánh Chi - CT902 57 ng ĐHDL Hải Phòng đư Đồ án tốt nghiệp Tài liệu tham khảo TÀI LI U THAM KH O [1]- V ơng Đạo Vy, “ Mạng truyền dữ liệu”, NXB ĐHQG Hà Nội, 2006. [2]- Bhaskar Krishnamachari, “Networking Wireless Sensors”, Cambridge University Press, 2005. [3]- Anna HAC, book " Wireless Sensor Network Deigns", Wiley. [4]- Edgar H. Callaway, book " Wireless Sensor Networks: Architectures and Protocols", Aurebach. [5] - Holger Karl Andreas Willig, “Protocols and Architectures for Wireless Sensor Networks”, Wiley, 2005. [6]- " Medium Access Control in Wireless Sensor Network", Wei Ye and John Heidemann, 10/ 2003. [7]- Zhijia Chen, Chuang Lin, Hao Wen, Hao Yin, “An analytical model for evaluating IEEE 802.15.4 CSMA/CA protocol in low-rate wireless application,” in Proc. Of 21st International Conference on Advanced Information Networking and Application Workshops (AINAW), 2007, pp. 899-904. [8]- “ CC1010 Datasheet”, Texas instruments, 2003-2004, Chipcon AS, http://www.chipcon.com. [9]- Chipcon, “ CC1010 IDE Manual”, http://www.chipcon.com. [10]- Hugh O’Keeffe, R&D Director, “Embedded Debugging” , Ashling Microsystems Ltd (2006). Nguyễn Thị Khánh Chi - CT902 58 Đồ án tốt nghiệp Nguyễn Thị Khánh Chi - CT902 Phụ lục 1