Bối cảnh và vấn đề nghiên cứu
Sự phát triển của công nghệ tự động hóa và Internet vạn vật (IoT) thúc đẩy nhu cầu xây dựng các hệ thống nhà thông minh nhằm nâng cao tính tiện nghi và tối ưu hóa quản lý năng lượng. Trong thực tế đời sống, việc vận hành thiết bị điện dân dụng thông qua công tắc cơ khí truyền thống bộc lộ nhiều hạn chế, điển hình là tình trạng người dùng rời khỏi nhà nhưng quên tắt các thiết bị tiêu thụ công suất lớn như đèn chiếu sáng, điều hòa không khí. Đối với các khuôn viên có diện tích rộng bao gồm nhà chính, nhà kho và khu vực sân vườn, khoảng cách địa lý hàng trăm mét khiến việc di chuyển để thao tác trực tiếp các thiết bị như máy bơm tưới tiêu gây tốn kém thời gian và công sức.
Để giải quyết các bất cập trên, việc ứng dụng các giao thức truyền thông không dây (RF, Bluetooth, Wifi, LoRa) vào việc điều khiển và giám sát từ xa trở thành giải pháp thiết thực. Công nghệ LoRa (Long Range) nổi bật với ưu điểm truyền dữ liệu cự ly xa, mức tiêu thụ năng lượng thấp và hoạt động trên dải tần không cần cấp phép, bù đắp hiệu quả cho hạn chế vùng phủ của sóng Wifi trong các khu vực ngoài trời hoặc cách ly.
Đề tài "Thiết kế và thi công hệ thống giám sát, điều khiển các thiết bị điện trong nhà thông qua App Android & màn hình cảm ứng dùng mạng LoRa và Wifi" được thực hiện nhằm hoàn thiện một mô hình quản trị thiết bị đa phương thức. Mục tiêu và nhiệm vụ nghiên cứu cụ thể bao gồm:
- Nghiên cứu, thiết kế và thi công khối xử lý trung tâm (đặt tại nhà chính) có khả năng thu thập dữ liệu môi trường, điều khiển thiết bị tại chỗ qua màn hình cảm ứng TFT, truyền - nhận tín hiệu điều khiển với các khối phụ qua mạng LoRa và đồng bộ dữ liệu lên cơ sở dữ liệu đám mây qua mạng Wifi.
- Nghiên cứu, thiết kế và thi công hai khối xử lý phụ (khối phụ 1 tại vườn và khối phụ 2 tại kho) có khả năng thu thập dữ liệu cảm biến chuyên biệt, nhận lệnh điều khiển từ khối trung tâm qua mạng LoRa và phản hồi trạng thái ngược lại khối trung tâm.
- Lập trình giao tiếp đa giao thức giữa ứng dụng Android, module Wifi ESP32, vi điều khiển Arduino và module LoRa SX1278.
- Thiết kế ứng dụng điều khiển và giám sát trực quan trên nền tảng di động Android thông qua môi trường MIT App Inventor, hỗ trợ điều khiển bằng giọng nói.
- Thi công phần cứng hoàn chỉnh, kiểm tra vận hành hệ thống qua thực nghiệm và đánh giá độ ổn định.
Phạm vi và giới hạn của đề tài:
- Phần cứng điều khiển sử dụng vi điều khiển ATmega328P (trên board Arduino Uno R3, Arduino Nano), vi điều khiển ESP32-WROOM và module thu phát RF LoRa SX1278 (chuẩn giao tiếp UART).
- Phạm vi truyền nhận không dây giữa các node mạng qua giao thức LoRa đạt tối đa 400 m trong điều kiện thực nghiệm của đồ án.
- Giao diện thao tác tại khối trung tâm sử dụng màn hình cảm ứng màu TFT 3.2 inch; các khối phụ sử dụng màn hình LCD kết hợp nút nhấn cơ học.
- Nguồn cấp hệ thống lấy trực tiếp từ lưới điện 220 VAC chuyển đổi sang 5 VDC (1 A - 2 A), không trang bị nguồn pin dự phòng.
- Công suất đóng cắt của mỗi tiếp điểm relay giới hạn dưới 1.000 W (1 kW).
- Kích thước đóng gói cơ khí: Khối trung tâm đặt trong hộp mica kích thước 17 × 15 × 8 cm; hai khối phụ đặt trong hộp mica kích thước 14 × 11 × 8 cm.
Cơ sở lý thuyết và phương pháp
Khung lý thuyết và công nghệ sử dụng
Đề tài xây dựng trên nền tảng kết hợp giữa mạng truyền thông không dây diện rộng công suất thấp LoRa và mạng cục bộ không dây Wifi (chuẩn IEEE 802.11n tần số 2.4 GHz):
- Mạng LoRa (Long Range): Phát triển dựa trên kỹ thuật điều chế trải phổ do Semtech sở hữu, cho phép đạt cự ly truyền thông lý thuyết từ 15 – 20 km với tốc độ dữ liệu thấp từ 0,3 kbps đến 30 kbps. Trong kiến trúc hệ thống, module SX1278 (mạch E32-TTL-100 RF) hoạt động ở dải tần 410 – 441 MHz, công suất phát 20 dBm (100 mW), hỗ trợ 65.536 địa chỉ cấu hình và bộ đệm 512 byte.
| Chế độ hoạt động |
M1 |
M0 |
Mô tả chức năng |
Ghi chú |
| Mode 0 (Normal) |
0 |
0 |
Cổng Serial và kênh truyền không dây mở để truyền/nhận dữ liệu |
Module nhận ở Mode 0 hoặc 1 |
| Mode 1 (Wake-up) |
0 |
1 |
Hoạt động như Mode 0 nhưng phát kèm mã đánh thức cho Mode 2 |
Module nhận ở chế độ bất kỳ |
| Mode 2 (Power saving) |
1 |
0 |
Cổng Serial đóng, module ở trạng thái chờ đánh thức qua sóng vô tuyến |
Module phát phải ở Mode 1 |
| Mode 3 (Sleep) |
1 |
1 |
Chế độ ngủ, dùng để nạp cấu hình thông số cho module |
Không truyền nhận dữ liệu |
- Vi điều khiển xử lý:
- ESP32 NodeMCU (ESP-WROOM-32): Vi xử lý lõi kép Xtensa 32-bit LX6, xung nhịp lên đến 240 MHz, tích hợp 448 KB ROM, 520 KB SRAM, hỗ trợ chuẩn Wifi 802.11 b/g/n, Bluetooth v4.2 BR/EDR & BLE và 3 cổng phần cứng UART.
- Arduino Uno R3 và Arduino Nano: Sử dụng vi điều khiển 8-bit ATmega328P, xung nhịp 16 MHz, bộ nhớ Flash 32 KB, SRAM 2 KB, EEPROM 1 KB.
- Cảm biến và cơ cấu chấp hành:
- Cảm biến DHT11: Đo nhiệt độ từ 0 – 50 °C (sai số ±2 °C) và độ ẩm không khí từ 20 – 90% RH (sai số ±5% RH), xuất dữ liệu số qua giao tiếp 1 dây (gói tin 40 bit).
- Cảm biến độ ẩm đất: Đầu dò điện trở kết hợp IC so sánh LM393, cung cấp ngõ ra tương tự (AO) và ngõ ra số (DO).
- Đồng hồ thời gian thực RTC DS1307: Đếm thời gian thực (giờ, phút, giây, ngày, tháng, năm), giao tiếp qua bus I2C, duy trì hoạt động nhờ pin cúc áo dự phòng.
- Màn hình TFT 3.2 inch (Driver ILI9341): Độ phân giải 240 × 320 pixel, 65K màu RGB, tích hợp cảm ứng điện trở, giao tiếp chuẩn SPI 4 dây.
- Màn hình LCD 20x4: Hiển thị 4 dòng, mỗi dòng 20 ký tự ASCII, kết hợp module chuyển đổi I2C sử dụng chip PCF8574 (địa chỉ mặc định 0x27).
- Relay 5V: Cuộn hút tiêu thụ dòng 70 mA, tiếp điểm đóng cắt dòng điện cực đại 10 A ở điện áp 250 VAC, thời gian tác động 10 ms.
- Chuẩn giao tiếp dữ liệu nội bộ:
- UART: Truyền nhận không đồng bộ giữa ESP32 - LoRa, ESP32 - Arduino Uno, Arduino Nano - LoRa.
- I2C: Giao tiếp 2 dây (SDA, SCL) giữa Arduino với RTC DS1307 và LCD 20x4.
- SPI: Giao tiếp đồng bộ 4 dây (SCK, MISO, MOSI, CS) tốc độ cao giữa Arduino Uno và LCD TFT ILI9341.
- Nền tảng phần mềm và cơ sở dữ liệu: Môi trường lập trình nhúng Arduino IDE, nền tảng phát triển ứng dụng di động MIT App Inventor và dịch vụ lưu trữ đám mây thời gian thực Firebase Realtime Database của Google.
Phương pháp nghiên cứu
Nghiên cứu áp dụng phương pháp thiết kế kỹ thuật kết hợp thực nghiệm:
- Phương pháp tính toán giải tích mạch điện: Xác định dòng phân cực transistor điều khiển relay, tính toán điện trở hạn dòng LED và cân bằng công suất nguồn cấp cho từng khối xử lý.
- Phương pháp thiết kế hệ thống nhúng: Xây dựng sơ đồ nguyên lý mạch điện, thiết kế mạch in (PCB) phân lớp cho từng bộ điều khiển, lập trình thuật toán điều khiển theo lưu đồ giải thuật.
- Phương pháp khảo sát thực nghiệm: Lắp ráp mô hình thực tế, đo đạc thông số dòng điện, kiểm tra khả năng truyền nhận tín hiệu LoRa qua các cự ly thực tế và thống kê tỷ lệ phản hồi chính xác của hệ thống qua 30 lần thử nghiệm.
Thiết kế và triển khai
Kiến trúc phần cứng và sơ đồ khối
Hệ thống được tổ chức thành 3 cụm xử lý vật lý độc lập giao tiếp không dây với nhau:
[Khối Database (Firebase)] <---(Wifi)---> [Module ESP32] <---(UART)---> [Arduino Uno] <---(SPI)---> [TFT 3.2"]
| |
[Ứng dụng Android] <---------(Wifi/4G)----------+ [Sensor DHT11 / DS1307]
| |
[Module LoRa SX1278] [Relay Đèn 1, 2]
^
| (Sóng RF 433MHz)
+-----------------------+-----------------------+
| |
v v
[Module LoRa SX1278] [Module LoRa SX1278]
| |
[Arduino Nano (Phụ 1)] [Arduino Nano (Phụ 2)]
+------+-------+-------+ +------+-------+-------+
| | | | | |
[LCD 20x4] [Độ ẩm đất] [Relay Bơm] [LCD 16x2] [Nút nhấn] [Relay Kho]
- Khối xử lý trung tâm (Nhà chính): Đóng vai trò Gateway. Sử dụng cấu trúc vi điều khiển kép: ESP32 đảm nhiệm kết nối mạng Wifi, đồng bộ Firebase và truyền thông LoRa; Arduino Uno R3 chuyên trách giao tiếp màn hình cảm ứng TFT ILI9341, đọc thời gian thực RTC DS1307, đọc cảm biến DHT11 và điều khiển relay tải tại nhà chính. Hai vi điều khiển liên lạc qua cổng UART nội bộ.
- Khối xử lý phụ 1 (Vườn): Sử dụng Arduino Nano kết nối module LoRa SX1278, cảm biến độ ẩm đất, màn hình LCD 20x4, mạch phím bấm điều khiển và cụm relay đóng cắt máy bơm nước tưới vườn.
- Khối xử lý phụ 2 (Kho): Sử dụng Arduino Nano kết nối module LoRa SX1278, cụm nút nhấn thao tác, màn hình hiển thị LCD và cụm relay điều khiển đèn chiếu sáng/quạt thông gió tại nhà kho.
Tính toán và thiết kế mạch điện
- Mạch kích công suất Relay:
Sử dụng transistor lưỡng cực NPN C1815 để đóng mở cuộn dây relay 5 VDC.
- Dòng cuộn hút relay: $I_{Relay} = 70\text{ mA}$. Dòng định mức qua LED chỉ thị: $I_{LED} = 20\text{ mA}$.
- Dòng cực thu bão hòa:
$$I_{C(Sat)} = I_{Relay} + I_{LED} = 70\text{ mA} + 20\text{ mA} = 90\text{ mA}$$
- Điện trở hạn dòng cho LED chỉ thị ($V_{CC} = 5\text{ V}$, $V_{AK} = 2\text{ V}$, $V_{BE} = 0,7\text{ V}$):
$$R_3 = \frac{V_{CC} - V_{AK} - V_{BE}}{I_{LED}} = \frac{5 - 2 - 0,7}{0,02} = 115\ \Omega$$
Chọn giá trị điện trở thương mại $R_3 = 220\ \Omega$ để bảo vệ LED.
- Điều kiện bão hòa của Transistor C1815 với hệ số khuếch đại dòng $h_{FE} = 25$:
$$I_B \ge \frac{I_{C(Sat)}}{h_{FE}} = \frac{90\text{ mA}}{25} = 3,6\text{ mA}$$
- Điện trở phân cực cực gốc ($V_{SIG} = 5\text{ V}$, $V_{BE} = 0,7\text{ V}$, chọn điện trở xả dòng rò $R_2 = 10\text{ k}\Omega$):
$$I_{BB} = \frac{V_{SIG} - V_{BE}}{R_1} - \frac{V_{BE}}{R_2} \ge 3,6\text{ mA}$$
Từ tính toán, chọn điện trở kích $R_1 = 1\text{ k}\Omega$ để bảo đảm transistor dẫn bão hòa sâu ($V_{CE} \approx 0\text{ V}$, relay đóng tiếp điểm). Mắc song song ngược với cuộn dây một diode 1N4007 để triệt tiêu sức điện động cảm ứng khi ngắt dòng.
- Cân bằng tải và thiết kế mạch nguồn khối trung tâm:
Dòng tiêu thụ trên các cổng I/O của Arduino Uno ($N=16$ chân, mỗi chân $30\text{ mA}$): $I_{ar} = 16 \times 30 = 480\text{ mA}$.
Dòng tiêu thụ trên các chân của ESP32 ($N=6$ chân, mỗi chân $40\text{ mA}$): $I_{es} = 6 \times 40 = 240\text{ mA}$.
| STT |
Tên linh kiện |
Điện áp hoạt động (V) |
Dòng tiêu thụ đơn vị (mA) |
Số lượng |
Tổng dòng tiêu thụ (mA) |
| 1 |
Arduino Uno R3 |
5 |
480 |
1 |
480 |
| 2 |
LoRa SX1278 |
5 |
120 |
1 |
120 |
| 3 |
ESP32 NodeMCU |
5 |
240 |
1 |
240 |
| 4 |
LED chỉ thị 3mm |
5 |
20 |
3 |
60 |
| 5 |
Relay 5V |
5 |
70 |
2 |
140 |
| 6 |
Cảm biến DHT11 |
5 |
2,5 |
1 |
2,5 |
| 7 |
Màn hình TFT 3.2" |
5 |
150 |
1 |
150 |
| 8 |
Module RTC DS1307 |
5 |
1,5 |
1 |
1,5 |
| Tổng |
Toàn bộ khối chính |
-- |
-- |
-- |
1.194 mA |
Với tổng dòng tiêu thụ tính toán là $1.194\text{ mA}$ (~$1,2\text{ A}$), tác giả lựa chọn bộ nguồn Adapter 5 VDC - 2 A (nguồn xung ngõ vào 100 - 240 VAC, 50/60 Hz, hiệu suất 95%) để cung cấp cho toàn bộ khối trung tâm.
Triển khai phần mềm và thuật toán
- Thuật toán điều khiển nhúng:
- Module ESP32 liên tục lắng nghe sự kiện thay đổi dữ liệu trên Firebase Realtime Database thông qua kết nối Wifi; khi có lệnh thay đổi từ App, ESP32 chuyển đổi thành gói tin truyền qua UART sang Arduino Uno (nếu điều khiển thiết bị tại chỗ) hoặc đóng gói truyền qua sóng LoRa sang khối phụ 1 và khối phụ 2.
- Arduino Uno quét ma trận cảm ứng trên màn hình TFT ILI9341; khi người dùng nhấn nút ảo trên màn hình, Arduino Uno thực thi đóng ngắt relay tương ứng và gửi mã dữ liệu sang ESP32 qua cổng UART để cập nhật trạng thái lên đám mây.
- Khối phụ 1 và 2 liên tục quét trạng thái nút nhấn cơ học và dữ liệu cảm biến; khi có thao tác bấm phím hoặc giá trị cảm biến vượt ngưỡng, vi điều khiển phát gói tin LoRa về khối trung tâm.
- Ứng dụng di động (Android App): Thiết kế giao diện gồm màn hình đăng nhập, màn hình điều khiển trung tâm (hiển thị trạng thái đèn, quạt, biểu đồ nhiệt độ - độ ẩm), giao diện cài đặt ngưỡng tự động cho máy bơm vườn theo độ ẩm đất, và giao diện nhận dạng giọng nói tiếng Việt chuyển đổi thành lệnh điều khiển.
Nội dung chính theo từng chương
Chương 1: Tổng Quan
Chương này phân tích lý do chọn đề tài từ nhu cầu thực tiễn trong việc quản lý thiết bị gia dụng và chiếu sáng/tưới tiêu ngoài trời. Tác giả xác định mục tiêu tổng quát là thiết kế hệ thống điều khiển kết hợp 1 bộ trung tâm và 2 bộ phụ thông qua App Android, màn hình cảm ứng, mạng LoRa và Wifi. Chương 1 đồng thời đưa ra 6 nội dung nghiên cứu chính, xác lập phạm vi giới hạn kỹ thuật (khoảng cách LoRa 400 m, tải dưới 1.000 W, vỏ hộp mica) và cấu trúc 6 chương của bản đồ án.
Chương 2: Cơ Sở Lý Thuyết
Nội dung chương 2 trình bày chi tiết cơ chế hoạt động của mạng LoRa (kiến trúc Node - Gateway, bảng chế độ làm việc M0 - M1 của SX1278), vi điều khiển Arduino Uno, Arduino Nano, board Wifi ESP32 NodeMCU, cảm biến nhiệt độ - độ ẩm DHT11, cảm biến độ ẩm đất LM393, module RTC DS1307, màn hình hiển thị TFT 3.2" ILI9341, LCD 20x4, LCD 16x2 và relay 5V. Đồng thời, chương này phân tích nguyên lý 4 chuẩn truyền thông cốt lõi: UART (cấu trúc khung truyền Start/Data/Parity/Stop), I2C (đường truyền SDA/SCL, chế độ Master/Slave), SPI (4 đường SCK, MISO, MOSI, SS) và mạng không dây Wifi (chuẩn 802.11n tần số 2.4 GHz).
Chương 3: Thiết Kế và Tính Toán
Chương 3 thiết lập sơ đồ khối chức năng toàn hệ thống và hiện thực hóa bằng các tính toán mạch điện chi tiết. Tác giả trình bày phương pháp tính chọn transistor đóng cắt relay (C1815), tính toán điện trở hạn dòng LED ($R_3 = 220\ \Omega$), điện trở phân cực cực gốc ($R_1 = 1\text{ k}\Omega$, $R_2 = 10\text{ k}\Omega$), diode dập xung 1N4007. Chương này đưa ra bảng tính toán tổng dòng tiêu thụ của khối trung tâm ($1.194\text{ mA}$) làm cơ sở chọn adapter nguồn 5V - 2A, cùng các sơ đồ nguyên lý của khối cảm biến, khối hiển thị TFT (thiết kế mạch chuyển bus từ 12 lên 14 pin) và mạch nguyên lý toàn phần của khối chính và khối phụ 1.
Chương 4: Thi Công Hệ Thống
Chương 4 mô tả toàn bộ quy trình chế tạo phần cứng và lập trình. Nội dung bao gồm quy trình thi công mạch in (PCB) lớp trên và lớp dưới cho khối chính, khối mở rộng bus, khối phụ 1, khối phụ 2 và bo mạch nút nhấn; công tác lắp ráp linh kiện, hàn mạch và đóng gói vào hộp mica bảo vệ dạng mô hình 2D/3D. Về phần mềm, chương trình bày các lưu đồ thuật toán trên ESP32, Arduino Uno, Arduino Nano (khối phụ 1, khối phụ 2), quy trình đồng bộ dữ liệu với Firebase Realtime Database và cấu trúc giao diện điều khiển trên MIT App Inventor.
Chương 5: Kết Quả, Nhận Xét và Đánh Giá
Chương 5 công bố các kết quả thực nghiệm hoàn chỉnh của hệ thống: hình ảnh vận hành thực tế của bộ điều khiển trung tâm (nhà chính), bộ điều khiển phụ 1 (vườn) và bộ điều khiển phụ 2 (kho); giao diện tương tác trên App Android (đăng nhập, menu trang chủ, bật/tắt thiết bị, điều khiển giọng nói, cài đặt chế độ tự động bơm nước dựa trên độ ẩm đất); giao diện hiển thị trên màn hình TFT cảm ứng và LCD; thực nghiệm tính năng tự động đồng bộ trạng thái giữa 3 khối điều khiển và kiểm thử khả năng vận hành điều khiển nội bộ qua mạng LoRa khi ngắt hoàn toàn kết nối Internet. Chương này đưa ra bảng thống kê đánh giá hệ thống qua 30 lần thử nghiệm.
Chương 6: Kết Luận và Hướng Phát Triển
Chương 6 tổng kết mức độ hoàn thành đề tài so với mục tiêu đề ra ban đầu, xác nhận hệ thống hoạt động ổn định và đáp ứng đầy đủ các yêu cầu thiết kế kỹ thuật. Đồng thời, tác giả đề xuất các hướng phát triển tiếp theo để hoàn thiện sản phẩm.
Kết quả và đóng góp
Kết quả thực nghiệm
- Chế tạo phần cứng và đóng gói hoàn chỉnh: Hệ thống hoàn thiện gồm 1 bộ điều khiển trung tâm và 2 bộ điều khiển phụ được thi công mạch in gọn gàng, bố trí trong các hộp mica chuyên dụng, hoạt động an toàn với nguồn điện lưới 220 VAC chuyển đổi sang 5 VDC.
- Khả năng truyền thông đa phương thức:
- Chế độ có Internet: Khi có kết nối Wifi, trạng thái thiết bị và dữ liệu cảm biến (nhiệt độ, độ ẩm môi trường, độ ẩm đất, thời gian thực) được đồng bộ tức thời giữa ứng dụng Android, cơ sở dữ liệu Firebase Realtime Database và màn hình TFT trung tâm.
- Chế độ mất Internet: Khi mạng Wifi bị ngắt, khối trung tâm và 2 khối phụ vẫn duy trì liên lạc và điều khiển chéo lẫn nhau thông qua mạng LoRa SX1278 trong phạm vi lên đến 400 m.
- Tính năng điều khiển và tự động hóa:
- Điều khiển bật/tắt tức thời các thiết bị điện (đèn, quạt, bơm) thông qua 3 phương thức: Nút bấm trên ứng dụng di động, giọng nói tiếng Việt qua App Android, phím cảm ứng trên màn hình TFT 3.2", hoặc nút bấm cơ học tại từng node phụ.
- Tự động kích hoạt máy bơm nước tại vườn khi cảm biến độ ẩm đất đo được giá trị thấp hơn ngưỡng cài đặt trên ứng dụng điện thoại.
- Đánh giá độ tin cậy: Thống kê qua 30 lần thử nghiệm thực tế cho thấy hệ thống đạt tỷ lệ truyền nhận lệnh chính xác và đồng bộ trạng thái cao giữa các khối điều khiển.
Đóng góp của đề tài
- Xây dựng thành công mô hình mạng IoT lai (Hybrid IoT Network) kết hợp giữa mạng tầm ngắn tốc độ cao (Wifi) và mạng diện rộng công suất thấp tầm xa (LoRa), khắc phục nhược điểm mất kiểm soát thiết bị khi mất kết nối mạng Internet.
- Đưa ra giải pháp kiến trúc vi điều khiển kép (ESP32 phối hợp ATmega328P) giúp phân tách rõ ràng nhiệm vụ xử lý giao tiếp mạng nặng và tác vụ quét giao diện hiển thị cảm ứng thời gian thực, hạn chế tình trạng trễ hoặc treo hệ thống.
- Cung cấp toàn bộ tài liệu thiết kế phần cứng có tính ứng dụng thực tế, bao gồm bảng tính toán dòng tiêu thụ chi tiết, sơ đồ nguyên lý chuẩn hóa và bản vẽ mạch in PCB.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế
- Cự ly truyền thông LoRa thực nghiệm bị giới hạn trong phạm vi 400 m do sử dụng ăng-ten cơ bản và chịu ảnh hưởng của vật cản môi trường.
- Hệ thống phụ thuộc hoàn toàn vào nguồn điện lưới 220 VAC qua adapter 5V, chưa có khối nguồn dự phòng (pin sạc/UPS) khi xảy ra sự cố mất điện lưới.
- Công suất đóng cắt của mỗi cổng ra bị giới hạn dưới 1.000 W, không phù hợp cho các thiết bị công nghiệp hoặc tải công suất lớn.
- Cảm biến DHT11 có dải đo và độ chính xác ở mức trung bình, tần số lấy mẫu chậm (tối đa 1 Hz).
Hướng nghiên cứu tiếp
Theo định hướng của tác giả trong Chương 6, đề tài có thể tiếp tục mở rộng theo các hướng:
- Tích hợp thêm các cảm biến cảnh báo an ninh, an toàn như cảm biến báo khói, báo cháy, cảm biến phát hiện rò rỉ khí gas và cảm biến chuyển động hồng ngoại.
- Nâng cấp module LoRa và thiết kế ăng-ten chuyên dụng để mở rộng khoảng cách truyền nhận dữ liệu xa hơn.
- Thiết kế tích hợp module sạc và nguồn pin dự phòng (Pin Lithium/Ắc quy) tự động chuyển mạch khi mất điện nguồn chính.
- Mở rộng số lượng node mạng phụ để ứng dụng trong các mô hình nông nghiệp công nghệ cao hoặc trang trại diện tích lớn.
Giá trị tham khảo
Đồ án là tài liệu tham khảo hữu ích cho sinh viên, học viên và kỹ sư thuộc các chuyên ngành:
- Công nghệ Kỹ thuật Điện tử - Truyền thông, Kỹ thuật Máy tính và IoT: Tham khảo thiết kế mạng truyền thông không dây hỗn hợp (LoRa - Wifi Gateway), kỹ thuật truyền thông đa vi điều khiển qua các chuẩn UART, SPI, I2C.
- Kỹ thuật Điện - Tự động hóa: Tham khảo phương pháp tính toán mạch kích công suất sử dụng Transistor và Relay, thiết kế mạch phân cực, chống xung ngược bằng diode và cân bằng công suất nguồn cấp cho hệ thống nhúng.
- Lập trình ứng dụng điều khiển: Tham khảo quy trình xây dựng ứng dụng Android với MIT App Inventor kết nối cơ sở dữ liệu thời gian thực Firebase Realtime Database và tích hợp chức năng điều khiển qua giọng nói.
Câu hỏi thường gặp
1. Khi hệ thống mất kết nối Internet/Wifi, việc giám sát và điều khiển các thiết bị diễn ra như thế nào?
Khi không có kết nối Internet, hệ thống tự động chuyển sang chế độ vận hành cục bộ thông qua mạng vô tuyến LoRa (tần số 433 MHz). Người dùng vẫn có thể điều khiển và giám sát các thiết bị ở khối phụ 1 (vườn) và khối phụ 2 (kho) trực tiếp từ màn hình cảm ứng TFT tại bộ điều khiển trung tâm hoặc thông qua các nút nhấn cơ học tại từng khối phụ trong phạm vi cự ly lên tới 400 m.
2. Dòng điện tiêu thụ của khối trung tâm được tính toán như thế nào để lựa chọn adapter nguồn phù hợp?
Theo tính toán chi tiết tại Chương 3, tổng dòng tiêu thụ cực đại của khối trung tâm là $1.194\text{ mA}$, bao gồm: Arduino Uno R3 (480 mA cho 16 I/O), ESP32 (240 mA cho 6 I/O), module LoRa SX1278 (120 mA), 3 LED chỉ thị (60 mA), 2 Relay (140 mA), màn hình TFT 3.2" (150 mA), cảm biến DHT11 (2,5 mA) và RTC DS1307 (1,5 mA). Do đó, tác giả đã chọn adapter 5 VDC - 2 A để đảm bảo hệ thống vận hành an toàn với hệ số dự phòng dòng điện.
3. Tại sao khối điều khiển trung tâm lại sử dụng kết hợp cả hai vi điều khiển Arduino Uno và ESP32?
Khối trung tâm phối hợp hai vi điều khiển để tối ưu hóa hiệu năng: ESP32 đảm nhận các tác vụ mạng nặng (kết nối Wifi, đồng bộ Firebase, giao tiếp LoRa qua UART) nhờ vi xử lý 32-bit lõi kép tốc độ 240 MHz; trong khi Arduino Uno R3 chuyên trách giao tiếp chuẩn SPI với màn hình cảm ứng TFT 3.2" ILI9341, đọc cảm biến DHT11 và RTC DS1307. Việc phân chia này giúp hệ thống không bị nghẽn CPU khi vừa xử lý đồ họa cảm ứng vừa truyền nhận dữ liệu qua Internet.
4. Module LoRa SX1278 (E32-TTL-100 RF) có những chế độ làm việc nào và được điều khiển ra sao?
Module SX1278 hỗ trợ 4 chế độ làm việc được xác lập thông qua mức logic tại hai chân M0 và M1:
- Mode 0 (Normal - $M1=0, M0=0$): Cổng Serial và kênh truyền vô tuyến mở để truyền nhận bình thường.
- Mode 1 (Wake-up - $M1=0, M0=1$): Tự động phát mã đánh thức các module đang ở chế độ tiết kiệm năng lượng.
- Mode 2 (Power saving - $M1=1, M0=0$): Cổng Serial đóng, chỉ lắng nghe tín hiệu vô tuyến để thức dậy.
- Mode 3 (Sleep - $M1=1, M0=1$): Chế độ ngủ dùng để nạp cấu hình thông số kỹ thuật.
5. Cơ chế điều khiển tự động máy bơm nước tại khối phụ 1 hoạt động dựa trên nguyên lý nào?
Cảm biến độ ẩm đất cắm tại khu vực vườn gửi tín hiệu điện áp tương tự (Analog) về chân A0 của Arduino Nano tại khối phụ 1. Giá trị này được quy đổi sang thang phần trăm độ ẩm và truyền về ứng dụng Android qua mạng LoRa/Wifi. Khi độ ẩm đất đo được giảm xuống dưới ngưỡng cài đặt trước trên giao diện ứng dụng, vi điều khiển tại khối phụ 1 sẽ tự động xuất tín hiệu mức cao kích transistor dẫn bão hòa, đóng relay để cấp nguồn cho máy bơm nước.
Kết luận
Đồ án tốt nghiệp của sinh viên Nguyễn Ngọc Nhiệm và Trương Tuấn Anh đã thiết kế và thi công thành công hệ thống giám sát, điều khiển thiết bị điện trong nhà thông qua ứng dụng Android và màn hình cảm ứng TFT trên cơ sở kết hợp mạng LoRa và Wifi. Bằng việc xây dựng kiến trúc điều khiển lai giữa ESP32 và Arduino, hệ thống bảo đảm khả năng đồng bộ trạng thái tức thời qua dịch vụ đám mây Firebase khi có Internet, đồng thời duy trì khả năng điều khiển nội bộ cự ly xa qua sóng LoRa khi mất kết nối mạng. Toàn bộ các khối phần cứng, mạch kích công suất, thuật toán nhúng và phần mềm ứng dụng di động đã được chế tạo, tích hợp hoàn chỉnh và chứng minh tính ổn định qua thực nghiệm.