Bối cảnh và vấn đề nghiên cứu

Trong bối cảnh đô thị hóa và sự gia tăng dân số tại các đô thị hiện đại, nhu cầu quản lý hạ tầng và giám sát môi trường sống trở nên cấp thiết. Mạng cảm biến không dây (Wireless Sensor Network - WSN) được xem là một trong những nền tảng công nghệ quan trọng để triển khai các mô hình thành phố thông minh (Smart City). Việc thu thập liên tục các chỉ số môi trường như nhiệt độ, độ ẩm và chất lượng không khí giúp chính quyền và cư dân theo dõi điều kiện sống theo thời gian thực, nâng cao hiệu quả quản lý đô thị.

Đề tài "Mạng cảm biến không dây ứng dụng cho thành phố thông minh" do sinh viên Vũ Đức Phú và Phạm Nhựt Minh thực hiện dưới sự hướng dẫn của TS. Đỗ Đình Thuấn tại Trường Đại học Sư phạm Kỹ thuật TP.HCM (ngành Công nghệ Kỹ thuật Máy tính, khóa 2012) tập trung giải quyết bài toán thiết kế và thi công hệ thống WSN thu thập dữ liệu môi trường.

Nhiệm vụ và mục tiêu nghiên cứu của đề tài gồm 4 nội dung chính:

  1. Tìm hiểu cơ sở lý thuyết về giao thức vô tuyến nRF24L01, lớp liên kết dữ liệu và các giao tiếp phần cứng liên quan.
  2. Thiết kế giải pháp kiến trúc mạng cảm biến không dây phân tầng phục vụ việc thu thập và truyền tải dữ liệu đa điểm về trung tâm.
  3. Thi công, lắp ráp phần cứng hệ thống bao gồm các node cảm biến môi trường và node trung tâm điều khiển hiển thị.
  4. Đánh giá kết quả hoạt động thực tế của hệ thống phần cứng, kiểm tra độ ổn định truyền nhận và phân tích các yếu tố ảnh hưởng.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Module truyền thông vô tuyến nRF24L01, lớp liên kết dữ liệu Enhanced ShockBurst™, vi điều khiển xử lý và các cảm biến môi trường tích hợp.
  • Phạm vi nghiên cứu: Mô hình mạng cảm biến không dây giao tiếp song công giữa node chủ (Master) và các node thứ cấp (Secondary/Slave), cơ chế truyền tiếp dữ liệu trung gian và giao diện hiển thị tại trung tâm với dữ liệu thực nghiệm mô phỏng tại các khu vực đô thị (Thủ Đức, Quận 9, Gò Vấp).

Cơ sở lý thuyết và phương pháp

Khung lý thuyết và mô hình kỹ thuật

Đề tài dựa trên các nền tảng lý thuyết truyền thông dữ liệu vô tuyến và hệ thống nhúng:

  • Giao thức Enhanced ShockBurst™: Lớp liên kết dữ liệu mở rộng tích hợp trên chip nRF24L01, hỗ trợ đóng gói tự động, tự động phát hiện lỗi bằng mã kiểm tra tuần hoàn dư CRC (1 byte với đa thức $X^8 + X^2 + X + 1$ hoặc 2 bytes với đa thức $X^{16} + X^{12} + X^5 + 1$), tự động phản hồi xác nhận (Auto-Acknowledgement - ACK) và tự động truyền lại gói tin khi lỗi (Auto-Retransmission - ART).
  • Cơ chế phân loại tải trọng: Hỗ trợ độ dài tải trọng tĩnh (Static Payload Length - SPL) và độ dài tải trọng động (Dynamic Payload Length - DPL) từ 0 đến 32 bytes trên mỗi gói tin, quản lý thông qua 6 luồng dữ liệu (data pipes) theo cấu trúc mạng hình sao 1:6.
  • Chuẩn giao tiếp ngoại vi: Giao tiếp nối tiếp SPI đồng bộ 4 dây (SCK, MOSI, MISO, SS/CSN) với tốc độ dữ liệu tối đa 8 Mbps giữa vi điều khiển và module nRF24L01; chuẩn truyền thông I2C cho giao tiếp thời gian thực.
