Tài liệu kỹ thuật

Thiết bị cảm biến không dây

PGS. TS.Vương Đạo Vy Trường ĐH Công nghệ, ĐHQG Hà Nội

Liên quan đến mạng cảm biến không dây WSN (Wireless Sensor Network) tác giả và các cộng sự đã có một số bài viết cho tạp chí trong nhiều số phát hành trước đây, bài này nhằm giới thiệu cấu trúc các lớp chức năng của mạng, đặc biệt ở lớp liên kết dữ liệu (data link layer).

Đây là lớp quan trọng, có ảnh hưởng quyết định đến việc tiêu thụ năng lượng từng nút mạng và vì vậy ảnh hưởng đến thời gian sống của toàn mạng WSN. Tìm hiểu vấn đề này, giúp chúng ta có tầm nhìn chi tiết hơn về thiết kế mạng cảm biến không dây WSN theo tinh thần đồng thiết kế sử dụng FPGA để đạt mục tiêu tiết kiệm năng lượng.

1. Các thủ tục điều khiển thâm nhập môi trường (MAC)
MAC là chức năng quan trọng được hỗ trợ bởi lớp liên kết dữ liệu - data link. Thủ tục MAC được phân thành nhiều loại khác nhau dựa trên những nguyên tắc khác nhau. Một số theo hướng tập trung: trạm cơ sở điều khiển thâm nhập; Một số theo hướng phân tán; một số lại sử dụng một kênh duy nhất, một số sử dụng nhiều kênh; Một số sử dụng các cách điều khiển thâm nhập ngẫu nhiên khác nhau; một số lại sử dụng hội thoại và lập lịch. Chúng nhằm tối ưu các thông thông số: công suất, độ trễ, thông lượng, độ đồng đều, chất lượng dịch vụ, nhiều loại dịch vụ. Một cơ cấu MAC có mức tiêu thụ năng lượng siêu thấp đã được trình bày [1]. Trong đó một số kỹ thuật đã được sử dụng. Băng thông được đổi lấy hiệu quả công suất, đồng thời vứt bỏ các dư thừa để tiết kiệm năng lượng. Thuật giải là phân tán và không yêu cầu đồng bộ. Nhu cầu là thiết kế MAC trong lớp liên kết dữ liệu sao cho thu được tiêu thụ năng lượng thấp hơn.
Bây giờ xem xét một thực tế, đó là đề án PICO-RADIO, thiết kế mạng vô tuyến Pico tại trung tâm nghiên cứu không dây Berkeley (BWRC), đó  là mạng ad-hoc không dây, công suất siêu thấp. Theo dự án, tiêu thụ công suất mỗi nút mạng là 100µW, giá thành không đến 50 cents, kích thước 1cm3. Tiêu thụ công suất giảm thiểu trong toàn mạng. Như vậy công suất không chỉ tối ưu cho một lớp riêng, và không chỉ cho một nút mạng mà cho toàn mạng. Tất cả các nút mạng phải có cùng một tập thủ tục và chúng đều được thiết kế nhằm tiết kiệm năng lượng. Lớp ứng dụng cấu hình theo yêu cầu của ứng dụng. Thí dụ để điều khiển môi trường nhà ở, phải có nút thực hiện chức năng bất kỳ trong 4 loại chức năng sau: nút điều khiển, nút cảm nhận, nút chấp hành và nút giao diện. Nút điều khiển đòi hỏi dữ liệu từ nút cảm nhận. Dựa vào thông tin nhận được nó ra lệnh cho nút chấp hành thực hiện thao tác. Nút giao diện dùng để giám sát trạng thái mạng. Nó còn được dùng như một gateway đối với mạng khác, thí dụ Internet. Việc xếp các chức năng vào cấu trúc vật lý không nhất thiết là một-một. Thí dụ nút điều khiển và nút cảm nhận có thế ở trong cùng một nút vật lý.
Lớp mạng sử dụng cơ cấu phân tuyến đa bước nhảy dựa vào xác suất chuyển tiếp. Có nhiều đường dẫn trong quá trình phát hiện tuyến, nhưng xác suất nhận tuyến bất kỳ tỉ lệ ngược với năng lượng tiêu thụ trên đường dẫn đó. Có nghĩa là xác suất chọn đường rất cao nếu năng lượng trên tuyến đó là tối thiểu, những đường khác thỉnh thoảng có thể sử dụng và có thể chọn tuyến khác khi mạng được bổ sung thêm nút mạng. Trong hầu hết thời gian tuyến tối ưu sẽ được sử dụng, tuy nhiên khi có nút hỏng trên tuyến thì chọn tuyến thay thế. Khi thiết kế như vậy cần quảng bá thông tin về thay đổi cấu hình mạng theo hướng, nghĩa là thông báo tới những nút chịu ảnh hưởng của thay đổi cấu hình.
Lớp liên kết dữ liệu đủ thông minh để điều khiển mọi thứ trong một bước nhảy. Từ thuật giải được phát triển, sử dụng ngôn ngữ UML (Unified Modeling Language) để xác định yêu cầu cho lớp. Sau đó sử dụng OPNET và MATLAB để mô phỏng. Sau khi thuật giải đã được đánh giá, UML lại được sử dụng để mô tả các chức năng. Mỗi chức năng được sắp xếp theo mô hình thuộc tính để đồng thiết kế các thành phần ảo (Virtual Component Co-Design - VCC). Cũng có thể thực hiện việc mô phỏng chức năng với các lớp mạng khác (ứng dụng, mạng). Đồng thiết kế các thành phần ảo VCC có thể tạo mã VHDL (Verilog Hardware escription Language) cho các mô hình thực hiện trong FPGA (Field Programmable Gate Array), theo giản đồ sau:
Mạch RF chứa một ma trận đa dạng các mạch lọc chất lượng cao trên chip (các mạch lọc FBAR). Năng lượng nhận có thể giảm đến 1 hoặc 2 bậc, bằng cách điều khiển khuếch đại tạp âm thấp để ngắt vô tuyến khi không có thông báo truyền tới.
2. Đặt các giả thiết cho thiết kế
Giả thiết tốc độ dữ liệu trung bình và chu trình vô tuyến làm việc cũng thấp. Sử dụng băng thông không bản quyền và không bị hạn chế. Mật độ nút mạng cao để khoảng cách giữa chúng dưới 10m. Các nút hầu hết ở trạng thái tĩnh. Nếu có nút di động thì tốc độ thấp (đi bộ). Dữ liệu cảm nhận có mối tương quan cao về thời gian và không gian. Các ứng dụng chịu được độ trễ cao.

