Giới thiệu dự án

Trong kỷ nguyên Công nghiệp 4.0 và Công nghiệp 5.0, động cơ không đồng bộ ba pha (Three-Phase Induction Motor) đóng vai trò là "trái tim" của hơn 70% hệ thống truyền động công nghiệp, tiêu thụ khoảng 45–50% tổng sản lượng điện năng toàn cầu (theo thống kê của Tổ chức Năng lượng Quốc tế - IEA). Tuy nhiên, khi vận hành liên tục dưới điều kiện khắc nghiệt, động cơ thường đối mặt với nguy cơ suy giảm cơ-điện, sinh nhiệt, lệch pha hoặc quá tải. Nếu không được phát hiện sớm, các hư hỏng cục bộ có thể dẫn đến sự cố ngắt dây chuyền đột ngột (unplanned downtime), gây thiệt hại trung bình từ 20.000 đến 100.000 USD mỗi giờ cho các nhà máy sản xuất tự động.

Các phương pháp bảo trì truyền thống như kiểm tra định kỳ (Preventive Maintenance) hoặc đo rung động cục bộ (Vibration Analysis) đòi hỏi thiết bị đắt đỏ và kỹ thuật viên chuyên sâu, không hỗ trợ giám sát tức thời (Real-time Monitoring). Đề tài đồ án tốt nghiệp "Chẩn đoán lỗi cho mô hình động cơ ba pha" do sinh viên Trần Thanh Toàn và Vũ Minh Trí (Đại học Sư phạm Kỹ thuật TP.HCM) thực hiện dưới sự hướng dẫn của TS. Tạ Văn Phương đã giải quyết bài toán này bằng cách kết hợp giữa điều khiển tự động hóa công nghiệp (PLC Siemens S7-1200, Biến tần PowerFlex 525, bộ điều khiển PID) và công nghệ Trí tuệ nhân tạo (Mạng nơ-ron tích chập - CNN), tích hợp giao diện giám sát trực quan (PyQt5 GUI).

                   HỆ THỐNG GIÁM SÁT & CHẨN ĐOÁN REAL-TIME
+--------------------+        Modbus RTU / RS485       +-----------------------+
|  Schneider DM6200H | <-----------------------------> | Siemens S7-1200 PLC   |
| (6 kênh dòng / áp) |                                 | (CPU 1215C + CM 1241) |
+--------------------+                                 +-----------+-----------+
                                                                   |
                                                      Ethernet/IP  | (TCP Port 102
                                                      Profinet     | via Snap7)
                                                                   v
+--------------------+        Inference (Softmax)      +-----------------------+
|  PyQt5 GUI Panel   | <-----------------------------> |  Python AI Service    |
| (Cảnh báo F081-F7) |                                 |  (1D-CNN Classifier)  |
+--------------------+                                 +-----------------------+

Mục tiêu dự án

  1. Xây dựng mô hình phần cứng tích hợp hoàn chỉnh gồm động cơ 3 pha Siemens 1LA7073-4AB10 (0.37 kW), biến tần Allen-Bradley PowerFlex 525, PLC Siemens S7-1200 CPU 1215C DC/DC/DC và đồng hồ đa năng DM6200H.
  2. Thiết kế vòng điều khiển kín tốc độ/tần số động cơ thông qua thuật toán PID Compact trên TIA Portal V16, truyền thông Modbus RTU qua module CM 1241 RS422/485.
  3. Thu thập dữ liệu vận hành điện áp đa kênh ($V_{12}, V_{23}, V_{31}$) và dòng điện 3 pha ($A_1, A_2, A_3$) tại các dải tần số 20 Hz, 30 Hz, 40 Hz, 50 Hz; xây dựng tập dữ liệu gồm 8 nhãn trạng thái (Bình thường và 7 dạng lỗi F1–F7).
  4. Huấn luyện mô hình Mạng nơ-ron tích chập (Convolutional Neural Network - CNN) phân loại đặc trưng lỗi với hàm kích hoạt ReLU, tối ưu hóa quá trình tính toán trên CPU/GPU.
  5. Lập trình giao diện HMI/SCADA trên nền tảng Python PyQt5, giao tiếp trực tiếp với PLC qua giao thức Snap7 (cổng TCP 102), thực hiện chẩn đoán lỗi thời gian thực với độ trễ dưới 50 ms.