Thông số kỹ thuật Thiết lập 1 Mbps Thiết lập 2 Mbps (Lựa chọn của đề tài)
Độ nhạy thu (Sensitivity) Cao hơn 3 dB so với mức 2 Mbps Thấp hơn 3 dB so với mức 1 Mbps
Mức tiêu thụ dòng Cao hơn trong cùng khối lượng dữ liệu Tối ưu thấp hơn nhờ rút ngắn thời gian On-Air
Xung đột sóng vô tuyến Tỉ lệ chiếm dụng kênh lớn hơn Giảm thiểu xung đột truyền thông trong không khí
Kích thước tải trọng tối đa cho ACK (ARD = 250 µs, 5 bytes địa chỉ) 5 bytes 15 bytes

Phương pháp nghiên cứu

Tác giả sử dụng phương pháp thẩm định và thiết kế thực nghiệm kỹ thuật:

  • Phân tích - Tổng hợp: Nghiên cứu tài liệu kỹ thuật (datasheet) của nRF24L01, vi điều khiển ATmega328, ATmega2560 và các cảm biến chuyên dụng.
  • Thiết kế hệ thống: Xây dựng sơ đồ khối phần cứng, lưu đồ giải thuật điều khiển phân tầng cho từng node mạng và thiết kế giải thuật giao diện hiển thị đồ họa.
  • Thực nghiệm phần cứng: Lắp ráp mạch thực tế, cấu hình thanh ghi, nạp chương trình điều khiển qua Arduino IDE và kiểm thử truyền nhận dữ liệu qua môi trường không khí.

Nguồn dữ liệu

Dữ liệu sử dụng trong nghiên cứu gồm dữ liệu kỹ thuật từ nhà sản xuất linh kiện và dữ liệu vật lý thời gian thực do các cảm biến (DHT11, MQ-135, DS1307) thu thập trực tiếp tại các vị trí đặt node.

Thiết kế và triển khai hệ thống

Kiến trúc hệ thống

Hệ thống mạng WSN được thiết kế theo cấu trúc phân tầng gồm hai khối chức năng chính:

  • Khối mạng (Network Block): Gồm các node cảm biến phân tán (Node 1, Node 2, Node 3, Node 4) và một node trung gian/node chủ (Master Node) làm nhiệm vụ thu thập, định tuyến và gom dữ liệu.
  • Khối cảm ứng và hiển thị (Touch & Display Block): Đặt tại trung tâm điều khiển để tiếp nhận dữ liệu từ Master Node, xử lý và xuất thông tin lên màn hình cảm ứng TFT và các màn hình LCD phụ trợ.
Thành phần phần cứng Vi xử lý / Linh kiện chính Vai trò chức năng trong hệ thống
Node cảm biến thứ cấp Arduino Uno R3 (ATmega328) Đọc dữ liệu nhiệt độ, độ ẩm (DHT11), chất lượng không khí (MQ-135), truyền về node kế tiếp qua nRF24L01
Node trung gian / Master Arduino Uno R3 / Mega 2560 Tiếp nhận dữ liệu từ các node thứ cấp, chuyển tiếp dữ liệu và điều phối luồng truyền
Bộ truyền nhận vô tuyến nRF24L01 / nRF24L01+PA Truyền nhận tín hiệu RF ở tần số 2.4 GHz, điều chế GFSK, tốc độ 2 Mbps
Đồng hồ thời gian thực DS1307 Cung cấp dữ liệu thời gian (giờ, phút, giây, ngày, tháng, năm) qua giao thức I2C
Giao diện trung tâm Màn hình UTFT_320QVT_9341 + Shield Hiển thị giao diện menu điều khiển, biểu đồ thông số môi trường, hỗ trợ thao tác cảm ứng
Hiển thị tại node LCD 16x2, LCD Graphic 128x64B Hiển thị trực quan chỉ số đo tại chỗ cho từng node thứ cấp

