Quan trắc, dự đoán chất lượng nước sinh hoạt ứng dụng AI Training

Monitoring, predicting domestic water quality applying AI training

Hệ thống phần cứng IoT sử dụng bộ thiết bị Libelium Smart Water bao gồm Waspmote Plug&Sense cùng các cảm biến đo nhiệt độ, độ pH, độ dẫn điện, độ oxy hòa tan, khả năng oxy hóa-khử của nước và Meshlium đóng vai trò Gateway cho phép trao đổi dữ liệu ra bên ngoài. Hệ thống phần cứng cơ bản đóng vai trò quan trắc chất lượng nước sinh hoạt theo thời gian thực. Bên cạnh đó, áp dụng phương pháp tái cấu hình cho phép thay đổi tiêu chuẩn đo phù hợp với nhu cầu sử dụng; áp dụng học máy, AI Training sử dụng thư viện TensorFlow dự đoán chất lượng nước định kỳ.

Xem toàn văn báo cáo tại:

Khoá luận tốt nghiệp

TÁC GIẢ

Diệc Thành

GIẢNG VIÊN HƯỚNG DẪN

NGÀNH

Năm:

Tổng quan

Từ lâu đã có nhiều giải pháp quan trắc và khắc phục chất lượng môi trường nước, điển hình là phương pháp phụ thuộc phòng thí nghiệm. Không thể phủ nhận sự đóng góp trong giải pháp này, nhưng với thời đại công nghệ cao hiện nay, giải pháp ấy không phù hợp và cần được thay thế đối với một đất nước đang phát triển mạnh như Việt Nam. Có quá nhiều bất lợi được đưa ra: yêu cầu nhiều thiết bị/dụng cụ chuyên môn và các chuyên gia để đánh giá chất lượng nước; kết quả quan trắc có thể bị mất hoặc tráo đổi với mẫu khác do sơ xuất; thiết bị lỗi thời; phát triển và bảo trì cơ sở hiện đại tốn kém; thiếu sự dự đoán xu hướng tình trạng nước trong tương lai và nhận xét thời gian thực; các thông số của nước có thể bị thay đổi do sự chậm trễ trong việc vận chuyển mẫu từ nguồn nước đến phòng thí nghiệm; lỗi thao tác dữ liệu [1]. Với sự phát triển vượt trội lĩnh vực IoT, không lý do gì để từ chối phát triển giải pháp dựa vào nó để quan trắc chất lượng nước, vừa giải quyết được hầu hết các khuyết điểm trên, thay thế giải pháp cũ, vừa “hợp thời” kiến tạo cho đất nước phát triển hơn về mặt công nghệ so với bạn bè thế giới.

Về tổng quát, nghiên cứu sẽ xây dựng hệ thống phần cứng IoT cho phép các cảm biến đo nhiệt độ, độ pH, độ dẫn điện, độ oxy hòa tan, khả năng oxy hóa-khử của nước theo thời gian thực. Trao đổi dữ liệu với cơ sở dữ liệu bên ngoài thông qua Gateway, các dữ liệu ấy được dùng cho AI Training để dự đoán xem tình trạng chất lượng nước sinh hoạt như thế nào sau một thời gian nhất định (định kỳ). Tiêu chuẩn nước cũng được cho phép thay đổi linh động giúp người giám sát linh hoạt hơn trong nhu cầu sử dụng hệ thống. Các thông số chất lượng nước cũng như các hành động quản lý được trình bày và thực hiện thông qua web app.

Phạm vi và đối tượng nghiên cứu

  • Phần cứng
    + Libelium Waspmote Plug & Sense Smart Water.
    + Các cảm biến môi trường nước: cảm biến đo độ pH, cảm biến đo độ dẫn điện, cảm biến đo khả năng oxy-hóa khử, cảm biến đo oxy hòa tan trong nước, cảm biến đo nhiệt độ nước (Pt-1000).
    +Meshlium – Gateway.
  • Phần mềm
    + Xây dựng web gửi và nhận dữ liệu từ Azure Blob Storage, MongoDB sử dụng ngôn ngữ JavaScript, các framework của NodeJS, môi trường phát triển Visual Studio Code.
  • Công nghệ
    + Công nghệ truyền thông Zigbee
    + Công nghệ lưu trữ đám mây (Azure Blob Storage)
    + Công nghệ hỗ trợ định danh người dùng (Azure Active Directory B2C)
    + Công nghệ lưu trữ nội bộ (MongoDB)
    + Công nghệ bắt sự kiện thời gian thực trên đám mây (Azure Event Grid)
    + Công nghệ triển khai web app (Azure App Services)
  • Giao thức
    + Giao thức truyền thông MQTT.