Phạm vi và giới hạn đề tài

  • Phạm vi nghiên cứu: Tập trung vào các hư hỏng điện và bất đối xứng lưới/tải gồm: Lệch pha stator, quá tải đối xứng, quá tải không đối xứng, mất cân bằng điện áp và truy xuất mã lỗi phần cứng biến tần (F081) cùng sự cố module qua khối hàm OB82.
  • Giới hạn hệ thống: Chưa tích hợp các cảm biến chẩn đoán lỗi cơ khí sâu (nứt ổ bi bearing fault, gãy thanh dẫn rotor bar) thông qua phân tích biến đổi Wavelet dòng điện stator (MCSA - Motor Current Signature Analysis).

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Tiêu chí so sánh Rơ-le bảo vệ nhiệt / Quá dòng truyền thống Hệ thống phân tích rung động (Vibration Spectrum) Giải pháp Đề tài (PLC + 1D-CNN + Modbus/Snap7)
Cơ chế chẩn đoán Ngắt khi vượt ngưỡng cố định ($I > I_{set}$) FFT phổ tần số rung động cơ học Trích xuất đặc trưng ma trận đa kênh $(A_i, V_{ij})$ bằng CNN
Phát hiện lỗi sớm Kém (chỉ ngắt khi sự cố đã xảy ra) Tốt với lỗi cơ khí, kém với lỗi điện vi sai Rất tốt (nhận diện lệch pha, mất cân bằng vi sai < 5%)
Chi phí triển khai Rất thấp (~50 - 150 USD) Rất cao (~3.000 - 10.000 USD/máy) Trung bình (~800 - 1.500 USD), tận dụng cảm biến điện
Độ trễ chẩn đoán 500 ms - 5.000 ms (độ trễ nhiệt) Phân tích offline hoặc chu kỳ 5 - 10 giây Real-time (< 50 ms trên giao diện PyQt5)
Khả năng mở rộng Không thể cập nhật thuật toán Khó tích hợp trực tiếp vào PLC SCADA Linh hoạt, tái huấn luyện mạng CNN với lỗi mới

Yêu cầu hệ thống theo mô hình MoSCoW

  • Must have (Bắt buộc có):
    • Vòng điều khiển kín PID ổn định tốc độ động cơ 3 pha qua TIA Portal V16.
    • Giao tiếp Modbus RTU đọc dữ liệu từ đồng hồ Schneider DM6200H qua module CM 1241.
    • Mô hình CNN phân loại chính xác các trạng thái F1–F7 với độ chính xác (Accuracy) $\ge 95%$.
    • Giao diện PyQt5 hiển thị điện áp, dòng điện, đồ thị tần số và thông báo trạng thái lỗi.
  • Should have (Nên có):
    • Khả năng xuất dữ liệu vận hành theo chu kỳ ra định dạng .csv.
    • Tự động bắt lỗi phần cứng biến tần (F081 - Mất truyền thông DSI) và lỗi phần cứng PLC (OB82 Diagnostic Alarm).
  • Could have (Có thể mở rộng):
    • Module tự động reset lỗi biến tần từ xa qua giao diện PyQt5.
  • Won't have (Chưa thực hiện):
    • Triển khai đám mây (Cloud IoT AWS/Azure) để giám sát phân tán đa nhà máy.

Thiết kế hệ thống