Quy trình truyền nhận và xử lý tín hiệu

  1. Vi điều khiển MCU tại node cảm biến đọc tín hiệu điện áp từ cảm biến DHT11 và MQ-135.
  2. Dữ liệu được nạp vào bộ đệm phát TX FIFO của nRF24L01 thông qua giao tiếp SPI với lệnh W_TX_PAYLOAD.
  3. Chân CE được kích hoạt mức cao (xung tối thiểu 10 µs) để bắt đầu quá trình phát sóng vô tuyến với tốc độ cấu hình 2 Mbps.
  4. Tại bên nhận (PRX), module nRF24L01 kiểm tra địa chỉ và CRC. Khi gói tin hợp lệ, bit RX_DR được bật trong thanh ghi STATUS, kích hoạt ngắt chân IRQ để báo cho MCU đọc dữ liệu từ RX FIFO qua lệnh R_RX_PAYLOAD.
  5. Hệ thống kích hoạt cơ chế Auto-ACK; bên nhận tự động gửi lại tín hiệu ACK (kèm tải trọng nếu có) để xác nhận giao dịch thành công.

Nội dung chính theo từng chương

Chương 1: Tổng quan

Chương 1 giới thiệu tổng quan về mạng cảm biến không dây WSN và khái niệm thành phố thông minh (Smart City). Tác giả phân tích các bài toán thực tiễn trong quản lý đô thị hiện đại, sự cần thiết của hệ thống giám sát môi trường không dây và các câu hỏi nghiên cứu về chi phí, mức tiêu thụ năng lượng và tính khả thi kỹ thuật. Chương này cũng tổng thuật tình hình nghiên cứu WSN và Smart City trên thế giới (như các dự án cảm biến tại Kansas - Mỹ, ứng dụng tại Brazil) và trong nước (tại TP.HCM, Hà Nội, Đà Nẵng), xác định rõ mục tiêu, đối tượng, phạm vi và phương pháp nghiên cứu của đồ án.

Chương 2: Cơ sở lý thuyết

Chương 2 trình bày chi tiết cơ chế hoạt động của lớp liên kết dữ liệu Enhanced ShockBurst™ trên chip nRF24L01:

  • Cấu trúc khung gói dữ liệu gồm: vùng mở đầu (Preamble - 1 byte), vùng địa chỉ (3-5 bytes), vùng kiểm soát gói (Packet Control Field - 9 bit gồm 6 bit Payload Length, 2 bit PID, 1 bit NO_ACK), vùng tải trọng dữ liệu (Payload - 0 đến 32 bytes) và vùng CRC (1 hoặc 2 bytes).
  • Cơ chế xử lý gói tự động: so sánh địa chỉ, kiểm tra CRC, nhận diện gói trùng lặp bằng trường PID 2-bit và cờ NO_ACK.
  • Quy trình truyền gói tự động với tính năng Auto-Acknowledgement (ACK) và Auto-Retransmission (ART), cơ chế trễ truyền lại tự động (ARD) và giới hạn số lần truyền lại (ARC).
  • Các chế độ Standby-I, Standby-II và biểu đồ thời gian truyền nhận dữ liệu trong các trường hợp: truyền thành công, mất gói dữ liệu, mất gói ACK, truyền ACK kèm tải trọng và trường hợp số lần truyền lại vượt ngưỡng cực đại (MAX_RT).
  • Chuẩn giao tiếp SPI 4 dây với tập lệnh điều khiển thanh ghi, hoạt động của bộ đệm FIFO 3 cấp (TX/RX) và quản lý các nguồn ngắt qua chân IRQ.

Chương 3: Cơ sở lý thuyết về phần cứng (Tính toán và thiết kế hệ thống)

