Đề tài Tìm hiểu mạng cảm biến không dây và xây dựng mô hình điều khiển thiết bị điện qua mạng cảm biến không dây

Các ứng dụng truyền dữ liệu được điều khiển hoàn toàn bởi các thiết bị trong mạng PAN hơn là được điều khiển bởi thiết bị điều phối mạng. Chính khả năng này cung cấp tính năng bảo toàn năng lượng trong mạng ZigBee. Khi thiết bị điều phối muốn truyền dữ liệu đến một thiết bị khác trong loại mạng có hỗ trợ phát beacon, khi đó nó sẽ chỉ thị trong thông tin báo hiệu beacon là đang truyền dữ liệu. Các thiết bị trong mạng luôn luôn lắng nghe các thông tin báo hiệu beacon một cách định kỳ, khi phát hiện ra có dữ liệu liên quan tới nó đang đựợc truyền, nó sẽ phát lệnh yêu cầu dữ liệu này, công việc này sử dụng slotted CSMA-CA. Công việc này được mô tả bằng hình 3 , trong hình này thì khung tin Ack của thiết bị điều phối cho biết rằng gói tin đã được truyền thành công, việc truyền gói tin sử dụng kỹ thuật gán khe thời gian CSMA-CA, khung Ack thiết bị thường trả lời là nhận gói tin thành công. Vào lúc nhận khung tin Ack từ thiết bị thường thì bản tin sẽ được xóa khỏi danh sách bản tin trong thông tin báo hiệu beacon.