+---------------------------------------------------------------------------------+
|                                KIẾN TRÚC HỆ THỐNG                               |
|                                                                                 |
|   +--------------------------+               +------------------------------+   |
|   |   LƯỚI ĐIỆN 3 PHA 380V   |               |         CỤM ĐỘNG LỰC         |   |
|   |  - MCB LS 2P BKN (16A)   | ------------> | - Allen-Bradley PowerFlex525 |   |
|   |  - Biến dòng HLMKP 30/5A |               | - Siemens 1LA7073 (0.37 kW)  |   |
|   +-------------+------------+               +--------------+---------------+   |
|                 |                                           ^                   |
|                 v (Tín hiệu Analog)                         | (Biến tần điều tốc)
|   +-------------+------------+   RS485 / Modbus RTU         |                   |
|   | Schneider DM6200H Meter  | ----------------------+      |                   |
|   +--------------------------+                       |      |                   |
|                                                      v      |                   |
|   +--------------------------------------------------+------+---------------+   |
|   |                         SIEMENS S7-1200 PLC                             |   |
|   |  - CPU 1215C DC/DC/DC (Firmware V4.4)                                   |   |
|   |  - Module truyền thông CM 1241 RS422/485 (MB_COMM_LOAD, MB_MASTER)     |   |
|   |  - Thuật toán điều khiển: PID_Compact (Tự chỉnh định Auto-tuning)       |   |
|   |  - Data Block DB1 (Lưu trữ 6 thanh ghi: A1, A2, A3, V12, V23, V31)      |   |
|   +------------------------------------------+------------------------------+   |
|                                              | Ethernet TCP/IP (Port 102)       |
|                                              | Giao thức Snap7 (S7Comm)         |
|                                              v                                  |
|   +------------------------------------------+------------------------------+   |
|   |                      TRẠM GIÁM SÁT PC / PYTHON CORE                     |   |
|   |  - Driver: python-snap7 (Poller chu kỳ 20ms)                            |   |
|   |  - Engine AI: TensorFlow 2.8 / Keras (Mô hình 1D-CNN Inference)         |   |
|   |  - Backend Data: NumPy, Pandas, Scikit-learn (Chuẩn hóa Min-Max/Z-Score)|   |
|   |  - Frontend: PyQt5 GUI + Matplotlib Real-time Graphing                  |   |
|   +-------------------------------------------------------------------------+   |
+---------------------------------------------------------------------------------+

Bảng thông số công nghệ và phiên bản phần mềm

  • PLC Core: Siemens S7-1200 CPU 1215C DC/DC/DC (6ES7215-1AG40-0XB0), Work Memory 125 KB, chu kỳ quét bit 0.085 $\mu s$/lệnh.
  • Truyền thông trường: Module Siemens CM 1241 RS422/485, tốc độ 9600 bps, 8 Data bits, No Parity, 1 Stop bit (8-N-1).
  • Thiết bị đo lường: Schneider Electric DM6200H, cấp chính xác Class 1.0 (Điện áp/Dòng điện), Biến dòng Himel HLMKP63030 tỉ số $30/5\text{A}$.
  • Biến tần: Rockwell Automation Allen-Bradley PowerFlex 525 (Công suất định mức 0.4 kW, dải tần số ra $0 - 400\text{ Hz}$).
  • Động cơ: Siemens 1LA7073-4AB10, $P = 0.37\text{ kW}$, $V = 230/400\text{V} (\Delta/Y)$, $I = 1.9/1.1\text{A}$, $n = 1370\text{ RPM}$, $\cos\varphi = 0.77$.
  • Môi trường phát triển: TIA Portal V16, Python 3.8.10, PyQt5 (v5.15.4), TensorFlow (v2.8.0), python-snap7 (v1.1).

Phương pháp nghiên cứu và quy trình triển khai

Quy trình phát triển đồ án được thực hiện theo chu trình xoắn ốc (Spiral Model) kết hợp các mốc kỹ thuật:

  1. Giai đoạn 1 (Hardware Rigging & Safety): Thiết kế tủ điện, đấu nối bảo vệ liên động MCB, contactor, biến trở xả, rơ-le nhiệt và tải điện trở công suất 100W (10 $\Omega$ và 20 $\Omega$) giả lập lỗi lệch pha.
  2. Giai đoạn 2 (Automation & Control): Lập trình cấu hình PLC đọc Modbus RTU thông qua các Function Block MB_COMM_LOADMB_MASTER; cấu hình vòng lặp PID Compact hiệu chỉnh tần số ngõ ra biến tần.
  3. Giai đoạn 3 (Data Acquisition & Labelling): Thu thập 12.000 mẫu dữ liệu dòng áp qua biến tần ở các tần số 20 Hz, 30 Hz, 40 Hz, 50 Hz; phân tách tập huấn luyện (Train 70%), kiểm thử (Test 15%) và xác thực (Validation 15%).
  4. Giai đoạn 4 (Deep Learning Model Design): Xây dựng cấu trúc mạng 1D-CNN trên Keras, kiểm chứng các hàm kích hoạt ReLU, Sigmoid, Tanh và đo đạc tốc độ hội tụ.
  5. Giai đoạn 5 (System Integration & GUI): Tích hợp thư viện snap7 vào luồng Threading của PyQt5 để đọc Data Block từ PLC, đưa vector đặc trưng vào mô hình CNN và cảnh báo lên giao diện.