Hình 1: Quá trình kết hợp thiết kế các thành phần

3. Chức năng lớp liên kết
Lớp liên kết dữ liệu vô tuyến pico có một bộ chức năng và mối liên quan giữa chúng thể hiện trong giản đồ UML như sau:
Mỗi phân hệ/ khối trong giản đồ hỗ trợ một chức năng và mũi tên chỉ sự phụ thuộc giữa các phân hệ. Thí dụ phân hệ truyền dữ liệu phụ thuộc vaò phân hệ MAC để biết khi nào truyền và kênh nào được sử dụng. Phân hệ MAC điều khiển thâm nhập, nó xác định thời gian nút có thể truyền và kênh được dùng để truyền. Phân hệ điều khiển lỗi, sử dụng mã phát hiện và sửa lỗi xác định để mã hóa và giải mã dữ liệu. Phân hệ truyền dữ liệu truyền dữ liệu đến lớp vật lý. Phân hệ địa chỉ cục bộ chịu trách nhiệm sắp xếp địa chỉ cục bộ thống nhất cho nút. Phân hệ cục bộ tính toán chính xác vị trí nút theo vị trí của riêng nó (hoặc vị trí được giả định của nó), theo vị trí nút láng giềng và theo khoảng cách giữa các láng giềng và nó. Phân hệ xử lý dữ liệu xử lý dữ liệu từ lớp vật lý. Phân hệ liệt kê láng giềng khởi tạo và duy trì bảng liệt kê láng giềng. Trong bảng liệt kê này có các thông tin sau: vị trí, địa chỉ cục bộ và số đo liên kết. Phân hệ di động hỗ trợ nút di động. Phân hệ đo liên kết cung cấp số đo cho mỗi liên kết, lớp mạng sử dụng để tính toán chọn đường. Phân hệ này cũng lưu các trạng thái kênh (cần cho phân hệ MAC) và số đo cường độ tín hiệu nhận (RSSI) cần thiết cho phân hệ vị trí. Phân hệ điều khiển công suất quy định mức công suất truyền.

