Chương 1 GIỚI THIỆU CÔNG NGHỆ KHÔNG DÂY ZIGBEE 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.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. 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. 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.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. Tiêu chuẩn IEEE 802.4-2003 Giao thức Zigbee sử dụng đặc tả của chuẩn IEEE 802.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.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. Tốc độ bit (bit rate) của giao thức phụ thuộc vào tần số hoạt động của nó.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.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.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. Loại thiết bị Về loại thiết bị, chuẩn IEEE 802.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 z Bảng 1.1: Loại thiết bị chuẩn IEEE 802.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.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. 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. 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.
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 1- 2). 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.
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. 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. 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.