Implementation và kết quả

Quá trình phát triển và chi tiết thuật toán

1. Lập trình vòng điều khiển kín PID trên TIA Portal V16

Bộ điều khiển PID điều chỉnh tần số tham chiếu cấp cho biến tần dựa trên sai số giữa tốc độ/tần số đặt ($SP$) và phản hồi thực tế ($PV$):

$$u(t) = K_p e(t) + K_i \int_{0}^{t} e(\tau)d\tau + K_d \frac{de(t)}{dt}$$

// Cấu hình khối hàm MB_COMM_LOAD và MB_MASTER đọc thanh ghi DM6200H
"MB_COMM_LOAD_DB"(
    REQ := "FirstScan",
    "PORT" := 269,           // Hardware ID của CM1241
    BAUD := 9600,
    PARITY := 0,             // No parity
    FLOW_CTRL := 0,
    RTS_ON_DLY := 0,
    RTS_OFF_DLY := 0,
    RESP_TO := 1000,
    MB_DB := "MB_MASTER_DB"
);

"MB_MASTER_DB"(
    REQ := "Clock_5Hz",      // Đọc tuần hoàn chu kỳ 200ms
    MB_ADDR := 1,            // Modbus ID của DM6200H
    MODE := 0,               // 0: Read Holding Registers
    DATA_ADDR := 43914,      // Địa chỉ thanh ghi dòng A1, A2, A3, V12, V23, V31
    DATA_LEN := 12,          // 12 thanh ghi (6 giá trị Float 32-bit)
    DATA_PTR := P#DB1.DBX0.0 BYTE 24
);

2. Lập trình thu thập dữ liệu tự động và kết nối Snap7 bằng Python

Sử dụng giao thức truyền thông S7Comm để trích xuất trực tiếp vùng nhớ Data Block DB1 từ PLC S7-1200 qua cổng mạng Ethernet RJ45:

import snap7
from snap7.util import get_real
import numpy as np
import time

class PLCDataReader:
    def __init__(self, ip_address='192.168.0.1', rack=0, slot=1):
        self.client = snap7.client.Client()
        self.ip = ip_address
        self.rack = rack
        self.slot = slot
        self.connect()

    def connect(self):
        try:
            self.client.connect(self.ip, self.rack, self.slot)
            print(f"Connected to PLC S7-1200 at {self.ip}")
        except Exception as e:
            print(f"PLC Connection Error: {str(e)}")

    def read_metrics(self, db_number=1, start_offset=0, size=24):
        """
        Đọc 6 thông số đo từ DB1: [A1, A2, A3, V12, V23, V31]
        Mỗi giá trị kiểu REAL chiếm 4 bytes
        """
        data = self.client.db_read(db_number, start_offset, size)
        a1  = get_real(data, 0)
        a2  = get_real(data, 4)
        a3  = get_real(data, 8)
        v12 = get_real(data, 12)
        v23 = get_real(data, 16)
        v31 = get_real(data, 20)
        return np.array([a1, a2, a3, v12, v23, v31], dtype=np.float32)

3. Cấu trúc mạng nơ-ron tích chập (1D-CNN) chẩn đoán lỗi

Dữ liệu đầu vào là vector tín hiệu $\mathbf{X} \in \mathbb{R}^{6 \times 1}$. Mạng 1D-CNN gồm các lớp Conv1D để trích xuất mối tương quan giữa dòng và áp liên pha, kết hợp MaxPooling1D, BatchNormalization và Dense Layer.

import tensorflow as tf
from tensorflow.keras import layers, models

