Giải pháp tổng thể về điều khiển và SCADA cho công nghiệp dược phẩm Giao thức IEC 104 - góc nhìn từ thực tiễn ứng dụng |
1. Giới thiệu
Trong bối cảnh công nghiệp hiện đại đang chuyển mình mạnh mẽ với các xu hướng như số hóa, kết nối vạn vật (IoT) và tự động hóa nâng cao, hệ thống SCADA tiếp tục đóng vai trò trung tâm trong giám sát và điều khiển quá trình sản xuất. Tuy nhiên, SCADA truyền thống chủ yếu thực hiện các chức năng thu thập, hiển thị và lưu trữ dữ liệu thời gian thực dựa trên logic định sẵn. Điều này chưa đủ đáp ứng yêu cầu phân tích sâu và ra quyết định thông minh trong các hệ thống ngày càng phức tạp.
Trong khi đó, trí tuệ nhân tạo (AI), đặc biệt là các mô hình học máy (Machine Learning) và học sâu (Deep Learning) đã chứng minh hiệu quả vượt trội trong việc xử lý dữ liệu lớn, phát hiện bất thường, và dự báo xu hướng. Việc tích hợp AI vào SCADA mở ra một hướng đi mới - nơi dữ liệu không chỉ được thu thập và hiển thị, mà còn được hiểu và khai thác một cách thông minh để hỗ trợ ra quyết định.
Bài viết này đi sâu vào một ứng dụng thực tế, nơi chúng tôi tích hợp mô hình ngôn ngữ lớn (LLM) - cụ thể là OpenAI ChatGPT - vào hệ thống SCADA WinCC OA đang thu thập dữ liệu từ số lượng lớn thiết bị điện (thông số điện năng và điều khiển đóng/cắt) qua Modbus TCP. Bằng cách sử dụng các kỹ thuật xử lý JSON, gọi API và thiết kế giao diện tương tác động (faceplate), chúng tôi minh chứng rằng trí tuệ nhân tạo có thể tăng cường hiệu suất phân tích, giảm thời gian phản hồi và mang lại một phương thức tương tác hoàn toàn mới với hệ thống SCADA.
2. Kiến trúc hệ thống SCADA có tích hợp trí tuệ nhân tạo qua API
Kiến trúc tổng thể của hệ thống SCADA tích hợp AI để xuất được trình bày trong hình 1. Hệ thống bao gồm các thành phần chính:
![]() |
Kiến trúc tổng thể của hệ thống SCADA tích hợp AI. |
2.1. Các hệ điều khiển phân tán
Mỗi cụm điều khiển gồm bộ điều khiển trung tâm (PLC/RTU) làm nhiệm vụ thu thập tín hiệu đo lường (điện áp, dòng điện, công suất, trạng thái đóng/cắt,…) từ thiết bị hiện trường, và phát tín hiệu điều khiển đến các tải hoặc thiết bị chấp hành. Giao tiếp với SCADA được thực hiện qua switch công nghiệp, sử dụng các giao thức phổ biến như S7, Modbus TCP hoặc OPC UA, đảm bảo kết nối mở và thời gian thực.
2.2. SCADA Server và trạm vận hành
• (5) SCADA Server: đóng vai trò trung tâm thu thập, xử lý và lưu trữ dữ liệu thời gian thực từ các hệ điều khiển phân tán. SCADA chịu trách nhiệm tổ chức dữ liệu theo tag, datapoint, duy trì lịch sử vận hành và cung cấp nền tảng kết nối với các hệ thống phân tích bên ngoài.
Trong ứng dụng trình bày dưới đây, chúng tôi sử dụng WinCC OA - một nền tảng SCADA mở, cho phép tích hợp linh hoạt với các module mở rộng và các dịch vụ phân tích qua giao diện API.
• (6) Trạm vận hành SCADA: cung cấp giao diện đồ họa cho người dùng, cho phép quan sát và điều khiển toàn bộ hệ thống. Trong triển khai hiện tại, giao diện được phát triển dưới dạng ứng dụng web HTML5, hỗ trợ hiển thị linh hoạt các thành phần như faceplate thiết bị, biểu đồ gauge dạng HTML, bảng dữ liệu, biểu đồ cột phân tích năng lượng, hoặc các đánh giá ngôn ngữ tự nhiên do AI phản hồi.
Giao diện hỗ trợ tương tác động: người dùng có thể gửi prompt, theo dõi phản hồi dạng bảng hoặc ngôn ngữ tự nhiên, và thực hiện điều khiển trực tiếp từ cùng một màn hình HTML. Điều này giúp tăng tính thân thiện, khả năng trực quan hóa và khả năng vận hành từ xa qua trình duyệt tiêu chuẩn.
2.3. AI Assistant Module
• (7) AI Assistant Module được thiết kế như một dịch vụ phân tích độc lập (microservice) kết nối với SCADA thông qua RESTful API.
• Thành phần này đóng vai trò tiếp nhận dữ liệu thời gian thực từ SCADA (dưới định dạng JSON), xử lý thông tin bằng các mô hình ngôn ngữ lớn (LLM) - như OpenAI ChatGPT, và trả về kết quả dưới dạng phản hồi văn bản hoặc cấu trúc dữ liệu (JSON, HTML, text phân tích).
• AI Assistant Module không truy cập trực tiếp PLC mà dựa vào thông tin được cung cấp từ SCADA, giúp hệ thống giữ nguyên tính an toàn, phân lớp rõ ràng giữa điều khiển và phân tích.
2.4. Luồng dữ liệu và cơ chế tương tác AI
Trong hệ thống SCADA mở rộng có tích hợp AI, luồng dữ liệu và cơ chế phản hồi được tổ chức theo các bước sau:
1. Dữ liệu trạng thái và đo lường từ hệ thống điều khiển (bao gồm tín hiệu từ các thiết bị hiện trường như cảm biến, tải, rơle,…) được thu thập qua PLC/RTU và truyền về SCADA theo thời gian thực, thông qua các giao thức công nghiệp chuẩn như Modbus TCP, S7 hoặc OPC UA.
2. SCADA xử lý, cập nhật và hiển thị dữ liệu theo chu kỳ, trên các thành phần giao diện như bảng tổng hợp (table), faceplate động, hoặc biểu đồ trạng thái.
3. Khi người dùng gửi một yêu cầu phân tích (prompt) bằng ngôn ngữ tự nhiên (ví dụ: “Thiết bị nào đang hoạt động?”, “Có bất thường nào trong dòng điện không?”), hệ thống SCADA thực hiện:
▪ Trích xuất dữ liệu đang hiển thị
▪ Đóng gói thành chuỗi JSON phù hợp với AI Assistant Module
▪ Gửi dữ liệu qua RESTful API đến mô hình AI (như OpenAI GPT)
4. Phản hồi từ AI Assistant Module - có thể là danh sách thiết bị bất thường, mô tả tình trạng tải, hoặc đề xuất hành động - được phân tích, định dạng lại (nếu cần) và hiển thị trực tiếp trên giao diện SCADA, bao gồm cả các thành phần HTML như bảng dữ liệu, biểu đồ gauge hoặc khung văn bản động, giúp người vận hành theo dõi và phản ứng một cách thân thiện và trực quan.
Cấu trúc này cho phép tăng khả năng phân tích thông minh mà không làm thay đổi hạ tầng điều khiển hiện có, đảm bảo tính kế thừa, mở rộng và độ tin cậy trong công nghiệp.
3. Cấu trúc hệ thống ứng dụng tích hợp SCADA - AI Assistant Module
3.1. Cấu trúc hệ thống triển khai
Hệ thống SCADA trong triển khai này được kết nối với các thiết bị đo đếm và điều khiển điện năng thông qua giao thức Modbus TCP, như minh họa trong hình 2. Dữ liệu từ các thiết bị này được SCADA WinCC OA thu thập và xử lý theo chu kỳ.
![]() |
Cấu trúc hệ thống triển khai. |
Cấu trúc hệ thống bao gồm:
• (1) Thiết bị đo đếm và điều khiển điện năng: thực hiện đo lường dòng, điện áp, công suất tức thời và điều khiển tải (Load_1, Load_2, Load_3) thông qua các thiết bị đóng/cắt CB_1 đến CB_3.
• (2) SCADA WinCC OA: thực hiện thu thập, xử lý và tích hợp API với mô-đun AI.
• (3) Giao diện vận hành SCADA: cho phép người dùng gửi prompt, theo dõi kết quả phân tích, và điều khiển thiết bị.
• (4) OpenAI GPT: được sử dụng như một AI Assistant Module, tiếp nhận prompt và dữ liệu dưới dạng JSON để xử lý và phản hồi.
3.2. Cấu trúc dữ liệu đầu vào
Dữ liệu gửi đến AI được đóng gói theo định dạng JSON chuẩn, trong đó mỗi thiết bị có các trường như trong bảng 1.
![]() |
Bảng 1. Cấu trúc dữ liệu thiết bị đo đếm và điều khiển điện năng. |
Cấu trúc dữ liệu này giúp mô hình GPT có thể diễn giải và phân tích đúng ngữ cảnh vận hành của từng thiết bị.
4. Luồng xử lý và cơ chế phân tích trong SCADA tích hợp AI
Hệ thống SCADA tích hợp AI không chỉ dừng lại ở việc thu thập và hiển thị dữ liệu, mà còn có khả năng diễn giải, phân tích và điều khiển thông minh thông qua tương tác ngôn ngữ tự nhiên. Mục này trình bày chi tiết luồng xử lý từ giao diện người dùng đến phản hồi từ AI, kèm theo cơ chế kỹ thuật bên trong giúp hệ thống “hiểu” và phản hồi đúng.
Luồng xử lý tổng thể
1. Dữ liệu thời gian thực từ thiết bị hiện trường được SCADA thu thập định kỳ qua Modbus TCP. Dữ liệu bao gồm dòng điện, công suất, trạng thái tải,…
2. Người vận hành nhập prompt dưới dạng ngôn ngữ tự nhiên tại giao diện SCADA, ví dụ: “Liệt kê các thiết bị đang tiêu thụ > 5kW”; “Bật tải 2 của đồng hồ 7 và 12”.
3. SCADA xử lý sơ cấp:
▪ Truy xuất dữ liệu đang hiển thị.
▪ Đóng gói thành JSON chuẩn.
4. Gửi đến API GPT:
▪ Endpoint: https://api.openai.com/v1/chat/completions
▪ Giao tiếp qua netPost() trong WinCC OA: int result = netPost(url, requestData, response);
5. Nhận phản hồi từ AI Assistant Module: Có thể là văn bản phân tích, mảng JSON ID, hoặc danh sách điều khiển tải. Các phản hồi dạng văn bản có thể bao gồm phân tích bằng ngôn ngữ tự nhiên, được hiển thị trực tiếp trên giao diện HTML dưới dạng khung văn bản động, hỗ trợ người vận hành đọc hiểu dễ dàng ngay trong quá trình theo dõi hệ thống.
6. Xử lý thứ cấp tại SCADA:
▪ Tách nội dung phản hồi.
▪ Phân tích định dạng và gọi các hàm xử lý tương ứng: để hiển thị bảng, để mở faceplate để điều khiển tải.
5. Kết quả đạt được và đánh giá
Ứng dụng tích hợp AI vào hệ thống SCADA đã được thử nghiệm trong môi trường công nghiệp giả lập với 1000 thiết bị đo đếm điện năng, mô phỏng dữ liệu thời gian thực qua Modbus TCP. Kết quả cho thấy:
• Thời gian phân tích và phản hồi từ lúc người vận hành gửi prompt đến khi kết quả hiển thị chỉ khoảng 1–2 giây, tùy thuộc vào mô hình AI được sử dụng (ví dụ: GPT-3.5, GPT-4 hoặc GPT-4o) và tốc độ phản hồi của API.
• Giảm đến 80% khối lượng thao tác điều khiển thủ công so với cách truyền thống (lọc - tìm - nhấn nút).
• Hiển thị bảng dữ liệu động giúp người vận hành dễ nhận diện các thiết bị bất thường trong toàn hệ thống mà không cần viết thêm dòng mã nào.
• AI tự động diễn giải hành vi tải hoặc hướng dẫn thao tác bằng ngôn ngữ tự nhiên - phù hợp cho cả nhân sự không chuyên sâu về kỹ thuật.
• Tính an toàn hệ thống được bảo toàn do AI không truy cập trực tiếp vào thiết bị điều khiển mà chỉ hoạt động như một module phân tích bên ngoài.
• SCADA không còn cần thiết kế logic xử lý nội tại một cách cứng nhắc như trước đây. Các chương trình phân tích, điều khiển, đánh giá trạng thái - vốn trước kia phải viết sẵn theo rule cố định - nay được thay thế bằng prompt AI linh hoạt, xử lý theo ngữ cảnh và yêu cầu thực tế.
• Phần giao diện (UI) cũng trở nên đơn giản hơn: công cụ thiết kế SCADA không còn phải phụ thuộc vào thư viện đồ họa dựng sẵn, người lập trình không cần cân nhắc xem nền tảng có hỗ trợ biểu đồ gauge, biểu đồ cột, bảng động hay không - vì nội dung có thể được sinh tự động dưới dạng HTML từ phản hồi của AI.
![]() |
Kết quả của prompt: tắt tải 1 ở đồng hồ 1, đóng tải 2 ở các đồng hồ tư 11-20. |
![]() |
Kết quả của prompt: hiển thị bằng gauge chart dòng I của 6 đồng hồ đầu tiên. |
![]() |
Kết quả của Prompt: Tạo báo cáo tổng hợp năng lượng tiêu thụ của các đồng hồ 1-10. Báo cáo có bảng dữ liệu và biểu đồ kèm đánh giá. |
6. Kết luận
Tích hợp trí tuệ nhân tạo vào hệ thống SCADA không còn là một xu hướng mơ hồ mà đã trở thành giải pháp thực tiễn. Bằng cách sử dụng mô hình ngôn ngữ lớn như GPT kết hợp với dữ liệu thời gian thực từ SCADA, người vận hành có thể:
• Giao tiếp với hệ thống bằng ngôn ngữ tự nhiên.
• Phân tích dữ liệu động theo yêu cầu tùy biến.
• Hiển thị nội dung phân tích dưới dạng bảng, biểu đồ, faceplate hoặc văn bản HTML động.
• Điều khiển thiết bị một cách thông minh và linh hoạt.
Khác với mô hình AI phức tạp cần huấn luyện tại chỗ, hướng tiếp cận này sử dụng GPT như một AI Assistant Module, dễ tích hợp, dễ mở rộng và thân thiện với cả hệ SCADA hiện hữu.
Từ “hiển thị dữ liệu” đến “hiểu và phản hồi thông minh”, AI đã giúp SCADA tiến một bước gần hơn tới vai trò trợ lý vận hành số - một cột mốc thiết thực trong quá trình chuyển đổi số công nghiệp.
TS. Trương Đình Châu
Email: chau.truong@hcmut.edu.vn
![]() |
TS. Trương Đình Châu hiện đang công tác tại trường Đại học Bách khoa TP.HCM, với hơn 25 năm kinh nghiệm trong lĩnh vực hệ thống điều khiển công nghiệp và SCADA. Ông là chuyên gia hàng đầu về tự động hóa và điều khiển tại Việt Nam, tham gia tích cực vào nghiên cứu, phát triển các giải pháp tiên tiến. Ngoài ra, TS. Trương Đình Châu còn tư vấn, thiết kế và lập trình cho nhiều dự án trọng điểm trong nước, góp phần quan trọng vào sự phát triển của ngành công nghiệp tự động hóa. |