Bối cảnh và vấn đề nghiên cứu
Trong tiến trình công nghiệp hóa và hiện đại hóa, tự động hóa đóng vai trò then chốt trong việc nâng cao năng suất, chất lượng sản phẩm và giảm thiểu sức lao động thủ công. Tại Việt Nam, mức độ ứng dụng tự động hóa trong các lĩnh vực sản xuất nói chung và nông nghiệp nói riêng vẫn còn hạn chế về quy mô cũng như năng lực làm chủ công nghệ. Việc quản lý và vận hành các hệ thống bơm nước phục vụ tưới tiêu nông nghiệp hoặc sinh hoạt thường ngày phần lớn vẫn phụ thuộc vào thao tác đóng cắt trực tiếp tại chỗ, gây tốn kém thời gian và nhân lực. Từ thực tiễn đó, đồ án tốt nghiệp đại học ngành Công nghệ Kỹ thuật Điện - Điện tử tại Trường Đại học Bà Rịa - Vũng Tàu đã lựa chọn hướng nghiên cứu thiết kế hệ thống điều khiển máy bơm nước từ xa thông qua sự kết hợp giữa sóng vô tuyến cục bộ (Wi-Fi) và mạng viễn thông di động (sóng điện thoại GSM).
Văn bản đồ án xác định rõ 03 mục tiêu nghiên cứu cụ thể:
- Nghiên cứu mô hình điều khiển máy bơm nước sử dụng sóng Wi-Fi và sóng điện thoại.
- Nghiên cứu cơ sở lý thuyết để xây dựng mô hình dựa trên các kiến thức đã học về lập trình điều khiển.
- Ứng dụng các công nghệ gần gũi với đời sống con người để xây dựng hệ thống điều khiển thiết bị từ xa.
Đối tượng và phạm vi nghiên cứu của đề tài:
- Đối tượng nghiên cứu: Mô hình mạch điều khiển nhúng tích hợp vi điều khiển, module thu phát Wi-Fi, module truyền thông GSM/GPRS, cụm cảm biến mực nước, màn hình hiển thị LCD và khối chấp hành điều khiển động cơ máy bơm.
- Phạm vi không gian: Nghiên cứu, thiết kế, mô phỏng và thi công mô hình phần cứng tại Khoa Điện - Điện tử (nay thuộc Viện CNTT - Điện - Điện Tử), Trường Đại học Bà Rịa - Vũng Tàu.
- Phạm vi thời gian: Đề tài được hoàn thành và bảo vệ vào tháng 07 năm 2017.
Cơ sở lý thuyết và phương pháp
Đồ án được xây dựng dựa trên nền tảng lý thuyết kỹ thuật vi xử lý, kỹ thuật truyền thông không dây và điện tử công suất:
- Khung kiến trúc phần cứng: Kiến trúc vi điều khiển 8-bit AVR trên nền tảng board mạch Arduino Uno R3 (trọng tâm là vi điều khiển ATmega328); giao thức truyền thông mạng không dây cục bộ chuẩn IEEE 802.11 b/g/n thông qua SoC ESP8266 (phiên bản ESP-12); mạng viễn thông di động thông qua module GSM SIM900A Mini giao tiếp UART/tập lệnh AT; chuẩn truyền thông nối tiếp hai dây I2C (Inter-Integrated Circuit) và cơ chế điều khiển hiển thị màn hình LCD trên vi mạch điều khiển chuyên dụng Hitachi HD44780.
- Phương pháp nghiên cứu thực nghiệm và thiết kế kỹ thuật:
- Phương pháp phân tích - tổng hợp tài liệu: Nghiên cứu đặc tính kỹ thuật, giản đồ xung thời gian, mức logic điện áp, các thanh ghi chức năng và cấu trúc bộ nhớ từ tài liệu kỹ thuật (datasheet) của các linh kiện bán dẫn (ATmega328, SIM900A, ESP8266, HD44780, PCF8574).
- Phương pháp thiết kế mô phỏng: Ứng dụng phần mềm Proteus để thiết kế sơ đồ nguyên lý mạch điện tử (Schematic) và bố trí đường mạch in (PCB Layout).
- Phương pháp tích hợp phần cứng và ghép nối nguồn: Tính toán giải pháp hạ áp và lọc nguồn đệm (sử dụng diode và tụ hóa dung lượng lớn) để phối ghép an toàn module GSM với board vi điều khiển.
- Phương pháp lập trình nhúng và thực nghiệm: Viết chương trình điều khiển bằng ngôn ngữ C/C++ (Arduino framework) trên môi trường Arduino IDE, biên dịch và nạp mã thực thi lên phần cứng thực nghiệm để kiểm tra các chế độ vận hành thực tế.
- Nguồn dữ liệu: Các thông số giới hạn dòng/áp, sơ đồ phân bổ chân (pinout), tập lệnh điều khiển LCD, tập thư viện mã nguồn mở (
SIM900.h, LiquidCrystal_I2C.h) và dữ liệu đo đạc thực nghiệm trên phần cứng chế tạo.
Thiết kế và triển khai hệ thống kỹ thuật
Hệ thống được thiết kế dưới dạng khối nhúng tích hợp phần cứng và phần mềm, bao gồm các thành phần chính sau:
| Khối chức năng |
Phần cứng / Công nghệ sử dụng |
Vai trò và thông số kỹ thuật chính |
| Khối xử lý trung tâm |
Board Arduino Uno R3 (Chip ATmega328) |
Xử lý logic toàn hệ thống; bộ nhớ 32 KB Flash, 2 KB SRAM, 1 KB EEPROM; 14 chân Digital (6 chân PWM, 2 chân Serial TX/RX), 6 chân Analog (A0–A5). |
| Khối truyền thông Wi-Fi |
Module ESP8266 ESP-202 (ESP8266-12) |
Thu phát sóng Wi-Fi 802.11 b/g/n, hỗ trợ Wi-Fi Direct (P2P), Soft-AP; CPU RISC 32-bit; công suất phát +19.5 dBm (chuẩn b); thời gian phản hồi <2 ms. |
| Khối truyền thông di động |
Module SIM900A Mini (giao tiếp TTL) |
Nhận cuộc gọi và tin nhắn điều khiển từ xa; sử dụng chân TX/RX nối tới Arduino; bổ sung diode và tụ lọc 2200 µF/10V để ổn định nguồn 5V. |
| Khối hiển thị |
Màn hình ký tự LCD 16×2 + Module I2C |
Hiển thị trạng thái máy bơm, chế độ hẹn giờ (phút/giây) và cảnh báo cạn nước; giao tiếp qua bus I2C (2 chân SDA/SCL) tại địa chỉ 0x3F. |
| Khối vào/ra & chấp hành |
Nút nhấn, Cảm biến mực nước, Còi chíp, Rơ-le |
Đọc tín hiệu phím điều khiển, nhận biết trạng thái cạn bể chứa; đóng ngắt rơ-le kích máy bơm và kích hoạt còi báo động âm thanh. |
Về mặt phối ghép phần cứng, module SIM900A Mini yêu cầu dải điện áp làm việc danh định khoảng 3.8V (tối đa không quá 4.8V). Để module có thể sử dụng chung đường nguồn 5V từ Arduino Uno mà không làm hư hỏng linh kiện do quá áp, tác giả đã thiết kế mạch đệm nối tiếp một diode tại chân VCC kết hợp song song với một tụ hóa dung lượng $2200\text{ }\mu\text{F} / 10\text{V}$ nhằm ghim áp và đáp ứng dòng điện tức thời khi module phát sóng GSM.
Về mặt phần mềm, cấu hình phân bổ chân phần cứng trên board mạch được thiết lập cụ thể:
- Chân
digital 4 (button1): Nút nhấn kích hoạt trạng thái điều khiển.
- Chân
digital 5 (button2): Nút nhấn điều khiển phụ.
- Chân
digital 6 (cambien): Đọc tín hiệu từ cảm biến báo mức nước trong bồn.
- Chân
digital 7 (dongco): Xuất tín hiệu điều khiển đóng ngắt động cơ máy bơm qua rơ-le.
- Chân
digital 8 (loa): Điều khiển còi chíp phát tín hiệu âm thanh cảnh báo.
- Chân
digital 9 (Dowm), 10 (Up), 11 (mode): Nhóm nút nhấn lựa chọn chế độ hoạt động và thiết lập giá trị thời gian hẹn giờ.
- Module LCD hiển thị trạng thái hệ thống: "GSM Shield testing", "status=READY", thời gian đếm lùi, và chuỗi cảnh báo "BON HET NUOC" khi cạn nguồn cấp. Khi xảy ra sự cố hết nước hoặc kết thúc chu trình hẹn giờ, hệ thống tự động ngắt động cơ (xuất mức
LOW tại chân số 7) và thực hiện tác vụ ngắt kết nối cuộc gọi (call.HangUp()).
Nội dung chính theo từng chương
Chương 1: Tổng quan
Chương 1 phân tích bối cảnh và nhu cầu bức thiết của công nghệ tự động hóa tại Việt Nam. Tác giả chỉ ra rằng dù tự động hóa là đòn bẩy nâng cao năng suất, nhưng trình độ làm chủ công nghệ trong nước—đặc biệt là tự động hóa nông nghiệp—vẫn còn ở mức độ sơ khai. Chương này thiết lập 3 mục tiêu cốt lõi của đề tài và nêu bật tính tối ưu của giải pháp: phát triển tư duy nghiên cứu hệ thống nhúng, xây dựng mô hình có tính module hóa cao dễ dàng mở rộng và ứng dụng chi phí thấp vào đời sống thực tế.
Chương 2: Thiết bị và các giải pháp công nghệ
Chương 2 trình bày chi tiết về thông số kỹ thuật và nguyên lý hoạt động của từng linh kiện cấu thành hệ thống:
- Arduino Uno R3: Hoạt động ở điện áp 5V, dải nguồn ngoài khuyên dùng 7–12V DC (giới hạn 6–20V). Tác giả lưu ý các ngưỡng bảo vệ nghiêm ngặt: dòng điện tối đa trên mỗi chân Digital/Analog là 40 mA, tổng dòng qua vi điều khiển ATmega328 không quá 200 mA; điện áp vào chân I/O không vượt quá 5.5V và chân RESET không quá 13V. Bộ nhớ gồm 32 KB Flash, 2 KB SRAM và 1 KB EEPROM. Phân bổ các chân đặc biệt gồm UART (chân 0-RX, 1-TX), PWM (chân 3, 5, 6, 9, 10, 11 độ phân giải 8-bit), SPI (chân 10-SS, 11-MOSI, 12-MISO, 13-SCK) và I2C (chân A4-SDA, A5-SCL).
- Module Wi-Fi ESP8266-12: Đóng gói 32-pin QFN, tích hợp bộ xử lý RISC 32-bit, giao tiếp SDIO 2.0/SPI/UART, chuẩn Wi-Fi 802.11 b/g/n, cơ chế mã hóa bảo mật WEP/TKIP/AES/WAPI, hỗ trợ stack giao thức TCP/IP, công suất phát 19.5 dBm và mức tiêu thụ điện năng ở chế độ chờ dưới 1.0 mW (DTIM3).
- Module SIM900A Mini: Hoạt động ở mức nguồn 3.8V (tối đa 4.8V), giao tiếp UART mức logic TTL. Trình bày chi tiết sơ đồ chân (VCC, TXD, RXD, GND, PWR, SPK, MIC) và phương án ghép nối diode cùng tụ lọc $2200\text{ }\mu\text{F} / 10\text{V}$ để tương thích nguồn 5V.
- Màn hình LCD 16×2 và chip điều khiển HD44780: Phân tích chi tiết 16 chân giao tiếp, cấu trúc 2 thanh ghi 8-bit (thanh ghi lệnh IR và thanh ghi dữ liệu DR), cờ báo bận BF (Busy Flag trên chân DB7), bộ đếm địa chỉ AC (Address Counter), các vùng nhớ DDRAM ($80 \times 8\text{ bit}$), CGROM (240 mẫu ký tự gồm 208 mẫu $5\times 8$ và 32 mẫu $5\times 10$), CGRAM (lưu tối đa 8 ký tự tự tạo $5\times 8$). Trình bày tập lệnh điều khiển (Clear Display, Return Home, Entry Mode, Display ON/OFF, Shift, Function Set) và quy trình khởi tạo bằng lệnh cho chế độ 4-bit / 8-bit.
- Module chuyển đổi giao tiếp I2C cho LCD: Phân tích nguyên lý bus nối tiếp 2 dây (SCL xung nhịp 100 kHz/400 kHz và SDA dữ liệu 2 chiều). Mô tả cơ chế định địa chỉ 7-bit (hỗ trợ tối đa 128 địa chỉ với 112 thiết bị khả dụng) giúp giảm số đường dây kết nối giữa vi điều khiển và LCD từ 16 chân xuống còn 2 chân tín hiệu.
Chương 3: Thiết kế mạch và chương trình
Chương 3 tập trung vào khâu hiện thực hóa kỹ thuật của đề tài. Tác giả thực hiện thiết kế sơ đồ nguyên lý và vẽ layout mạch in (PCB) trên phần mềm chuyên dụng Proteus. Phần lập trình nhúng sử dụng môi trường Arduino IDE, tích hợp các thư viện SIM900.h và LiquidCrystal_I2C.h. Chương trình được xây dựng theo cấu trúc hàm:
- Khởi tạo cổng truyền thông nối tiếp và kiểm tra trạng thái sẵn sàng của module GSM ("status=READY").
- Thiết lập cấu hình màn hình LCD qua địa chỉ I2C
0x3F.
- Vòng lặp chính (
void loop()) thực hiện quét trạng thái phím bấm chọn chế độ, đọc cảm biến báo cạn bể chứa, tính toán chu kỳ thời gian hẹn giờ (chuyển đổi đơn vị phút sang giây $z = y \times 60$), xuất tín hiệu kích hoạt động cơ (chân 7) và phát còi báo động khi có sự cố.
Chương 4: Kết luận và hướng phát triển đề tài
Chương 4 tổng kết toàn bộ kết quả nghiên cứu, đánh giá mức độ hoàn thành so với mục tiêu đề ra, thẳng thắn chỉ ra các điểm còn tồn tại của hệ thống phần cứng và phần mềm, đồng thời vạch ra các định hướng mở rộng ứng dụng thực tế trong nông nghiệp và nhà thông minh.
Kết quả và đóng góp
Kết quả kỹ thuật đạt được
Đồ án đã thiết kế, chế tạo và thử nghiệm thành công mô hình mạch nhúng điều khiển máy bơm nước với các kết quả cụ thể:
- Chế tạo hoàn chỉnh bo mạch điều khiển nhỏ gọn, tích hợp khối vi điều khiển Arduino Uno R3 với module GSM SIM900A Mini, module ESP8266, khối hiển thị LCD I2C và khối công tắc đóng cắt rơ-le.
- Hệ thống tiếp nhận và phản hồi được các lệnh điều khiển thông qua mạng di động (gọi điện/SMS) và hiển thị thông tin trực quan lên màn hình LCD 16×2.
- Xây dựng thành công tính năng an toàn: tự động ngắt nguồn cấp máy bơm khi cảm biến phát hiện bồn chứa hết nước ("BON HET NUOC"), đồng thời kích hoạt còi báo âm thanh và kết thúc phiên làm việc của module GSM.
- Tiết kiệm thời gian và công sức vận hành thủ công của người dùng.
Đóng góp của đề tài
Theo tác giả tự nhận định, công trình đóng góp một số giá trị thiết thực:
- Cung cấp một mô hình thực nghiệm trực quan minh chứng cho tính ứng dụng thực tế của môn học Kỹ thuật Vi xử lý.
- Đề xuất giải pháp kỹ thuật đơn giản, chi phí thấp nhằm giải quyết bài toán điều khiển thiết bị công suất từ xa phục vụ sinh hoạt và tưới tiêu nông nghiệp.
- Tạo nền tảng mở cho sinh viên ngành kỹ thuật trong việc rèn luyện tư duy thiết kế phần cứng, vẽ mạch in và lập trình vi điều khiển giao tiếp với các module truyền thông không dây.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế được ghi nhận trong văn bản
Tác giả đã chỉ ra 03 hạn chế kỹ thuật còn tồn tại trên mô hình thực nghiệm:
- Tính năng điều khiển máy bơm thông qua tin nhắn SMS vẫn còn những điểm hạn chế nhất định trong quá trình xử lý chuỗi lệnh.
- Phần điều khiển giữa các phương thức (sóng Wi-Fi và sóng điện thoại) vẫn chưa đạt được sự đồng đều và mượt mà tuyệt đối trong mọi tình huống vận hành.
- Chưa khắc phục triệt để hiện tượng trễ (delay) tín hiệu khi thao tác trên hệ thống nút nhấn cứng.
Hướng phát triển tiếp theo
Từ các hạn chế trên, văn bản đồ án đề xuất các hướng nâng cấp và mở rộng:
- Ứng dụng triển khai mô hình vào hệ thống tự động bơm nước sinh hoạt cho các bồn chứa hộ gia đình.
- Mở rộng quy mô công suất và tích hợp thêm các cảm biến môi trường (độ ẩm đất, lưu lượng) để ứng dụng trong hệ thống tưới tiêu tự động cho nông nghiệp.
- Mở rộng phát triển thành hệ thống Nhà thông minh (SmartHome), cho phép điều khiển đa kênh nhiều thiết bị điện dân dụng khác nhau trong gia đình qua sóng điện thoại di động.
Giá trị tham khảo
Đồ án là tài liệu tham khảo hữu ích cho các nhóm đối tượng sau:
- Sinh viên các ngành Công nghệ Kỹ thuật Điện - Điện tử, Kỹ thuật Điều khiển và Tự động hóa, Công nghệ Thông tin (chuyên ngành IoT/Hệ thống nhúng): Cung cấp tài liệu tổng hợp về phương pháp thiết kế một hệ thống phần cứng điều khiển nhúng hoàn chỉnh từ khâu thiết kế mạch in đến lập trình firmware.
- Người nghiên cứu và phát triển các hệ thống điều khiển không dây: Cung cấp giải pháp xử lý nguồn thực tế cho module GSM (giải pháp diode hạ áp và tụ hóa chống sụt áp), sơ đồ phối ghép màn hình LCD qua giao tiếp 2 dây I2C, và quy trình tương tác với chip điều khiển màn hình chuẩn HD44780.
- Phần nội dung đáng tham khảo nhất:
- Thuyết minh chi tiết về tập lệnh, giản đồ thời gian và nguyên lý điều khiển thanh ghi của vi mạch HD44780 (Chương 2).
- Sơ đồ mạch in thiết kế trên Proteus và mã nguồn Arduino thực hiện thuật toán đọc cảm biến kết hợp điều khiển module SIM900A và LCD I2C (Chương 3).
Câu hỏi thường gặp
1. Tại sao module SIM900A Mini không thể cấp nguồn 5V trực tiếp từ Arduino mà phải hàn thêm diode và tụ điện?
Module SIM900A Mini hoạt động ở dải điện áp danh định khoảng 3.8V và ngưỡng tối đa là 4.8V (nếu vượt quá 4.8V linh kiện sẽ bị hỏng/cháy). Để sử dụng được nguồn 5V từ mạch Arduino, tác giả đã hàn nối tiếp một diode ở chân VCC nhằm tạo độ sụt áp an toàn đưa điện áp về ngưỡng cho phép của module, đồng thời mắc thêm tụ hóa dung lượng $2200\text{ }\mu\text{F} / 10\text{V}$ để bù sụt áp đột ngột khi module phát sóng công suất cao trong mạng GSM.
2. Vi điều khiển ATmega328 trên Arduino Uno R3 có các giới hạn bảo vệ dòng điện và điện áp như thế nào theo đồ án?
Theo thông số được trình bày trong đồ án:
- Điện áp cấp cho chân I/O (Digital/Analog) không được vượt quá 5.5V; chân RESET không vượt quá 13V.
- Dòng điện qua một chân I/O bất kỳ không được vượt quá 40 mA.
- Tổng cường độ dòng điện vào/ra ở tất cả các chân Digital và Analog không được vượt quá 200 mA để tránh làm hỏng vi điều khiển.
- Nguồn cấp ngoài qua chân Vin khuyên dùng từ 7–12V DC (giới hạn an toàn từ 6–20V).
3. Việc sử dụng Module I2C cho màn hình LCD 16×2 đem lại ưu điểm gì so với phương pháp kết nối truyền thống?
Màn hình LCD 16×2 thông thường sử dụng vi mạch điều khiển HD44780 yêu cầu tới 16 chân kết nối (trong đó có ít nhất 4 hoặc 8 đường bus dữ liệu cùng các đường điều khiển RS, R/W, E). Khi sử dụng thêm module chuyển đổi giao tiếp I2C (dựa trên chip PCF8574), hệ thống chỉ cần 2 đường truyền tín hiệu nối tiếp là SCL (xung nhịp) và SDA (dữ liệu), giúp tiết kiệm chân I/O cho vi điều khiển Arduino và đơn giản hóa cấu trúc đi dây trên mạch in.
4. Hệ thống xử lý như thế nào khi cảm biến phát hiện bồn chứa bị hết nước?
Khi cảm biến báo cạn (chân cambien ở mức logic kích hoạt), chương trình ngắt trạng thái bơm bằng cách ghi mức logic thấp (LOW) ra chân điều khiển rơ-le (chân số 7) để dừng động cơ, kích hoạt còi chíp (chân số 8) phát âm thanh cảnh báo, hiển thị dòng chữ thông báo "BON HET NUOC" lên màn hình LCD 16×2 và thực hiện lệnh ngắt kết nối cuộc gọi GSM (call.HangUp()).
5. Những nhược điểm chính của mô hình điều khiển máy bơm trong đồ án là gì?
Tác giả nêu rõ 03 nhược điểm chính trong Chương 4: khả năng điều khiển qua tin nhắn SMS còn bị hạn chế; tính đồng đều và độ mượt mà giữa các phương thức điều khiển chưa cao; và hệ thống vẫn còn hiện tượng trễ tín hiệu phản hồi khi người dùng thao tác bấm nút nhấn trên phần cứng.
Kết luận
Đồ án tốt nghiệp "Điều khiển máy bơm bằng sóng wifi và sóng điện thoại" của sinh viên Ngô Văn Hoàng (Trường Đại học Bà Rịa - Vũng Tàu) đã hoàn thành việc thiết kế và thi công mô hình nhúng điều khiển thiết bị điện từ xa dựa trên nền tảng vi điều khiển ATmega328/Arduino Uno R3 kết hợp module GSM SIM900A Mini, ESP8266 và màn hình LCD giao tiếp I2C. Công trình đã hiện thực hóa thành công các tính năng điều khiển đóng ngắt động cơ máy bơm, hiển thị thông số thời gian hẹn giờ và tích hợp cơ chế bảo vệ tự động ngắt bơm khi cạn nước. Mặc dù vẫn còn một số hạn chế về độ trễ nút nhấn và tính năng xử lý tin nhắn SMS, mô hình đã đáp ứng đầy đủ các mục tiêu thiết kế kỹ thuật cơ bản và mở ra tiềm năng ứng dụng thiết thực trong hệ thống cấp nước sinh hoạt, tưới tiêu nông nghiệp tự động và giải pháp nhà thông minh.