def build_motor_fault_cnn(input_shape=(6, 1), num_classes=8):
    model = models.Sequential([
        # Lớp tích chập thứ nhất
        layers.Conv1D(filters=32, kernel_size=2, padding='same', activation='relu', input_shape=input_shape),
        layers.BatchNormalization(),
        layers.MaxPooling1D(pool_size=2),
        
        # Lớp tích chập thứ hai
        layers.Conv1D(filters=64, kernel_size=2, padding='same', activation='relu'),
        layers.BatchNormalization(),
        
        # Lớp phẳng hóa và phân loại
        layers.Flatten(),
        layers.Dense(64, activation='relu'),
        layers.Dropout(0.2),
        layers.Dense(num_classes, activation='softmax') # 8 nhãn trạng thái (Normal, F1..F7)
    ])
    
    model.compile(
        optimizer=tf.keras.optimizers.Adam(learning_rate=0.001),
        loss='categorical_crossentropy',
        metrics=['accuracy']
    )
    return model
          KIẾN TRÚC MẠNG NƠ-RON TÍCH CHẬP (1D-CNN)
+----------------------------------------------------------------+
| Vector Input: [A1, A2, A3, V12, V23, V31] (Shape: 6x1)         |
+-------------------------------+--------------------------------+
                                |
                                v
+-------------------------------+--------------------------------+
| Conv1D (32 Filters, Kernel=2, Activation=ReLU)                 |
+-------------------------------+--------------------------------+
                                |
                                v
+-------------------------------+--------------------------------+
| Batch Normalization + MaxPooling1D (Pool Size=2)               |
+-------------------------------+--------------------------------+
                                |
                                v
+-------------------------------+--------------------------------+
| Conv1D (64 Filters, Kernel=2, Activation=ReLU)                 |
+-------------------------------+--------------------------------+
                                |
                                v
+-------------------------------+--------------------------------+
| Flatten Layer -> Dense (64 Nodes, ReLU) -> Dropout (0.2)       |
+-------------------------------+--------------------------------+
                                |
                                v
+-------------------------------+--------------------------------+
| Output Layer: Dense (8 Nodes, Softmax -> P(Normal), P(F1)..F7) |
+----------------------------------------------------------------+

Thử nghiệm và đánh giá kết quả

Hệ thống được vận hành thực nghiệm trên mô hình tại Phòng thí nghiệm Điều khiển & Tự động hóa - HCMUTE với 4 mức tần số tham chiếu: $20\text{ Hz}, 30\text{ Hz}, 40\text{ Hz}$ và $50\text{ Hz}$. Các trạng thái sự cố F1–F7 được giả lập qua tổ hợp đóng cắt rơ-le trung gian nối tải điện trở $10\ \Omega$ và $20\ \Omega$ trên các pha.

Bảng kết quả phân loại lỗi trên tập kiểm thử (Test Set)

Mã lỗi Mô tả trạng thái giả lập Dòng điện pha (A1, A2, A3) [A] Điện áp dây ($V_{12}, V_{23}, V_{31}$) [V] Độ chính xác (Accuracy)
Normal Vận hành bình thường không tải/tải chuẩn $(0.42, 0.43, 0.41) \pm 0.02$ $(381, 380, 382) \pm 2$ 99.4%
F1 Lệch pha A (Đóng tải trở $20\ \Omega$ pha A) $(0.88, 0.44, 0.42) \pm 0.03$ $(378, 381, 376) \pm 3$ 98.7%
F2 Lệch pha B (Đóng tải trở $10\ \Omega$ pha B) $(0.43, 1.25, 0.42) \pm 0.04$ $(375, 374, 382) \pm 3$ 98.2%
F3 Lệch pha C (Đóng tải trở $10\ \Omega + 20\ \Omega$ pha C) $(0.42, 0.45, 1.68) \pm 0.05$ $(380, 372, 373) \pm 4$ 97.9%
F4 Quá tải đối xứng mức 1 ($R_{load} = 20\ \Omega$ 3 pha) $(0.92, 0.91, 0.93) \pm 0.03$ $(374, 375, 373) \pm 2$ 99.1%
F5 Quá tải đối xứng mức 2 ($R_{load} = 10\ \Omega$ 3 pha) $(1.45, 1.43, 1.47) \pm 0.04$ $(368, 369, 367) \pm 3$ 98.5%
F6 Lệch áp nguồn cấp và mất cân bằng pha A-B $(1.15, 1.10, 0.43) \pm 0.04$ $(355, 378, 362) \pm 5$ 97.6%
F7 Sự cố bất đối xứng nghiêm trọng đa pha $(1.52, 0.38, 1.41) \pm 0.06$ $(350, 365, 358) \pm 6$ 97.1%

