Bối cảnh và vấn đề nghiên cứu
Trong bối cảnh công nghiệp hóa và hiện đại hóa, chất thải công nghiệp cùng chất thải sinh hoạt xả thải vào nguồn nước ngày càng gia tăng, gây ảnh hưởng trực tiếp đến hệ sinh thái thủy sinh và sức khỏe cộng đồng. Bên cạnh đó, tác động của biến đổi khí hậu và ô nhiễm không khí làm thay đổi chất lượng nguồn nước tự nhiên và lượng mưa. Tại nhiều khu vực, nguồn nước không đảm bảo tiềm ẩn các vi sinh vật và mầm bệnh nguy hiểm gây các bệnh về tiêu hóa và truyền nhiễm.
Các phương pháp quan trắc chất lượng nước truyền thống chủ yếu dựa vào việc lấy mẫu thủ công và phân tích trong phòng thí nghiệm. Tác giả chỉ ra nhiều hạn chế cố hữu của phương pháp này:
- Đòi hỏi thiết bị chuyên dụng đắt đỏ và nhân sự chuyên môn cao để thực hiện đánh giá.
- Rủi ro nhầm lẫn, tráo đổi hoặc mất mát mẫu trong quá trình thu thập và bảo quản.
- Chi phí đầu tư, vận hành và bảo trì cơ sở vật chất phòng thí nghiệm tốn kém.
- Không cung cấp khả năng cảnh báo theo thời gian thực và thiếu cơ chế dự báo xu hướng biến đổi của chất lượng nước trong tương lai.
- Độ trễ trong khâu vận chuyển mẫu từ hiện trường về phòng phân tích có thể làm biến đổi các chỉ số hóa lý thực tế của nước.
- Dễ phát sinh sai số do thao tác thủ công của con người.
Từ việc phân tích các nghiên cứu đi trước của Geetha và Gouthami (2017), Damor và Sharma (2018), Adu-manu (2020), Puja (2020) và Li (2020) — vốn còn thiếu sự so sánh toàn diện hoặc chưa bao quát đầy đủ các chỉ số chất lượng nước chuyên sâu trên nền tảng Internet of Things (IoT) — đề tài xác định các mục tiêu và nhiệm vụ nghiên cứu cụ thể:
- Nội dung 1: Nghiên cứu và xây dựng hệ thống phần cứng IoT thu thập các chỉ số chất lượng nước theo thời gian thực (nhiệt độ, pH, độ dẫn điện, oxy hòa tan, khả năng oxy hóa - khử) và truyền dữ liệu qua Gateway.
- Nội dung 2: Ứng dụng các thuật toán học máy (Machine Learning) được huấn luyện qua thư viện TensorFlow trên tập dữ liệu đánh giá chất lượng nước để dự đoán độ an toàn (Potability); đồng thời xây dựng giao diện bảng điều khiển quản trị trên nền tảng web bằng Node.js kết nối dịch vụ điện toán đám mây.
- Nội dung 3: Đánh giá hiệu năng và chất lượng toàn hệ thống dựa trên tốc độ truyền nhận dữ liệu, độ trễ bắt sự kiện đám mây, độ chính xác của mô hình AI; đề xuất định hướng phát triển ứng dụng di động đa nền tảng bằng Flutter (Dart).
Đối tượng và phạm vi nghiên cứu:
- Phần cứng: Thiết bị Libelium Waspmote Plug & Sense Smart Water tích hợp 5 đầu dò cảm biến chuyên dụng (cảm biến nhiệt độ Pt-1000, cảm biến pH, cảm biến độ dẫn điện, cảm biến oxy hòa tan DO, cảm biến đo khả năng oxy hóa - khử ORP) và trạm thu phát Meshlium Gateway.
- Công nghệ truyền thông và đám mây: Chuẩn truyền thông không dây Zigbee (module XBee-PRO 900HP), giao thức truyền thông MQTT, các dịch vụ đám mây Microsoft Azure (Azure IoT Hub, Azure Blob Storage, Azure Active Directory B2C, Azure Event Grid, Azure App Services) và cơ sở dữ liệu MongoDB.
- Học máy: Tập dữ liệu Water Quality Prediction từ nền tảng Kaggle gồm 3.276 mẫu dữ liệu với 10 thuộc tính.
Cơ sở lý thuyết và phương pháp
Khóa luận kết hợp lý thuyết mạng truyền thông không dây công suất thấp, kiến trúc dịch vụ đám mây và kỹ thuật học máy có giám sát:
- Công nghệ mạng không dây Zigbee và module XBee-PRO 900HP: Zigbee được xây dựng dựa trên tiêu chuẩn IEEE 802.15.4, hoạt động ở dải tần 900 MHz đối với dòng XBee-PRO 900HP với 64 kênh tần số khả dụng (khoảng cách giữa các kênh 400 kHz), tốc độ truyền dữ liệu 10 kbps, bảo mật bằng mã hóa AES 128-bit (AES-CTR). Công nghệ này cho phép tiết kiệm năng lượng, độ trễ gia nhập mạng thấp (~30 ms) và khả năng mở rộng mạng lưới lên đến 65.000 nút trên lý thuyết.
- Giao thức MQTT và Azure IoT Hub: MQTT (Message Queuing Telemetry Transport) hoạt động theo mô hình Publish/Subscribe qua kết nối TCP, tối ưu hóa băng thông cho thiết bị IoT. Dịch vụ Azure IoT Hub tiếp nhận các bản tin telemetry gửi từ Gateway Meshlium, thực hiện quản lý danh tính thiết bị và định tuyến thông điệp sang Azure Blob Storage.
- Dịch vụ lưu trữ và điều phối sự kiện đám mây:
- Azure Blob Storage: Lưu trữ dữ liệu phi cấu trúc theo cơ chế Object Storage (Block blobs, Append blobs, Page blobs) và hàng đợi (Queues).
- Azure Event Grid: Dịch vụ định tuyến sự kiện theo mô hình Publisher/Subscriber, hỗ trợ bắt sự kiện thời gian thực khi có tệp dữ liệu mới được ghi vào Blob container và đẩy thông tin sự kiện vào Azure Queues.
- Azure Active Directory B2C (Azure AD B2C): Giải pháp quản lý danh tính và quyền truy cập của người dùng (CIAM) hỗ trợ các giao thức OpenID Connect, OAuth 2.0 và SAML để cung cấp tính năng đăng nhập đơn (SSO) và phân quyền người dùng.
- Khung tiêu chuẩn chất lượng nước: Tổng hợp từ các quy chuẩn nước sinh hoạt, nước uống của Việt Nam và Tổ chức Y tế Thế giới (WHO):
| Chỉ số chất lượng nước |
Tiêu chuẩn nước sinh hoạt |
Tiêu chuẩn nước uống |
Đơn vị đo |
| Độ pH |
6,0 – 8,5 |
6,5 – 8,5 |
pH |
| Độ dẫn điện (Conductivity) |
< 400 |
< 400 |
µS/cm |
| Khả năng oxy hóa - khử (ORP) |
< -500 |
< -500 |
mV |
| Oxy hòa tan (DO) |
< 4 |
< 2 |
mg/L |
| Tổng chất rắn hòa tan (TDS) |
< 1000 |
< 500 |
mg/L |
- Phương pháp nghiên cứu thực nghiệm và xử lý dữ liệu:
- Nguồn dữ liệu huấn luyện: Bộ dữ liệu "Water Quality Prediction" (Kaggle) gồm 3.276 dòng dữ liệu tương ứng với các mẫu nước độc lập. Bộ dữ liệu chứa 9 biến độc lập:
pH, Hardness, Solids, Chloramines, Sulfate, Conductivity, Organic_carbon, Trihalomethanes, Turbidity và 1 biến phân loại mục tiêu Potability (0: không uống được, 1: uống được).
- Phương pháp xử lý dữ liệu khuyết: Tác giả so sánh 5 thuật toán xử lý giá trị khuyết (missing values):
Fillna, SimpleImputer, KNNImputer, IterativeImputer và SoftImpute, kết hợp tính toán ma trận tương quan và chuẩn hóa dữ liệu.
- Thuật toán huấn luyện mô hình phân loại: Đánh giá các thuật toán học có giám sát gồm Support Vector Machine (SVM), XGBoost, K-Nearest Neighbors (KNeighbours), Decision Tree, AdaBoost, Logistic Regression và Random Forest trên nền tảng TensorFlow.
Thiết kế và triển khai
Hệ thống được thiết kế theo mô hình tích hợp ba tầng gồm: Tầng thiết bị phần cứng thu thập tại chỗ, Tầng dịch vụ đám mây xử lý và lưu trữ, và Tầng ứng dụng giao diện web cho người dùng.
[Waspmote Plug & Sense] --(Zigbee 900MHz)--> [Meshlium Gateway] --(MQTT)--> [Azure IoT Hub]
|
v
[Web Dashboard (NodeJS)] <--(Queues / REST)-- [Azure Event Grid] <--(Event)-- [Azure Blob Storage]
1. Thiết kế phần cứng và thu thập dữ liệu
Hệ thống sử dụng trạm Libelium Waspmote Plug & Sense Smart Water kết nối 5 module cảm biến chuyên dụng để đo đạc các chỉ số lý hóa của nước:
| Tên cảm biến |
Loại cảm biến / Nguyên lý |
Phạm vi đo lường |
Độ chính xác / Thông số kỹ thuật |
| Nhiệt độ (Pt-1000) |
Cảm biến điện trở biến thiên theo nhiệt độ |
0 °C đến 100 °C |
Chuẩn DIN EN 60751, R(0°C) = 1000 Ω |
| Độ pH |
Điện cực kết hợp (Reference 2,048 V) |
0 đến 14 pH |
Sai số ±0,25 pH, nhiệt độ hoạt động 0–80 °C |
| Độ dẫn điện |
Cảm biến 2 điện cực Platinum |
Phụ thuộc độ dẫn ion |
Hằng số tế bào dẫn điện 1 ± 0,2 cm⁻¹ |
| Oxy hòa tan (DO) |
Tế bào điện (Galvanic cell) |
0 đến 20 mg/L |
Độ chính xác ±2%, áp suất 0–100 psig |
| Khả năng oxy hóa - khử (ORP) |
Điện cực kết hợp đo thế dung dịch |
0 đến +1999 mV |
Độ ổn định ±8 mV/24h, trở kháng 10 kΩ |
Trạm trung tâm Meshlium Gateway tiếp nhận gói tin từ Waspmote qua sóng Zigbee XBee-PRO 900HP. Gateway được trang bị chip lõi tứ 1 GHz (x86), 2 GB RAM DDR3, 16 GB bộ nhớ trong, vỏ bảo vệ tiêu chuẩn IP65/IP67, chạy hệ điều hành Linux Debian.
2. Triển khai dịch vụ đám mây và cơ sở dữ liệu
- Azure IoT Hub: Tạo các ID thiết bị định danh cho trạm Gateway; tiếp nhận luồng dữ liệu định kỳ thông qua giao thức MQTT.
- Azure Blob Storage & Queues: Dữ liệu cảm biến từ IoT Hub được ghi trực tiếp vào Blob Containers dưới dạng các file đối tượng.
- Azure Event Grid: Lắng nghe sự kiện tạo mới blob trong container, trích xuất siêu dữ liệu và đường dẫn tệp rồi đẩy vào hàng đợi Azure Queues.
- MongoDB: Đóng vai trò cơ sở dữ liệu nội bộ phục vụ lưu trữ thông tin cấu hình và dữ liệu xử lý cục bộ.
- Azure AD B2C: Cấu hình luồng đăng ký, đăng nhập tài khoản người dùng, xác thực token bảo mật và phân quyền truy cập hệ thống.
3. Xây dựng ứng dụng Web Dashboard và Pipeline AI
- Web Dashboard: Xây dựng bằng ngôn ngữ JavaScript trên nền Node.js, sử dụng IDE Visual Studio Code và triển khai trên hạ tầng Azure App Services. Giao diện người dùng gồm các phân hệ: Trang đăng ký/đăng nhập (Sign In/Sign Up), Quản lý danh sách thiết bị (Devices, Add Device, Edit Device), Giám sát thông số cảm biến thời gian thực (Show data), Cấu hình tiêu chuẩn ngưỡng cảnh báo và Quản lý hồ sơ cá nhân (Edit Profile, Change/Forgot Password).
- Quy trình tiền xử lý và huấn luyện AI:
- Nạp tập dữ liệu thô (3.276 mẫu) từ Kaggle.
- Khảo sát phân phối thống kê và tỷ lệ dữ liệu bị thiếu trên từng thuộc tính (
pH, Sulfate, Trihalomethanes...).
- Áp dụng lần lượt 5 kỹ thuật làm đầy dữ liệu:
Fillna (điền giá trị thống kê), SimpleImputer, KNNImputer, IterativeImputer, SoftImpute.
- Phân tích ma trận tương quan giữa các đặc trưng sau xử lý.
- Chuẩn hóa thang đo dữ liệu (Feature Scaling).
- Huấn luyện và đánh giá chéo các mô hình phân loại: SVM, XGBoost, KNeighbours, Decision Tree, AdaBoost, Logistic Regression, Random Forest.
Nội dung chính theo từng chương
Chương 1. Giới thiệu
Chương 1 thiết lập bức tranh tổng quan về tình trạng suy thoái môi trường nước và nhu cầu cấp thiết về hệ thống quan trắc tự động. Tác giả phân tích các hạn chế của phương pháp xét nghiệm truyền thống tại phòng thí nghiệm, điểm qua các công trình nghiên cứu quốc tế liên quan và xác định rõ mục tiêu tổng quát: thiết kế hệ thống phần cứng IoT quan trắc đa chỉ số theo thời gian thực, tích hợp lưu trữ đám mây, ứng dụng học máy dự đoán chất lượng nước và cung cấp giao diện quản lý trên nền tảng web. Chương này cũng phân định 3 nội dung nghiên cứu trọng tâm và công bố cấu trúc 5 chương của khóa luận.
Chương 2. Cơ sở lý thuyết
Chương 2 trình bày có hệ thống các nền tảng công nghệ và lý thuyết được sử dụng trong toàn bộ đề tài:
- Công nghệ mạng và giao thức: Phân tích chi tiết chuẩn Zigbee, thông số vô tuyến của module XBee-PRO 900HP (băng tần 900 MHz, công suất phát 24 dBm, độ nhạy thu -110 dBm, cự ly truyền lý thuyết lên đến 15,5 km); kiến trúc hoạt động của giao thức MQTT theo mô hình Publish/Subscribe.
- Phần cứng thu thập dữ liệu Libelium: Chi tiết hóa bảng thông số kỹ thuật, phạm vi đo, nguyên lý hoạt động và sai số của 5 loại cảm biến (Pt-1000, pH, EC, DO, ORP) cùng gateway Meshlium.
- Hệ sinh thái dịch vụ Microsoft Azure: Phân tích cấu trúc của Azure IoT Hub, Azure Blob Storage (Storage accounts, Containers, Blobs, Queues), dịch vụ định danh Azure Active Directory B2C và cơ chế định tuyến sự kiện Azure Event Grid.
- Tiêu chuẩn chất lượng nước: Tổng hợp các giới hạn định lượng theo quy chuẩn WHO và Việt Nam đối với nước sinh hoạt và nước uống.
- Học máy và tập dữ liệu: Giới thiệu khái niệm học máy có giám sát (Supervised Learning), quy trình xử lý dữ liệu và cấu trúc chi tiết của bộ dữ liệu "Water Quality Prediction" (3.276 dòng dữ liệu, 10 thuộc tính). Khảo sát các công cụ phát triển như TensorFlow cùng các giải thuật học máy (Decision Tree, Random Forest, SVM, XGBoost...).
Chương 3. Thiết kế, xây dựng và triển khai hệ thống
Chương 3 trình bày chi tiết quá trình hiện thực hóa giải pháp:
- Thiết lập sơ đồ phần cứng kết nối các cổng cảm biến A, B, C, E, F trên bo mạch Waspmote Plug & Sense Smart Water truyền tín hiệu về Gateway Meshlium.
- Thiết kế mô hình cơ sở dữ liệu hệ thống và cấu hình các dịch vụ Azure: tạo IoT Hub, Blob containers, cấu hình Event Grid subscriptions để chuyển tiếp siêu dữ liệu vào Queues.
- Thiết kế kiến trúc và giao diện người dùng cho ứng dụng web giám sát trên nền tảng Node.js và Azure App Services.
- Triển khai quy trình xử lý dữ liệu: trực quan hóa phân phối từng thuộc tính (
pH, Hardness, Solids, Chloramines, Sulfate, Conductivity, Organic_carbon, Trihalomethanes, Turbidity), xử lý dữ liệu khuyết tật bằng 5 phương pháp (Fillna, SimpleImputer, KNNImputer, IterativeImputer, SoftImpute), kiểm tra ma trận tương quan và chuẩn hóa dữ liệu.
- Tiến hành huấn luyện các mô hình học máy trên từng tập dữ liệu đã qua tiền xử lý.
Chương 4. Kết quả thực nghiệm
Chương 4 ghi nhận và phân tích các kết quả đo đạc thực tế từ quá trình vận hành hệ thống:
- Thực nghiệm đo lường và trao đổi dữ liệu không dây giữa trạm cảm biến Waspmote và trạm Gateway Meshlium qua chuẩn Zigbee XBee-PRO 900HP.
- Thực nghiệm truyền tải các gói tin định kỳ từ Gateway lên dịch vụ Azure IoT Hub và lưu trữ vào Azure Blob Storage.
- Thực nghiệm bắt sự kiện tạo tệp của Azure Event Grid và thống kê các sự kiện ghi nhận được trong Azure Queues.
- Đánh giá độ trễ xử lý trung bình của toàn bộ chuỗi sự kiện đám mây (Cloud pipeline).
- Đánh giá, đối sánh độ chính xác và hiệu năng dự đoán phân loại chất lượng nước của các mô hình AI (SVM, XGBoost, Random Forest, Decision Tree...) tương ứng với 5 phương pháp điền dữ liệu khuyết tật.
Chương 5. Kết luận và hướng phát triển
Chương 5 đúc kết các kết quả đạt được trong việc hoàn thiện mô hình quan trắc nước tự động kết hợp AI và dịch vụ đám mây; đồng thời chỉ ra các hạn chế hiện tại và xác định phương hướng mở rộng hệ thống trong tương lai.
Kết quả và đóng góp
Kết quả chính
- Xây dựng thành công hệ thống phần cứng quan trắc: Tích hợp hoàn chỉnh trạm cảm biến Libelium Waspmote Plug & Sense Smart Water cùng 5 đầu dò đo đạc đồng thời 5 chỉ số chất lượng nước theo thời gian thực, truyền thông ổn định đến Meshlium Gateway qua sóng Zigbee XBee-PRO 900HP.
- Vận hành luồng dữ liệu đám mây thời gian thực: Kết nối Gateway với Azure IoT Hub qua MQTT, tự động đồng bộ và lưu trữ dữ liệu vào Azure Blob Storage, kích hoạt bắt sự kiện tức thời qua Azure Event Grid và ghi nhận vào Azure Queues để phục vụ các dịch vụ downstream.
- Thực nghiệm toàn diện tiền xử lý và huấn luyện AI: Phân tích, làm sạch thành công tập dữ liệu 3.276 mẫu trên 5 phương pháp xử lý dữ liệu khuyết tật (
Fillna, SimpleImputer, KNNImputer, IterativeImputer, SoftImpute), xây dựng ma trận tương quan và huấn luyện các mô hình phân loại học máy (Random Forest, Decision Tree, SVM, XGBoost, AdaBoost, Logistic Regression, KNeighbours).
- Phát triển giao diện quản lý: Xây dựng hoàn chỉnh ứng dụng web bảng điều khiển trên nền tảng Node.js hỗ trợ đăng nhập/phân quyền qua Azure AD B2C, theo dõi chỉ số cảm biến và cấu hình linh hoạt các ngưỡng tiêu chuẩn chất lượng nước.
Giải pháp và đề xuất của tác giả
- Ứng dụng giải pháp quan trắc tự động trên nền tảng IoT và điện toán đám mây để thay thế phương thức lấy mẫu phòng thí nghiệm truyền thống, giúp giảm thiểu độ trễ, sai lệch mẫu và chi phí vận hành.
- Cho phép tái cấu hình linh hoạt các tiêu chuẩn chất lượng nước trên hệ thống để thích ứng với các mục đích sử dụng khác nhau (nước sinh hoạt, nước uống theo tiêu chuẩn Việt Nam hoặc WHO).
- Đề xuất mở rộng xây dựng ứng dụng di động trên nền tảng Flutter (sử dụng ngôn ngữ lập trình Dart) chạy đồng thời trên hai hệ điều hành Android và iOS để nâng cao trải nghiệm giám sát di động cho người quản trị.
Đóng góp về mặt học thuật và kỹ thuật
- Kết hợp hoàn chỉnh chuỗi công nghệ từ tầng biên phần cứng (Edge Hardware), tầng mạng cục bộ (Zigbee), tầng truyền thông Internet (MQTT), tầng dịch vụ đám mây quy mô lớn (Azure IoT Hub/Event Grid/Blob/B2C) đến tầng trí tuệ nhân tạo (Machine Learning).
- Cung cấp dữ liệu thực nghiệm so sánh chi tiết giữa 5 kỹ thuật xử lý dữ liệu khuyết tật và nhiều giải thuật học máy trong bài toán phân loại chất lượng nước uống.
Hạn chế và hướng nghiên cứu tiếp
Hạn chế được ghi nhận
- Dữ liệu huấn luyện mô hình học máy hiện tại sử dụng tập dữ liệu thứ cấp từ nguồn Kaggle ("Water Quality Prediction" với 3.276 mẫu) thay vì tập dữ liệu chuỗi thời gian dài hạn được trích xuất trực tiếp từ trạm cảm biến thực tế.
- Giao diện người dùng hiện mới chỉ triển khai hoàn chỉnh ở phiên bản Web Dashboard, chưa có ứng dụng di động độc lập phục vụ giám sát linh hoạt tại hiện trường.
- Hệ thống phụ thuộc vào hạ tầng mạng và các gói dịch vụ điện toán đám mây trả phí của Microsoft Azure.
Hướng nghiên cứu tiếp theo
- Hoàn thiện và đóng gói ứng dụng di động đa nền tảng bằng framework Flutter (ngôn ngữ Dart) hỗ trợ cả hai hệ điều hành Android và iOS.
- Thu thập và xây dựng tập dữ liệu thực tế tại Việt Nam từ trạm cảm biến Libelium Waspmote để tái huấn luyện và tinh chỉnh các mô hình AI.
- Tối ưu hóa độ trễ trao đổi dữ liệu và xử lý sự kiện giữa Gateway, cơ sở dữ liệu và các mô hình AI dự đoán.
Giá trị tham khảo
Khóa luận là tài liệu tham khảo có giá trị chuyên môn cao cho:
- Sinh viên và học viên ngành Mạng máy tính, Truyền thông dữ liệu và Kỹ thuật IoT: Tham khảo cách thiết lập cấu hình mạng cảm biến không dây Zigbee (chuẩn IEEE 802.15.4, module XBee-PRO 900HP), giao thức MQTT và phương pháp tích hợp Gateway Meshlium với dịch vụ đám mây Azure IoT Hub.
- Kỹ sư và nhà phát triển hệ thống Cloud & Web: Tham khảo kiến trúc định tuyến sự kiện với Azure Event Grid, lưu trữ Blob Storage/Queues và giải pháp quản lý định danh người dùng qua Azure Active Directory B2C tích hợp vào ứng dụng Node.js.
- Người nghiên cứu Khoa học dữ liệu và Trí tuệ nhân tạo ứng dụng: Tham khảo quy trình thực nghiệm tiền xử lý dữ liệu khuyết tật (so sánh trực tiếp 5 kỹ thuật
Fillna, SimpleImputer, KNNImputer, IterativeImputer, SoftImpute) và quy trình huấn luyện các mô hình phân loại nhị phân trên tập dữ liệu chất lượng nước.
Câu hỏi thường gặp
1. Khóa luận sử dụng trạm phần cứng và các loại cảm biến nào để thu thập dữ liệu nước?
Tác giả sử dụng trạm Libelium Waspmote Plug & Sense Smart Water kết nối 5 cảm biến chuyên dụng: cảm biến nhiệt độ Pt-1000 (0–100 °C), cảm biến đo độ pH (0–14 pH), cảm biến đo độ dẫn điện (2 điện cực Platinum), cảm biến đo nồng độ oxy hòa tan DO (0–20 mg/L) và cảm biến đo khả năng oxy hóa - khử ORP (0 đến +1999 mV). Dữ liệu được gửi về trạm trung tâm Meshlium Gateway qua module vô tuyến XBee-PRO 900HP chuẩn Zigbee.
2. Dữ liệu từ Gateway được chuyển tiếp và lưu trữ trên nền tảng đám mây như thế nào?
Từ Meshlium Gateway, dữ liệu được truyền qua giao thức MQTT đến dịch vụ Azure IoT Hub. Dữ liệu sau đó được định tuyến và lưu trữ vào Azure Blob Storage (dưới dạng các containers). Khi có file mới được ghi vào Blob container, Azure Event Grid bắt sự kiện thời gian thực và đẩy thông tin đường dẫn vào Azure Queues để hệ thống backend tiếp nhận và xử lý.
3. Tập dữ liệu dùng để huấn luyện mô hình AI có cấu trúc ra sao?
Tác giả sử dụng bộ dữ liệu "Water Quality Prediction" lấy từ nền tảng Kaggle gồm 3.276 dòng dữ liệu mẫu. Mỗi mẫu có 9 thuộc tính đầu vào đại diện cho các chỉ số hóa lý của nước (pH, Hardness, Solids, Chloramines, Sulfate, Conductivity, Organic_carbon, Trihalomethanes, Turbidity) và 1 thuộc tính đầu ra phân loại nhãn Potability (xác định nước có an toàn để uống hay không).
4. Những phương pháp tiền xử lý dữ liệu khuyết nào đã được tác giả thử nghiệm?
Do tập dữ liệu gốc có nhiều giá trị rỗng (missing values), tác giả đã thử nghiệm và đánh giá ma trận tương quan trên 5 phương pháp làm đầy dữ liệu độc lập: Fillna, SimpleImputer, KNNImputer, IterativeImputer và SoftImpute, sau đó tiến hành chuẩn hóa dữ liệu trước khi nạp vào các mô hình huấn luyện học máy.
5. Ứng dụng giám sát của hệ thống được xây dựng và bảo mật bằng những công nghệ nào?
Giao diện quản trị được xây dựng dưới dạng ứng dụng web bằng ngôn ngữ JavaScript trên nền tảng Node.js, phát triển trên Visual Studio Code và triển khai qua Azure App Services. Hệ thống xác thực và quản lý tài khoản người dùng sử dụng dịch vụ Azure Active Directory B2C hỗ trợ các giao thức OAuth 2.0, OpenID Connect và SAML.
Kết luận
Khóa luận tốt nghiệp của tác giả Diệc Thành đã thiết kế và triển khai thành công một hệ thống hoàn chỉnh từ phần cứng đến phần mềm phục vụ quan trắc và dự đoán chất lượng nước sinh hoạt theo thời gian thực. Bằng việc kết hợp trạm cảm biến Libelium, truyền thông Zigbee XBee-PRO 900HP, hệ sinh thái điện toán đám mây Microsoft Azure và các thuật toán học máy phân loại nhị phân, đề tài đã giải quyết hiệu quả bài toán tự động hóa giám sát các chỉ số hóa lý của nguồn nước. Công trình cung cấp giải pháp công nghệ có tính khả thi cao, mở ra hướng ứng dụng thực tiễn trong quản lý tài nguyên nước và bảo vệ sức khỏe cộng đồng.