Chương 3 tập trung mô tả chi tiết thông số kỹ thuật và sơ đồ kết nối của các thiết bị phần cứng trong hệ thống:

  • Cấu trúc phần cứng của các bo mạch vi điều khiển Arduino Uno R3 (ATmega328) và Arduino Mega 2560 (ATmega2560 với 4 cổng Serial, 6 chân ngắt ngoài).
  • Đặc tính của module vô tuyến nRF24L01 và module nRF24L01+PA có bộ khuếch đại công suất; cấu hình chân kết nối SPI với Arduino.
  • Đặc tính cảm biến nhiệt độ - độ ẩm DHT11 (phương thức truyền tín hiệu dạng xung bit 0/1) và cảm biến chất lượng không khí MQ-135.
  • Cấu hình module thời gian thực DS1307 kết nối qua giao tiếp I2C.
  • Sơ đồ khối, sơ đồ chân và giao tiếp của màn hình cảm ứng UTFT_320QVT_9341 kèm Arduino Mega LCD TFT Shield, màn hình LCD Graphic 128x64B và LCD 16x2.
  • Lưu đồ thuật toán chi tiết cho Node 1, Node 2, Node 3, Node 4, Node Master, chương trình chính và các chương trình con vẽ giao diện đồ họa.

Chương 4: Mô hình mạng, mô phỏng thực tế trên phần cứng, so sánh và đánh giá kết quả

Chương 4 trình bày việc hiện thực hóa mô hình mạng cảm biến không dây phân tầng trên phần cứng thực nghiệm:

  • Kiểm tra kết nối truyền nhận thành công giữa Node 1 và Node Master, cũng như việc thu thập dữ liệu đồng thời từ Node 2 và Node 3.
  • Kết quả hiển thị dữ liệu đo đạc tại chỗ trên màn hình LCD Graphic 128x64B và LCD 16x2 tại các node thứ cấp.
  • Kết quả vận hành giao diện đồ họa cảm ứng TFT tại trung tâm điều khiển: màn hình đăng nhập, màn hình menu chức năng, màn hình hiển thị đồng hồ thời gian thực tích hợp hình ảnh thời tiết, màn hình giám sát chỉ số nhiệt độ, độ ẩm và chất lượng không khí phân bố theo các khu vực mô phỏng (Thủ Đức, Quận 9, Gò Vấp).
  • Đánh giá ưu điểm, nhược điểm, tính khả thi trong thực tế và bảng so sánh phương án phần cứng giữa việc sử dụng vi điều khiển Arduino với máy tính nhúng Raspberry Pi, cũng như so sánh với hệ thống WSN trong các đề tài nghiên cứu liên quan.

Chương 5: Kết luận và hướng phát triển

Chương 5 tổng kết toàn bộ kết quả đạt được của đồ án, chỉ ra những mặt hạn chế về độ trễ truyền tiếp, bộ nhớ đệm và phạm vi khoảng cách thực nghiệm, đồng thời đề xuất các hướng phát triển kỹ thuật nhằm hoàn thiện hệ thống trong tương lai.

Kết quả và đóng góp

Kết quả kỹ thuật đạt được

  1. Hoàn thiện phần cứng và mạng truyền thông WSN: Thiết lập mạng phân tầng hoạt động ổn định ở dải tần 2.4 GHz với tốc độ truyền không khí 2 Mbps, thực hiện thành công việc giao tiếp đa điểm giữa các node thứ cấp và node chủ.
  2. Thu thập dữ liệu môi trường chính xác: Tích hợp thành công cảm biến DHT11, cảm biến MQ-135 và IC thời gian thực DS1307, truyền tải đầy đủ các thông số nhiệt độ, độ ẩm, nồng độ khí và thời gian về trung tâm điều khiển.
  3. Xây dựng giao diện hiển thị trực quan: Thiết kế hệ thống hiển thị đa cấp, bao gồm màn hình LCD 16x2 và LCD 128x64B tại các trạm đo cục bộ, cùng giao diện đồ họa cảm ứng TFT (UTFT_320QVT_9341) tại trung tâm hỗ trợ đăng nhập, điều hướng menu và giám sát trực quan các khu vực đô thị (Thủ Đức, Quận 9, Gò Vấp).
  4. Tối ưu hóa lập trình truyền thông: Tác giả khai thác hiệu quả các thư viện hỗ trợ chuyên dụng cho nRF24L01 để quản lý cơ chế Auto-ACK và Auto-Retransmission mà không cần can thiệp cấu hình lại thanh ghi phức tạp cho từng phiên truyền nhận song công.