Đánh giá hàm kích hoạt và hiệu năng huấn luyện

  • ReLU: Đạt tốc độ hội tụ sau 35 epochs, hàm mất mát Loss giảm xuống mức 0.034, độ chính xác trung bình toàn hệ thống đạt 98.34%. Tốc độ tính toán nhanh hơn 5.8 lần so với hàm Sigmoid và Tanh do không chứa hàm số mũ phức tạp $\exp(-x)$.
  • Sigmoid / Tanh: Xuất hiện hiện tượng triệt tiêu đạo hàm (Vanishing Gradient) ở các lớp sâu, tốc độ hội tụ chậm (cần trên 120 epochs) và độ chính xác chỉ đạt mức 91.2% - 93.5%.
LOSS & ACCURACY BENCHMARK SAU 50 EPOCHS
Accuracy: [========================================] 98.34% (ReLU)
Loss:     [===                                     ] 0.0340 (Categorical Crossentropy)
Latency:  [==                                      ] 18.5 ms (Snap7 Read + CNN Inference)

Đổi mới và đóng góp

  1. Kiến trúc tích hợp Hybrid (OT + IT): Đồ án kết nối thành công tầng điều khiển thiết bị cấp thấp (Operational Technology - PLC S7-1200, Modbus RTU, PowerFlex 525) với tầng Trí tuệ nhân tạo cấp cao (Information Technology - Python, Keras CNN, Snap7 Ethernet) tạo nên một mô hình Cyber-Physical System hoàn chỉnh.
  2. Loại bỏ sự phụ thuộc vào cảm biến cơ khí đắt tiền: Thay vì lắp đặt các cảm biến gia tốc rung động (Piezoelectric Accelerometer) có giá thành cao và khó gá đặt trên thân máy, hệ thống tận dụng trực tiếp 6 kênh thông số điện áp và dòng điện từ đồng hồ đo công nghiệp DM6200H để nhận dạng chính xác tới 7 trạng thái lỗi phức tạp.
  3. Chẩn đoán sự cố kép (Phần cứng + Thuật toán): Tích hợp đồng thời khả năng đọc mã lỗi nhà sản xuất biến tần (Fault F081 - DSI Port Loss, F004 - UnderVoltage) và lỗi phần mềm thời gian thực bằng mạng học sâu.
  4. Tối ưu hóa thời gian trích xuất đặc trưng: Ứng dụng mạng tích chập 1 chiều (1D-CNN) giúp hệ thống tự động học các mẫu quan hệ phi tuyến giữa dòng và áp thay vì phải trích xuất thủ công các thông số thống kê (Mean, Kurtosis, Skewness, Crest Factor) như các thuật toán Machine Learning cổ điển (SVM, Random Forest).

Ứng dụng thực tế và triển khai

Kịch bản triển khai công nghiệp

  • Dây chuyền băng tải nhà máy chế biến/xi măng: Động cơ thường xuyên làm việc trong môi trường bụi bẩn, quá tải cơ học gây lệch dòng stator. Hệ thống giúp phát hiện sự cố tăng nhiệt và mất cân bằng pha trước khi cháy cuộn dây.
  • Trạm bơm cấp nước và quạt thông gió công nghiệp: Giám sát liên tục điện áp lưới cấp cho động cơ, ngăn ngừa tình trạng sụt áp nguồn kéo theo mất đối xứng dòng điện làm giảm tuổi thọ cách điện stator.
                            LỘ TRÌNH TRIỂN KHAI HỆ THỐNG
 [Tháng 1 - 2]                 [Tháng 3 - 4]                  [Tháng 5 - 6]
+--------------------------+  +--------------------------+   +--------------------------+
|  Khảo sát & Tích hợp     |  |  Thu thập Data & Train   |   |  Triển khai SCADA & Pilot|
| - Gắn CT Himel 30/5A     |  | - Thu thập 50.000 mẫu    |   | - Nhúng PyQt5 / Web UI   |
| - Kết nối DM6200H RS485  |  | - Huấn luyện mô hình CNN |   | - Chạy thử nghiệm 30 ngày|
| - Cấu hình S7-1200 PLC   |  | - Đạt Accuracy >= 98%    |   | - Bàn giao bảo trì dự đoán|
+--------------------------+  +--------------------------+   +--------------------------+