4. Các trường hợp sử dụng lớp liên kết dữ liệu.
Các phân hệ trên làm việc cùng nhau để thực hiện chức năng lớp liên kết dữ liệu. Giản đồ mức hệ thống UML chỉ rõ các lớp khác sử dụng lớp liên kết dụ lệu thế nào. Hình người trong giản đồ là yếu tố chấp hành giao diện với lớp liên kết dữ liệu. Thí dụ , lớp mạng sử dụng lớp liên kết để truyền dữ liệu đến lớp vật lý và nhận dữ liệu từ nó. Lớp mạng cũng tìm trong bảng liệt kê láng giềng ở lớp liên kết dữ liệu về thông tin láng giềng riêng.

 

5. Các đòi hỏi để thiết kế các phân hệ.
Có nhiều cách để thiết kế mỗi phân hệ. Tuy nhiên số lượng các phân hệ là bao nhiêu và chia chúng thành các phân hệ thế nào là vấn đề đang được nghiên cứu. Khả năng sử dụng thước đo thiết kế là cơ sở để so sánh. Các mã điều khiển lỗi tuy có thêm những bít dư thừa nhưng đưa lại hiệu quả công suất cao hơn. Bởi vì giá băng thông không quan trọng với WSN. Cần thỏa hiệp giữa độ phức tạp mã hóa, giải mã và hiệu quả công suất truyền. Vì khoảng cách giữa các nút láng giềng là ngắn, làm sao để công suất tính toán có thể so sánh với công suất truyền.
Phân hệ truyền dữ liệu bổ sung thông tin điều khiển liên kết dữ liệu vào tải và sử dụng phân hệ điều khiển lỗi để mã hóa toàn bộ gói. Nó cũng thực hiện cơ cấu truyền lại. Để truyền dữ liệu từ lớp mạng đến một điểm nhận, phân hệ truyền cũng duy trì hàng đợi cho mỗi láng giềng. Nhiều gói cho cùng một láng giềng được tổ hợp lại thành một gói lớn hơn để giảm thông tin tiêu đề.
Việc sử dụng địa chỉ cục bộ duy nhất không những sẽ giảm được số bít cần thiết thể hiện địa chỉ mà còn tạo kích thước mạng. Phân hệ địa chỉ cục bộ duy trì bảng liệt kê địa chỉ nút. Bảng này ghi mọi địa chỉ có thể. Nếu một địa chỉ là không thể, bảng liệt kê thông tin số lần nó được sử dụng trong láng giềng 2 bước nhảy của nút. Sự duy nhất cục bộ không chỉ có ý nghĩa địa chỉ nút là khác với địa chỉ nút láng giềng bất kỳ mà còn thể hiện rằng 2 láng giềng của cùng một nút phải có địa chỉ khác nhau thậm chí chúng không phải là láng giềng của nhau. Để bảo đảm điều kiện thứ 2 là được phép địa chỉ nút là khác địa chỉ láng giềng của láng giềng của nó. Kết quả, một nút cần đánh dấu tất cả các địa chỉ đã sử dụng trong láng giềng 2 bước nhảy của nó như địa chỉ không có giá trị. Khi nó cần tự sắp xếp địa chỉ nó nhặt ngẫu nhiên một địa chỉ có giá trị từ bảng liệt kê. Nếu láng giềng của nó chuyển ra ngoài vùng láng giềng, địa chỉ chỉ có giá trị nếu không có láng giềng nào khác trong vùng láng giềng 2 bước nhảy của nó đang sử dụng cùng địa chỉ. Nếu khác thế, số lần địa chỉ sử dụng sẽ giảm đi một đơn vị.
Để xây dựng bảng liệt kê địa chỉ, một loạt giao tiếp cần được thực hiện khi các nút đưa vào mạng lần đầu. Nó gửi yêu cầu đến tất cả các láng giềng, mỗi láng giềng gửi trả lời địa chỉ của nó và địa chỉ các láng giềng của nó. Nút sẽ cập nhật thông tin này vào bảng liệt kê. Sau khi các láng giềng đã trả lời, nút tự sắp xếp một địa chỉ trên cơ sở bản liệt kê địa chỉ của nó. Hoàn thiện thông tin vùng láng giêng là cần thiết để bảo đảm địa chỉ được sắp xếp là duy nhất tại đó. Tính chất của truyền không dây và sự kiện kết nối thêm nhiều nút mới thường làm cho một nút mạng không có thông tin đầy đủ về láng giềng. Vì thế việc bắt tay thêm là cần thiết để tránh va chạm địa chỉ và chỉ thực hiện một lần khi cấu hình mạng không thay đổi.
Thuật giải sắp xếp địa chỉ cục bộ không làm việc được với các nút di động di chuyển thường xuyên từ vùng láng giềng này sang láng giềng khác. Vì thế có sự khác nhau khi sắp xếp địa chỉ cho nút di động và nút tĩnh. Các nút di động được nhóm lại trong một cluster để giảm quá trình giao tiếp (handshakes). Nguồn nuôi cho nút di động cũng dễ thay thế hơn so với nút tĩnh (thí dụ nút tĩnh nằm trong tường nhà). Phân hệ di động khai thác đặc điểm này để tăng khả năng tải.
Thước đo trong phân hệ đo cung cấp thông tin tiêu tốn năng lượng hiện thời trên liên kết. Do vậy đường dẫn tối ưu được chọn trên lớp mạng là đường tiêu tốn năng lượng ít nhất. Thời gian sống toàn mạng không phải của riêng một nút mạng. Đường dẫn phải chọn sao cho duy trì được thời gian sống cực đại của toàn mạng. Đánh giá định lượng về thời gian sống của mạng vẫn là một vấn đề bỏ ngỏ. Khi chọn đường truyền dữ liệu tối ưu phải lưu ý sao cho một nút không tham gia vào quá nhiều đường, nếu không nguồn pin của nút này sẽ cạn sớm nhất, các đường qua nó đều bị ảnh hưởng. Thời gian sống của mạng còn liên quan đến kết nối, nếu mạng có nhiều đường dẫn, có thể sử dụng chúng làm phương án thay thế khi một nút bị hết năng lượng. Tóm lại thời gian sống của mạng liên quan đến năng lượng của đường dẫn, sự cân bằng tải và cấu hình mạng. Phân hệ đo liên kết cung cấp khả năng đo thời gian sống cực đại của mạng.
Mức công suất được quy định bởi phân hệ điều khiển công suất cho một nút, cho một liên kết hoặc cho gói này sang gói kia phụ thuộc vào điều khiển như thế nào. Việc điều chỉnh mức công suất dựa vào kết nối, vào giao thoa và tiêu thụ năng lượng. Việc giảm thiểu công suất truyền có thể giảm được công suất tiêu thụ trên một bước nhảy. Sử dụng công suất truyền cao hơn sẽ cải thiện được kết nối và dẫn đến tiêu thụ công suất toàn bộ thấp hơn, đặc biệt trường hợp truyền tràn ngập (flooding). Giảm thiểu công suất trên một kết nối rất cần thiết để duy trì sự sống của mạng, còn điều khiển công suất nhằm điều chỉnh lại công suất khi số láng giềng thay đổi.
Như vậy rõ ràng các phân hệ khác nhau không những làm việc cùng nhau để hoàn thành một nhiệm vụ mà việc tối ưu thiết kế chúng có mối liên quan rất mật thiết. Vì vậy việc đồng thiết kế sẽ mạng lại tối ưu chung cho toàn mạng.

Kết luận:
Mạng cảm nhận không dây có rất nhiều ứng dụng, trong đó có nhiều ứng dụng trong quân sự. Lớp liên kết dữ liệu được thiết kế đặc biệt được trình bày ở trên nhằm giảm thiểu công suất tiêu thụ, tăng thời gian sống cho mạng. Vấn đề là phải xác định thước đo liên kết nhằm tối ưu hóa thời gian sống của mạng và định danh các thước đo thiết kế để định lượng thuộc tính mạng
Tham khảo:
1.    “An ultra-low power and distributed access protocol for broadband wireless sensor networks”, L. C. Zhong, R. Shah, C. Guo and J. Rabaey,   2001.
2.    DATA LINK LAYER DESIGN FOR WIRELESS SENSOR NETWORKS,  Lizhi Charlie Zhong, Jan Rabaey, Chunlong Guo, Rahul Shah