So sánh giải pháp phần cứng

Tiêu chí so sánh Phương án Arduino (Đề tài lựa chọn) Phương án Raspberry Pi
Chi phí phần cứng Thấp, phù hợp cho việc triển khai số lượng lớn node mạng Cao hơn đáng kể cho từng trạm đo phân tán
Tiêu thụ năng lượng Rất thấp, tối ưu cho các thiết bị chạy nguồn pin độc lập Tiêu thụ năng lượng lớn, đòi hỏi nguồn cấp ổn định
Khả năng xử lý thời gian thực Đáp ứng tức thời các ngắt cứng (Hardware Interrupts) Chạy hệ điều hành đa nhiệm, độ trễ ngắt cao hơn
Khả năng mở rộng giao diện Đáp ứng tốt các màn hình LCD, TFT chuyên dụng qua Shield Mạnh về đồ họa phức tạp và kết nối mạng diện rộng

Hạn chế và hướng nghiên cứu tiếp

Hạn chế của đề tài

  • Khoảng cách thực nghiệm hẹp: Các node cảm biến được bố trí trong phạm vi gần nhau, chưa phản ánh đầy đủ tác động của địa hình, vật cản vật lý và nhiễu sóng vô tuyến trong môi trường đô thị thực tế.
  • Độ trễ mạng tích lũy: Node trung gian hoạt động chậm hơn do phải thực hiện nhiệm vụ chuyển tiếp (relay) gói tin; khi số lượng node trung gian tăng lên, độ trễ toàn mạng sẽ tăng theo.
  • Hiện tượng lưu giữ gói tin lỗi: Do cơ chế lưu trữ dữ liệu liên tục của bộ nhớ EEPROM, khi một node ở xa bị mất nguồn hoặc ngắt kết nối, node trung gian vẫn lưu giữ và chuyển tiếp gói tin cũ của node đó, dẫn đến việc màn hình trung tâm cập nhật thông tin không chính xác theo thời gian thực.

Hướng nghiên cứu tiếp

  • Mở rộng khoảng cách truyền dẫn vật lý, khảo sát hoạt động của hệ thống trong các điều kiện thời tiết và môi trường đô thị thực tế ngoài trời.
  • Cải tiến giải thuật định tuyến và thuật toán quản lý bộ nhớ đệm (buffer/EEPROM) tại các node trung gian để tự động phát hiện và loại bỏ gói tin của các node mất kết nối.
  • Bổ sung thêm các cảm biến môi trường chuyên sâu và tích hợp cổng kết nối Internet (Gateway) để truyền dữ liệu lên nền tảng đám mây phục vụ giám sát diện rộng.

Giá trị tham khảo

Báo cáo đồ án là tài liệu kỹ thuật có giá trị tham khảo tốt cho sinh viên và kỹ sư thuộc các chuyên ngành Công nghệ Kỹ thuật Máy tính, Kỹ thuật Điện - Điện tử, Kỹ thuật Viễn thông và Công nghệ Thông tin đang nghiên cứu về hệ thống nhúng và mạng cảm biến không dây.