Phân tích hiệu quả kinh tế (ROI)

  • Chi phí đầu tư phần cứng bổ sung (Đồng hồ DM6200H + Biến dòng + Bộ chuyển đổi RS485 + Mini PC chạy Python): Khoảng 15.000.000 - 22.000.000 VNĐ.
  • Lợi ích kinh tế: Giảm thiểu trung bình 1–2 lần sự cố dừng máy ngoài kế hoạch mỗi năm trên mỗi cụm truyền động chính; tiết kiệm chi phí quấn lại động cơ (từ 5.000.000 đến 12.000.000 VNĐ/lần đối với động cơ trung bình) và thiệt hại gián đoạn sản xuất (ước tính 50.000.000 - 200.000.000 VNĐ/năm). Thời gian thu hồi vốn (Payback Period) ước tính từ 3 đến 6 tháng.

Hạn chế và hướng phát triển

Hạn chế kỹ thuật

  • Dữ liệu thu thập hiện tại chủ yếu dựa trên các lỗi giả lập thông qua điện trở công suất 100W đóng nối tiếp/song song với cuộn dây, chưa bao quát được toàn bộ các dạng lỗi suy hao điện cơ phức tạp trong thực tế như mòn ổ bi, lệch trục (misalignment) hay chạm chập từng vòng dây (Inter-turn short circuit).
  • Hệ thống giao diện PyQt5 hiện chạy cục bộ trên một máy tính trạm kết nối LAN, chưa hỗ trợ kiến trúc phân tán đa điểm (Microservices) hoặc giao thức IoT công nghiệp hiện đại như MQTT, OPC UA.

Hướng nghiên cứu mở rộng

  • Tích hợp OPC UA Server trên PLC S7-1200: Chuyển đổi phương thức đọc Snap7 sang chuẩn OPC UA công nghiệp để nâng cao tính bảo mật, tương thích với hệ thống MES/ERP của nhà máy.
  • Mô hình học sâu kết hợp (Hybrid Deep Learning): Kết hợp mạng CNN trích xuất đặc trưng không gian với mạng LSTM (Long Short-Term Memory) để phân tích chuỗi thời gian, giúp dự báo thời gian còn lại trước khi xảy ra sự cố (RUL - Remaining Useful Life).
  • Triển khai biên (Edge AI): Tối ưu hóa mô hình CNN bằng TensorFlow Lite hoặc TensorRT để nhúng trực tiếp lên các vi máy tính công nghiệp như Raspberry Pi 4 Compute Module hoặc NVIDIA Jetson Nano gá trực tiếp trên tủ điện.

Đối tượng hưởng lợi

  • Sinh viên ngành Kỹ thuật Điều khiển & Tự động hóa, Cơ điện tử: Tiếp cận giáo trình thực hành chuyên sâu kết hợp giữa kỹ năng lập trình PLC (TIA Portal, Modbus, PID) và kỹ năng lập trình Python AI/Data Science.
  • Kỹ sư bảo trì và tự động hóa nhà máy: Sở hữu thiết kế tham chiếu (Reference Architecture) chi phí thấp để nâng cấp các tủ điều khiển động cơ cũ thành hệ thống bảo trì dự đoán thông minh.
  • Doanh nghiệp sản xuất: Giảm thiểu chi phí dừng máy đột ngột, tối ưu hóa chu kỳ bảo dưỡng thiết bị và kéo dài tuổi thọ động cơ điện công nghiệp.
  • Nhóm nghiên cứu học thuật: Cung cấp bộ phương pháp luận và dữ liệu thực nghiệm về việc áp dụng mạng nơ-ron tích chập trên tín hiệu dòng điện/điện áp đa kênh trong môi trường công nghiệp.

Câu hỏi thường gặp (FAQ)

1. Yêu cầu phần cứng và phần mềm tối thiểu để triển khai giải pháp này là gì?

Hệ thống yêu cầu tối thiểu:

  • Phần cứng: 01 PLC Siemens S7-1200 (CPU 1211C trở lên có module CM 1241 RS485), 01 đồng hồ đo năng lượng hỗ trợ Modbus RTU (như Schneider DM6200H hoặc Selec MFM383A), 03 biến dòng tỉ lệ phù hợp với công suất động cơ, 01 máy tính trạm Core i3 RAM 4GB có cổng Ethernet.
  • Phần mềm: TIA Portal V14 trở lên, Python 3.8+ với các thư viện snap7, tensorflow, numpy, PyQt5.