Thiết kế hệ thống

  1. Thiết kế phần cứng hệ thống

Hệ thống quan trắc chất lượng môi trường nước bao gồm: 1 Libelium Waspmote Plug & Sense!, 1 cảm biến nhiệt độ, 1 cảm biến độ pH, 1 cảm biến độ dẫn điện, 1 cảm biến đo oxy hòa tan, 1 cảm biến đo khả năng oxy hóa-khử, 1 Meshlium.

so do he thong phan cung quan trac chat luong nuoc

Hình 3.1. Sơ đồ hệ thống phần cứng quan trắc chất lượng nước

2. Thiết kế cơ sở dữ liệu hệ thống

Cơ sở dữ liệu hệ thống cần phải có 1 trường ID Waspmote do MongoDB tự đặt để lưu trong database, 1 trường tên của Waspmote, 1 trường địa điểm đặt các Waspmote (các trạm), các trường số liệu từ cảm biến.

Ràng buộc trường tên của Waspmote phải được nhập đúng dựa theo thông tin được cung cấp từ nhà sản xuất.

Bảng 3.1. Cơ sở dữ liệu của hệ thống

image 6

3. Xây dựng các dịch vụ đám mây

  • Tạo dịch vụ Azure IoT Hub và kết nối với Meshlium (Meshlium hỗ trợ liên kết với database bên ngoài bao gồm Azure IoT Hub).
  • Xây dựng Blob container và Queues
    + Blob container: khi Meshlium gửi dữ liệu đến Azure IoT Hub, Blob container sẽ là nơi lưu trữ dữ liệu dưới dạng Object, dữ liệu được Azure IoT Hub sử dụng giao thức MQTT gửi đến.
    + Queues: đây sẽ là nơi dịch vụ Azure Event Grid bắt sự kiện khi có 1 tập tin dữ liệu mới được tạo ra ở Blob container.
  • Xây dựng Event Grid System Topic để bắt sự kiện khi có 1 file dữ liệu mới được tạo ra ở Blob container. Trỏ database lưu thông tin sự kiện bắt được đến Queues trong Blob Storage.

4. Thiết kế và xây dựng hệ thống website

Website gồm Front-End và Back-End. Front-End sử dụng Bootstrap, Back-End sử dụng NodeJS, 2 loại cơ sở dữ liệu Internal Database và External Database. Internal Database sử dụng MongoDB lưu trữ dữ liệu được gửi từ các dịch vụ đám mây Azure, đây cũng là nơi lưu trữ dữ liệu chính cho hệ thống.

External Database sử dụng Azure Blob Storage để lưu trữ dữ liệu được gửi từ Azure IoT Hub, Azure Event Grid lưu trữ thông tin đường dẫn tập tin khi có 1 tập tin mới được tạo ở Blob Container trong Azure Blob Storage.

image 8

Hình 3.7. Mô hình triển khai website

Kết luận

  • Kết quả đạt được:
    + Độ trễ gửi và nhận đảm bảo tính realtime.
    + Tốc độ mô hình AI trả kết quả nhanh, đảm bảo tính realtime.
    + Mô hình thiết bị được cải thiện về tính linh hoạt (Nhiều thiết bị Waspmote kết nối được tới gateway Meshlium).
    + Tiêu chuẩn về chất lượng nước tin cậy hơn.
  • Hạn chế:
    + Tập dữ liệu train khan hiếm, không đủ các chỉ số tác giả cần.
    + Độ chính xác của mô hình còn thấp, cần cải thiện về tập dữ liệu và phương pháp training.