doc41 trang | Chia sẻ: lvcdongnoi | Lượt xem: 3929 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Đề tài Tìm hiểu mạng cảm biến không dây và xây dựng mô hình điều khiển thiết bị điện qua mạng cảm biến không dây, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
s-Collision Avoidance - Phương pháp tránh xung đột đa truy cập nhờ vào cảm biến sóng mang) được sử dụng. Trong kiểu mạng này, các bộ định tuyến có bộ thu phát luôn luôn tích cực, nên yêu cầu cung cấp năng lượng cũng phải linh hoạt hơn. Hình 1.5. Phương pháp truy nhập kênh CSMA-CA CSMA/CA là phương pháp truy cập mạng dùng cho chuẩn mạng không dây IEEE 802.15.4. Các thiết bị trong mạng (các nốt mạng) sẽ liên tục lắng nghe tín hiệu thông báo trước khi truyền Đa truy cập (multiple access) chỉ ra rằng nhiều thiết bị có thể cùng kết nối và chia sẻ tài nguyên của một mạng (ở đây là mạng không dây). Tất cả các thiết bi đều có quyền truy cập như nhau khi đường truyền rỗi. Ngay cả khi thiết bị tìm cách nhận biết mạng đang sử dụng hay không,vẫn có khả năng là có hai trạm tìm cách truy cập mạng đồng thời.Trên các mạng lớn, thời gian truyền từ đầu cáp nầy đến đầu kia là đủ để một trạm có thể truy cập đến cáp đó ngay cả khi có một trạm khác vừa truy cập đến.Nó tránh xung đột bằng cách là mỗi nốt sẽ phát tín hiệu về yêu cầu truyền trước rồi mới truyền thật sự. Thuật toán truy nhập kênh CSMA-CA được sử dụng trứớc khi phát dữ liệu hoặc trước khi phát khung tin MAC trong phần CAP. Thuật toán này sẽ không sử dụng để phát khung tin thông báo beacon, khung tin Ack, hoặc là khung tin dữ liệu trong phần CFP. Nếu bản tin báo hiệu đựơc sử dụng trong mạng PAN thì thuật toán CSMA-CA gán khe thời gian được dùng, ngựợc lại thuật toán CSMA-CA không gán khe thời gian sẽ đựợc sử dụng. Tuy nhiên trong cả hai trường hợp thuật toán đều được bổ xung bằng cách sử dụng khối thời gian backoff bằng với thời gian của tham số aUnitBackoffPeriod. Trong thuật toán truy nhập kênh CSMA-CA gán khe thời gian, biên của khoảng thời gian backoff của mỗi thiết bị trong mạng PAN được sắp thẳng hàng với biên của khe siêu khung của thiết bị điều phối mạng PAN. Trong thuật tóan này, mỗi lần thiết bị muốn truyền dữ liệu trong CAP thì nó phải xác định biên thời gian backoff kế tiếp. Trong thuật toán CSMA-CA không gán khe thời gian thì khoảng thời gian backoff của một thiết bị trong mạng không cần phải đồng bộ với khoảng thời gian backoff của thiết bị khác. Mỗi thiết bị chứa 3 biến số: NB, BW, BE. Trong đó NB là số lần mà thuật toán này bị yêu cầu rút lại trong khi đang cố gắng truyền. Giá trị ban đầu của nó là 0 trước khi truyền. Biến CW là độ dài cửa sổ tranh chấp, nó cho biết khoảng thời gian cần thiết để làm sạch kênh truyền trước khi phát, giá trị ban đầu của nó là 2 trước khi cố gắng phát và quay trở lại 2 khi kênh truy nhập bị bận. Biến số CW chỉ sử dụng cho thuật toán gán khe thời gian CSMA-CA. Biến số BE (backoff_exponent) cho biết một thiết bị phải chờ bao lâu để có thể truy nhập vào một kênh. Cho dù bộ thu của thiết bị làm việc trong suốt khoảng thời gian CAP của thuật tóan nhưng nó vẫn bỏ qua bất kỳ khung tin nào nhận đựơc trong khoảng thời gian này. Trong thuật toán CSMA-CA gán khe thời gian, NB, CW, BE được thiết lập trước, biên của khoảng thời gian backoff kế tiếp cũng được xác định trước. Trong thuật toán CSMA-CA không gán khe thời gian thì NB và BE được thiết lập trước (bước 1). Tầng MAC sẽ trễ ngẫu nhiên trong phạm vi 0 đến 2*BE -1(bước2) sau đó yêu cầu tầng PHY thực hiện đánh giá truy kênh truy nhập xem là rỗi hay bận.(bứớc3). Nếu kênh truyền bận(bước4), tầng MAC sẽ tăng NB và BE lên 1, nhưng cũng luôn đảm bảo rằng giá trị này nhỏ hơn aMaxBE. Trong CSMA-CA gán khe thời gian thì việc truyền khung tin, Ack phải được thực hiện trước khi kết thúc phần CAP trong siêu khung, nếu không sẽ phải chờ đến CAP của siêu khung kế tiếp, trong thuật toán này thì CW có thể cũng reset lại thành giá trị 2. Nếu giá trị của NB nhỏ hơn hoặc bằng giá trị tham số macMaxCSMABackoffs, thì sẽ quay lại bứớc2 đồng thời thông báo lỗi truy nhập kênh. Nếu kênh truyền là rỗi (bước5) , trong CSMA-CA gán khe thời gian, tầng MAC phải giảm CW đi 1. nếu CW ≠ 0 quay trở lại bước 3. Nếu CW=0 thì thôgn báo truy nhập kênh thành công. Còn trong CSMA-CA không gán khe thời gian thì tầng MAC bắt đầu phát ngay nếu kênh truyền rỗi. * Trong mạng báo hiệu: Truy nhập kênh sử dụng cấu trúc superframe. Định dạng của superframe được định nghĩa bởi coordinator và được chia thành 16 khe thời gian bằng nhau. Khung báo hiệu được truyền trong khe thời gian đầu tiên của mỗi superframe. Nếu coordinator không muốn sử dụng cấu trúc superframe, nó chỉ việc tắt sự truyền nhận báo hiệu. Báo hiệu được sử dụng để đồng bộ những thiết bị gắn vào, để nhận ra PAN và mô tả cấu trúc của superframe. Bất kỳ thiết bị nào muốn truyền thông trong thời gian truy nhập tranh giành giữa hai báo hiệu sẽ tranh đua với các thiết bị khác sử dụng một khe cơ chế CSMA-CA. Tất cả các giao dịch sẽ được hoàn thành bởi thời gian báo hiệu mạng tiếp theo. Superframe có thể có một phần tích cực và một phần không tích cực. Hình 1.6. Cấu trúc superframe Đối với các ứng dụng yêu cầu băng thông dữ liệu, coordinator PAN có thể dành những phần của superframe tích cực cho ứng dụng đó. Những phần này gọi là những khe thời gian đảm bảo (GTS). GTS hình thành chu kỳ tự do tranh giành (CFP), nó luôn hiện ra ở phần cuối của superframe tích cực, bắt đầu ở một slot ranh giới ngay sau CAP. Coordinator PAN có thể cấp phát tới bẩy GTS này. Mỗi GTS có thể chiếm giữ nhiều hơn một khe thời gian. Tuy nhiên một phần của CAP sẽ để lại dành cho các thiết bị khác truy nhập mạng hay các thiết bị mới muốn tham gia vào mạng. Khe thời gian đảm bảo GTS cho phép một thiết bị có thể hoạt động trong một kênh truyền bên trong một phần của siêu khung dành riêng cho thiết bị đó. Một thiết bị chỉ có thể chiếm và sử dụng một khe thời gian khi mà thiết bị đó liên quan đến thông tin báo hiệu beacon hiện thời lúc đó. Thiết bị điều phối mạng PAN có thể chiếm hữu khe thời gian GTS và sử dụng khe thời gian này để liên lạc với các thiết bị khác trong mạng. Một khe thời gian đơn có thể kéo dài hơn thời gian của siêu khung. Thiết bị điều phối mạng PAN có thể chiếm hữu tới bảy khe thời gian GTS cùng một lúc miễn là nó có đủ thẩm quyền trong siêu khung. Một khe thời gian có thể được chiếm hữu trước khi sử dụng nếu có sự yêu cầu của thiết bị điều phối mạng PAN. Tất cả các khe thời gian GTS đều được đặt liền nhau ở cuối của siêu khung sau phần CAP, và hoạt động theo cơ chế FCFS(first-come-first-serve) đến trước dùng trứơc. Mỗi khe thời gian GTS có thể đựợc giải phóng nếu không có yêu cầu nào, và một khe thời gian GTS có thể được giải phóng vào bất kỳ lúc nào khi thiết bị chiếm hữu nó không dùng nữa. Chỉ duy nhất thiết bị điều phối PAN mới có quyền quản lý khe thời gian. Để quản l y mỗi khe thời gian đảm bảo, thiết bị điều phối có thể lưu trữ khe bắt đầu, độ dài, phương hướng (thu hay phát) và địa chỉ thiết bị kết nối. Mỗi thiết bị trong mạng có thể yêu cầu một khe thời gian phát hay một khe thời gian thu. Để chiếm hữu được một khe thời gian thì thiết bị đó phải lưu trữ thông tin khe bắt đầu, độ dài và phương hướng. Nếu một thiết bị đựơc cấp phát một khe thời gian GTS thu, nó sẽ có toàn quyền sử dụng trọn vẹn khe thời gian đó để nhận dữ liệu. Tương tự như vậy thiết bị điều phối mạng PAN cũng có thể có toàn quyền sử dụng trọn vẹn khe thời gian đó để nhận đữ liệu khi có một thiết bị khác chiếm khe thời gian phát. Một thiết bị yêu cầu chiếm hữu khe thời gian mới thông qua lệnh yêu cầu GTS với các tính chất (độ dài, thu hay phát?,…) thiết lập theo yêu cầu ứng dụng. Để xác nhận lệnh này thì thiết bị điều phối sẽ gửi một khung tin Ack. Sau khi phát khung tin Ack thì thiết bị điều phối sẽ kiểm tra khả năng hiện thời của siêu khung dựa trên độ dài của phần CAP và độ dài khe thời gian GTS được yêu cầu. Siêu khung sẽ sẵn sàng nếu độ dài khe thời gian GTS không làm giảm độ dài của phần CAP đi quá độ dài nhỏ nhất của CAP được qui đinh trong tham số aMinCAPLength. Thiết bị điều phối mạng PAN thực hiện quyết định của nó bên trong siêu khung aGTSDescPersistenceTime. Trong khi xác nhận gói tin Ack từ thiết bị điều phối thì thiết bị này vẫn tiếp tục theo dõi thông tin báo hiệu và chờ siêu khung aGTSDescPersistenceTime. Khi thiết bị điều phối quyết định xem xem nó có sẵn sàng cho yêu cầu GTS không, nó sẽ phát đi mô tả về GTS với chi tiết yêu cầu và đoạn ngắn địa chỉ của thiết bị yêu cầu. Nó sẽ chỉ ra độ dài và khe GTS đầu tiên trong siêu khung rồi thông báo cho tầng trên về việc cấp phát khe GTS mới này. Nếu sau khi kiểm tra mà thấy khả năng của siêu khung là không đủ để cấp phát theo yêu cầu về GTS, thì khe đầu tiên sẽ được đánh số 0 tới độ dài khe GTS lớn nhất có thể cung cấp được hiện thời. Những mô tả về GTS sẽ đựơc giữ trong khung tin báo hiệu beacon cho aGTSPersistenceTime. Trong khi xác nhận khung tin báo hiệu beacon, thiết bị sẽ xử ly và thông báo lên tầng trên. Tượng tự như khi yêu cầu cấp phát GTS, một thiết bị cho biết nó yêu cầu được giải phóng sự chiếm hữu GTS thông qua lệnh yêu cầu giải phóng với các thông số của GTS đang tồn tại. Sau đó thì khe thời gian này sẽ được tự do. Thiết bị điều phối PAN phải đảm bảo rằng không có khoảng trống náo xuất hiện trong CFP khi giải phóng khe thời gian GTS, độ dài maximum CAP nhờ thế mà được tăng lên (độ tăng đúng bằng độ dài của khe thời gian đựoc giải phóng). 3.3. Giao thức trong WSNs: Giao thức là cách quản lý các chế độ hoạt động, truyền dữ liệu của các nút sao cho việc tiêu hao năng lượng là ít nhất mà một mạng cảm biến vẫn đảm bảo độ tin cậy. Tuỳ vào mục đích sử dụng của mạng cảm biến mà người ta sử dụng các giao thức khác nhau. Trong các loại giao thức đó thì hai giao thức quan trọng nhất là: + Giao thức đồng bộ theo thời gian. + Giao thức theo vị trí. 3.3.1. Đồng bộ theo thời gian: - Mạng cảm biến cần liên kết với thế giới thực để biết khi nào một hiện tượng xảy ra. - Dịch vụ cơ bản chính của mạng cảm biến là tích hợp dữ liệu. Do đó cần đồng bộ giữa các nút để có thể tích hợp dữ liệu truyền đến Sink mạng. - Một vài giao thức yêu cầu đồng bộ thời gian: Quản lý cấu hình mạng. - Các nút cảm biến thường nhỏ, giá thành thấp nên bộ dao động thường không chính xác, hơn nữa chúng bị giới hạn về năng lượng nên thường có chế độ sleep để tiết kiệm năng lượng. Các nút có thể đo thời gian bằng cách dùng các xung đồng hồ cục bộ lấy từ các bộ dao động. Bởi vì các pha ngẫu nhiên làm dịch chuyển và làm trôi tốc độ của bộ dao động, do vậy thời gian cục bộ của các nút sẽ bắt đầu sai khác đi làm cho mạng mất đi sự đồng bộ. Do vậy việc đồng bộ thời gian có vai trò rất quan trọng trong hoạt động của mạng cảm biến. Đồng bộ thời gian là phương thức các thực thể riêng biệt trong một nhóm đồng bộ xung đồng hồ của chúng hoặc đồng bộ với thời gian toàn cầu phối hợp. Phương pháp cơ bản để đồng bộ thời gian trong mạng cảm biến là cộng tác giữa các nút trong toàn mạng. Thiết lập mối liên hệ cặp dây (pair-wise) giữa các nút trong mạng sau đó mở rộng ra toàn mạng. Có hai cách thiết lập sự cộng tác giữa hai nút trong mạng đó là: + Đồng bộ giữa bên gửi và bên nhận: Yêu cầu liên kết hai chiều giữa hai nút lân cận. Hình 1.7. Đồng bộ giữa bên gửi và bên nhận + Đồng bộ giữa bên nhận và bên nhận: Yêu cầu nhiều nút nhận của các gói có nhãn thời gian như nhau đồng bộ với nhau mà không yêu cầu đồng bộ với bên gửi. Hình 1.8. Đồng bộ giữa bên nhận và bên nhận 3.3.2. Đồng bộ theo vị trí: Trong nhiều trường hợp việc xác định vị trí trong thế giới tự nhiên của các nút trong mạng cảm biến là rất cần thiết, nó có ý nghĩa hoặc là mục đích của mạng cảm biến. Ví dụ: Như trong ứng dụng quan sát môi trường và khí tượng học, dữ liệu sẽ không còn có ý nghĩa nếu như không được đánh dấu thời gian và vị trí. Đồng bộ theo vị trí có hai loại cơ bản là: + Đồng bộ dựa vào mốc có sẵn: Phương pháp này giả sử như sau: Có một vài con cảm biến đã biết vị trí. Những nút này sẽ gửi tín hiệu mốc (dẫn đường) theo chu kỳ. Các nút khác sẽ đo tín hiệu này, sử dụng phép đo tam giác, trễ để đánh giá vị trí. RSSI (Receiver Signal Strength Indicator) được dùng để xác định sự tương quan tín hiệu với khoảng cách. Tuy nhiên phương pháp này chỉ phù hợp với tín hiệu RF, và rất nhạy cảm với vật cản, nhiễu đa đường, ảnh hưởng của môi trường... Hơn nữa tín hiệu RF phải có phạm vi tốt: Khoảng vài chục mét. Ngoài ra ngởi ta còn sử dụng RF và sóng siêu âm: Nút mốc truyền tín hiệu RF và một sóng siêu âm tới bộ thu. Thời gian đến khác nhau giữa hai tín hiệu đợc sử dụng để đo khoảng cách. Phạm vi lên tới 3 m, độ chính xác 2cm. + Đồng bộ theo vị trí tương đối Mặc dù các giao thức định vị dựa trên vật mốc rất hiệu quả đối với một số ứng dụng nào đó, một số mạng cảm ứng khác có thể được triển khai ở vùng mà không thể bị ảnh hưởng bởi vật mốc hoặc GPS, lúc đó chúng có thể bị ảnh hưởng bởi nhiễu môi trường hay là do sai số khi điều khiển. Để khắc phục những khó khăn này, các thông tin vùng được đặt theo từng bước truyền từ nguồn cho đến sink. Để thu được các thông tin vùng chính xác, các nút cảm ứng phải kết hợp để hỗ trợ cho nhau. Hơn nữa, năng lượng có thể được dự trữ thêm bằng việc cho phép các nút cảm ứng dò theo vị trí của các nút lân cận. Để tăng độ chính xác của việc ước lượng vị trí, sink có thể yêu cầu tất cả các nút dọc theo đờng từ nguồn phải lọc từng phần để tăng số lượng vật mẫu. Quá trình tác động cục bộ này không yêu cầu bất kì một vật mốc nào. Hơn nữa, phần xử lý trung tâm không cần phải quyết định vị trí của các nguồn. CHƯƠNG 2: CHUẨN TRUYỀN THÔNG ZIGBEE - IEEE 802.15.4 I - TỔNG QUAN VỀ CHUẨN TRUYỀN THÔNG ZIGBEE - IEEE 802.15.4 1.1. Đặt vấn đề: Với sự phát triển và tiến bộ không ngừng của công nghệ truyền thông, thì truyền thông trong mạng không dây đang là một công nghệ mới với nhiều tính năng ứng dụng trong khoa học cũng như trong đời sống. Song những yêu cầu về tối ưu năng lượng, truyền thông... luôn là những vấn đề quan trọng trong mạng truyền thông không dây (đặc biệt là mạng cảm biến không dây - WSN). Hiện nay, ngoài những vấn đề trên thì mạng cảm biến không dây có những yêu cầu khác như là: - Dễ dàng lắp đặt, vận hành, ít lỗi, khả năng tương thích cao và giá thành thấp. - Độ rộng phổ lớn, không cần phải mở rộng thêm băng thông, tốc độ đường truyền cao, ổn định. (Các nhà khoa học trên thế giới đã nghĩ đến việc sử dụng các băng tần cao hơn, nhưng công nghệ điện tử và chế tạo chưa theo kịp. Do đó người ta đã sử dụng một số phương pháp khác như sử dụng lại kênh tần số... nhưng vẫn còn những vấn đề phát sinh như gây nhiễu lẫn nhau giữa các thiết bị cùng tần số, hoặc xung đột giữa các thiết bị...). Do đó ứng dụng Chuẩn Zigbee vào mạng cảm biến không dây sẽ là một giải pháp hiệu quả để giải quyết các vấn đề trên. 1.2. Sự ra đời của chuẩn Zigbee: * Chuẩn Zigbee (chuẩn IEEE 802.15.4) là một chuẩn thuộc nhóm chuẩn IEEE 802.15. Nhóm chuẩn này ra đời để phục vụ cho chuẩn WPAN. Chuẩn WPAN là chuẩn của mạng cá nhân không dây, dùng để điều khiển dữ liệu trong không gian nhỏ và truyền tin trong khoảng cách tương đối ngắn (bán kính hoạt động nhỏ hơn 30m). Song chuẩn WPAN tiêu tốn ít năng lượng, độ suy hao năng lượng thấp, vận hành trong không gian nhỏ, cơ sở hạ tầng không yêu cầu cao nhưng vẫn liên lạc hiệu quả. Nhóm chuẩn WPAN (IEEE 802.15) được chia ra làm 3 loại: Sự phân chia này được dựa vào 3 yếu tố là: + Tốc độ truyền tin + Mức tiêu hao năng lượng + Chất lượng phục vụ QoS - IEEE 802.15.3: (Untra Wide Band): Ứng dụng đa phương tiện, chất lượng phục vụ cao. Sử dụng phần lớn phổ để trao đổi dữ liệu. Tín hiệu cho mỗi băng tần thường nhỏ và ít bị nhiễu bởi các tín hiệu khác. IEEE 802.15.3 có khả năng truyền hàng trăm Mbit/s trong phạm vi hàng trăm mét. - IEEE 802.15.1: (Bluethoot): Sử dụng trong mạng điện thoại tế bào, máy tính cá nhân bỏ túi PDA, có QoS phù hợp. Chuẩn này được phát triển có khả năng kết nối với 7 thiết bị con, được thiết kế để thay dây dẫn trong kết nối các thiết bị ngoại vi. Phiên bản mới nhất là 2.0 + ERD có khả năng truyền 3Mbit/s trong khoảng 100. - IEEE 802.15.4: (Zigbee): Ứng dụng vào mạng cảm biến dùng để điều khiển, cảm biến và truyền dữ liệu. + IEEE 802.15.4 hoạt động ở dải tần 2,4GHz với 255 thiết bị. Phạm vi truyền khoảng 10m với tốc độ truyền 250kbps. + IEEE 802.15.4a hoạt động ở dải tần 868MHz, 900MHz với 65000 thiết bị. Phạm vi hoạt động 75m với tốc độ truyền tin 20kbps. Tùy vào từng ứng dụng mà chuẩn Zigbee sẽ hoạt động trên từng băng tần khác nhau (Băng tần 2,4GHz chỉ truyền được 10m so với 75m của băng tần 868MHz và 900MHz nhưng tốc độ truyền tin là 250kbps). IEEE.802.15.3 IEEE.802.15.1 IEEE.802.15.4 QoS Cao Trung bình Thấp Ứng dụng Đa phương tiện Điện thoại, TB ngoại vi Cảm biến, truyền D.liệu Khả năng hoạt động 10 - 80m 10m 10 - 75m Tốc độ bit » 500 Mbps 1 - 3Mbps 250kbps 20 - 40kbps Dải tần 2,4GHz 5 GHz 2,4GHz 2,4GHz 915; 868 MHz PP giao tiếp Truyền file có d.lượng lớn Truyền file hình ảnh, thoại.. Truyền gói tin nhỏ 1.3. Ưu điểm của chuẩn Zigbee: - Áp dụng cho hệ thống điều khiển, cảm biến (do mạng cảm biến không dây chỉ truyền được tối đa là 250kbps ở dải tần 2,4GHz cho nên ứng dụng chủ yếu của mạng là cảm biến và điều khiển, mạng không dùng để truyền dữ liệu). - Tốc độ truyền tin thấp nhưng chu kỳ hoạt động dài. - Mạng tiêu hao ít năng lượng (chỉ với 2 nguồn pin AA, một nốt mạng có thể sống từ 6 tháng đến 2 năm tùy vào từng ứng dụng). Thời gian nhận gửi một gói tin của mạng khoảng 15msec. Các nút mạng giao tiếp với nhau bằng phương thức truyền từng gói tin nhỏ. - Giá thành thấp, ít lỗi dễ mở rộng, có khả năng tương thích cao với các điều kiện tự nhiên. - Tầng mạng của Zigbee có một ưu điểm nổi bật là giảm được sự hỏng hóc dẫn đến gián đoạn kết nối. (Đây là mạng không dây mắt lưới tiêu chuẩn cho nên nó có những ưu điểm của mạng mắt lưới: Các nút truyền tải dữ liệu, âm thanh, câu lệnh với nhau, cho phép truyền thông liên tục và có khả năng tự xác định lại cấu hình xung quanh đường đi bị che chắn bằng cách nhảy từ nút này sang nút khác cho đến khi thiết lập được kết nối). 1.4. Những phần tử cơ bản của hệ thống Zigbee: Mạng cần phải có tối thiểu 2 phần tử: - FFD (Full function devide): Đảm nhận các chức năng trong mạng. FFD có khả năng hoạt động như một: + Điều phối viên của toàn mạng PAN + Điều phối viên của một mạng con + Thành viên trong mạng. - RFD (reduced function devide): Đảm nhận một số chức năng hạn chế với các ứng dụng đơn giản, dữ liệu nhỏ. 1.5. Những kiểu thiết bị của hệ thống Zigbee: - ZC (Zigbee Coordinator): Đây là 1 FFD, nó là gốc mạng hình cây, là thiết bị bắc cầu tới mạng khác. Đặc trưng của ZC: + Thiết lập một mạng mới. + Truyền tín hiệu mạng. + Quản lý nốt mạng. + Hoạt động tiêu biểu là nhận trạng thái. + Lưu trữ thông tin mạng, khoá bảo mật. - ZR (Zigbee Router): Đây là 1 FFD, nó có các chức năng như: + Định tuyến trung gian truyền dữ liệu + Cho phép mở rộng mạng + Theo dõi, điều khiển, thu thập dữ liệu như nút bình thường - ZED (Zigbee End Devide): Đây là 1 FFD hoặc 1 RFD, nó không chuyển tiếp dữ liệu nhưng có một số đặc điểm như: + Yêu cầu bộ nhớ, khả năng tính toán thấp nên giá thành thấp + Chức năng chủ yếu là thu thập dữ liệu, theo dõi, điều khiển 1.6. Một số cấu hình mạng cơ bản của chuẩn Zigbee: Chuẩn Zigbee có 3 cấu hình mạng cơ bản: + Mạng hình sao: Star Network: + Mạng mắt lưới: Mesh Network + Mạng hình cây: Cluster Tree Tuỳ vào từng ứng dụng cụ thể mà người ta thiết lập mạng theo những cấu hình mạng khác nhau. a/ Star Network: Hình 2.1. Mạng hình sao Mạng chỉ có FFD và RFD (hay ZC và ZED). Khi FFD được kích hoạt lần đầu tiên nó sẽ trở thành bộ điều phối mạng PAN. Mỗi mạng hình sao có PAN ID riêng để mạng hoạt động độc lập. Mạng chỉ có một ZC duy nhất, kết nối với các FFD và RFD khác. ZED không truyền trực tiếp dữ liệu cho nhau. Mạng chỉ có một ZC duy nhất đóng vai trò như một điều phối viên toàn mạng, khi được kích hoạt, ZC này sẽ hoạt động. Tuỳ vào năng lượng kênh và số mạng tìm được trên mỗi kênh mà ZC sẽ thành lập mạng với một PAN ID 16bit. Sau đó nó sẽ cho phép các nút con tham gia liên kết với mạng. Trong mạng này ZED đóng vai trò là một RFD. Hoạt động của RFD này chỉ là thu thập dữ liệu, điều khiển và cảm biến. Các ZED này không thể truyền tin trực tiếp cho nhau được mà chỉ có thể truyền qua ZC. b/ Mesh Network Mạng mắt lưới có ưu điểm cho phép truyền thông liên tục và có khả năng tự xác định lại cấu hình xung quanh đường đi bị che chắn bằng cách nhảy từ nút này sang nút khác cho đến khi thiết lập được kết nối. Hình 2.2. Mạng hình mắt lưới Đặc điểm của mạng: - Hình thành tương tự như mạng hình sao. Song trong mạng này có thêm sự xuất hiện của ZR. ZR này đóng vai trò như một RFD,dùng để định tuyến dữ liệu, mở rộng mạng và nó cũng có khả năng điều khiển, thu thập số liệu như một nút bình thường. - Được kết hợp bởi cấu trúc mạng hình sao và cấu trúc mạng ngang hàng. - Đây là mạng chuyển của Zigbee, tất cả các nút trong mạng có thể truy cập ngang hàng trong truyền thông. - Ứng dụng trong đo lường, điều khiển, theo dõi cảnh báo... c/ Cluster Tree Topology : Cấu trúc này là một dạng đặc biệt của cấu trúc mắt lưới, trong đó đa số thiết bị là FFD và một RFD có thể kết nối vào mạng hình cây như một nốt rời rạc ở điểm cuối của nhánh cây. Bất kỳ một FFD nào cũng có thể hoạt động như là một coordinator và cung cấp tín hiệu đồng bộ cho các thiết bị và các coordinator khác vì thế mà cấu trúc mạng kiểu này có qui mô phủ sóng và khả năng mở rộng cao. Hình 2.3. Mạng hình cây Trong loại cấu hình này mặc dù có thể có nhiều coordinator nhưng chỉ có duy nhất một bộ điều phối mạng PAN (PAN coordinator). Bộ điều phối mạng PAN coordinator này có một chỉ số nhận dạng cá nhân đặc biệt gọi là là CID-0 bằng cách tự thành lập CLH (cluster head) bằng CID-0 (cluster identifier), nó chọn một PAN identifier rỗi và phát khung tin quảng bá nhận dạng tới các thiết bị lân cận. Thiết bị nào nhận được khung tin này có thể yêu cầu kết nối vào mạng với CLH. Nếu bộ điều phối mạng PAN (PAN coordinator) đồng ý cho thiết bị đó kết nối thì nó sẽ ghi tên thiết bị đó vào danh sách. Cứ thế thiết bị mới kết nối này lại trở thành CLH của nhánh cây mới và bắt đầu phát quảng bá định kỳ để các thiết bị khác có thể kết nối vào mạng. Từ đó có thể hình thành được các CLH1,CLH2,... Những thiết bị của Zigbee lưu trữ thông tin về nút cha và nút con trong khoảng bộ nhớ không đổi gọi là bảng neighbor. Khi được kích hoạt, một thiết bị con được xác định thông qua bảng này. Nó sẽ thực hiện một thông báo mồ côi để phát quảng bá trong mạng. Những thiết bị nhận được thông báo (là các nút cha) sẽ kiểm tra bảng neighbor của chúng. Nếu đúng thì sẽ thông báo lại địa chỉ cho nút con. Còn nếu sai thì nút con sẽ tham gia vào mạng như một thiết bị mới ở mức độ sâu nhất. II- KIẾN TRÚC GIAO THỨC MẠNG CỦA CHUẨN ZIGBEE: 2.1. Tầng vật lý: 2.1.1. Cấu tạo lớp vật lý: * Tầng vật lý bao gồm 2 dịch vụ: - Dịch vụ quản lý tầng vật lý (PLME:physical layer management entity): PLME chịu trách nhiệm bảo trì cơ sở dữ liệu của các đối tượng được quản lý gắn liền với PHY. - Dịch vụ dữ liệu PHY(phy protocol data unit): điều khiển việc thu và phát của khối dữ liệu PPDU thông qua kênh sóng vô tuyến vật lý. * Chức năng của tầng PHY: là sự kích hoạt hoặc giảm kích hoạt của bộ phận nhận sóng, phát hiện năng lượng, chọn kênh, chỉ số đường truyền, giải phóng kênh truyền, thu và phát các gói dữ liệu qua môi trường truyền. 2.1.2. Phạm vi hoạt động tần số: PHY (MHz) Băng tần (MHz) Tốc độ chip (kchips/s) Điều chế Ký tự 868 868-868.6 300 BPSK Nhị phân 915 902-928 600 BPSK Nhị phân 2450 2400-2486.5 2000 O-QPSK Hệ 16 Bảng 2.1 Băng tần và tốc độ dữ liệu - Có 27 kênh truyền, từ 0-26 trên ba dải tần số khác nhau như sau: Tần số trung tâm (MHz) Số l ượng kênh (N) Kênh Tần số kênh trung tâm (MHz) 868 1 0 868.3 915 10 1 – 10 906+2(k-1) 2450 16 11 – 26 2405+5(k-11) Bảng 2.2 Kênh truyền và tần số 2.1.3. Các thông số kỹ thuật trong tầng vật lý của IEEE 802.15.4 * Chỉ số ED (energy detection): - Chỉ số ED đo đạc được bởi bộ thu ED. - ED được tầng mạng sử dụng như là một bước trong thuật toán chọn kênh. - ED là kết quả của sự ước lượng công suất năng lượng của tín hiệu nhận được trong băng thông của kênh trong IEEE 802.15.4. - ED không có vai trò trong việc giải mã hay nhận dạng tín hiệu truyền trong kênh này. - Thời gian phát hiện và xử lý ED tương đương khoảng thời gian 8symbol - Kết quả phát hiện năng lượng sẽ được thông báo bằng 8 bit số nguyên trong khoảng từ 0x00 tới 0xff. - Giá trị nhỏ nhất của ED (=0) khi mà công suất nhận được ít hơn mức 10dB so với lý thuyết. Độ lớn của khoảng công suất nhận được để hiển thị chỉ số ED tối thiểu là 40dB và sai số là ± 6dB * Chỉ số chất lượng đường truyền (LQI) - Chỉ số chất lượng đừong truyền LQI là đặc trưng chất lượng gói tin nhận được. - Giá trị kết quả LQI được giao cho tầng mạng và tầng ứng dụng xử lý. * Chỉ số đánh giá kênh truyền (CCA) - Nhiệm vụ của CCA: kiểm tra xem khi nào một kênh truyền được coi là rỗi hay bận. - Có ba phương pháp để thực hiện việc kiểm tra này: + CCA 1 : “Năng lượng vượt ngưỡng”. CCA sẽ thông báo kênh truyền bận trong khi dò ra bất kỳ năng lượng nào vượt ngưỡng ED. + CCA 2 : “Cảm biến sóng mang”. CCA thông báo kênh truyền bận chỉ khi nhận ra tín hiệu có đặc tính trải phổ và điều chế của IEEE802.15.4. Tín hiệu này có thể thấp hoặc cao hơn ngưỡng ED + CCA 3 : “Cảm biến sóng mang kết hợp với năng lượng vựơt ngưỡng”. CCA sẽ báo kênh truyền bận chỉ khi dò ra tín hiệu có đặc tính trải phổ và điều chế của IEEE 802.15.4 với năng lượng vượt ngưỡng ED. 2.2.Vấn đề Layer MAC. 2.2.1 Tổng quan lớp MAC. Hình 1.4. Mô hình phân lớp của chuẩn Zigbee IEEE 802.15.4 Layer MAC: media access control: Là tầng điều khiển truy cập. (hình vẽ). - Lớp con MAC cung cấp ghép nối giữa SSCS và PHY. - Lớp con MAC bao gồm một thực thể quản lý MAC được gọi là MLME. + MLME (MAC Sublayer management entity): Thực thể này cung cấp dịch vụ quản lý lớp thông qua các hàm quản lý lớp. MLME chịu tránh nhiệm bảo trì cơ sở dữ liệu của các đối tượng được quản lý gắn liền với lớp con MAC. -Và một thực thể quản lý truy cập dữ liệu MAC được gọi là MCPL. + MCPC (MAC Conmon Part Sublayer): Thực thể này cung cấp dịch vụ quản lý dữ liệu truy cập qua MACP-SAP. => Hai dịch vụ này cung cấp ghép nối giữa SSCS và PHY qua PD-SAD và MLME-SAP. Tuy nhiên còn có những ghép nối ngoài và ghép nối ẩn tồn tại giữa MLME và MCPS cho phép MLME sử dụng dịch vụ dữ liệu MAC. - CPS: Dịch vụ dữ liệu MAC. - LME(MAC layer management entity:Dịch vụ quản lý MAC. - AC PIB:MAC PAN information base. 2.2.2. Nhiệm Vụ: - Lớp con MAC quản lý tất cả các truy cập kênh vô tuyến và có nhiệm vụ sau: + Phát ra báo hiệu mạng nếu thiết bị là một coordinator + Đồng bộ báo hiệu + Hỗ trợ sự liên kết và phân tách + Hỗ trợ bảo mật thiết bị. + Điều khiển cơ chế CSMA-CA cho truy cập kênh + Quản lý duy trì cơ chế GTS + Cung cấp mối liên kết tin cậy giữa hai thực thể MAC tương đương. 2.2.3. Thuật toán tránh xung đột đa truy cập sử dụng cảm biến sóng mang CSMA-CA. CSMA/CA (Carrier Sense Multiple Access-Collision Avoidance). Phương pháp tránh xung đột đa truy cập nhờ vào cảm biến sóng. Thực chất đây là phương pháp truy cập mạng dùng cho chuẩn mạng không dây IEEE 802.15.4. Các thiết bị trong mạng (các nốt mạng) sẽ liên tục lắng nghe tín hiệu thông báo trước khi truyền Đa truy cập (multiple access) chỉ ra rằng nhiều thiết bị có thể cùng kết nối và chia sẻ tài nguyên của một mạng (ở đây là mạng không dây). Tất cả các thiết bi đều có quyền truy cập như nhau khi đường truyền rỗi. Ngay cả khi thiết bị tìm cách nhận biết mạng đang sử dụng hay không,vẫn có khả năng là có hai trạm tìm cách truy cập mạng đồng thời.Trên các mạng lớn, thời gian truyền từ đầu cáp này đến đầu kia là đủ để một trạm có thể truy cập đến cáp đó ngay cả khi có một trạm khác vừa truy cập đến.Nó tránh xung đột bằng cách là mỗi nốt sẽ phát tín hiệu về yêu cầu truyền trước rồi mới truyền thật sự. Thuật toán truy nhập kênh CSMA-CA được sử dụng trứớc khi phát dữ liệu hoặc trước khi phát khung tin MAC trong phần CAP. Thuật toán này sẽ không sử dụng để phát khung tin thông báo beacon, khung tin Ack, hoặc là khung tin dữ liệu trong phần CFP. Nếu bản tin báo hiệu đựơc sử dụng trong mạng PAN thì thuật toán CSMA-CA gán khe thời gian được dùng, ngựợc lại thuật toán CSMA-CA không gán khe thời gian sẽ đựợc sử dụng. Tuy nhiên trong cả hai trường hợp thuật toán đều được bổ xung bằng cách sử dụng khối thời gian backoff bằng với thời gian của tham số aUnitBackoffPeriod. Trong thuật toán truy nhập kênh CSMA-CA gán khe thời gian, biên của khoảng thời gian backoff của mỗi thiết bị trong mạng PAN được sắp thẳng hàng với biên của khe siêu khung của thiết bị điều phối mạng PAN. Trong thuật tóan này, mỗi lần thiết bị muốn truyền dữ liệu trong CAP thì nó phải xác định biên thời gian backoff kế tiếp. Trong thuật toán CSMA-CA không gán khe thời gian thì khoảng thời gian backoff của một thiết bị trong mạng không cần phải đồng bộ với khoảng thời gian backoff của thiết bị khác. Mỗi thiết bị chứa 3 biến số: NB, BW, BE. Trong đó NB là số lần mà thuật toán này bị yêu cầu rút lại trong khi đang cố gắng truyền. Giá trị ban đầu của nó là 0 trước khi truyền. Biến CW là độ dài cửa sổ tranh chấp, nó cho biết khoảng thời gian cần thiết để làm sạch kênh truyền trước khi phát, giá trị ban đầu của nó là 2 trước khi cố gắng phát và quay trở lại 2 khi kênh truy nhập bị bận. Biến số CW chỉ sử dụng cho thuật toán gán khe thời gian CSMA-CA. Biến số BE (backoff_exponent) cho biết một thiết bị phải chờ bao lâu để có thể truy nhập vào một kênh. Cho dù bộ thu của thiết bị làm việc trong suốt khoảng thời gian CAP của thuật tóan nhưng nó vẫn bỏ qua bất kỳ khung tin nào nhận đựơc trong khoảng thời gian này. Trong thuật toán CSMA-CA gán khe thời gian, NB, CW, BE được thiết lập trước, biên của khoảng thời gian backoff kế tiếp cũng được xác định trước. Trong thuật toán CSMA-CA không gán khe thời gian thì NB và BE được thiết lập trước (bước 1). Tầng MAC sẽ trễ ngẫu nhiên trong phạm vi 0 đến 2*BE -1(bước2) sau đó yêu cầu tầng PHY thực hiện đánh giá truy kênh truy nhập xem là rỗi hay bận.(bứớc3). Nếu kênh truyền bận(bước4), tầng MAC sẽ tăng NB và BE lên 1, nhưng cũng luôn đảm bảo rằng giá trị này nhỏ hơn aMaxBE. Trong CSMA-CA gán khe thời gian thì việc truyền khung tin, Ack phải được thực hiện trước khi kết thúc phần CAP trong siêu khung, nếu không sẽ phải chờ đến CAP của siêu khung kế tiếp, trong thuật toán này thì CW có thể cũng reset lại thành giá trị 2. Nếu giá trị của NB nhỏ hơn hoặc bằng giá trị tham số macMaxCSMABackoffs, thì sẽ quay lại bứớc2 đồng thời thông báo lỗi truy nhập kênh. Nếu kênh truyền là rỗi (bước5) , trong CSMA-CA gán khe thời gian, tầng MAC phải giảm CW đi 1. nếu CW ≠ 0 quay trở lại bước 3. Nếu CW=0 thì thôgn báo truy nhập kênh thành công. Còn trong CSMA-CA không gán khe thời gian thì tầng MAC bắt đầu phát ngay nếu kênh truyền rỗi. 2.2.4. Các mô hình truyền dữ liệu. Dựa trên cấu trúc mạng WPAN thì ta có thể phân ra làm ba kiểu, ba mô hình truyền dữ liệu: - Từ thiết bị điều phối mạng PAN coordinator tới thiết bị thường, - Từ thiết bị thường tới thiết bị điều phối mạng PAN coordinator, - Giữa các thiết bị cùng loại. Nhưng nhìn chung thì mỗi cơ chế truyền đều phụ thuộc vào việc là kiểu mạng đó có hỗ trợ việc phát thông tin thông báo beacon hay không. Khi một thiết bị muốn truyền dữ liệu trong một mạng không hỗ trợ việc phát beacon, khi đó thì nó chỉ đơn giản là truyền khung dữ liệu tới thiết bị điều phối bằng cách sử dụng thuật toán không gán khe thời gian. Thiết bị điều phối Coordinator trả lời bằng khung Ack như hình vẽ. Hình 1.5. Liên lạc trong mạng không hỗ trợ beacon Khi một thiết bị muốn truyền dữ liệu tới thiết bị điều phối trong mạng có hỗ trợ beacon. Lúc đầu nó sẽ chờ báo hiệu beacon của mạng. Khi thiết bị nhận được báo hiệu beacon, nó sẽ sử dụng tín hiệu này để đồng bộ các siêu khung. Đồng thời, nó cũng phát dữ liệu sử dụng phương pháp CSMA-CA gán khe thời gian và kết thúc quá trình truyền tin bằng khung tin xác nhận Ack. Hình 1.6. Lin lạc trong mạng có hỗ trợ beacon Các ứng dụng truyền dữ liệu được điều khiển hoàn toàn bởi các thiết bị trong mạng PAN hơn là được điều khiển bởi thiết bị điều phối mạng. Chính khả năng này cung cấp tính năng bảo toàn năng lượng trong mạng ZigBee. Khi thiết bị điều phối muốn truyền dữ liệu đến một thiết bị khác trong loại mạng có hỗ trợ phát beacon, khi đó nó sẽ chỉ thị trong thông tin báo hiệu beacon là đang truyền dữ liệu. Các thiết bị trong mạng luôn luôn lắng nghe các thông tin báo hiệu beacon một cách định kỳ, khi phát hiện ra có dữ liệu liên quan tới nó đang đựợc truyền, nó sẽ phát lệnh yêu cầu dữ liệu này, công việc này sử dụng slotted CSMA-CA. Công việc này được mô tả bằng hình 3 , trong hình này thì khung tin Ack của thiết bị điều phối cho biết rằng gói tin đã được truyền thành công, việc truyền gói tin sử dụng kỹ thuật gán khe thời gian CSMA-CA, khung Ack thiết bị thường trả lời là nhận gói tin thành công. Vào lúc nhận khung tin Ack từ thiết bị thường thì bản tin sẽ được xóa khỏi danh sách bản tin trong thông tin báo hiệu beacon. Hình 1.7. Kết nối trong mạng hỗ trợ beacon Trong trường hợp mạng không hỗ trợ phát beacon (hình4) hiết bị điều phối muốn truyền dữ liệu tới các thiết bị khác, nó sẽ phải lưu trữ dữ liệu để cho thiết bị liên quan có thể yêu cầu và tiếp xúc với dữ liệu đó. Thiết bị có thể tiếp xúc được với dữ liệu liên quan đến nó bằng cách phát đi lệnh yêu cầu dữ liệu tới thiết bị điều phối, sử dụng thuật toán không gán khe thời CSMA-CA. Nếu dữ liệu đang được truyền, thì thiết bị điều phối sẽ phát khung tin bằng cách sử dụng thuật toán không gán khe thời gian CSMA-CA, nếu dữ liệu không được truyền thì thiết bị điều phối sẽ phát đi khung tin không có nội dung để chỉ ra rằng dữ liệu không được phát. Hình 1.8. Kết nối trong mạng không hỗ trợ beacon Nói chung trong mạng mắt lưới, tất cả các thiết bị đều bình đẳng và có khả năng kết nối đến bất kỳ thiết bị nào trong mạng miễn là thiết bị đó nằm trong bán kính phủ sóng của nó. Có hai cách để thực hiện việc kết nối. Cách thứ nhất là nốt trong mạng liên tục lắng nghe và phát dữ liệu của nó đi bằng cách sử dụng thuật tóan không gán khe thời gian CSMA-CA. Cách thứ hai là các nốt tự đồng bộ với các nốt khác để có thể tiết kiệm đựơc năng lượng. 2.3. Tầng mạng: 2.3.1. Kiến trúc tầng mạng: Hiện nay IEEE 802.15.4 tập trung vào các chi tiết kỹ thuật của tầng vật lý và tầng điều khiển truy cập MAC ứng với mỗi loại mạng. Tính năng nổi bật ở tầng mạng của Zigbee là giảm được sự hỏng hóc dẫn đến gián đoạn kết nối (một vài nút trong trường hợp bị hỏng sẽ không ảnh hưởng tới sự truyền thông trong mạng). Hình 1.9. Lớp mạng của chuẩn Zigbee Lớp mạng cung cấp hai dịch vụ truy cập qua hai SAP: + Dịch vụ dữ liệu lớp mạng truy cập qua NLDE-SAP + Dịch vụ quản lý lớp mạng truy cập qua NLME-SAP Hai dịch vụ này hỗ trợ ghép nối giữa lớp lứng dụng và lớp con MAC qua ghép nối MCPS-SAP và MLME-SAP. Thêm vào đó còn có những ghép nối ngoài và những ghép nối ẩn giữa NLME và NLDE để cho phép NLDE sử dụng dịch vụ dữ liệu NWK. * NLDE - SAP: (Network layer data entity): - Thực thể dữ liệu lớp mạng hỗ trợ sự chuyển tiếp của giao thức bộ phận dữ liệu. Những thiết bị này chỉ định vị trên những mạng tương đương nhau. - NLDE cung cấp một dịch vụ dữ liệu để truyền tải APDU giữa 2 hoặc nhiều thiết bị. Hai dịch vụ đó là: + Generation of the Network level PDU (NPDU): NLDE sẽ có khả năng phát sinh một NPDU từ một lớp con hỗ trợ ứng dụng PDU thông qua việc thêm vào của một header thích hợp. + Topology specific routing: NLDE có thể truyền một NPDU tới thiết bị thích hợp là điểm đến cuối cùng của truyền thông hay bước tiếp theo về phía nơi đến cuối trong chuỗi truyền thông. * NLME - SAP: (Network layer manager entity): NLME sẽ cung cấp các dịch vụ: + Configuring a new device: Khả năng cấu hình đầy đủ Stack cho hoạt động được yêu cầu. Những tùy chọn cấu hình bao gồm việc thao tác như một ZC hoặc tham gia vào một mạng đã tồn tại. + Starting a network: Khả năng thiết lập một mạng mới. + Joining and leaving a network: Khả năng tham gia hay rời mạng cũng như khả năng ZC hay ZR yêu cầu một thiết bị rời mạng. + Addressing: Khả năng địa chỉ cho thiết bị tham gia vào mạng của ZC và ZR. + Neighbor discovery: Khả năng khám phá, ghi và báo cáo thông tin gắn liền với một bước nhảy ngắn của một thiết bị. + Route discovery: Khả năng khám phá và ghi lại đường đi qua mạng nhờ đó các thông báo được định tuyến hiệu quả. + Reception control: Khả năng cho phép một thiết bị điều khiển khi bộ thu được kích hoạt và cho phép đồng bộ lớp con MAC. 2.3.3. Cơ chế truyền dữ liệu Trong mạng không báo hiệu, khi một thiết bị muốn gửi dữ liệu, nó phải chờ tới khi kênh rỗi. Khi một kênh rỗi được phát hiện, thiết bị có thể truyền dữ liệu đi. Mỗi nút mạng chuẩn ZigBee sẽ có hai địa chỉ: một địa chỉ MAC 64 bit và một địa chỉ mạng 16 bit. Mỗi một thiết bị truyền thông sử dụng chuẩn ZigBee phải có một địa chỉ MAC 64 bít duy nhất toàn cầu. Địa chỉ này bao gồm 24 bit OUT cộng với 40 bit xác định bởi nhà sản xuất. Các OUT phải mua từ IEEE để bảo đảm chắc chắn tính duy nhất toàn cầu. (Một nốt mạng gồm 2 bộ đếm độc lập đó là: Sequence Number và Broadcast ID). Nếu thiết bị nơi đến là một FFD, bộ truyền nhận của nó luôn luôn bật và các thiết bị khác có thể truyền tới nó ở bất kỳ thời gian nào. Khả năng này cho phép đối với mạng lưới. Tuy nhiên, nếu thiết bị là RFD, nó có khả năng tiết kiệm năng lượng bằng cách tắt bộ truyền nhận khi rỗi. RFD sẽ không nhận thông báo ở trong trạng thái này. Tất cả những thông báo đi và đến RFD đều đi qua nút bố mẹ là FFD. Khi RFD bật nguồn bộ thu phát, nó sẽ yêu cầu các thông báo từ nút cha mẹ. Nếu nút cha mẹ đã có các thông báo trong bộ đệm, thông báo sẽ được đẩy đến các nút con. Điều này cho phép RFD tiết kiệm năm lượng nhưng FFD phải có đủ bộ nhớ để chứa các thông báo cho tất cả nut con của chúng. Nếu các nút con không yêu cầu, sau một thời gian nhất định, thông báo đó sẽ bị nút cha mẹ hủy bỏ. 2.3.4. Sự bảo mật tại lớp mạng của chuẩn Zigbee: (Security) Phương pháp bảo mật: - Thiết lập khóa - Truyền thông sử dụng khóa - Bảo vệ khung - Quản lý thiết bị. Kiến trúc bảo mật ZigBee: - Lớp NWK và APS đảm bảo an toàn chuyên trở của các khung tương ứng. - Lớp con APS cung cấp các dịch vụ thiết lập và bảo trì các mối quan hệ an toàn. - ZDO quản lý bảo mật và cấu hình bảo mật thiết bị. Bảo mật đơn bước nhảy: - Bảo vệ các khung lệnh MAC, các beacons, Ack người ta sử dụng khung tin bảo mật để mã hoá thông tin (dịch vụ của bảo mật của tầng MAC). Bảo mật đa bước nhảy: - Với truyền tin đa bước nhảy, sự bảo mật sẽ được thực hiện ở tầng mạng với các chức năng như: + Thiết lập khoá key + Quyết định mức độ bảo mật + Điều khiển quá trình mã hoá. - Cơ chế hoạt động của bảo mật đa bước nhảy: + Khi lớp Mac nhận hay phát một khung tin được bảo mật, nó sẽ kiểm tra đích hoặc nguồn của khung tin để tìm khoá kết hợp với địa chỉ đích hoặc nguồn và xử lý bảo mật theo khoá quy định. (1 Bit ở đầu khung tin MAC cho biết khung MAC có bảo mật hay không). + Khi bảo mật một khung từ lớp NWK, thuộc tính nwkSecure AllFrames trong NIB là TRUE ZigBee sẽ sử dụng cơ chế bảo vệ khung cho đến khi tham số SecurityEnable của primitive NLDE-DATA.request là FALSE. + Cơ chế bảo vệ khung lớp NWK sẽ sử dụng AES và CCM. + Mức bảo mật được áp dụng vào một khung NWK được xác định bởi thuộc tính nwkSecurityLevel trong NIB. 2.3.5. Định dạng thông báo chuẩn ZigBee: Một thông báo chuẩn ZigBee có thể lên tới 127 byte bao gồm các trường sau: - MAC Header Bao gồm: + Các trường điều khiển khung MAC + Số thứ tự báo hiệu BSN + Thông tin địa chỉ của thông báo hiện thời được truyền. - Network Layer (NWK) Header: Cung cấp thông tin nguồn thực tế và nguồn cuối cùng của thông báo. - Application Support Sub-Layer (APS) Header Bao gồm: + ID profile + ID cluster + Endpoint nơi đến trong thông báo hiện tại. - APS Payload: Trường này gồm các khung dữ liệu chuẩn ZigBee 2.4. Tầng ứng dụng của ZigBee/IEEE 802.15.4 2.4.1. Kiến trúc tầng ứng dụng: Lớp ứng dụng của ZigBee/IEEE802.15.4 thực chất gồm các ba tầng như hình vẽ trên, các tầng này tương ứng với các tầng phiên, trình diễn và ứng dụng trong mô hình OSI 7 tầng Hình 1.10. Lớp ứng dụng của chuẩn Zigbee Trong ZigBee/IEEE 802.15.4 thì chức năng của tầng Application Framework là: • Dò tìm ra xem có nốt hoặc thiết bị nào khác đang hoạt động trong vùng phủ sóng của thiết bị đang hoạt động hay không. • Duy trì kết nối, chuyển tiếp thông tin giữa các nốt mạng. Chức năng của tầng Application Profiles là: • Xác định vai trò của các thiết bị trong mạng. (thiết bị điều phối mạng, hay thiết bị đầu cuối, FFD hay RFD….) • Thiết lập hoặc trả lời yêu cầu kết nối. • Thành lập các mối quan hệ giữa các thiết bị mạng. Chức năng của tầng Application là thực hiện các chức năng do nhà sản xuất qui định (giao diện…) để bổ sung thêm vào các chức năng do ZigBee qui định. 2.4.2 Lớp ứng dụng (Application layer) Lớp ứng dụng ZigBee gồm có lớp con APS, ZDO và các đối tượng ứng dụng được định nghĩa bởi nhà sản xuất. Nhiệm vụ của lớp con APS bao gồm bảo trì những bảng kết nối có khả năng phù hợp hai thiết bị với nhau dựa vào các dịch vụ của chúng. Nhiệm vụ của ZDO bao gồm định nghĩa vai trò của thiết bị trên mạng (ZC, ZR hay ZED), tìm kiếm các thiết bị trên mạng, xác định những dịch vụ ứng dụng nào chúng cung cấp, khởi tạo và (hoặc) trả lời những yêu cầu kết nối, thiết lập mối liên kết an toàn giữa những thiết bị mạng. III- THUẬT TOÁN ĐỊNH TUYẾN AODV: Trong ZigBee/ IEEE802.15.4 sử dụng thuật toán chọn đường có phân cấp nhờ xét các phương án tối ưu. Khởi điểm của thuật tóan định tuyến này chính là thuật toán miền công cộng đã được nghiên cứu rất kỹ có tên là AODV (Ad hoc On Demand Distance Vector) dùng cho những mạng có tính chất tự tổ chức và thuật toán hình cây của Motorola. AODV (Ad hoc On Demand Distance Vector) đơn thuần chỉ là thuật toán tìm đường theo yêu cầu trong mạng ad hoc (một mạng tự tổ chức). Có thể hiểu như sau, những nốt trong mạng khi mà không nằm trong tuyến đường truyền tin thì không duy trì thông tin nào về tuyến đường truyền và cũng không tham gia vào quá trình định tuyến theo chu kỳ. Nói kỹ hơn nữa, một nốt mạng không có chức năng tự định tuyến và lưu trữ tuyến đường tói một nốt mạng khác cho đến khi cả hai nốt mạng trên liên lạc với nhau, trừ trường hợp những nốt mạng cũ đề nghị dich vụ như là một trạm chuyển tiếp để giữ liên lạc giữa hai nốt mạng khác. Mục đích đầu tiên của thuật toán là chỉ phát quảng bá các gói tin dò đường khi cần thiết hoặc khi có yêu cầu, việc làm này để phân biệt giữa việc quản lý liên lạc cục bộ với việc bảo quản giao thức liên lạc chung và để phát quảng bá thông tin về sự thay đổi trong liên kết cục bộ tới những nốt di động lân cận (là những nốt cần thông tin để cập nhật). Khi một nốt nguồn cần để kết nối tới nốt khác, mà nốt nguồn không chứa thông tin về thông tin tuyến đường tới nốt đó, như vậy một quá trình tìm đường được thiết lập. Để thiết lập quá trình tìm đường này thì mỗi nốt mạng đều lưu hai bộ đếm độc lập: sequence number và broadcast id. Để bắt đầu quá trình tìm đường, nốt nguồn sẽ khởi tạo một gói tin tìm đường (RREQ) và phát quảng bá gói tin này tới tất cả các nốt mạng lân cận, gói tin RREQ này chứa các thông tin về địa chỉ nguồn (source addr), số chuỗi nguồn(source sequence number), số id quảng bá (broadcast id), địa chỉ đích (dest addr), số chuỗi đích (dest sequence number), số đếm bước truyền (hop cnt). Bởi mỗi khi nốt mạng nguồn phát ra một gói tìn RREQ mới thì số id quảng bá sẽ tăng lên, nên trong mỗi gói tin RREQ thì cặp địa chỉ nguồn và số id quảng bá luôn luôn là duy nhất. Khi nốt mạng trung gian nhận được một gói tin RREQ mới, nó sẽ đem so sánh địa chỉ nguồn và số id quảng bá với gói tin RREQ trước đó, nếu giống nhau nốt mạng trung gian này sẽ tự động xóa RREQ dư thừa này và dừng việc phát gói tin này lại. Nhưng nếu so sánh thấy khác nhau thí nốt mạng này sẽ tự động tăng số đếm bước truyền (hop cnt) lện và tiếp tục phát quảng bá gói tin RREQ này tới các nốt lân cận để tiếp tục quá trình tìm đường. Trong mỗi một nốt mạng đều lưu trữ các thông tin về địa chỉ IP đích, địa chỉ IP nguồn, số id quảng bá, số chuỗi nốt nguồn, và thời gian thời gian hạn định cho phép gói tin mang thông tin xác nhận được gửi trả lại nơi phát Khi gói tin RREQ được truyền trên mạng từ nguồn tới đích, nó sẽ tự động thiết lập con đường ngựơc lại từ các nốt mạng này quay trở lại nốt nguồn. Để thiết lập tuyến đường ngược chiều, mỗi nốt phải lưu giữ bảng địa chỉ của các nốt bên cạnh mà nó sao chép được trong gói tin RREQ đầu tiên. Tuyến đường ngược chiều được lưu giữ trong thời gian tối thiểu để gói tin RREQ này vượt qua mạng và trở về nơi xuất phát ban đầu. Khi RREQ tới một nốt nào đấy mà có thể nốt mạng này là đích đến của nó, hoặc nốt này nằm trên tưyến đường truyền từ nguồn tới đích, nốt nhận tin này đầu tiên sẽ kiểm tra xem gói tin RREQ vừa nhận qua kết nối hai chiều. Nếu nốt mạng này chưa phải là nốt mạng đích nhưng có lưu giữ tuyến đường tới nốt đích, khi đó nó sẽ quyết định xem xem tuyến đường này có chính xác không bằng cách so sánh số chuỗi nguồn chứa bên trong gói tin RREQ này với số chuỗi nguồn trong bảng định tuyến của nốt mạng đó. Nếu số chuỗi đích của RREQ lớn hơn số chuỗi đích trong các nốt trung gian, thì nốt trung gian đó không không nằm trên tuyến đừơng truyến ứng với gói tin RREQ này. Nếu tuyến đường này có số chuỗi đích lớn hơn hoặc bằng với số chuỗi đích trong RREQ nhưng có số bước truyền nhỏ hơn, thì nó có thể phát một gói tin RREP (route reply packet) trở lại nốt mạng đã phát RREQ cho nó. Một gói tin RREP gồm có các trường thông tin sau: trường địa chỉ nguồn, trường địa chỉ đích, số chuỗi đích, số đếm bước truyền và thời gian sống. Khi mà gói tin RREP quay trở lại đựơc nốt nguồn, các nốt mạng dọc theo tuyến đường của RREP sẽ thiết lập con chỏ hướng tới nốt mạng RREP vừa đến, cập nhật thông tin timeout (timeout là khoảng thời gian mà một nốt không còn hoạt động nữa và nằm trong trạng thái chờ) của nó cho bảng định tuyến đường tới nguồn và đích, đồng thời sao lưu lại số chuỗi đích cuối của nốt đích cần tới. Những nốt mạng nằm dọc theo tuyến đường xác định bởi RREP sẽ “chết” sau khi hết thời gian yêu cầu đinh tuyến và con chỏ đảo bị xóa khi chúng không còn nằm trên tuyến đường truyền từ nguồn tới đích. Thời gian “chết” này phụ thuộc vào kích cỡ của mạng. Hình 1.12. Định dạng tuyến đường trong giao thức AODV Nốt nguồn có thể phát dữ liệu ngay khi nó nhận được gói tin RREP đầu tiên, đồng thời cũng luôn cập nhật thông tin về tuyến đừơng nếu phát hiện ra tuyến đường tối ưu hơn. Mỗi bảng định tuyến gồm các trường thông tin sau: trường thông tin về đích đến, bước truyền kế tiếp, số bước truyền, số chuỗi đích, nút lân cận tích cực thuộc tu yến đường, thời gian chết cho nhập liệu vào bảng định tuyến. Để duy trì đường truyền, mỗi nốt mạng luôn phải có địa chỉ của các nốt mạng tích cực lân cận (một nốt mạng được coi là tích cực nếu nó có chức năng khởi phát hoặc chuyển tiếp tối thiểu một gói tin đến đích trong thời gian cho phép). Khi mà bước truyền kế tiếp nằm trong tuyến đường từ nguồn tới đích này không thực hiện đựơc (tức là thông tin yêu cầu không được nhận trong một khoảng thời gian nào đó, thông tin yêu cầu này đảm bảo rằng chỉ có những nốt mạng nào liên lạc hai chiều mới được coi là nốt mạng lân cận). Quá trình này cứ tiếp diễn đến khi tất cả các nốt nguồn tích cực được thông báo. Nhờ vào việc nhận những thông báo về gián đoạn đường truyền, mà các nốt nguồn có thể khởi động lại quá trình tìm đường nếu chúng vẫn cần một tuyến đường tới đích cũ. Nếu nốt nguồn lựa chọn việc xây dựng lại tuyến đường mới từ nguồn tới đích, nó cần phải phân phát một gói tin RREQ mới với sô chuỗi đích mới lớn hơn số chuỗi đích cũ. IV- MỘT SỐ SẢN PHẨM SỬ DỤNG CÔNG NGHỆ ZIGBEE a/ Microchip: (khoảng 12$) - Sử dụng cho chuẩn IEEE802.15.4, phục vụ truyền dữ liệu bằng RF - Kích thước: 17,8mmx 27,9mm - Có khả năng tự điều chỉnh năng lượng - Dễ lắp đặt, tiết kiệm chi phí SX, dễ tiếp cận thị trường - Thích hợp với vi chíp điều khiển như Pic16F, Pic18F... - Khoảng cách truyền khoảng 400ft (120m) - Điện áp cung cấp: 2,4 - 3,6V - Nhiệt độ hoạt động: -400 đến 800 - Giao diện SPI đơn giản với 4 dây. - Dòng nhỏ: (RX 19mA; TX 23mA) - Dải tần hoạt động: 2,4GHz - Tốc độ truyền dữ liệu là 250kbps Đặc điểm lớp MAC: - Sử dụng công nghệ CSMA-CA cho phần cứng. - Ack trả lời tự động và kiểm tra FCS - Phát hiệu động lập; hoạt động theo kiểu FIFO - Phương pháp bảo mật phần cứng CTR, CCM và CBC- MAC mode - Hỗ trợ sự mã hoá và giải mã cho lớp trên b/ XBee: (khoảng 30$) - Nối mạng theo kiểu: point-to-multipoint, peer-to-peer với chi phí về năng lượng sử dụng thấp. " - Tốc độ là 250 kbps với dải tần hoạt động 2,4GHz - 128 bit mã hóa. - XBee: Công suất 1mW truyền xa 300ft (90m) - XBee Pro: Công suất 163mW truyền xa 1 mile (1,6km) - Giá thành khoảng 30$ - Sử dụng linh động, dễ thiết lập, thay đổi. c/ C2420: (khoảng 19 - 25$) - Sử dụng cho chuẩn IEEE 802.15.4, phục vụ truyền dữ liệu bằng RF - Thiết bị thu phát RF thiết kế cho những ứng dụng không dây cần chi phí năng lượng thấp, (xây dựng các hệ thống tự động như Smart House, máy móc...) - Có hỗ trợ lớp MAC. - Dải tần 2,4GHz với 250kbps; - Kích thước 7 x 7mm - DSSS Baseband Modern với 2 Mchip/s. - Phù hợp với cả FFD và RFD - Dòng tiêu thụ: (RX 18,8mA ; TX 17,4mA) - Điện áp cung cấp nhỏ: 2,1 - 3,6V với điện áp tích hợp 1,6 - 2,0V với điện áp cung cấp - Không chuyển tần số radio ngoài, không cần lọc tần số radio. TÀI LIỆU THAM KHẢO Wireless Sensor Network Designs by Anna Hac (University of Hawaii at Manoa, Honolulu, USA) Microchip ZigBee-2006 Residential Stack Protocol by Derrick P. Lattibeaudiere (Microchip Technology Inc) Wireless Sensor Networks: Architectures and Protocols by Edgar H. Callaway (CRC Press) Protocols and Architectures for Wireless Sensor Networks by Holger Karl and Andreas Willig (University of Paderborn, GERMANY) System Architecture for Wireless Sensor Networks by Jason Lester Hill (University of California, Berkeley) Wireless Communication Circuits and Systems by Yichuang Sun (Institution of Electrical Engineers)

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

  • docTìm hiểu chuẩn WSNs và chuẩn Zigbee.doc