CHƯƠNG 1 TỔNG QUAN VỀ MẠNG CẢM BIẾN KHÔNG DÂY WSNs 1.1 GIỚI THIỆU CHUNG “Wireless sensor network” là khái niệm chỉ một mạng không dây gồm có không gian phân tán các thiết bị tự trị sử
Trang 1MỤC LỤC
NHIỆM VỤ ĐỒ ÁN ERROR! BOOKMARK NOT DEFINED LỜI CẢM ƠN ERROR! BOOKMARK NOT DEFINED LỜI CAM ĐOAN ERROR! BOOKMARK NOT DEFINED.
MỤC LỤC 0
LỜI NÓI ĐẦU 2
CHƯƠNG 1 4
TỔNG QUAN VỀ MẠNG CẢM BIẾN KHÔNG DÂY (WSNS) 4
1.1 GIỚI THIỆU CHUNG 4
1.2 CÁC THÀNH PHẦN CỦA NODE CẢM BIẾN 8
1.2.1 Bộ xử lý nhúng nguồn thấp (Low-power embedded processor) 9
1.2.2 Bộ nhớ (Memory/storage) 9
1.2.3 Bộ thu phát sóng vô tuyến (Radio transceiver) 9
1.2.4 Cảm biến (Sensors) 9
1.2.5 Hệ thống định vị toàn cầu (Geopositioning system) 10
1.2.6 Nguồn cung cấp (Power source) 10
1.3 KIẾN TRÚC GIAO THỨC MẠNG WSN S 10
1.3.1 Lớp vật lý (Physical layer) 11
1.3.2 Lớp liên kết dữ liệu (Data link layer) 11
1.3.3 Lớp mạng (Network layer) 11
1.3.4 Lớp truyền tải (Transport layer) 11
1.3.5 Lớp ứng dụng (Application) 11
1.3.6 Phần quản lý công suất (Power management plane) 11
1.3.7 Phần quản lý di động (Mobility management plane) 12
1.3.8 Phần quản lý nhiệm vụ (Task management plane) 12
1.4 ĐỊNH TUYẾN TRONG WSN S 12
1.5 ỨNG DỤNG CỦA WSN S 14
CHƯƠNG 2 17
CHUẨN ZIGBEE TRONG MẠNG WSNS 17
2.1 TỔNG QUAN VỀ ZIGBEE 17
2.1.1 Lịch sử phát triển 17
2.1.2 Đặc điểm 18
2.1.3 Kiểu thiết bị 19
2.1.4 Cấu hình mạng 20
2.1.5 Profile chuẩn ZigBee 22
2.1.6 Kiểu thông báo và kết nối 23
2.1.7 Định dạng thông báo chuẩn ZigBee 24
2.1.8 Định dạng khung chuẩn ZigBee 25
2.1.9 Kết hợp mạng 26
2.1.10 Cơ chế truyền dữ liệu 27
2.1.11 Bảo mật (Security) 27
2.2 KIẾN TRÚC GIAO THỨC ZIGBEE 28
2.2.1 Lớp vật lý (PHY layer) 29
2.2.2 Lớp con MAC (MAC sup-layer) 33
2.2.3 Lớp mạng (Network layer) 34
2.2.4 Lớp ứng dụng (Application layer) 35
CHƯƠNG 3 37
TỔNG QUAN VỀ MODULE XBEE/XBEE PRO (MAXSTREAM) 37
3.1 CẤU TRÚC MODULE XBEE/XBEE – PRO 37
3.2 ĐIỀU KHIỂN DỮ LIỆU 39
Trang 23.3 MẠNG XBEE/XBEE - PRO 40
3.3.1 Mạng không báo hiệu thường 40
3.3.2 Mạng không báo hiệu (w/Coordinator) 40
3.3.3 Quá trình liên kết 41
3.4 ĐỊNH ĐỊA CHỈ XBEE/XBEE - PRO 45
3.4.1 chế độ Unicast 45
3.4.2 Chế độ Broadcast 46
3.5 CÁC CHẾ ĐỘ HOẠT ĐỘNG CỦA XBEE/XBEE - PRO 46
Các lệnh sử dụng điều khiển module Xbee 47
3.6 KHUNG DỮ LIỆU API 50
3.7 THỰC HIỆN LIÊN KẾT TRUYỀN THÔNG TRÊN BỘ KIT MODULE XBEE 55
3.7.1 Thực hiện quá trình liên kết 2 module dạng điểm – điểm (peer – peer) 55
3.7.2 Thực hiện kết nối point – point 2 module (coordinator – End Device) 56
3.7.3 Thực hiện liên kết 3 module (1 Coordinator – 2 End Device) 57
CHƯƠNG 4 59
THIẾT KẾ HỆ THỐNG MẠNG PHÁT HIỆN XÂM NHẬP 59
4.1 YÊU CẦU HỆ THỐNG 59
4.2 THIẾT KẾ HỆ THỐNG 59
4.2.1 Mô hình hệ thống 59
4.2.2 Sơ đồ khối hệ thống: 60
4.2.3 Khối giám sát ZED 60
4.2.4 Khối điều hành quản lý ZC 61
4.2.5 Cấu trúc gói tin giao tiếp 62
4.2.6 Quá trình xử lý thông tin 64
4.2.7 Hệ thống phần cứng 68
CHƯƠNG 5 75
THỰC HIỆN TRIỂN KHAI THIẾT KẾ HỆ THỐNG ERROR! BOOKMARK NOT DEFINED. 5.1 CÁC THIẾT BỊ ĐƯỢC THIẾTKẾ ERROR ! B OOKMARK NOT DEFINED 5.1.1 Mạch layout của các module: Error! Bookmark not defined. 5.1.2 Hình ảnh các sản phẩm 75
5.1.3 Phần mềm điều khiển trên máy tính 76
5.2 QUÁ TRÌNH THỰCNGHIỆM ERROR ! B OOKMARK NOT DEFINED 5.2.1 Hướng dẫn sử dụng hệ thống Error! Bookmark not defined 5.2.2 Thí nghiệm hệ thống Error! Bookmark not defined. KẾT LUẬN 78
TÀI LIỆU THAM KHẢO 79
Trang 3LỜI NÓI ĐẦU
Lĩnh vực công nghệ thông tin ngày càng phát triển trên đất nước Việt Nam, ngày càng được ứng dụng rộng rãi trong các lĩnh vực của cuộc sống, của đời sống xã hội Việc hội nhập, tiếp thu kiến thức để áp dụng vào cuộc sống luôn
là vấn đề được mọi tầng lớp quan tâm Con người ngày càng sáng chế ra nhiều loại máy móc, phương tiện hữu ích để phục vụ cho con người, nhằm giảm đi công sức mà con người phải bỏ ra, giúp cho công việc đạt hiệu quả hơn
Các thiết bị phục vụ cho hoạt động của con người ngày nay thường không còn là thiết bị đơn lẻ nữa mà tập hợp thành một hệ thống các thiết bị có sự liên kết quan hệ với nhau Các hệ thống mạng liên kết với nhau được phát triển từ hệ thống có dây đến hệ thống không dây
“Wireless Sensor Networks” – một vấn đề đang được quan tâm trên thế
giới và là khái niệm mới ở Việt Nam hiện nay Thành tựu mà nó mang lại vô cùng lớn cho nghiên cứu khoa học, lao động sản xuất cũng như phục vụ trực tiếp cuốc sống hàng ngày với những ứng dụng công nghệ cao WSNs với chuẩn công nghệ không đây ZigBee là công nghệ tiên tiến đang chiếm ưu thế Công việc đo đạc, giám sát khó khăn xưa kia thì nay với WSNs thực hiện dễ dàng hơn, khoa học hơn với chi phí thấp nhất
Ở Việt Nam, WSNs đang được nghiên cứu phát triển nhưng tất cả chỉ là khởi đầu Những hệ thống theo dõi, ứng dụng trong nông nghiệp, công nghiệp bắt đầu được quan tâm nghiên cứu
Với mục tiêu sử dụng những kiến thức đã học được tại Khoa Công Nghệ Thông tin – Đại Học Thái Nguyên, cùng sự nghiên cứu tìm tòi của bản
thân, em đã “Xây dựng hệ thống phát hiện xâm nhập bằng công nghệ
Zigbee” với mong muốn từng bước triển khai công nghệ “Wireless Sensor
Networks” vào thực tế Việt Nam
Đồ án của em được chia thành 5 chương với nội dung như sau:
Chương 1: Tổng quan về mạng cảm biến không dây: Nội dung chương giới thiệu chung về hệ thống mạng cảm biến không dây WSNs
Trang 4 Chương 2: Chuẩn Zigbee trong mạng WSNs: Nội dung chương trình bày
về giao thức chuẩn Zigbee được sử dụng trong mạng WSNs
Chương 3: Tổng quan về module Xbee/Xbee – pro (Maxstream): Nội dung chương trình bày về cấu trúc, đặc tính và cách sử dụng module Xbee/Xbee – pro của hãng Maxstream
Chương 4: Thiết kế hệ thống mạng phát hiện xâm nhập: Nội dung chương trình bày về quá trình xây dựng giao thức, quá trình xử lý và xây dựng phần cứng cho các thiết bị sử dụng cho hệ thống mạng giám sát
Chương 5: Thực hiện triển khai thiết kế hệ thống: Nội dung chương trình bày về quá trình chế tạo thực tiễn ra các thiết bị sử dụng cho hệ thống và quá trình kiểm tra hoạt động thực nghiệm của hệ thống
Trang 5CHƯƠNG 1 TỔNG QUAN VỀ MẠNG CẢM BIẾN KHÔNG DÂY (WSNs)
1.1 GIỚI THIỆU CHUNG
“Wireless sensor network” là khái niệm chỉ một mạng không dây gồm có
không gian phân tán các thiết bị tự trị sử dụng các “sensors” để “hợp tác” theo
dõi vật lý hay các điều kiện môi trường, như nhiệt độ, âm thanh, sự rung động, sức ép, sự chuyển động hay những chất gây ô nhiễm, tại những vị trí khác nhau
Hình 1.1a: Mạng cảm biến
Trong khi khái niệm của việc nối mạng phân phối các cảm biến và sử dụng chúng trong quân đội và công nghiệp từ những năm 1970 Nhưng chỉ thực sự từ những năm 1990, khi mà công nghệ không dây và thiết kế vi mạch tích hợp nguồn thấp trở thành khả khi Các nhà nghiên cứu mới bắt đầu nghiên cứu phát triển rộng khắp các hệ thống nhúng cho mạng cảm biến không dây
Hình 1.1b: Thiết bị đo lường cảm biến không dây MICAz
Có lẽ một trong những công trình nghiên cứu sớm nhất theo hướng này là dự
án tích hợp cảm biến không dây nhỏ nguồn thấp tại UCLA (University of
California, Los Angeles) Dự án này tập trung phát triển các thiết bị điện tử
Trang 6nguồn thấp cho phép mạng cảm biến không dây phổ biến rộng rãi Dự án này đã thành công với việc kế tiếp bởi dự án Wireless Integrated Networked Sensors (WINS), một ít năm về sau trong nhà nghiên cứu tại UCLA cộng tác với Trung Tâm Khoa học Rockwell để phát triển vài thiết bị cảm biến không dây đầu tiên
Và nhiều dự án khác được tiến hành để phát triển WSNs
Hình 1.1c: Sự phát triển của công nghệ cảm biến theo thời gian
Những nhà nghiên cứu tại Berkeley phát triển những thiết bị nhúng nối mạng
cảm biến không dây gọi là motes, sẵn sàng đưa vào ứng dụng cùng với TinyOS –
một hệ điều hành nhúng cho thiết bị sử dụng dễ dàng
Đối với WSNs thì năng lượng là vấn đề quan trọng bậc nhất, mà đối với mỗi nút sensor vấn đề tiêu tốn năng lượng lại chủ yếu dùng vào việc sử dụng bộ truyền sóng RF Vì vậy cơ chế quản lý điều khiển bộ thu phát vô cùng quan trọng Nếu không cần thiết, nút mạng có thể đi vào trạng thái Sleep để tiết kiệm năng lượng Nhưng khi truyền bị xung đột, dữ liệu truyền bị mất, quá trình truyền thất bại, năng lượng tiêu tốn cũng không nhỏ Vậy làm sao để qúa trình này hiệu quả và tiết kiệm năng lượng nhất WSNs có hai phương pháp truy nhập kênh sử dụng trong mạng báo hiệu và không báo hiệu
Trong mạng không báo hiệu, cơ chế truy nhập kênh CSMA/CA được sử dụng Trong kiểu mạng này, các bộ định tuyến điển hình 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
Trang 7Hình 1.1d: Phương pháp truy nhập kênh CSMA\CA
Trong mạng báo hiệu, truy nhập kênh sử dụng cấu trúc siêu khung Định dạng của siêu khung đượ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 siêu khung Nếu coordinator không muốn sử dụng cấu trúc siêu khung, 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 siêu khung 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 siêu khung
có thể có một phần tích cực và một phần không tích cực
Trang 8Hình 1.1e: Cấu trúc Siêu khung
Đố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 siêu khung 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 (GTSs) GTSs hình thành chu kỳ tự do tranh giành (CFP), nó luôn hiện ra ở phần cuối của siêu khung 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 GTSs 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 Tất cả các giao dịch trên nền tranh giành sẽ phải hoàn thành trước khi CFP bắt đầu Mỗi thiết bị phát trong một GTS sẽ đảm bảo giao dịch của nó là hoành thành trước thời gian của GTS tiếp theo hay kết thúc của CFP
Wireless ad-hoc network hay mạng tùy biến không dây là một tập hợp gồm
nhiều hơn một thiết bị/nút mạng với khả năng nối mạng và giao tiếp không dây với nhau mà không cần sự hỗ trợ của một sự quản trị trung tâm nào Mỗi nút
trong một mạng tùy biến không dây hoạt động vừa như một nút chủ (host) vừa
như một thiết bị định tuyến
Mạng cảm biến có vài điểm tương đồng với mạng mạng ad-hoc nói chung
Như vậy, thiết kế giao thức cho mạng cảm biến phải tính toán các thuộc tính của
mạng ad-hoc, bao gồm:
Thời gian tồn tại bị ràng buộc bởi năng lượng giới hạn cung cấp cho các phần tử trong mạng
Truyền thông không đáng tin cậy vì môi trường không dây
Cần tự cấu hình, ít yêu cầu hoặc không có sự can thiệp của con người vào
Tuy nhiên, vài đặc điểm duy nhất tồn tại trong mạng cảm biến không dây mà không tồn tại trong mạng ad-hoc Những đặc điểm này đưa ra thách thức mới và yêu cầu sự cải biến thiết kế cho các mạng ad-hoc truyền thống:
Trong khi các mạng ad-hoc truyền thống có kích thước khoảng 10 nút, mạng cảm biến có thể lên đến hàng nghìn nút mạng
Trang 9 Các nút cảm biến đứng yên đặc thù, có nghĩa là cơ chế được sử dụng
trong giao thức mạng ad-hoc truyền thống giao tiếp với tính di động có
thể không cần thiết và quá nặng nề
Các nút có thể triển khai trong điều kiện môi trường hết sức khắc nghiệt, tình trạng các nút không thực thi là phổ biến
Nút cảm biến có thể nhiều và nhỏ hơn trong các mạng ad-hoc truyền thống (ví dụ như: PDA, laptop), với nguồn pin nhỏ hơn đẫn đến thời gian tồn tại, khả năng tính toán, bộ nhớ ít hơn
Thêm các dịch vụ, như là thông tin định vị có thể được yêu cầu trong mạng cảm biến không dây
Trong khi các nút mạng ad-hoc truyền thống cạnh tranh tài nguyên như băng thông, nhưng trong mạng cảm biến có sự hợp tác hơn Truyền thông tin tiêu biểu là dữ liệu - trung tâm đúng hơn là địa chỉ - trung tâm,
có nghĩa là dữ liệu được định tuyến phụ thuộc vào sự miêu tả của dữ liệu
Truyền thông trong mạng cảm biến diễn ra với dạng gói tin rất ngắn, có nghĩa rằng các đầu mục được thêm vào ở các lớp mạng khác nhau trở thành quan trọng hơn
Việc hợp nhất những đặc điểm duy nhất này của mạng cảm biến vào trong thiết kế giao thức là rất quan trọng để đạt hiệu quả với tài nguyên có hạn của
mạng Đồng thời, giữ cho giao thức “nhẹ” càng tốt
1.2 CÁC THÀNH PHẦN CỦA NODE CẢM BIẾN
Sơ đồ khối một thiết bị cảm biến không dây đơn giản:
Trang 10Hình 1.2: Sơ đồ khối thiết bị cảm biến không dây đơn giản
1.2.1 Bộ xử lý nhúng nguồn thấp (Low-power embedded processor)
Nhiệm vụ tính toán trên một thiết bị WSNs bao gồm việc xử lý cũng như truyền thông tin bởi các phần tử cảm biến khác Hiện nay, chủ yếu vì những ràng buộc kinh tế, những bộ xử lý nhúng thường hạn chế về tốc độ tính toán Vì những hạn chế này, những thiết bị điển hình chạy hệ điều hành nhúng trên các thành phần chuyên dụng như TinyOS Tuy nhiên, trong một mạng cảm biến, các nút không nhất thiết phải đồng nhất, một số nút có thể được trang bị tốc độ tính toán cao hơn
1.2.2 Bộ nhớ (Memory/storage)
Bộ nhớ bao gồm bộ nhớ chương trình và bộ nhớ dữ liệu Số lượng của bộ nhớ trên board một thiết bị WSNs bị hạn chế bởi những yêu cầu về kinh tế
1.2.3 Bộ thu phát sóng vô tuyến (Radio transceiver)
Những thiết bị WSNs có đặc điểm là tốc độ dữ liệu thấp, khoảng cách sóng
vô tuyến tầm ngắn (10 - 100 kbps, < 100 m) Truyền sóng vô tuyến thường là thao tác mất nhiều năng lượng nhất của thiết bị WSNs Do đó, cần kết hợp hiệu
quả giữa chế độ Sleep và Wake-up để tiết kiệm năng lượng
1.2.4 Cảm biến (Sensors)
Vì băng thông và những ràng buộc về năng lượng, những thiết bị WSNs chủ yếu hỗ trợ cảm biến tốc độ dữ liệu thấp Các ứng dụng có thể sử dụng nhiều cảm
Trang 11biến, vì mỗi thiết bị có thể có vài cảm biến trên nó Các cảm biến đặc biệt được
sử dụng mức độ cao, phụ thuộc vào ứng dụng Ví dụ: Chúng sử dụng nhiều cảm biến như cảm biến nhiệt, cảm biến ánh sáng, cảm biến độ ẩm, áp xuất, gia tốc, từ, hóa học, âm thanh hoặc những hình ảnh độ phân giải thấp
1.2.5 Hệ thống định vị toàn cầu (Geopositioning system)
Trong nhiều ứng dụng, các phép đo cần phải xác định chính xác vị trí của các cảm biến Cách đơn giản để xác định được vị trí là định vị các cảm biến khi triển khai mạng, nhưng cách này không khả khi vì sẽ giới hạn sự triển khai Đặc biệt
cho những thao tác ngoài trời, khi mạng được triển khai theo kiểu ad–hoc Trong khi đó, thông tin định vị dễ dàng thu được trên nền vệ tinh qua GPS
Tuy nhiên, chỉ một phần nhỏ các ứng dụng như vậy, được trang bị với khả năng GPS vì những ràng buộc kinh tế Trong trường hợp này, cần phải định vị các nút khác thông qua những giải thuật định vị mạng
1.2.6 Nguồn cung cấp (Power source)
Để triển khai mềm dẻo, các thiết bị WSNs sử dụng nguồn pin là phù hợp nhất (ví dụ: sử dụng pin LiMH AA) Một số nút có thể sử dụng nguồn cung cấp trực tiếp Năng lượng pin hữu hạn là tài nguyên then chốt trong đa số các ứng dụng WSNs
1.3 KIẾN TRÚC GIAO THỨC MẠNG WSNs
Trang 12Hình 1.3: Mô hình kiến trúc giao thức mạng cảm biến
Mô hình kiến trúc giao thức WSNs là sự kết hợp giữa công suất và định tuyến, kết hợp giữa dữ liệu với các giao thức mạng, sử dụng công suất hiệu quả với môi trường không dây và sự tương tác giữa các nút cảm biến Hình 1.3 mô tả kiến trúc giao thức WSNs
1.3.1 Lớp vật lý (Physical layer)
Cung cấp các kỹ thuật điều chế, thu và phát Vì môi trường có tạp âm và các
nút 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 hóa việc xung đột với thông tin quảng bá của các nút lân cận
1.3.2 Lớp liên kết dữ liệu (Data link layer)
Là lớp liên kết dữ liệu đúng như tên gọi của nó Biến đổi dữ liệu thành các
dạng mà các lớp trên có thể sử dụng
1.3.3 Lớp mạng (Network layer)
Lớp mạng quan tâm đến định tuyến dữ liệu được cung cấp bởi lớp truyền tải
1.3.4 Lớp truyền tải (Transport layer)
Lớp truyền tải duy trì luồng dữ liệu nếu ứng dụng WSNs yêu cầu và cung cấp
các dịch vụ như khôi phục, điều khiển tắc nghẽn, phân đoạn và sắp xếp gói
1.3.5 Lớp ứng dụng (Application)
Tùy 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 khác nhau và sử dụng ở lớp ứng dụng
1.3.6 Phần quản lý công suất (Power management plane)
Phần quản lý công suất điều khiển việc sử dụng công suất của nút cảm biến
Ví dụ, nút 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 nút 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 nút cảm biến thấp, nút cảm biến phát quảng bá tới các nút 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 thông báo định tuyến Công suất còn lại sẽ được dành riêng cho nhiệm vụ cảm biến
Trang 131.3.7 Phần quản lý di động (Mobility management plane)
Phần quản lý di động phát hiện và ghi lại sự di chuyển của các nút 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 nút cảm biến lân cận Nhờ xác định được các nút cảm biến lân cận, các nút cảm biến
có thể cân bằng giữa công suất và nhiệm vụ thực hiện
1.3.8 Phần quản lý nhiệm vụ (Task management plane)
Phần quản lý nhiệm vụ 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 nút 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ố nút cảm biến thực hiện nhiệm vụ nhiều hơn các nút khác tuỳ theo mức công suất của
Định tuyến trong WSNs rất khó khăn do các đặc tính riêng phân biệt những
mạng này với các mạng không dây khác như các mạng ad-hoc hoặc các mạng tế
Thứ hai, khác với các mạng thông tin nói chung, hầu hết các ứng dụng của
mạng cảm biến yêu cầu truyền số liệu cảm biến từ nhiều nút tới một nút gốc
Thứ ba, các nút cảm biến bị hạn chế về công suất, khả năng xử lý và dung
lượng nhớ
Thứ tư, trong hầu hết các ứng dụng, các nút trong WSNs thường có vị trí cố
định Tuy nhiên, trong một số ứng dụng, các nút cảm biến có thể được phép di chuyển và thay đổi vị trí
Thứ năm, các mạng cảm biến thường phụ thuộc vào ứng dụng
Trang 14Thứ sáu, vị trí của các nút cảm biến đóng vai trò quan trọng vì việc lựa chọn
số liệu thường dựa vào vị trí Hiện nay chưa thích hợp cho việc sử dụng các phần cứng của hệ thống định vị toàn cầu (GPS) cho mục đích này, vì phụ thuộc vào giá thành triển khai mạng
Nhìn chung, dựa vào cấu trúc mạng WSNs có thể chia thành:
Định tuyến ngang hàng (flat-based routing)
Định tuyến phân cấp (hierarchical-based routing)
Định tuyến theo vị trí (location-based routing)
Trong định tuyến ngang hàng, tất cả các nút thường có vai trò hoặc chức năng như nhau Trong định tuyến phân cấp, các nút sẽ đóng vai trò khác nhau trong mạng Trong định tuyến dựa theo vị trí thì vị trí của các nút cảm biến được
sử dụng để định tuyến số liệu
Một giao thức định tuyến được coi là thích ứng nếu các tham số của hệ thống
có thể điều khiển được để thích ứng với các trạng thái mạng hiện tại và các mức năng lượng của nó Những giao thức này cũng có thể được chia thành các giao thức định tuyến đa đường, yêu cầu, hỏi/đáp, liên kết hoặc dựa vào QoS tuỳ theo
cơ chế hoạt động của giao thức Ngoài ra, các giao thức định tuyến có thể được chia thành ba loại là chủ động, tương tác hoặc lai ghép tuỳ thuộc vào cách thức
mà từ nguồn tìm đường tới đích Trong các giao thức chủ động, tất cả các đường được tính toán trước khi có yêu cầu, trong khi đối với các giao thức tương tác thì các đường được tính toán theo yêu cầu Các giao thức lai ghép kết hợp cả hai quy tắc ở trên Khi các nút cảm biến cố định, nó thích hợp với các giao thức định tuyến theo bảng hơn là với các giao thức tương tác Một lượng công suất đáng kể được sử dụng để định tuyến và thiết lập các giao thức tương tác Một số giao thức khác dựa vào định thời và thông tin vị trí Để khái quát, có thể sử dụng phân loại theo cấu trúc mạng và cơ chế hoạt động của giao thức (định tuyến tiêu chuẩn) như sau:
Trang 15Hình1.4: Giao thức định tuyến trong WSNs dựa theo phân loại tiêu chuẩn
1.5 ỨNG DỤNG CỦA WSNs
Theo truyền thống, mạng cảm biến được sử dụng trong các ứng dụng cao cấp giống như các hệ thống dò tìm bức xạ hạt nhân, cảm biến vũ khí cho tàu, các ứng dụng trắc địa, cảm nhận môi trường và theo dõi địa trấn Hơn nữa, nó được sử dụng với các cảm biến sinh học và hóa học cho các ứng dụng an ninh quốc gia Cũng như mở rộng đến các ứng dụng trực tiếp tới người sử dụng Các ứng dụng tiềm năng của mạng cảm biến không dây hiện nay như phán đoán quân sự, bảo
vệ an ninh, điều khiển và giám sát giao thông, kỹ thuật tự động trong sản xuất công nghiệp, điều khiển quy trình, quản lý kiểm kê, cảm nhận môi trường, giám sát sinh thái, giám sát kết cấu công trình xây dựng
Để hiểu các ứng dụng đa rạng được hỗ trợ bởi mạng cảm biến không dây, hãy xem hai ví dụ sau đây
Sự giám sát Giả sử nhiều cảm biến được nối mạng (ví dụ: âm thanh, địa
chấn, video…) được phân tán khắp nơi trong chiến trường Một ứng dụng giám sát có thể được thiết kế trên mạng cảm biến này để cung cấp thông tin tới người dùng về môi trường Trong một mạng cảm biến như vậy, các mẫu lưu thông là từ nhiều tới một, sự lưu thông có thể hạn chế từ dữ liệu cảm biến thô đến một sự mô
tả cao hơn của cái gì đang xuất hiện trong môi trường nếu dữ liệu được xử lý cục
bộ Ứng dụng sẽ có chất lượng yêu cầu từ yêu cầu dịch vụ của mạng cảm biến, như là yêu cầu một tỷ lệ phần trăm tối thiểu thông tin cảm biến bao quát trong một vùng nơi mà các hiện tượng mong đợi xuất hiện hoặc yêu cầu một xác suất cực đại dò tìm sự kiện Cùng lúc mạng cung cấp chất lượng dịch vụ cho một thời gian dài (tháng hoặc thậm trí năm) sử dụng những tài nguyên hạn chế của mạng
Trang 16(ví dụ băng thông kênh, năng lượng cảm biến) trong khi yêu cầu nhỏ không có sự can thiệp từ ngoài vào Việc gặp những mục đích này, yêu cầu thiết kế mạng cẩn thận cho cả phần cứng và giao thức mạng
Theo dõi y học Một miền ứng dụng khác mà có thể sử dụng công nghệ
mạng cảm biến không dây đó là giám sát y học Lĩnh vực rộng lớn từ giám sát bệnh nhân trong bệnh viện sử dụng các cảm biến không dây để loại bỏ những ràng buộc về phạm vi bệnh nhân lớn, cồng kềnh, nối dây tới thiết bị theo dõi, để theo dõi bệnh nhân, kiểm tra phát hiện sớm những triệu chứng kịp thời chuẩn đoán cũng như can thiệp Trong hoàn cảnh này, những cảm biến được thu nhỏ lại mang những cảm biến ngoài như các camera ghi hình hay các thiết bị xác định vị trí Đây là môi trường thử thách đáng tin cậy, linh hoạt, những ứng dụng phải được thiết kế sử dụng dữ liệu từ cảm biến nhập vào Với ứng dụng dõi sức khỏe
cá nhân chạy ngay trên PDA, nhận và phân tích dữ liệu từ các cảm biến (ví dụ như áp huyết, nhịp tim…) Màn hình phản ánh lại những mạo hiểm, thông tin sức khỏe và ghi chép lại trong cơ sở dữ liệu Thực tế đa số các cảm biến theo dõi sức khỏe cá nhân, hoạt động nhờ nguồn pin, truyền thông không dây và yêu cầu giao thức mạng hiệu quả, đáng tin cậy
Sau đây là một số các ứng dụng đa dạng của mạng cảm biến không dây:
Các ứng dụng quân sự
Theo dõi lực lượng địch
Giám sát trang thiết bị và lực lượng đồng minh
Giám sát mục tiêu
Đánh giá thiệt hại trận chiến
Phát hiện ra cuộc tấn công bằng sinh học, hóa học và hạt nhân
Trang 17 Theo dõi và kiểm tra bác sĩ và bệnh nhân trong bệnh viện
Giúp đỡ người cao tuổi
Trang 18CHƯƠNG 2 CHUẨN ZIGBEE TRONG MẠNG WSNs
2.1 TỔNG QUAN VỀ ZIGBEE
2.1.1 Lịch sử phát triển
Hình 2.1.1: Lịch sử phát triển của ZigBee
Năm 1998, khi mà các ứng dụng không dây được lắp đặt và thực thi hiệu quả
với wifi và bluetooth Các kỹ sư nhận thấy cần phải có một mạng vô tuyến số tổ
chức theo kiểu ad-hoc HomeRF ra đời chủ yếu ứng dụng điều khiển không dây các thiết bị trong nhà Sau đó nó phát triển sang một giai đoạn mới với tên gọi Firefly ZigBee là bước phát triển tiếp theo của Firefly
Vào 5/2003, IEEE 802.15.4 tiêu chuẩn được hoàn thành Mùa hè năm 2003, Philips Semiconductors ngừng đầu tư vào mạng mắt lưới, tuy nhiên Philips vẫn tham gia phát triển Zigbee và trở thành một trong các thành viên sáng lập ban giám đốc Liên Minh ZigBee Tháng 10/2004, Liên Minh ZigBee được công bố lên đến hơn 100 thành viên từ 22 quốc gia trên thế giới Gần tháng 4/2005, số thành viên đã lên đến 150, đến tháng 12/2005, con số thành viên đã lên đến hơn
200 công ty
Trang 19Thuyết minh kỹ thuật ZigBee chính thức được thông qua vào ngày 14/12/2004 Liên Minh ZigBee công bố tính sẵn sàng của của thuyết minh v1.0 vào tháng 6/2005, và được biết đến như thuyết minh ZigBee 2004 Liên Minh ZigBee công bố sự hoàn thành và phát triển của ZigBee tiêu chuẩn vào tháng 9/2006, được biết đến như thuyết minh ZigBee 2006 Cuối năm 2007, ZigBee PRO, được tăng cường và hoàn thành
Hình 2.1.2: Các thành viên chính trong liên minh ZigBee
2.1.2 Đặc điểm
ZigBee là một chuẩn mạng không dây được thiết kế cho mạng điều khiển và cảm biến tốc độ thấp ZigBee là mạng không dây mắt lưới tiêu chuẩn, nguồn thấp, giá thấp Chi phí thấp cho phép công nghệ sẽ được triển khai rộng rãi trong điều khiển và giám sát không dây, nguồn thấp cho phép thời gian sống dài hơn với nguồn pin nhỏ hơn và nối mạng mắt lưới hỗ trợ mạng rộng hơn và tin cậy hơn
So với các chuẩn không dây khác, chuẩn ZigBee giảm bớt sự phức tạp, các yêu cầu về tài nguyên Nó đề nghị 3 băng tần hoạt động cùng với một số cấu hình mạng và khả năng bảo mật để chọn
Nếu bạn lựa chọn khám phám công nghệ mạng điều khiển hiện nay, giống như RS-422, RS-485 hay các chuẩn không dây độc quyền, thì chuẩn ZigBee là giải pháp bạn cần
Chuẩn ZigBee được thiết kế trên nền tảng kỹ thuật IEEE 802.15.4 - 2003 như Medium Access Layer (MAC) và Physical Layer (PHY) Với ba băng tần hoạt
Trang 20động: 2,4GHz, 915 MHz và 868 MHz Mỗi băng tần cung cấp cố định một số kênh Băng tần 2,4GHz cung cấp 16 kênh (kênh 11 - 26), 915 MHz cung cấp 10 kênh (1 -10) và 868 MHz cung cấp 1 kênh (kênh 0) Tốc độ bit của chuẩn phụ thuộc vào tần số hoạt động Băng tần 2,4GHz hỗ trợ 250kbps, băng tần 915MHz
hỗ trợ 40kbps và 868MHz hỗ trợ 20kbps tốc độ dữ liệu
Hình 2.1.3: Hình ảnh khi so sánh với một số chuẩn khác
2.1.3 Kiểu thiết bị
ZigBee có ba kiểu thiết bị khác nhau:
ZigBee Coordinator(ZC): Là thiết bị có khả năng nhất, coordinator là gốc
của mạng hình cây và là thiết bị bắc cầu tới các mạng khác Nó chính là một thiết
bị FFD trong kiểu thiết bị IEEE Chỉ có một coordinator trong mỗi mạng, nó là thiết bị bắt đầu mạng trước tiên Nó có khả năng lưu giữ các thông tin về mạng, bao gồm hành động như Trust Centre và là nơi cất giữ các khóa bảo mật
ZigBee Router(ZR): ZR là một thiết bị FFD trong kiểu thiết bị IEEE ZR
chạy như một chức năng ứng dụng ZR đóng vai trò như một bộ định tuyến trung gian, dữ liệu truyền từ một thiết bị khác ZR cho phép mở rộng mạng, có nhiều nút nối mạng hơn Nó cũng có khả năng theo dõi điều khiển và thu thập số liệu
ZigBee End Device (ZED): ZED là một thiết bị RFD trong kiểu thiết bị
IEEE Nó Chứa dựng đủ các chức năng để giao tiếp với các nút bố mẹ
(coordinator hay một bộ định tuyến) Nó không thể chuyển tiếp dữ liệu tới các thiết bị khác Vì vậy cho phép nó đi vào chế độ Sleep nhằm nâng cao thời gian sống của pin Một ZED yêu cầu ít bộ nhớ hơn, tốc tính toán nhỏ hơn nên giá
Trang 21thành nó rẻ hơn khi sản xuất một thiết bị ZC hay ZR Nó cũng là phần tử nhiều nhất trong mạng Chức năng chủ yếu của nó là thu thập số liệu, điều khiển, cảnh
2.1.4.1 Mạng hình sao
Hình 2.1.4.1: Cấu hình mạng hình sao
Cấu hình một mạng hình sao bao gồm một ZC và một hoặc nhiều ZED chuẩn ZigBee Trong mạng hình sao, tất cả các ZED chỉ truyền thông với ZC Nếu một thiết bị ZED cần truyền dữ liệu tới một thiết bị ZED khác, nó gửi dữ liệu của nó tới ZC ZC lần lượt đẩy dữ liệu cho bên được nhận
Trang 22một ZED không cần trong phạm vi sóng của ZC Tất cả thông báo trong cluster
tree topology được định tuyến theo chiều cây
Hình 2.1.4.3: Cấu hình mạng hình cây
2.1.4.3 Mạng hình mắt lưới
Mạng lưới là tương tự với sự cấu hình một mạng hình cây, trừ trường hợp mà các FFD có thể có lộ trình các thông báo trực tiếp tới các FFD khác thay thế cấu trúc cây như sau:
Hình 2.1.4.3: Cấu hình mạng hình mắt lưới
Các thông báo tới RFD vẫn phải đi qua các bố mẹ của nó Ưu điểm của tô pô này là giảm bớt các thông báo tiềm ẩn và tăng các thông báo tin cậy Tô pô mesh
và cluster cũng được biết đến như những mạng nhiều bước nhảy ngắn, trong khi
tô pô star là một mạng bước nhảy ngắn đơn Mạng chuẩn ZigBee là một mạng đa
Trang 23truy cập, có nghĩa là tất cả các nút trong một mạng có thể truy cập ngang hàng
trong truyền thông
2.1.4.4 Địa chỉ mạng
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 OUI phải mua từ IEEE để bảo đảm chắc chắn tính duy nhất toàn cầu
2.1.5 Profile chuẩn ZigBee
Một profile chuẩn ZigBee đơn giản chỉ là sự mô tả logic các thành phần (các thiết bị) và những ghép nối của chúng Thường không có một mã nào liên quan tới một profile Mỗi phần của dữ liệu có thể đi qua giữa các thiết bị giống như trạng thái của “switch” hay một cái đo điện thế đang đọc được gọi là một thuộc tính Mỗi thuộc tính được gán một định danh duy nhất Các ghép nối được chỉ rõ tại mức cluster, không ở mức thuộc tính, tuy nhiên các thuộc tính được truyền riêng lẻ
Profile định nghĩa các khóa của các ID thuộc tính và các ID Cluster cũng như định dạng của mỗi thuộc tính Ví dụ, trong profile Home Control, Lightting, cluster OnOffDRC của thiết bị Dimmer Remote Control (DRC) bao gồm một thuộc tính, OnOff, được định nghĩa bằng một khóa 8 bít, với khóa 0xFF có nghĩa
là “bật”, khóa 0x00 có nghĩa là “tắt” và khóa 0xF0 có nghĩa là “lật trạng thái” Profile cũng mô tả các cluster bắt buộc để chọn cho mỗi thiết bị
Người sử dụng có thể lấy sự định nghĩa này và viết mã của họ để sử dụng chúng Họ có thể viết mã theo vài hướng họ muốn, nhóm lại các chức năng theo bất kỳ đường nào họ muốn như được hỗ trợ các dịch vụ và các cluster bắt buộc
và sử dụng các thuộc tính như chúng được định nghĩa trong profile Theo hướng này, một switch của nhà sản xuất sẽ làm việc với một bộ điều khiển tải của một nhà sản xuất khác
Trang 24Như ví dụ, trong profile Home Control, Lighting chỉ rõ sáu thiết bị Microchip Stack cho chuẩn ZigBee cung cấp hỗ trợ cho profile này thông qua một file header với các thông tin như sau:
ID profile
Các ID thiết bị và phiên bản
Các ID cluster
Các ID thuộc tính
Kiểu dữ liệu thuộc tính
Mỗi khối chức năng của mã hỗ trợ một hay nhiều cluster được gọi là một endpoint Các thiết bị khác nhau truyền thông qua các endpoint của chúng và các cluster chúng hỗ trợ
Hình 2.1.5: Kiến trúc một profile chuẩn ZigBee
Hình 2.7 chỉ ra hai thiết bị từ profile Home Control, Lighting Mỗi thiết bị
chỉ có một endpoint Bộ điều khiển tải Switch Load Controller (ví dụ: một đèn)
có một cluster vào trên endpoint đó Bộ điều khiển từ xa Switch Remote Control ( ví dụ là một switch) có một cluster ra và một cluster vào trên endpoint của nó Cái switch cũng có thể thực hiện sao cho hai cluster trên hai endpoint riêng biệt Luồng dữ liệu là tại mức cluster
2.1.6 Kiểu thông báo và kết nối
Các thiết bị có thể truyền thông với các thiết bị khác trên mạng nếu chúng biết địa chỉ mạng của những thiết bị này Những thông báo này được gọi là thông
Trang 25bao trực tiếp Tuy nhiên, có nhiều vấn đề liên quan trong sự tìm ra và bảo trì những địa chỉ nơi nhận này ChuẩnZigBee đưa ra một đặc tính gọi là "kết nối" để đơn giản hóa truyền tin Coordinator có thể tạo ra một bảng phù hợp ở múc cluster/endpoint giữa các dịnh vụ và nhu cầu của các thiết bị trong mạng Mỗi ghép đôi được gọi là một “kết nối” Một kết nối có thể được yêu cầu bởi chính các thiết bị hay nó có thể được tạo bởi coordinator hay một thiết bị khác Một kết nối được tạo, hai thiết bị có thể truyền thông qua coordinator Thiết bị nguồn gửi thông báo của nó thông báo của nó tới coordinator, sau đó coordinator đặt lại thông báo tới một hay nhiều thiêt bị nơi đến Thông báo này được gọi là thông báo gián tiếp
Hình2.1.6: Vài thiết bị kết nối trong bảng kết nối
2.1.7 Đị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 – Đầu mục MAC bao gồm các trường điều khiển khung MAC, Beacon Sequence Number (BSN) và thông tin địa chỉ của thông
báo hiện thời được truyền Chú ý rằng nó có thể không phản ánh nguồn thực tế hay nguồn cuối cùng của thông báo nếu thông báo được định tuyến Sự phát sinh
và sử dụng đầu mục này trong suốt mã ứng dụng
Trang 26 Network Layer (NWK) Header – Đầu mục này bao gồm các thông
tin khác như nguồn thực tế và nguồn cuối cùng của thông báo Sự phát
sinh và sử dụng đầu mục này cũng trong suốt mã ứng dụng
Application Support Sub-Layer (APS) Header – Đầu mục này
bao gôm ID profile, ID cluster và endpoint nơi đến của thông báo hiện tại Sự phát sinh và sử dụng đầu mục này trong suốt mã ứng dụng
APS Payload – Trường này bao gồm các khung chuẩn ZigBee cho
ứng dụng để xử lý Mã ứng dụng chịu trách nhiệm điều chỉnh dữ liệu tối
đa trong APS Payload
2.1.8 Định dạng khung chuẩn ZigBee
Chuẩn ZigBee định nghĩa hai định dạng khung: Key Value (KVP) v à Message (MSG) Cả hai định dạng khung này có liên quan với một Cluster ID, nhưng KVP được thiết kế để truyền một phần của thông tin liên quan với một thuộc tính đang sử dụng một cấu trúc chính xác, trong khi khung MSG tru yền thông tin với một cấu trúc khung tự do Profile cho ứng dụng sẽ chỉ rõ định dạng khung sẽ được sử dụng để truyền thông tin gì và định dạng của bất k ỳ khung MSG nào Vì sự khác nhau trong khuông dạng khung, một cluster không thể dùng cả hai khung KVP và MSG
Khung KVP: Một khung KVP bao gồm các thông tin sau theo
thứ tự:
1 Transaction Count
2 Kiểu khung
3 Transaction:
- Transaction Sequence Number
- Kiểu lệnh và kiểu dữ liệu thuộc tính
- ID thuộc tính
- Mã lỗi
- Dữ liệu thuộc tính (Kích thước thay đổi)
Trang 27Kiểu lệnh chỉ ra điều mà ứng dụng giả định để làm với thông tin Ví dụ, lệnh
“Set”, yêu cầu bên nhận đặt giá trị thuộc tính được chỉ báo bởi ID thuộc tính tới giá trị trong dữ liệu thuộc tính và lệnh, “Get with Acknowledge”, yêu cầu bên nhận gửi giá trị thuộc tính chỉ ra bởi ID thuộc tính
Khung MSG: Một khung MSG bao gồm các thônn in sau theo thứ tự:
Ngay khi một mạng được hình thành, nó có thể thực hiện cái sự thay đổi vật
lý, hơn một mạng chồng chéo lên nhau và một xung đột PAN ID có thể xuất hiện Trong giải pháp này, một coordinator có thể bắt đầu một thủ tục giải quyết xung đột PAN ID và một trong các coordinator có thể thay đổi kênh và/hay PAN
ID của nó Coordinator giả tạo sẽ chỉ thị cho các thiết bị con của nó tạo ra sự thay đổi cần thiết
Những thiết bị chuẩn ZigBee lưu trữ thông tin về các nút trong mạng, bao gồm các nút bố mẹ và con Trong một khoảng bộ nhớ không đổi được gọi là bảng neighbor Khi mà nguồn bật, nếu một thiết bị con được xác định thông qua bảng neighbor của nó, nó là một phần của mạng, nó có thể thực thi một thủ tục khai
Trang 28báo mồ côi để định vị mạng liên kết trước đây của nó Những thiết bị nhận được khai báo mồ côi sẽ kiểm tra bảng neighbor của chúng và nếu thấy thiết bị đó là một trong các con của chúng Nếu như thế thiết bị cha mẹ sẽ báo cho thiết bị con nơi của chúng trong mạng Nếu thông báo mồ côi thất bại hay thiết bị con không
có cha mẹ tiếp nhận, nó sẽ cố gắng tham gia vào mạng như một thiết bị mới Nó
sẽ phát ra một danh sách cha mẹ tiền tàng và cố gắng để nối vào mạng hiện tại ở
độ sâu tốt nhất
Khi mà trên một mạng, một thiết bị có thể phân tách ra từ trong một mạng bởi được yêu cầu rời mạng bởi cha mẹ của nó hoặc bởi việc yêu cầu phân tách
của chính nó
2.1.10 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 một khung dữ liệu, chỉ đơn giản đợi kênh kênh rỗi Vào lúc một kênh rỗi được phát hiện, thiết bị có thể truyền khung
Nếu thiết bị nơi đến là một FFD, thì 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 giảm năng lượng bộ truyền nhận của nó khi nó rỗi để giữ gìn năng lượng RFD sẽ không có thể nhận thông báo chừng nào nó ở trong trạng thái này Điều kiện này
là được điều khiển bởi việc yêu cầu tất cả những bản tin đi và đến RFD đi qua bố
mẹ là FFD Khi RFD bật nguồn bộ thu phát của nó, nó yêu cầu các thông báo từ cha mẹ của nó Nếu cha mẹ đã có một thông báo trong bộ đệm cho con, nó sẽ đẩy thông báo đó tới cho con của nó Điều này cho phép RFD giữ năng lượng nhưng yêu cầu FFD có đủ RAM để đệm các thông báo cho tất cả con của chúng Nếu con không yêu cầu các thông báo trong một thời gian nhất định, thông báo sẽ bị
Trang 29 Access control list (ACL): Mã hóa dữ liệu không được sử dụng, nhưng
mạng sẽ loại bỏ những khung từ thiết bị không xác định
Secured mode: Trong kiểu bảo mật được sử dụng, các dịch vụ sau đây được
sử dụng:
Access control list (danh sách truy nhập)
Mã hóa dữ liệu sử dụng thuật toán mã hóa 128 bit Advanced Encryption Standard (AES)
Tính toàn vẹn khung là một dịch vụ bảo mật sử dụng Message Integrity Code (MIC) để bảo vệ dữ liệu không bị sửa chữa bởi thành phần tham gia nếu không có khóa giải mã Nó hỗ trợ bảo đảm dữ liệu đến từ một thành phần tham gia với khóa giải mã
Làm mới liên tục là một dịch vụ bảo mật được sự sử dụng nối tiếp có trật tự của đầu vào để loại bỏ những khung đã được xem Khi một khung được nhận, giá trị làm mới sẽ được so sánh với giá trị làm mới cuối cùng
2.2 KIẾN TRÚC GIAO THỨC ZIGBEE
Mô hình tham khảo Open System Interconnection (OSI), được phát triển bởi International for Standardization (ISO) như một mô hình cho kiến trúc giao thức máy tính và như một khung thống nhất cho sự phát triển giao thức tiêu chuẩn Toàn bộ các điểm của mô hình được tách rời thành các lớp chức năng riêng biệt hoạt động ở các mức khác nhau Mỗi lớp có chịu trách nhiệm riêng và giao tiếp với các lớp trên và lớp dưới nó Dưới đây là sự minh họa mô hình OSI chung và
mô hình Zigbee tương ứng
Trang 30Hình 2.2a: Mô hình OSI
Chuẩn ZigBee được thiết kế trên nền tảng kỹ thuật IEEE 802.15.4 2003 như Medium Access Layer (MAC) và Physical Layer (PHY)
Hinh 2.2b: Kiến trúc Stack ZigBee
2.2.1 Lớp vật lý (PHY layer)
Lớp vật lý hỗ trợ ghép nối giữa lớp con MAC và các kênh sóng vô tuyến lớp vật lý, qua phần cứng và vi chương trình điều khiển RF PHY bao gồm thực thể quản lý gọi là PLME 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 PLME chịu trách nhiệm bảo trì một cơ sở dữ liệu của các
Trang 31đối tượng được quản lý gắn liền với PHY Cơ sở dữ liệu này được đề cập như nền thông tin PHY PAN (PIB)
Hình 2.1.1: Miêu tả các thành phần và ghép nối của PHY
PHY cung cấp hai dịch vụ, được truy cập qua hai điểm truy cập dịch vụ: dịch
vụ dữ liệu PHY, dược truy cập qua điểm truy cập dữ liệu PHY (PD-SAP), và dịch vụ quản lý PHY, được truy cập thông qua điểm truy cập dịch vụ của PLME (PLME-SAP)
Lớp vật lý có nhiệm vụ:
Kích hoạt và không kích hoạt bộ truyền nhận sóng vô tuyến
Tìm năng lượng của kênh hiện tại
Trang 32Bước đầu tiên là mã hóa tất cả dữ liệu trong PPDU từ dữ liệu thành ký hiệu
(symbol) Mỗi byte được chia thành hai symbol và symbol ít ý nghĩa nhất được truyền đầu tiên Đối với trường nhiều byte thì byte ít ý nghĩa nhất được truyền đầu tiên, trừ trường có liên quan đến bảo mật thì byte có ý nghĩa nhất sẽ được truyền đầu tiên
c) Symbol to chip:
Mỗi Symol dữ liễu được ánh xạ thành một chuỗi 32bít ngẫu nhiên giả Chuỗi chíp sau đó được truyền ở 2 MChip/s với chíp (C0) ít ý nghĩa nhất được truyền đầu tiên đối với mỗi Symbol Bảng 3 chỉ ra Symbol dữ liệu tương ứng với giá trị chip
Trang 33điều chế BPSK Tốc độ chíp là 300 Kchip/s đối với băng tần 868 MHz và 600 KChip/s đối với băng tần 915 MHz
Trang 342.2.2 Lớp con MAC (MAC sup-layer)
Lớp con MAC cung cấp một 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 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 có thể được kéo theo MLME chịu tránh nhiệm bảo trì một 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 Cơ sở dữ liệu này được đề cập như PIB lớp con MAC
Hình 2.2.2: Mô hình lớp MAC
Lớp con MAC cung cấp hai dịch vụ, được truy cập thông qua hai điểm truy cập dịch vụ (SAPs):
Dịch vụ dữ liệu MAC, được truy cập thông qua MCPS-SAP
Dịch vụ quản lý MAC, được truy cập thông qua MLME-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 Thêm vào đó cũng có những ghép nối ngoài, những ghép nối ẩn cũng tồn tại giữa MLME và MCPS cho phép MLME để sử dụng dịch vụ dữ liệu MAC
Lớp MAC (Medium Access Control Layer) quản lý kết nối, phân tách mạng
và có tùy chọn cấu trúc superframe cho thời gian dồng bộ và một cơ chế Guaranteed Time Slot (GTS) cho truyền thông yêu tiên cao
Lớp con MAC quản lý tất cả các truy cập các kênh vô tuyến và cá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ị
Trang 35 Chiếm 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ữ hai thực thể MAC tương đương
2.2.3 Lớp mạng (Network layer)
Lớp mạng cung cấp hai dịch vụ, được truy cập qua hai điểm truy cập dịch vụ (SAPs) Dịch vụ dữ liệu lớp mạng, truy cập thông qua điểm truy cập thực thể lớp mạng (NLDE-SAP) và dịch vụ quản lý lớp mạng, truy cập thông quan điểm truy cập dịch vụ thực thể quản lý lớp mạng (NLME-SAP) Hai dich 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ũng có những ghép nối ngoài, 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
Hình 2.2.3.1: Mô hình lớp mạng
2.2.3.1 Network layer data entity (NLDE)
NLDE sẽ cung cấp một dịch vụ dữ liệu để cho phép một ứng dụng truyền tải APDU gữa hai hay nhiều thiết bị Bản thân thiết bị phải được xác định vị trên mạng
NLDE sẽ cung cấp các dịch vụ sau:
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 sự thêm vào của một đầu header giao thức thích hợp
Trang 36 Topology specific routing: NLDE có thể truyền một NPDU tới thiết bị
thích hợp cái mà nơi dế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
2.2.3.2 Thực thể quản lý lớp mạng (NLME)
NLME sẽ cung cấp dịch vụ để cho phép tương tác với Stack
NLME sẽ cung cấp các dịch vụ sau đây:
Configuring a new device: Khả năng cấu hình đầy dủ Stack cho sự hoạt
động như được yêu cầu Những tùy chọn cấu hình bao gồm bắt đầu thao tác như một coodinator ZigBee 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 như một coodinator hay rounter yêu cầu một thiết bị rời mạng
Addressing: Khả năng của coordinator Zigbee và những bộ định tuyến
gán địa chỉ cho thiết bị tham gia vào mạng
Neighbor discovery: Khả năng khám phá, ghi và báo cáo thông tin gắn
liền 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 hay sự tiếp nhận trực tiếp
2.2.4 Lớp ứng dụng (Application layer)
Lớp ứng dụng ZigBee gồm có lớp con APS, ZDO (chứa mặt quản lý ZDO),
và đố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ái mà 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 và những cái chúng cần và đẩy các thông báo giữa ranh giới các thiết bị Nhiệm vụ của ZDO bao gồm định nghĩa vai trò của thiết bị trên mạng (ví dụ coordinator hay End Device chuẩn BigBee), 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 và thiết lập mối liên kết an toàn giữa những thiết bị mạng
Trang 372.2.4.1 Lớp con hỗ trợ ứng dụng (Application support sub-layer)
Lớp con hỗ trợ ứng dụng (APS) cung cấp giao diện giữa lớp mạng (NWK) và lớp ứng dụng (APL) thông qua một dịch vụ đặt chung được sử dụng bởi cả ZD
và nhà sản xuất định nghĩa các đối tượng ứng dụng Những dịch vụ do hai thực thể cung cấp: thực thể dữ liệu APS (APSDE) thông qua điểm truy cập dịch vụ APSDE (APSDE-SAP) và thực thể quản lý APS (APSME) thông qua điểm truy cập dịch vụ APSME (APSME-SAP) APSME cung cấp những dịch vụ truyền dữ liệu cho truyền tải các PDU ứng dụng giữa hai hay nhiều thiết bị được xác định trên cùng mạng
2.2.4.2 Khung ứng dụng (Application framework)
Khung ứng dụng trong ZigBee là môi trường trong đó những đối tượng ứng dụng được dẫn trên các thiết bị ZigBee Bên trong khung ứng dụng, các đối tượng ứng dụng gửi và nhận dữ liệu thông qua APSDE-SAP Điểu khiển và quản
lý những đối tượng ứng dụng được thực hiện thông qua giao diện dùng chung ZDO
Dịch vụ dữ liệu, cung cấp bởi APSDE-SAP, bao gồm yêu cầu, xác nhận, đáp lại và chỉ định cho sự di chuyển dữ liệu Primitive yêu cầu hỗ trợ những sự di chuyển dữ liệu giữ những thực thể đối tượng ứng dụng tương đương Primitive xác nhận những báo cáo trả về của một primitive yêu cầu gọi Primitive được chỉ định sử dụng để chỉ báo sự truyền cảu dữ liệu từ APS đến thực thể đối tượng ứng dụng được miêu tả
Có thể địnhnghĩa lên đến 240 ứng dụng phân biệt rõ ràng, mỗi ghép nối trên một endpoint có chỉ số từ 1 đến 240 Hai endpoint thêm vào được định nghĩa cho APSDE-SAP sủ dụng: endpoint 0 được dữ trữ cho ghép nối dữ liệu tới ZDO và endpoin 255 dữ trữ cho hàm ghép nối để dữ liệu lan truyền tới tất cả các đối tượng ứng dụng Endpoin 241 – 254 dược dự trữ cho tương lai sử dụng
Sử dụng những dịch vụ này được cung cấp bởi APSDE-SAP Khung ứng dụng hỗ trợ một đối tượng ứng dụng hai dịch vụ dữ liệu: dịch vụ cặp giá trị chính
và dịch vụ thông báo chung
Trang 38CHƯƠNG 3 TỔNG QUAN VỀ MODULE XBEE/XBEE PRO
3.1 CẤU TRÚC MODULE XBEE/XBEE – PRO
Module XBee và Xbee – PRO của hãng Maxstream được thiết kế theo chuẩn IEEE 802.15.4 và hỗ trợ mức năng lượng thấp Module này yêu cầu ít năng lượng và cung cấp truyền dữ liệu giữa 2 thiết bị với nhau Dải tần sử dụng của module Xbee là 2.4 GHz
Điện áp sử dụng của module: 2.8 – 3.4 V
Dòng điện khi truyền dữ liệu: 45 mA (3.3V)
Dòng điện khi nhận/ rỗi : 50mA (3.3V)
Dòng điện chế độ tiết kiệm: <10A
Hình 3.1a: Hình ảnh module Xbee/Xbee - pro
Module Xbee được thiết kế 20 chân tích hợp, với cấu tạo như sau:
Hình 3.b: Sơ đồ chân Xbee/Xbee - pro
Trang 39Chân Tên Hướng Mô tả
hay chân số I/O 5
hoặc chân số I/O 6
Trang 40- Kết nối đơn giản để cập nhật firmware: VCC, GND, DIN, DOUT, RTS, DTR
- Hướng tín hiệu được chỉ rõ trong module
- module chứa trở kéo 50k Ω gán cho RESET
- Một vài chân vào có trở kéo có thể được cấu hình sử dụng lệnh PR
- chân không sử dụng nên không nối
3.2 ĐIỀU KHIỂN DỮ LIỆU
Module Xbee/Xbee – PRO sử dụng giao tiếp UART để truyền và nhận dữ liệu
Hình 3.2: Cách giao tiếp với Xbee qua UART
Quá trình truyền dữ liệu bắt đầu bằng bit Start (mức thấp) và 8 bit theo sau, kết thúc truyền là bit Stop (mức 1)