Bài toán
Nhiều nhà máy, trạm bơm, hệ thống điện mặt trời đã có gateway đẩy dữ liệu lên dashboard. Sau một thời gian, kho dữ liệu lớn dần nhưng chủ yếu dùng để xem số hiện tại và nhận cảnh báo vượt ngưỡng. Thay đổi chậm, như dòng điện bơm tăng dần ở cùng tần số biến tần, hay một inverter phát thấp hơn các inverter cùng dãy, thì ngưỡng cố định không bắt được cho đến khi thành sự cố.
AI ở đây không tự vận hành nhà máy. Đó là lớp phân tích đặt trên dữ liệu sẵn có: tìm điểm khác thường, ước lượng xu hướng, viết bản tóm tắt cho người vận hành. Giá trị của nó phụ thuộc trực tiếp vào chất lượng dữ liệu bên dưới.
- Ngưỡng cảnh báo cố định hoặc quá chặt (báo liên tục, người trực bỏ qua) hoặc quá lỏng (báo khi đã muộn).
- Báo cáo vận hành vẫn tổng hợp tay sang Excel.
- Dữ liệu thiếu ngữ cảnh: không biết lúc đó bơm chạy chế độ nào, vừa bảo trì hay chưa.
- Dữ liệu lỗi: cảm biến treo giá trị, mất gói, sai đơn vị, giờ lệch giữa các gateway.
- Lo ngại khi đưa dữ liệu vận hành ra dịch vụ AI bên ngoài và khi để AI chạm tới lệnh điều khiển.
Kiến trúc giải pháp
Bốn lớp tách rời: đổi gateway không phải làm lại phần AI, đổi mô hình AI không đụng vào thiết bị.
Phát hiện bất thường trên chuỗi thời gian. Thay vì một ngưỡng cố định, hệ thống xác định dải giá trị bình thường của từng điểm đo theo ngữ cảnh: giờ trong ngày, ngày trong tuần, chế độ chạy. Cùng một dòng điện bơm có thể bình thường khi biến tần chạy tần số cao nhưng bất thường ở tần số thấp. Nên bắt đầu bằng phương pháp thống kê dễ giải thích (độ lệch so với trung bình trượt cùng khung giờ, so sánh giữa các thiết bị cùng loại), rồi mới cân nhắc mô hình học máy khi có đủ lịch sử.
Dự báo xu hướng. Từ lịch sử, ước lượng giá trị vài giờ đến vài ngày tới: điện năng theo ca, mực nước bể chứa, nhu cầu nước theo giờ, sản lượng điện mặt trời khi có dữ liệu thời tiết. Dự báo luôn kèm khoảng sai lệch, phải so với thực tế định kỳ, và có thể lệch khi quy trình thay đổi hoặc gặp điều kiện chưa có trong lịch sử.
Báo cáo bằng mô hình ngôn ngữ. Con số được tính bằng truy vấn trên cơ sở dữ liệu (tổng, trung bình, số giờ chạy, số lần cảnh báo); mô hình ngôn ngữ chỉ đọc kết quả và viết phần diễn giải. Không để mô hình tự cộng trừ trên dữ liệu thô. Mỗi nhận định trong báo cáo dẫn về điểm đo, khoảng thời gian và truy vấn đã dùng để người đọc kiểm tra lại.
Kết nối qua MCP. MCP (Model Context Protocol) là giao thức mở cho phép AI Agent gọi các công cụ truy vấn dữ liệu bên ngoài. Theo nguyên tắc mở của Proto IoT Cloud, dữ liệu được kết nối với AI Agent mà doanh nghiệp đang dùng, như Claude hoặc ChatGPT, thay vì buộc dùng một mô hình riêng. Đổi mô hình không phải đổi lớp dữ liệu.
Nơi chạy.
- Cloud: dữ liệu trên Proto IoT Cloud, AI Agent là dịch vụ của nhà cung cấp mô hình. Không cần máy chủ riêng, nhưng dữ liệu được truy vấn đi qua dịch vụ AI.
- Tại chỗ: cơ sở dữ liệu lịch sử và máy chủ MCP đặt trong mạng nhà máy. Hợp với nơi không cho dữ liệu vận hành ra ngoài; muốn chạy cả mô hình ngôn ngữ tại chỗ thì cần máy chủ đủ cấu hình.
- Tại biên: USR-EG628-ETH (RK3562J, NPU 1 TOPS, RAM 4 GB, Docker) chạy suy luận nhẹ như mô hình phát hiện bất thường nhỏ, lọc và tiền xử lý dữ liệu sát thiết bị, vẫn hoạt động khi mất Internet. Đây không phải nơi chạy mô hình ngôn ngữ lớn.
Quyền truy cập và nhật ký. Công cụ MCP cấp cho AI Agent nên mặc định chỉ đọc và giới hạn theo trạm, theo nhà máy mà người dùng được phân quyền. Mỗi lần gọi ghi nhật ký: ai hỏi, công cụ nào, phạm vi dữ liệu, thời điểm. Khóa truy cập cấp riêng, thu hồi được.
Thiết bị đề xuất
| Vai trò | Thành phần | Ghi chú |
|---|---|---|
| Thu thập dữ liệu hiện trường | USR-M300 | Đọc Modbus RTU/TCP, giao thức PLC, DLT645, BACnet TCP/IP; gửi MQTT(S), HTTP, OPC UA; NTP; Node-RED, edge computing tới 2.000 điểm |
| Thu thập I/O nhẹ | USR-M100 | DI, DO, AI 4–20 mA, Modbus RTU master; MQTT, HTTP(S); bản 4G hoặc Ethernet |
| Gom thiết bị RS485 sẵn có | USR-N540-H7-4 | 4 cổng RS485 sang Ethernet, Modbus RTU↔TCP, MQTT |
| Nền tảng dữ liệu | Proto IoT Cloud hoặc bản cài tại chỗ | Lịch sử, cảnh báo theo ngưỡng/sự kiện, phân quyền, API |
| Máy chủ biên | USR-EG628-ETH | NPU 1 TOPS, RAM 4 GB, eMMC 32 GB; Ubuntu 20.04, Docker, Node-RED; suy luận nhẹ tại biên |
| Lớp kết nối AI | Máy chủ MCP | Công cụ chỉ đọc theo quyền; công cụ ghi (nếu có) tách riêng, mặc định tắt, cần người xác nhận |
| AI Agent | Claude, ChatGPT hoặc AI Agent doanh nghiệp đang dùng | Tài khoản và điều khoản dữ liệu do doanh nghiệp chọn |
| Máy chủ tại chỗ (tùy chọn) | Máy chủ do doanh nghiệp hoặc SI chọn | Khi cần giữ toàn bộ dữ liệu và mô hình trong mạng nội bộ |
Chưa có hạ tầng: bắt đầu bằng gateway và Proto IoT Cloud. Đã có SCADA hoặc cơ sở dữ liệu lịch sử: giữ nguyên, thêm lớp MCP đọc từ đó. Hiện trường mạng yếu: đặt phần phát hiện bất thường trên USR-EG628-ETH.
Dữ liệu, điều khiển và cảnh báo
| Nhóm | Nội dung |
|---|---|
| Đầu vào cần có | Chuỗi thời gian có tên, đơn vị, chu kỳ rõ ràng; trạng thái vận hành (chạy, dừng, chế độ, tần số đặt); lịch sử cảnh báo; nhật ký bảo trì; thông số thiết kế (công suất định mức, dải đo) |
| Đầu ra của lớp AI | Điểm bất thường kèm điểm số, đồ thị, lý do; dự báo kèm khoảng sai lệch; báo cáo ca, ngày, tuần kèm bảng số gốc; gợi ý thiết bị, thông số cần kiểm tra |
| Điều khiển | AI không gửi lệnh. Nếu dự án cho AI soạn đề xuất: người có quyền xác nhận, nền tảng gửi lệnh theo phân quyền, ghi nhật ký. Bước xác nhận và nhật ký lệnh là yêu cầu thiết kế, kiểm tra trên nền tảng khi khảo sát |
| Cảnh báo | Cảnh báo ngưỡng của nền tảng giữ nguyên; cảnh báo từ AI là lớp bổ sung, ghi rõ là đề xuất |
Giới hạn cần nói rõ
- Chất lượng dữ liệu quyết định kết quả: dữ liệu thiếu, sai đơn vị, cảm biến lệch thì AI cũng sai.
- Mô hình ngôn ngữ có thể trả lời sai mà văn phong vẫn trôi chảy, nên mọi câu trả lời phải trích nguồn dữ liệu.
- Phát hiện bất thường có báo nhầm và bỏ sót; nó không thay thế bảo vệ, khóa liên động, quy trình an toàn.
Triển khai
- Chọn bài toán hẹp: ví dụ phát hiện bất thường dòng điện, áp lực của một nhóm bơm, hoặc báo cáo ca cho một dây chuyền; xác định ai dùng kết quả.
- Kiểm tra dữ liệu: đủ điểm đo chưa, chu kỳ, đơn vị, khoảng trống, giá trị treo, đồng bộ thời gian giữa các gateway. Thiếu thì bổ sung điểm đo hoặc gateway trước.
- Gắn ngữ cảnh: đặt tên điểm đo dễ hiểu, khai báo đơn vị, dải đo, chế độ vận hành, lịch bảo trì. Phần này quyết định AI có hiểu đúng dữ liệu hay không.
- Chọn nơi chạy và kết nối: cloud, tại chỗ hay kết hợp biên; cấu hình máy chủ MCP với công cụ chỉ đọc, phân quyền, nhật ký; kết nối AI Agent doanh nghiệp chọn.
- Chạy song song ở chế độ quan sát: AI đưa đề xuất, người vận hành đánh dấu đúng hay sai; điều chỉnh độ nhạy và nội dung báo cáo. Chưa bật công cụ ghi nào.
- Bàn giao: tài liệu điểm đo, quy trình xác nhận lệnh, cách đọc nhật ký, lịch rà soát chất lượng đề xuất.
Câu hỏi thường gặp
Cần bao nhiêu dữ liệu lịch sử mới bắt đầu được?
Không có con số chung. Phát hiện bất thường cần lịch sử phủ các chế độ vận hành chính: tải cao, tải thấp, dừng, và mùa vụ nếu hệ thống chịu ảnh hưởng mùa. Báo cáo bằng mô hình ngôn ngữ dùng được ngay khi có dữ liệu, vì nó chỉ diễn giải số liệu đã tính.
Dữ liệu có bị đưa ra ngoài nhà máy không?
Tùy nơi chạy. Dùng AI Agent trên cloud thì phần dữ liệu được truy vấn sẽ đi qua dịch vụ của nhà cung cấp mô hình. Nếu chính sách không cho phép, đặt cơ sở dữ liệu, máy chủ MCP và mô hình trong mạng nội bộ.
AI có tự bật tắt thiết bị không?
Không. Trong kiến trúc đề xuất, AI Agent không có đường gửi lệnh xuống gateway. Nếu dự án cần AI soạn đề xuất lệnh thì bước chờ người có quyền xác nhận và nhật ký lệnh là yêu cầu thiết kế. Nền tảng đã có sẵn hay chưa thì xác nhận khi khảo sát; chưa có thì phải xây thêm trước khi bật bất kỳ công cụ ghi nào.
PROTO có gói phần mềm AI dựng sẵn không?
Bài này mô tả kiến trúc giải pháp. Phần AI được thiết kế theo từng bài toán, trên dữ liệu của chính doanh nghiệp và với AI Agent doanh nghiệp chọn; PROTO cung cấp lớp thiết bị và nền tảng dữ liệu bên dưới. Hỏi đáp dữ liệu bằng ngôn ngữ tự nhiên xem thêm giải pháp Trợ lý AI – Chatbot.