Nội dung đồ án cung cấp tài liệu chi tiết về:

  • Cấu trúc thanh ghi, cơ chế đóng/gỡ gói tin tự động và giao thức truyền nhận Enhanced ShockBurst™ trên dòng chip vô tuyến nRF24L01.
  • Phương pháp kết nối và lập trình giao tiếp SPI giữa vi điều khiển họ AVR (ATmega328, ATmega2560) với module truyền thông RF.
  • Quy trình tích hợp các cảm biến môi trường (DHT11, MQ-135), module thời gian thực (DS1307 qua I2C) và xây dựng giao diện điều khiển cảm ứng đồ họa trên màn hình TFT Shield.

Câu hỏi thường gặp

1. Hệ thống mạng cảm biến không dây trong đồ án sử dụng giao thức lớp liên kết dữ liệu nào?
Hệ thống sử dụng lớp liên kết dữ liệu Enhanced ShockBurst™ tích hợp trên chip nRF24L01, hỗ trợ độ dài tải trọng động/tĩnh (0-32 bytes), tự động thừa nhận (Auto-ACK), tự động truyền lại (Auto-Retransmission), quản lý luồng dữ liệu mạng sao 1:6 và kiểm tra lỗi bằng CRC 1 hoặc 2 bytes.

2. Tác giả lựa chọn tốc độ truyền dữ liệu không khí là bao nhiêu và lý do lựa chọn?
Tác giả lựa chọn tốc độ truyền không khí 2 Mbps (thay vì 1 Mbps). Mặc dù tốc độ 2 Mbps có độ nhạy thu thấp hơn 3 dB so với mức 1 Mbps, nhưng mức thiết lập này giúp giảm mức tiêu thụ dòng điện trung bình và giảm thiểu nguy cơ xung đột tín hiệu vô tuyến trong không gian truyền dẫn.

3. Giao tiếp giữa vi điều khiển Arduino và module vô tuyến nRF24L01 được thực hiện qua chuẩn nào?
Giao tiếp được thực hiện qua chuẩn nối tiếp SPI 4 dây (SCK, MISO, MOSI, SS/CSN) với tốc độ dữ liệu tối đa 8 Mbps, kết hợp chân điều khiển chế độ CE và chân báo ngắt IRQ kích hoạt mức thấp.

4. Vì sao hệ thống gặp lỗi hiển thị số liệu cũ khi một node cảm biến ở xa bị mất kết nối?
Do khả năng lưu giữ gói thông tin liên tục của bộ nhớ EEPROM trên mạch, khi một node ở xa bị sập hoặc mất kết nối, node trung gian vẫn giữ gói dữ liệu đã ghi nhận trước đó và chuyển tiếp về trung tâm, khiến màn hình tiếp tục hiển thị kết quả cũ không chính xác.

5. Giao diện tại trung tâm điều khiển hỗ trợ những tính năng hiển thị nào?
Giao diện trung tâm sử dụng màn hình cảm ứng TFT UTFT_320QVT_9341 trên Arduino Mega 2560, cung cấp màn hình đăng nhập, hệ thống menu cảm ứng, hiển thị đồng hồ thời gian thực kèm biểu tượng thời tiết và bảng chỉ số nhiệt độ, độ ẩm, chất lượng không khí tại các khu vực mô phỏng gồm Thủ Đức, Quận 9 và Quận Gò Vấp.

Kết luận

Đồ án tốt nghiệp của sinh viên Vũ Đức Phú và Phạm Nhựt Minh đã hoàn thành việc thiết kế và thi công mô hình mạng cảm biến không dây phân tầng phục vụ giám sát môi trường đô thị. Hệ thống tích hợp thành công vi điều khiển Arduino, module vô tuyến nRF24L01 hoạt động trên giao thức Enhanced ShockBurst™ và các cảm biến đo nhiệt độ, độ ẩm, chất lượng không khí cùng giao diện cảm ứng TFT trực quan. Mặc dù còn những giới hạn về phạm vi thực nghiệm và độ trễ tại các node trung gian, công trình đã giải quyết trọn vẹn các yêu cầu kỹ thuật cơ bản của một hệ thống thu thập dữ liệu vô tuyến phục vụ mô hình thành phố thông minh.