Tài liệu Tiếp cận các ứng dụng giao thức truyền thông không dây miwi pro

  • Số trang: 91 |
  • Loại file: PDF |
  • Lượt xem: 735 |
  • Lượt tải: 0
nguyetha

Đã đăng 8489 tài liệu

Mô tả:

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ------o0o------ ĐỖ HỮU ĐĨNH TIẾP CẬN CÁC ỨNG DỤNG GIAO THỨC TRUYỀN THÔNG KHÔNG DÂY MIWI PRO Ngành: Công nghệ Điện tử-Viễn Thông Chuyên ngành: Kỹ thuật Điện Tử Mã số: 60 52 02 03 LUẬN VĂN THẠC SỸ CÔNG NGHỆ ĐIỆN TỬ-VIỄN THÔNG NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS. NGÔ DIÊN TẬP Hà Nội – Năm 2014 LỜI CAM ĐOAN Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi. Các số liệu, kết quả của Luận văn là trung thực và chưa từng được ai công bố trong bất kỳ công trình nào khác. Tôi xin cam đoan rằng mọi sự giúp đỡ trong việc thực hiện Luận văn này đã được cảm ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ nguồn gốc. Hà Nội, ngày 20 tháng 7 năm 2014 Học viên thực hiện Luận văn (Ký và ghi rõ họ tên) Đỗ Hữu Đĩnh LỜI CẢM ƠN Trước hết em xin bày tỏ lòng biết ơn sâu sắc tới PGS.TS. Ngô Diên Tập, người Thầy đã tận tình giúp đỡ, chỉ bảo và có những ý kiến đóng góp quý báu giúp em hoàn thành khóa luận này, đặc biệt là trong phương pháp và tác phong làm việc. Em cũng xin được bày tỏ lòng biết ơn tới các Thầy, Cô trong Khoa Điển tử-Viễn thông, Trường ĐH Công nghệ, ĐH Quốc Gia Hà Nội đã tạo điều kiện thuận lợi cả về kiến thức lẫn trang thiết bị cần thiết để cho em có thể hoàn thành khóa luận của mình. Đồng thời cảm ơn gia đình và bạn bè đã động viên và giúp đỡ em trong quá trình thực hiện công việc. Với sự hiểu biết và kinh nghiệm làm việc ít ỏi trong lĩnh vực mạng – truyền thông nên bản luận văn này không thể tránh khỏi những thiếu sót. Em rất mong nhận được sự đóng góp ý kiến quý báu từ Thầy, Cô và bạn bè. Một lần nữa, em xin chân thành cảm ơn! Hà Nội, ngày 20 tháng 7 năm 2014 Học viên Đỗ Hữu Đĩnh MỞ ĐẦU Ngày nay, nhờ sự phát triển của khoa học công nghệ và cả các điều kiện về kinh tế - xã hội đã thúc đẩy và thực sự làm bùng nổ nhu cầu sử dụng máy móc thay thế các công việc của con người. Sẽ không quá nếu nói máy móc đang thay thế con người ở khắp mọi nơi trên quả đất này, từ các nhà máy, công trường sản xuất đến các cửa hàng, trung tâm mua sắm - vui chơi giải trí, từ các cơ quan công sở đến nhà riêng và thậm chí cả trong phòng ngủ của bạn. Tuy nhiên, dường như đã trở thành quy luật, khả năng đáp ứng luôn thấp hơn so với nhu cầu và tham vọng của con người, khi người ta có một thì gần như ngay lập tức họ sẽ nghĩ đến hai hoặc nhiều hơn. Với các thiết bị máy móc cũng không là ngoại lệ. Máy móc thiết bị làm việc thay con người là tốt rồi nhưng dây rựa lằng nhằng, vướng và rối nhiều lúc làm người ta điên tiết lên và muốn vứt nó đi. Thế nên người ta nghĩ nhiều hơn đến việc làm cho các máy móc đó vẫn làm việc được mà không cần dây. Đó là một trong những nguyên nhân và động lực quan trọng để các ứng dụng không dây ra đời và phát triển mạnh mẽ như những năm gần đây. Việc triển khai các ứng dụng với mạng không dây đã trở nên thực sự phổ biến. Từ các thiết bị gia dụng đến các ứng dụng công nghiệp. Đặc biệt là trong lĩnh vực thiết bị gia dụng khi người ta đang ngày càng tỏ ra lười biếng hơn nhưng lại đòi hỏi tiện dụng hơn, an toàn hơn khi ở nhà. Từ đó thuật ngữ “Nhà thông minh” hay “nhà tự động” cũng ra đời để mô tả những ngôi nhà với các thiết bị được tự động hóa và thông minh. Tuy nhiên, ở thời điểm hiện tại thì các giải pháp và thiết bị cho nhà thông minh đang là vấn đề kỹ thuật khá mới và khó, đặc biệt là ở Việt Nam. Thêm vào đó, các sản phẩm thương mại đang có trên thị trường, bao gồm cả giải pháp mạng không dây và các loại thiết bị không dây, đều rất đắt đỏ so với mặt bằng kinh tế của người Việt Nam. Có thể lấy ví dụ ngay là các sản phẩm SmartHome của BKAV đang chào bán ở các khu dành cho người giàu như Time City, Vincom, v.v. Sự ham thích được sử dụng các thiết bị tự động và giá thị trường đắt đỏ đã khiến tôi bắt tay vào nghiên cứu và sau đó quyết định thực hiện đề tài về ứng dụng không dây này, với một giải pháp mạng không dây còn tương đối mới là MiWi PRO của Microchip. Mục tiêu của đề tài là tìm ra một giải pháp mạng không dây dễ tiếp cận và dễ làm, giá rẻ, nhưng vẫn tốt và sau đó tiến hành chế tạo, thực thi thành công một vài ý tưởng tự động hóa thiết bị gia đình dựa trên giải pháp được chọn. MỤC LỤC LỜI CAM ĐOAN .............................................................................................................. LỜI CẢM ƠN .................................................................................................................... MỞ ĐẦU ........................................................................................................................... MỤC LỤC ......................................................................................................................... DANH MỤC BẢNG BIỂU............................................................................................... DANH MỤC HÌNH VẼ ................................................................................................... Phần 1: CƠ SỞ LÝ THUYẾT ........................................................................................ 1 Chương 1 .....................................................................................................................1 GIỚI THIỆU CÔNG NGHỆ KHÔNG DÂY ZIGBEE ...............................................1 1.1. Tổng quan về Zigbee ...................................................................................1 1.2. Tìm hiểu giao thức Zigbee ..........................................................................2 1.3. Ưu nhược điểm của công nghệ Zigbee ...................................................... 12 Chương 2 ...................................................................................................................15 CÔNG NGHỆ KHÔNG DÂY MIWI........................................................................15 2.1. Tổng quan về MIWI ....................................................................................... 15 2.2. Tìm hiểu về giao thức MiWi PRO .................................................................18 Chương 3 ...................................................................................................................37 GIAO DIỆN LẬP TRÌNH CHO GIAO THỨC MIWI PRO ....................................37 3.1. Tìm hiểu chung về cấu hình giải pháp không dây của Microchip .................37 3.2. Giới thiệu giao diện chuẩn hóa MiMAC ........................................................ 38 3.3. Giới thiệu giao diện chuẩn hóa MiApp .......................................................... 48 Phần 2: THỰC NGHIỆM ............................................................................................ 58 Chương 4 ...................................................................................................................58 TRIỂN KHAI THIẾT KẾ MẠNG KHÔNG DÂY MIWI PRO ............................... 58 4.1. Ý tưởng thiết kế mạng không dây MiWi PRO ...............................................58 4.2. Sơ đồ khối hệ thống mạng MiWi PRO thử nghiệm .......................................58 4.3. Sơ đồ giải thuật điều khiển và thông báo trạng thái trong mạng....................59 4.4. Sơ đồ chi tiết và hoạt động của các nút trong mạng .......................................60 4.5. Chương trình chi tiết trên các nút mạng MiWi PRO......................................71 Chương 5 ...................................................................................................................74 KẾT QUẢ VÀ MỞ RỘNG ĐỂ TÀI .........................................................................74 5.1. Kết quả thực hiện đề tài ..................................................................................74 5.2. Hướng phát triển đề tài ...................................................................................79 KẾT LUẬN........................................................................................................................ TÀI LIỆU THAM KHẢO ................................................................................................. PHỤ LỤC .......................................................................................................................... DANH MỤC BẢNG BIỂU Bảng 1.1: Loại thiết bị chuẩn IEEE 802.15.4-2003 Bảng 1.2: Loại thiết bị giao thức Zigbee Bảng 1.3: So sánh giữa các công nghệ không dây. Bảng 2.1: Định dạng bit của trường điều khiển khung. Bảng 2.2: Định dạng trường địa chỉ rút gọn. Bảng 2.3: Địa chỉ truyền đa hướng, quảng bá. Bảng 2.4: Bảng cây gia phả trong giao thức MiWi PRO. Bảng 2.5: Các dịch vụ giao thức mới của giao thức MiWi PRO. Bảng 2.6: Các dịch vụ giao thức mới cho tần số linh hoạt của MiWi PRO. Bảng 2.7: Định dạng dịch vụ báo cáo điều phối. Bảng 2.8: Định dạng dịch vụ giao thức đáp ứng điều phối. Bảng 2.9: Định dạng của dịch vụ giao thức báo cáo cây gia phả. Bảng 2.10: Định dạng dịch vụ giao thức Yêu cầu cây gia phả. Bảng 2.11: Định dạng của dịch vụ giao thức Báo cáo bảng định tuyến. Bảng 2.12: Định dạng dịch vụ giao thức Yêu cầu linh hoạt tần số. Bảng 2.13: Định dạng dịch vụ giao thức Yêu cầu quét năng lượng. Bảng 2.14: Định dạng dịch vụ giao thức Đề xuất kênh linh hoạt tần số. Bảng 2.15: Định dạng dịch vụ giao thức Bác bỏ kênh linh hoạt tần số. Bảng 2.16: Định dạng dịch vụ giao thức Thay đổi kênh linh hoạt tần số. Bảng 2.17: Yêu cầu ROM và RAM cho thiết bị điều hành mạng MiWi PRO. Bảng 2.18: Yêu cầu ROM và RAM cho thiết bị cuối trong mạng MiWi PRO. Bảng 4.1: Bảng thông số của vi xử lý PIC18F46J50. DANH MỤC HÌNH VẼ Hình 1-1: Cấu hình mạng hình sao. Hình 1-2: Cấu hình mạng hình khóm cây. Hình 1-3: Mạng hình lưới. Hình 1-4: Ví dụ 1 dòng trong bảng liên kết. Hình 1-5: Ví dụ 1 dòng của bảng liên kết nhóm. Hình 1-6: Cấu trúc ngăn xếp của giao thức Zigbee. Hình 2-1: Sơ đồ phát triển ứng dụng MiWi. Hình 2-2: Topo mạng hình sao của giao thức MiWi P2P. Hình 2-3: Topo mạng dạng lưới của giao thức MiWi. Hình 2-4: Topo mạng dạng lưới của giao thức MiWi PRO. Hình 2-5: Định dạng khung của giao thức MiWi PRO. Hình 2-6: Cơ chế định tuyến của giao thức MiWi PRO. Hình 2-7: Quy trình gia nhập mạng MiWi PRO. Hình 2-8: Sơ đồ quy trình thực hiện linh hoạt tần số. Hình 3-1: Sơ đồ khối giải pháp không dây của Microchip. Hình 4-1: Sơ đồ khối hệ thống mạng MiWi PRO Hình 4-2: Sơ đồ giải thuật trong mạng MiWi PRO Hình 4-3: Sơ đồ khối nút mạng chủ Miwi PRO Hình 4-4: Sơ đồ nguyền lý nguồn nuôi và ổn áp cho nút mạng Miwi PRO Hình 4-5: Sơ đồ nguyên lý nút mạng chủ Miwi PRO. Hình 4-6: Sơ đồ nguyên lý nút mạng chủ Miwi PRO (tiếp). Hình 4-7: Sơ đồ mạch in 4 lớp nút mạng chủ (lớp #1). Hình 4-8: Sơ đồ mạch in 4 lớp nút mạng chủ (lớp #2). Hình 4-9: Sơ đồ mạch in 4 lớp nút mạng chủ (lớp #3). Hình 4-10: Sơ đồ mạch in 4 lớp nút mạng chủ (lớp #4). Hình 4-11: Sơ đồ khối nút chấp hành Hình 4-12: Sơ đồ nguyên lý nút chấp hành Miwi PRO. Hình 4-13: Sơ đồ mạch in nút mạng Miwi PRO. Hình 4-14: Sơ đồ khố module điều khiển tải và đo dòng. Hình 4-15: Sơ đồ nguyên lý mạch đóng mở tải xoay chiều. Hình 4-16: Sơ đồ nguyên lý module đọc phím cảm ứng điện dung. Hình 4-17: Mạch PCB module phím bấm cảm ứng sử dụng IC TTP229. Hình 4-18: Chương trình cho nút chủ mạng MiWi PRO. Hình 4-19: Chương trình cho nút con. Hình 4-20: Chương trình cho nút đọc phím bấm cảm ứng. Hình 5-1: Hệ thống mạng và thiết bị chấp hành khi chưa hoạt động Hình 5-2: Điều khiển bật đèn số 1 qua mạng không dây MiWi PRO Hình 5-3: Điều khiển bật đèn số 2 qua mạng không dây MiWi PRO Hình 5-4: Điều khiển bật đèn cả 2 đèn qua mạng không dây MiWi PRO --------------------------------- Phần 1: CƠ SỞ LÝ THUYẾT Chương 1 GIỚI THIỆU CÔNG NGHỆ KHÔNG DÂY ZIGBEE 1.1. Tổng quan về Zigbee Zigbee là một quy chuẩn cho các giao thức truyền thông cấp cao sử dụng các thiết bị thu phát nhỏ, công suất thấp dựa trên chuẩn IEEE 802.15.4 dành cho các mạng cá nhân (Personal Area Network - PAN). Các thiết bị Zigbee thường được sử trong các mạng dạng lưới (mesh network) cho phép truyền dữ liệu xa hơn và trực tiếp giữa các thiết bị trong mạng. Nó cho phép các mạng Zigbee được tạo lập theo kiểu Ad-hoc, một dạng mạng không dây phi tập trung hóa điều khiển, không một thiết bị truyền nhận nào có khả năng tương tác với tất cả các thiết bị trong mạng và bất cứ thiết bị nào cũng có thể được sử dụng để vận hành mạng. Zigbee được nhắm đến dành cho các ứng dụng yêu cầu tốc độ dữ liệu thấp, công suất nhỏ và mạng được bảo mật. Zigbee có một tốc độ định nghĩa 250 kbit/s, phù hợp nhất cho việc truyền nhận tín hiệu cả định kỳ lẫn đứt đoạn, hoặc một tín hiệu đơn hướng từ các cảm biến hoặc thiết bị đầu vào. Các ứng dụng này có thể bao gồm các công tắc đèn không dây, các đồng hồ điện tử hiển thị trong nhà, các hệ thống quản lý giao thông và cả các ứng dụng công nghiệp yêu cầu việc truyền phát dữ liệu không dây trong phạm vi nhỏ và ở tốc độ tương đối thấp. Zigbee cung cấp cho các nhà phát triển một cách tổ chức mạng không dây đơn giản hơn và rẻ tiền hơn so với các loại mạng không dây cá nhân (Wireless Personal Area Network – WPAN) trước nó như Blue-tooth và Wi-Fi. Nó hoạt động trong các băng tần ISM (Industrial, Scientific and Medical) bao gồm 868MHz ở Châu Âu, 915MHz ở Mỹ và 2.4GHz hầu như trên toàn thế giới. Tốc độ truyền dữ liệu trong mạng Zigbee thay đổi từ 20kbit/s ở tần số 868MHz đến 250kbit/s ở tần số 2.4GHz. Nói tóm lại, Giao thức ZigBee là một giao thức mạng không dây được phát triển đặc biệt cho các mạng cảm biến và điều khiển dữ liệu tốc độ thấp, giá thành rẻ và công suất tiêu thụ thấp. Rất nhiều các ứng dụng không dây được hưởng lợi từ ZigBee có thể kể đến như điều khiển công nghiệp, ưng dụng tự động trong các gia đình và tòa nhà, ngoại vi máy tính, các ứng dụng cảm biến y tế, các mạng bảo mật và không chỉ dừng lại ở đó. Để tìm kiếm một giải pháp thay thế cho các công nghệ điều khiển mạng hiện có như RS-422, RS-485 hoặc các giao thức không dây trả phí, ZigBee có lẽ sẽ là giải pháp chúng ta cần đến. 1 1.2. Tìm hiểu giao thức Zigbee Như đã nói ở trên, Zigbee là một giao thức mạng không dây tiêu chuẩn dành cho các mạng điều khiển dữ liệu tốc độ thấp. Zigbee được phân lớp ở trên đỉnh của bộ tiêu chuẩn IEEE 802.15.4 và cung cấp phương pháp học tiêu chuẩn cho việc thực thi các chức năng trong mạng như thiết lập mạng, cấp phát địa chỉ cho các thiết bị, định tuyến, truyền tải bản tin và dò tìm thiết bị trong mạng. 1.2.1. Tiêu chuẩn IEEE 802.15.4-2003 Giao thức Zigbee sử dụng đặc tả của chuẩn IEEE 802.15.4-2003 như lớp điều khiển truy cập (Medium Access Layer – MAC) và lớp vật lý (Physical Layer – PHY) của nó. Tiêu chuẩn IEEE 802.15.4-2003 định nghĩa 3 dải tần hoạt động là 2.4GHz, 915 MHZ và 868 MHz. Mỗi dải tần chứa một số lượng kênh nhất định, ví dụ dải tần 2.4 GHz có 16 kênh (từ kênh 11-26), dải tần 915 MHz có 10 kênh (từ 1-10) và dải tần 868 MHz có duy nhất 1 kênh (kênh 0). Tốc độ bit (bit rate) của giao thức phụ thuộc vào tần số hoạt động của nó. Ở tần số 2.4 GHz, tốc độ bit có thể lên tới 240 kbps, tần số 915 MHz cho tốc độ 40 kbps và tần số 868 MHz cho tốc độ dữ liệu 20 kbps. Tuy nhiên, tốc độ dữ liệu thực sẽ nhỏ hơn tốc độ bit tối đa quy định do thất thoát gói tin và trễ xử lý. Độ dài tối đa của 1 gói MAC chuẩn IEEE 802.15.4-2003 là 127 bytes, trong đó có 16 bit mã dư thừa CRC. Giá trị của 16 bit mã CRC sẽ kiểm tra tính toàn vẹn của khung dữ liệu. Thêm vào đó, IEEE 802.15.4-2003 có thể sử dụng một cơ chế truyền dữ liệu có nhận biết. Có nghĩa là tất cả các khung dữ liệu có gắn một cờ đặc biệt yêu cầu xác nhận được xác nhận bởi bên nhận của khung dữ liệu đó. Nó đảm bảo là khung dữ liệu đã thực sự được truyền đến bên nhận. Nếu một khung dữ liệu được truyền đi có gắn cờ yêu cầu xác nhận mà không nhận được xác nhận trong một khoảng thời gian nhất định thì bên phát sẽ thử truyền lại một số lần nhất định trước khi đưa ra bản tin lỗi. Cũng cần phải chú ý là việc nhận được tín hiệu xác nhận chỉ đơn giản nói lên là khung dữ liệu đã được nhận đúng cách bởi lớp MAC. Tuy nhiên nó không đảm bảo là khung dữ liệu được xử lý đúng. Có thể lớp MAC của nút nhận nhận và xác nhận khung dữ liệu đúng nhưng do thiếu tài nguyên để xử lý nên khung dữ liệu đó có thể bị hủy bỏ ở các lớp cao hơn. Như thế, các lớp cao hơn sẽ yêu cầu có thêm trả lời xác nhận từ bên nhận. 1.2.2. Loại thiết bị Về loại thiết bị, chuẩn IEEE 802.15.4-2003 quy định 2 loại thiết bị chính đó là thiết bị tính năng đầy đủ (Full Function Device – FFD) và thiết bị tính năng rút gọn (Reduced Function Device – RFD). Các tính năng của 2 loại thiết bị này như sau: 2 Bảng 1.1: Loại thiết bị chuẩn IEEE 802.15.4-2003 Loại Thiết bị Tính năng cung cấp Nguồn điện Cấu hình bộ thu điển hình điển hinh FFD Đầy đủ Nguồn điện chính Bật khi rảnh RFD Giới hạn Pin Tắt khi rảnh Với Giao thức Zigbee thì có 3 loại thiết bị điển hình bắt nguồn từ các kiểu thiết bị của chuẩn IEEE 802.15.4-2003, 3 loại thiết bị và tính năng của chúng như sau: Bảng 1.2: Loại thiết bị giao thức Zigbee Thiết bị Zigbee Loại thiết bị IEEE Tính năng điển hình Coordinator (điều phối) FFD Mỗi mạng chỉ có 1. Tạo lập mạng, cấp phát địa chỉ, cho phép thiết bị khác gia nhập mạng Router (định tuyến) FFD Tùy chọn. Mở rộng phạm vi vật lý của mạng. Cho phép thêm nhiều nút gia nhập mạng. Cũng có thể thực hiện các chức năng kiểm soát và điều phối. End (thiết bị cuối) FFD hoặc RFD Thực hiện các tính năng điều phối và/hoặc kiểm soát. 1.2.3. Cấu hình mạng Mạng không dây giao thức Zigbee có thể chấp nhận nhiều kiểu cấu hình mạng khác nhau. Trong tất cả các cấu hình mạng thì đều bao gồm tối thiểu 2 bộ phận chính là: - Một nút điều phối - Một thiết bị cuối Nút điều phối giao thức Zigbee là một dạng biến đổi đặc biệt của thiết bị tính năng đầy đủ (FFD) mà nó triển khai một tập lớn hơn các dịch vụ của giao thức Zigbee. Một thiết bị cuối có thể là một thiết bị tính năng đầy đủ (FFD), như 1 Router, hoặc một thiết bị tính năng rút gọn (RFD). Thiết bị RFD là nút nhỏ nhất và đơn giản nhất trong giao thức Zigbee. Nó thực thi chỉ 1 lượng tối thiểu các dịch vụ của giao thức Zigbee. Một bộ phận thứ 3 (không bắt buộc) đó là bộ định tuyến giao thức Zigbee, có mặt trong một số cấu hình mạng. 3 1.2.3.1. Mạng hình sao Mạng hình sao (Star Network) bao gồm một nút điều phối giao thức Zigbee và một hoặc nhiều thiết bị cuối. Trong mạng hình sao, tất cả các thiết bị cuối chỉ giao tiếp với nút điều phối. Nếu một thiết bị cuối cần truyền dữ liệu tới một thiết bị cuối khác thì nó phải gửi dữ liệu tới nút điều phối. Nút điều phối sau đó sẽ chuyển tiếp dữ liệu tới thiết bị cuối mong muốn. Hình 1-1: Cấu hình mạng hình sao. 1.2.3.2. Mạng hình khóm cây Một cấu hình mạng khác là mạng hình khóm cây (Cluster Tree Topology, hình 12). Trong cấu hình này, các thiết bị cuối tham gia hoặc cùng với nút điều phối giao thức Zigbee hoặc cùng với bộ định tuyến giao thức Zigbee. Bộ định tuyến thực hiện 2 chức năng. Một là tăng số lượng nút có thể tham gia vào mạng. Hai là mở rộng phạm vi vật lý của mạng. Với một bộ định tuyến được them vào, thiết bị cuối không cần nằm trong vùng phủ sóng của nút điều phối mạng. Tất cả các bản tin trong mạng hình khóm cây được định tuyến dọc theo cây. Hình 1-2: Cấu hình mạng hình khóm cây. 4 1.2.3.3. Mạng hình lưới Một mạng hình lưới (Mesh network, hình 1-3) tương tự như mạng hình khóm cây, ngoại trừ việc các thiết bị FFD có thể định tuyến bản tin trực tiếp đến các thiết bị FFD khác thay vì theo cấu trúc của cây. Tuy nhiên các bản tin tới các thiết bị cuối RFD vẫn phải đi qua thiết bị cha của nó. Ưu điểm của kiểu bố trí mạng này là trễ bản tin có thể giảm bớt và độ tin cậy cao. Hình 1-3: Mạng hình lưới. Mạng hình lưới và mạng hình khóm cây đều được biết đến là các mạng đa bước nhảy vì chúng có khả năng định tuyến các gói tin qua nhiều thiết bị. Trong khi mạng hình sao là mạng đơn bước. Một mạng theo giao thức Zigbee là mạng đa truy cập, có nghĩa là tất cả các nút trong mạng đều có quyền truy cập ngang nhau tới kênh giao tiếp. 1.2.4. Cơ chế truy cập Có 2 kiểu cơ chế đa truy cập: định hướng và không định hướng. Trong một mạng không định hướng, tất cả các nút được phép truyền tải dữ liệu ở bất kỳ thời điểm nào kênh rỗi. Trong khi đó ở một mạng định hướng, các nút được phép truyền chỉ trong một khoảng thời gian định trước. Nút điều phối sẽ truyền định kỳ một siêu khung (superframe) được xác định như một khung định hướng và tất cả các nút trong mạng được yêu cầu đồng bộ với khung này. Mỗi nút được cung cấp một khe thời gian nhất định trong superframe mà trong khoảng thời gian đó cho phép nó truyền và nhận tín hiệu của nó. Một superframe có thể bao gồm một khe thời gian chung trong đó tất cả các nút cạnh tranh để truy cập kênh. Tuy nhiên phiên bản hiện tại của Microchip Zigbee stack chỉ hỗ trợ các mạng không định hướng. 5 1.2.4.1. Cơ chế giao tiếp bằng bản tin Các thiết bị trong mạng giao tiếp với nhau sử dụng các bản tin. Nếu một thiết bị biết địa chỉ mạng của một thiết bị khác mà nó muốn giao tiếp, nó sẽ gửi đi một bản tin sử dụng địa chỉ mạng của thiết bị đích. Kiểu giao tiếp qua bản tin này được gọi là định địa chỉ trực tiếp. Mặc dù kiểu định địa chỉ trực tiếp này dễ hiểu và dễ sử dụng nhưng nó cũng đi cùng với một số những phát sinh. Đầu tiên mỗi thiết bị được yêu cầu dò tìm và lưu trữ thông tin về địa chỉ của các thiết bị đích nó quan tâm. Giao thức Zigbee cũng cung cấp một cách nữa để gửi bản tin thông qua một cơ chế gọi là liên kết. Khi một thiết bị hỗ trợ việc liên kết, nó nắm giữ một bảng liên kết mà trong đó mỗi một dòng sẽ chứa địa chỉ đích và điểm cuối ứng dụng đích của một thiết khác mà thiết bị nguồn được kết nối tới. Hình 1-4 mô tả các loại thông tin được lưu giữ trong bảng liên kết. Hình 1-4: Ví dụ 1 dòng trong bảng liên kết. [5] Bất cứ khi nào một thiết bị nguồn muốn giao tiếp với một thiết bị mà nó liên kết, đơn giản nó chỉ cần tạo ra các bản tin mà không cần chỉ định địa chỉ đích nữa. Trong nội bộ của ngăn xếp (Stack) và là rõ ràng với ứng dụng, bảng liên kết được tìm kiếm và nếu một kết quả trùng khớp được tìm thấy chứa địa chỉ đích và điểm cuối ứng dụng thì sau đó địa chỉ đích sẽ được trích xuất từ bảng này và ghi thêm vào cuối của bản tin trước khi bản tin được truyền đi. 1.2.4.2. Định dạng bản tin của giao thức Zigbee Bản tin của giao thức Zigbee có thể lên tới 127 bytes bao gồm các trường sau: - Tiêu đề MAC (MAC Header): Tiêu đề MAC chứa các trường điều khiển khung MAC, số chuỗi định hướng và thông tin định địa chỉ bản tin khi nó được truyền đi. Chú ý là nó không cho biết địa chỉ nguồn thực và đích đến cuối cùng của bản tin nếu bản tin đang được định tuyến. Việc tạo lập và sử dụng tiêu đề này là rõ ràng với ứng dụng. - Tiêu đề lớp mạng (Network Layer (NWK) Header): Tiêu đề này chứa thông tin về địa chỉ nguồn và đích thực sự của bản tin cùng với 1 số thông tin khác. Việc tạo lập và sử dụng tiêu đề này là rõ ràng với ứng dụng. - Tiêu đề lớp phụ hỗ trợ ứng dụng ( Application Support (APS) sub-layer Header): Tiêu đề này chứa đựng mã căn cước của đặc tả ứng dụng, mã khóm 6 thuộc tính và điểm cuối ứng dụng đích của bản tin hiện tại. Việc tạo lập và sử dụng tiêu đề này là rõ ràng với ứng dụng. - Tải của lớp hỗ trợ ứng dụng (APS Payload): Trường này chứa khung giao thức Zigbee để ứng dụng xử lý. Chương trình của ứng dụng chịu trách nhiệm điền các giá trị vào trường tải APS này. 1.2.4.3. Định dạng khung giao thức Zigbee Mỗi đặc tả ứng dụng chịu trách nhiệm định nghĩa định dạng khung cho mỗi loại bản tin nó hỗ trợ. 1.2.4.4. Đánh địa chỉ Mỗi nút trên mạng giao thức Zigbee sẽ có 2 địa chỉ: một địa chỉ MAC 64 bit và một địa chỉ mạng 16 bit. Tương ứng cũng tồn tại 2 dạng đánh địa chỉ bản tin. Địa chỉ MAC 64 bit của mỗi thiết bị là duy nhất trên toàn thế giới. Địa chỉ này được tạo thành bởi 24 bit mã duy nhất xác định tổ chức (Organizationally Unique Identifier - OUI) và 40 bit mã duy nhất xác định thiết bị được gán bởi nhà sản xuất. Do đó 64 bit địa chỉ này là duy nhất với mỗi thiết bị trên thế giới. Địa chỉ mạng là địa chỉ mở rộng để thiết bị giao tiếp trong quá trình tham gia vào một mạng nào đó. Sau khi thiết bị gia nhập thành công một mạng Zigbee, nó được cấp một địa chỉ mạng 16 bit bởi nút cha của nó từ kho các địa chỉ có sẵn. Từ đó trở đi, thiết bị sẽ sử dụng địa chỉ này để giao tiếp với các thiết bị khác trong mạng. 1.2.4.5. Phương thức truyền tin Có 3 phương thức truyền có thể được sử dụng trong mạng Zigbee là truyền đơn hướng, truyền đa hướng và truyền quảng bá. - Truyền đơn hướng (Unicast): Trong một bản tin truyền đơn hướng, địa chỉ đích được cung cấp trong tiêu đề lớp MAC của gói tin. Chỉ thiết bị có địa chỉ đích đó mới nhận bản tin. Các thiết bị khác sẽ lọc bỏ những bản tin không dành cho chúng. - Truyền đa hướng (Multicast): Một ứng dụng có thể chọn cách thiết kế một tập các thiết bị và các điểm cuối ứng dụng trên các thiết bị đó để tạo thành một nhóm. Sau đó thì tập các thiết bị này có thể được định địa chỉ đồng thời bằng một địa chỉ nhóm hoặc mã nhóm như ví dụ trong Hình 1-5 dưới đây: Hình 1-5: Ví dụ 1 dòng của bảng liên kết nhóm. [5] 7 Khi một thiết bị hỗ trợ truyền đa hướng, nó lưu giữ một bảng liên kết nhóm trong đó mỗi dòng chứa địa chỉ nhóm và danh sách các ứng dụng cuối nhận bản tin được chuyển hướng nếu địa chỉ nhóm trùng khớp với địa chỉ đích của bản tin. Được thực hiện trong nội bộ ngăn xếp và rõ ràng với ứng dụng, bảng liên kết nhóm được tìm kiếm bất cứ khi nào một bản tin đa hướng được nhận, và nếu địa chỉ nhóm được tìm thấy trùng khớp trong bảng thì sau đó bản tin sẽ được chuyển hướng tới tất cả các ứng dụng cuối được liệt kê trong bảng liên kết của nhóm đó. - Truyền quảng bá (Broadcast): Trong một gói tin quảng bá, địa chỉ đích lớp MAC là 0xFFFF, khi đó tất cả các bộ nhận đang hoạt động sẽ thu nhận bản tin. Kiểu đánh địa chỉ này được sử dụng khi thiết bị đang cố tham gia vào mạng, dò tìm kết nối trong mạng và thực hiện các dò tìm khác của giao thức Zigbee. Giao thức Zigbee triển khai một cơ chế chủ động nhận biết một gói tin quảng bá. Chủ động nhận biết có nghĩa là khi một thiết bị phát đi hoặc gửi lại một gói tin quảng bá, nó sẽ lắng nghe xem tất cả các nút lân cận của nó đã gửi lại gói tin chưa. Nếu sau một khoảng thời gian nhất định (nwkPassiveAckTimeout) mà tất cả các nút lân cận chưa tái tạo được bản tin, nó sẽ gửi lại gói tin cho đến khi nghe thấy tất cả các nút lân cận gửi lại hoặc hết thời gian nhận bản tin quảng bá (nwkBroadcastDeliveryTime). 1.2.4.6. Cơ chế truyền dữ liệu Trong một mạng không định hướng, khi một thiết bị muốn gửi một khung dữ liệu, nó chỉ đơn giản là chờ cho đến khi kênh rỗi. Khi phát hiện kênh rỗi, nó sẽ gửi đi khung dữ liệu muốn gửi. Nếu thiết bị đích là một thiết bị đầy đủ tính năng (FFD), bộ thu phát của 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 điểm nào. Khả năng này cho phép với mạng hình lưới. Tuy nhiên nếu thiết bị đích là một thiết bị tính năng rút gọn (RFD), bộ thu phát bị tắt khi rỗi để tiết kiệm năng lượng. Thiết bị đích RFD khi đó sẽ không thể nhận bản tin ở trạng thái này. Tình huống này được xử lý bằng việc yêu cầu tất cả các bản tin tới thiết bị RFD phải đi qua thiết bị cha của nó. Khi thiết bị RFD bật bộ thu phát của nó lên, nó yêu cầu các bản tin từ nút cha. Nếu nút cha đã lưu giữ một bản tin cho thiết bị RFD, nó sẽ chuyển tiếp lại cho nút con RFD đó. Cơ chế này cho phép nút con RFD tiết kiệm năng lượng nhưng yêu cầu nút cha cần phải có đủ RAM để lưu trữ các bản tin cho nút con. Nếu nút con RFD không yêu cầu bản tin trong một khoảng thời gian (macTransactionPersistenceTime), bản tin sẽ bị quá hạn và bị hủy bỏ ở nút cha. 8 1.2.4.7. Định tuyến Ngăn xếp Microchip Zigbee có khả năng định tuyến cho các bản tin. Việc định tuyến được thực hiện tự động bởi ngăn xếp mà không cần có sự can thiệp của ứng dụng cuối. Việc định tuyến này cho phép mở rộng phạm vi của mạng bằng cách cho phép một thiết bị cuối ở ngoài vùng phủ sóng của nút điều phối mạng được gia nhập mạng thông qua một bộ định tuyến giao thức Zigbee. Khi một bản tin được gửi đi, nó sẽ chỉ định loại định tuyến mong muốn. Có 3 kiểu định tuyến có thể lựa chọn là: - Ngăn chặn: Nếu kết nối mạng hình lưới được tìm thấy, bản tin sẽ được định tuyến theo kết nối mạng lưới đó. Ngược lại, bản tin sẽ được định tuyến dọc theo cấu trúc của cây. - Cho phép: Nếu kết nối mạng hình lưới được tìm thấy, bản tin sẽ được định tuyến theo kết nối mạng lưới đó. Nếu kết nối mạng hình lưới không được xác định, bộ định tuyến sẽ bắt đầu dò tìm kết nối. Khi việc dò tìm kết thúc thì bản tin sẽ được gửi đi theo các kết nối đã được tính toán. Nếu bộ định tuyến không định tuyến được, nó sẽ gửi bản tin đi theo cấu trúc của cây. - Bắt buộc: Nếu bộ định tuyến có khả năng định tuyến, bộ định tuyến sẽ bắt đầu dò tìm kết nối, ngay cả khi kết nối đã tồn tại. Khi việc dò tìm kết thúc thì bản tin sẽ được gửi đi theo các kết nối đã được tính toán. Nếu bộ định tuyến không định tuyến được, nó sẽ gửi bản tin đi theo cấu trúc của cây. Lựa chọn định tuyến này nên được sử dụng có chừng mực, bởi nó tạo ra một lưu lượng lớn trên mạng. Nó được sử dụng chủ yếu cho việc sửa chữa các kết nối bị hư hỏng. 1.2.5. Thiết lập và gia nhập mạng 1.2.5.1. Thiết lập mạng Một mạng giao thức Zigbee mới đầu tiên phải được thành lập bởi nút điều phối mạng. Ở bước khởi đầu, nút điều phối mạng Zigbee tìm xem có nút điều phối nào khác đang hoạt động trên các kênh được phép của nó hay không. Dựa trên năng lượng kênh và số mạng tìm thấy trên mỗi kênh được phép, nó thành lập mạng riêng của mình và chọn một địa chỉ mạng (Personal Area Network – PAN ID) 16 bit duy nhất. Khi mạng mới đã được thiết lập, các bộ định tuyến Zigbee và thiết bị cuối được phép gia nhập mạng mới này. Khi một mạng được thành lập, có thể xảy ra tình trạng có nhiều hơn một mạng chồng lấn lên nhau hay có xung đột địa chỉ mạng (PAN ID). Trong trường hợp này, 9 một nút điều phối mạng sẽ khởi chạy chương trình giải quyết xung đột địa chỉ mạng và một trong số các nút điều phối sẽ thay đổi địa chỉ mạng của nó hoặc thay đổi kênh hoạt động. Nút điều phối bị ảnh hưởng sẽ hướng dẫn tất cả các thiết bị con của nó thực hiện những thay đổi cần thiết. Tuy nhiên, phiên bản hiện tại của Microchip Stack vẫn chưa hỗ trợ chương trình giải quyết xung đột địa chỉ mạng này. 1.2.5.2. Liên kết mạng Quan hệ nút cha – nút con được thành lập khi một thiết bị đã là thành viên của mạng cho phép một thiết bị mới gia nhập mạng. Trong trường hợp này, thiết bị mới trở thành nút con và thiết bị cũ đầu tiên trở thành nút cha. Một cách để thiết bị mới liên kết với thiết bị đầu tiên là sử dụng chu trình liên kết của giao thức Zigbee. Thiết bị con khởi chạy chu trình liên kết bằng việc thực hiện một lượt quét chủ động trên các kênh nó được phép. Thời gian thiết bị dành cho việc xác định năng lượng kênh và các mạng đang tồn tại trên mỗi kênh được biểu diễn bởi tham số “thời lượng quét (ScanDuration)”. Ở băng tần 2.4 GHz và với Microchip Stack thì ScanDuration thường nằm trong khoảng từ 1 đến 14 và như thế thời gian quét thường từ 0.031 giây đến 4.2 phút. Như vậy nếu thiết bị quét tất cả 16 kênh và ScanDuration là 8 thì sẽ mất hơn 1 phút để thực hiện một lần quét. Trong khi các bộ định tuyến và thiết bị cuối của giao thức Zigbee thực hiện một lần quét để xác định các mạng đang tồn tại, thì nút điều phối mạng phải mất 2 lần quét, một lần để lấy mẫu năng lượng kênh, một lần để dò tìm các mạng sẵn có. Giá trị ScanDuration được cho cần cân đối thời gian cần thiết để thực hiện quét đầy đủ trên kênh được chỉ định với số lần khởi động hệ thống được cho phép. Các nút cha tiềm năng sẽ lắng nghe trên kênh đang được quét bởi nút con, sau đó đáp ứng lại với một khung định hướng. Khung định hướng bao gồm thông tin nếu thiết bị đang trả lời có thể tiếp nhận liên kết thiết bị mới hay không. Tập hợp các thông tin của khung định hướng mà thiết bị mới nhận được sẽ được lưu trữ tại bảng các nút lân cận của chính nó. Vào cuối chu trình quét, bảng các nút lân cận được kiểm tra và nút cha tiềm năng tốt nhất sẽ được chọn. Sau đó thiết bị mới sẽ gửi một yêu cầu gia nhập tới nút cha tiềm năng. Nếu nhận được xác nhận yêu cầu gia nhập thành công từ nút cha, thiết bị mới sẽ trở thành liên kết với thiết bị đầu tiên theo kiểu quan hệ nút cha – nút con. Nút cha khi đó chịu trách nhiệm cấp phát cho nút con 1 địa chỉ mạng 16 bit duy nhất. Các thông tin liên quan đến địa chỉ mạng nút cha, địa chỉ mạng nút con, độ sâu mạng mà thiết bị vừa gia nhập đều được lưu lại ở bảng các nút lân cận của cả nút cha và nút con. Bảng các nút lân cận này là không bay hơi. 10 1.2.5.3. Rời bỏ mạng Các thiết bị Zigbee lưu trữ thông tin về các nút khác trong mạng, bao gồm nút cha và nút con, ở một vùng bộ nhớ không bay hơi gọi là bảng các nút lân cận. Khi khởi động, nếu một thiết bị con xác định được qua bảng các nút lân cận của nó rằng nó đã từng là một phần của một mạng nào đó, nó sẽ chạy một chương trình thông báo “mồ côi” để xác định lại mạng liên kết trước đó của nó. Các thiết bị nhận được thông báo sẽ kiểm tra trong bảng các nút lân cận của nó xem thiết bị đó có phải là một trong các thiết bị con của nó hay không. Nếu đúng, thiết bị cha sẽ thông báo cho thiết bị con vị trí của nó trong mạng. Còn ngược lại, tức không có nút cha nào thì thiết bị đó sẽ cố gắng gia nhập mạng như một thiết bị mới. Nó sẽ ghi nhận một danh sách các nút cha tiềm năng và sau đó chọn gia nhập một mạng đang tồn tại ở một độ sâu tối ưu. 1.2.5.4. Quay trở lại mạng Khi một thiết bị cuối mất liên lạc với thiết bị cha của nó, hoặc nó bị buộc phải rời mạng với bit “gia nhập lại” được set, nó sẽ tự động khởi chạy lại chương trình gia nhập lại mạng. Không giống như trường hợp “mồ côi”, khi thiết bị con cố gắng liên kết với nút cha cũ của nó, chương trình gia nhập lại bắt đầu bằng một lượt quét chủ động và nút cha tiềm năng được lấy từ danh sách các định hướng mà nút con nhận được. Sau khi chọn được nút cha tiềm năng, một yêu cầu gia nhập lại được gửi đơn hướng ở mức mạng tới nút cha tiềm năng được chọn. Sau khi nhận được đáp ứng gia nhập lại thành công, nút con bây giờ đã quay trở lại mạng với một nút cha mới và một địa chỉ mạng mới. Đây là cách hiệu quả để sắp xếp lại vị trí cho thiết bị chỉ đơn giản với yêu cầu rời mạng và sau đó gia nhập lại. Thêm vào đó, việc gia nhập lại được khởi tạo và thực hiện dễ dàng với ứng dụng. Đây là một cách hiệu quả để các thiết bị cuối có thể quay trở lại mạng khi nó mất kết nối với nút cha của nó vì bất cứ lý do gì. 1.2.6. Cấu trúc ngăn xếp Ngăn xếp của Microchip được viết bằng ngôn ngữ lập trình C và được thiết kế để chạy trên dòng vi điều khiển PIC của Microchip. Ngăn xếp Microchip có thể được sử dụng hoặc ở bộ nhớ trong hoặc ở bộ nhớ ngoài không bay hơi (Non-volatile Memory NVM) để lưu trữ một lượng các tham số ngăn xếp thường trực qua các lần khởi động lại của một thiết bị. Các nhà thiết kế có thể lựa chọn loại bộ nhớ không bay hơi để sử dụng, bộ nhớ trong hay bộ nhớ ngoài tùy họ. Ngăn xếp Microchip được thiết kế theo giao thức Zigbee và bộ tiêu chuẩn IEEE 802.15.4-2003, với mỗi lớp nằm ở trong chính source file của nó. Hình 1-6 dưới đây minh họa cho ngăn xếp của giao thức Zigbee. 11 Hình 1-6: Cấu trúc ngăn xếp của giao thức Zigbee [5] 1.3. Ưu nhược điểm của công nghệ Zigbee 1.3.1. Ưu điểm của Zigbee Như đã tìm hiểu ở trên, công nghệ không dây Zigbee được thiết kế cho các ứng dụng tiêu thụ điện năng thấp, giá thành rẻ và bảo mật. Mang Zigbee có khả năng mở rộng, tự tổ chức và tự sửa chữa mà vẫn có thể quản lý nhiều kiểu truyền dữ liệu khác nhau. Nói chung, so với các công nghệ không dây đang tồn tại hiện nay như Bluetooth hay wifi, tuy được thiết kế cho những mục đích sử dụng khác nhau và những lĩnh vực khác nhau, nhưng Zigbee vẫn chứng tỏ được những ưu thế của mình về nhiều mặt. Bảng 1.3 dưới đây minh họa so sánh giữa Zigbee và các công nghệ không dây phổ biến hiện nay dựa trên một vài tiêu chí cơ bản nhất. Bảng 1.3: So sánh giữa các công nghệ không dây. Bluetooth UWB Zigbee Wifi Tần số hoạt động 2.4 GHz 3.1-10.6 GHz 868/915 MHz; 2.4 GHz 2.4 GHz; 5 GHz Tốc độ tối đa 1 Mb/s 110 Mb/s 250 Kb/s 54 Mb/s Vùng phủ sóng 10 m 10 m 10 – 100 m 100 m Công suất phát 0 – 20 dBm -41.3 dBm/MHz (-25) – 0 dBm 15 – 24 dBm 12
- Xem thêm -