2. Mô hình CNN xử lý tín hiệu 1D (dòng/áp) có ưu thế gì so với xử lý ảnh phổ 2D?

Việc sử dụng trực tiếp vector tín hiệu 6 kênh dòng áp dạng 1D giúp giảm kích thước tham số mạng từ hàng triệu weights (đối với ảnh 2D spectrogram) xuống còn dưới 50.000 tham số. Điều này giúp thời gian suy luận (Inference Time) chỉ mất khoảng 1.2 ms, cho phép chạy mượt mà trên các CPU công nghiệp tiêu chuẩn mà không đòi hỏi GPU đắt tiền.

3. Giao thức Snap7 kết nối với PLC S7-1200 có an toàn và ổn định trong môi trường công nghiệp không?

Snap7 là thư viện mã nguồn mở giao tiếp trực tiếp qua giao thức S7Comm trên cổng TCP Port 102. Để hệ thống hoạt động ổn định và an toàn, cần bật cấu hình "Permit access with PUT/GET communication from remote partner" trong thuộc tính CPU trên TIA Portal và thiết lập khối Data Block ở chế độ "Non-optimized block access". Đối với môi trường công nghiệp yêu cầu an ninh cao, nên thiết lập mạng LAN ảo (VLAN) cách ly giữa máy trạm và mạng điều khiển.

4. Khi động cơ thay đổi tải hoặc vận hành ở tần số khác, hệ thống có cần huấn luyện lại không?

Đồ án đã thu thập dữ liệu tại 4 dải tần số đặc trưng (20 Hz, 30 Hz, 40 Hz, 50 Hz) để huấn luyện mạng CNN nhận diện quy luật trượt tốc độ và thay đổi dòng tải. Tuy nhiên, nếu động cơ vận hành với các loại tải có tính chất thay đổi đột ngột (tải phi tuyến, tải va đập), nên bổ sung thêm mẫu dữ liệu của dải tải đó vào tập Train và thực hiện Fine-tuning (huấn luyện bổ sung) để duy trì độ chính xác trên 98%.

5. Chi phí ước tính và thời gian thu hồi vốn (ROI) cho một hệ thống thực tế là bao nhiêu?

Chi phí vật tư dao động từ 15 đến 22 triệu VNĐ cho một trạm giám sát độc lập. Với các nhà máy quy mô vừa có từ 10 - 20 động cơ công suất lớn (15 kW - 75 kW), việc ngăn chặn được 01 sự cố cháy động cơ hoặc ngắt chuyền đột ngột sẽ giúp tiết kiệm từ 50 đến 200 triệu VNĐ, mang lại thời gian thu hồi vốn chỉ trong vòng 3 đến 6 tháng vận hành.


Kết luận

Đề tài đồ án tốt nghiệp "Chẩn đoán lỗi cho mô hình động cơ ba pha" của nhóm sinh viên Trần Thanh Toàn và Vũ Minh Trí, dưới sự hướng dẫn khoa học của TS. Tạ Văn Phương (HCMUTE), đã hiện thực hóa thành công giải pháp giám sát và bảo trì dự đoán toàn diện cho động cơ không đồng bộ ba pha. Bằng sự kết hợp chặt chẽ giữa kỹ thuật tự động hóa truyền thống (PLC S7-1200, biến tần PowerFlex 525, điều khiển PID, mạng truyền thông Modbus RTU/RS485) và công nghệ trí tuệ nhân tạo hiện đại (Mạng nơ-ron tích chập CNN, giao thức Snap7, giao diện PyQt5), hệ thống đạt độ chính xác chẩn đoán vượt trội 98.34% với độ trễ phản hồi thời gian thực dưới 50 ms.

Nghiên cứu không chỉ khẳng định tính khả thi cao trong việc chuyển đổi số các hệ thống tự động hóa công nghiệp hiện hữu mà còn cung cấp một nền tảng mở cho các kỹ sư và nhà nghiên cứu tiếp tục phát triển các thuật toán Edge AI, hướng tới nền công nghiệp sản xuất thông minh, tin cậy và bền vững.