Giới thiệu dự án

Trong bối cảnh công nghiệp 4.0 và chuyển đổi số trong sản xuất thông minh, các dây chuyền phân loại và đóng gói sản phẩm đòi hỏi tốc độ cao, độ chính xác tuyệt đối và khả năng hoạt động liên tục 24/7. Theo các báo cáo thống kê ngành tự động hóa (FMCG & Logistics), khâu phân loại thủ công chiếm từ 30% đến 40% tổng chi phí nhân công đóng gói, đồng thời là nút thắt cổ chai (bottleneck) làm suy giảm năng suất toàn hệ thống từ 15% đến 25% do sai sót do mỏi cơ sinh học và tốc độ nhận diện hạn chế của con người.

Vấn đề cốt lõi đặt ra là xây dựng một hệ thống phân loại tự động tốc độ cao có khả năng thay thế con người trong các tác vụ lặp đi lặp lại với chi phí triển khai tối ưu. Đề tài "Ứng dụng PLC điều khiển Robot Delta phân loại sản phẩm theo màu" được thực hiện nhằm giải quyết trực tiếp bài toán này bằng cách kết hợp cơ cấu động học song song Delta Robot, nền tảng điều khiển thời gian thực PLC Siemens S7-1200 và hệ thống thị giác máy tính (Computer Vision) xử lý hình ảnh dựa trên thư viện EmguCV.

                  +-----------------------------------+
                  |      Web Camera 5MP (Vision)      |
                  +-----------------+-----------------+
                                    | USB 2.0 (Video Stream)
                                    v
+--------------+  OPC KEPServerEX   +-----------------+
|  SQL Server  |<==================>| PC Application  |
|  (Database)  |   (S7 Protocol)    |  (C# WinForms / |
+--------------+                    |     EmguCV)     |
                                    +--------+--------+
                                             | Ethernet (PROFINET / TCP/IP Port 102)
                                             v
                                    +-----------------+
                                    |  PLC S7-1200    |
                                    | (CPU 1212C DC)  |
                                    +---+-----+---+---+
                         PTO Pulses /   |     |   \ PTO Pulses
                         Direction      |     |    \
                                        v     v     v
                       +---------------------------------------+
                       |   3x Driver TB6600 & Stepper Motors   |
                       |       (Trục 1, Trục 2, Trục 3)        |
                       +-------------------+-------------------+
                                           | Cơ cấu động học
                                           v
                       +---------------------------------------+
                       | Robot Delta 3-DOF + Giác hút khí nén  |
                       +---------------------------------------+

Mục tiêu dự án

  1. Thiết kế và thi công cơ khí mô hình Robot Delta 3 bậc tự do (3-DOF): Tối ưu hóa kích thước hình học gồm bàn máy cố định $F$, bàn máy động $E$, cánh tay chủ động $F_iJ_i$ ($r_f$) và cánh tay bị động hình bình hành $J_iE_i$ ($r_e$).
  2. Xây dựng giải thuật động học Robot: Tính toán giải tích toàn diện bài toán động học thuận (Forward Kinematics) và động học nghịch (Inverse Kinematics) để ánh xạ chính xác không gian tọa độ Descartes ($X, Y, Z$) sang không gian góc quay của khớp ($\theta_1, \theta_2, \theta_3$).
  3. Phát triển module thị giác máy tính trên PC: Nhận diện màu sắc (Đỏ, Xanh lá, Xanh lam) trong không gian màu HSV, trích xuất tâm vật thể thông qua Spatial Moments và xấp xỉ đường bao bằng thuật toán Ramer-Douglas-Peucker (Approximation Contour).
  4. Xây dựng hệ thống điều khiển chuyển động thời gian thực bằng PLC S7-1200: Cấu hình Technology Object, phát xung PTO (Pulse Train Output) tần số cao điều khiển 3 động cơ bước thông qua Driver TB6600, kết hợp đồng bộ hóa với băng tải thông qua Encoder và bộ đếm tốc độ cao HSC (High-Speed Counter).
  5. Thiết lập giao thức truyền thông đồng bộ PC - PLC - SQL: Giao tiếp thời gian thực qua chuẩn OPC Server (KEPServerEX) và lưu trữ dữ liệu phân loại vào cơ sở dữ liệu Microsoft SQL Server.

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

  • Phạm vi đối tượng: Phân loại các khối vật thể hình học cơ bản có 3 màu sắc tiêu chuẩn (Đỏ, Xanh lục, Xanh lam) di chuyển trên băng tải phẳng với vận tốc điều chỉnh được từ $0.05 \text{ m/s}$ đến $0.2 \text{ m/s}$.
  • Giới hạn kỹ thuật: Góc chiếu sáng được cố định trong buồng quan sát để hạn chế sai lệch phân ngưỡng HSV; hệ thống chấp hành sử dụng động cơ bước vòng hở (Open-loop Stepper Motor) điều khiển qua vi bước Microstep Driver TB6600 thay vì AC Servo công nghiệp công suất lớn.

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

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

Trong sản xuất công nghiệp, các giải pháp phân loại sản phẩm phổ biến gồm Robot Scara, Robot tọa độ Descartes (Cartesian Gantry) và phân loại cơ điện sử dụng cảm biến màu quang học kết hợp xilanh gạt khí nén.

Tiêu chí so sánh Cảm biến màu + Xilanh gạt Robot Scara 4-DOF Robot Cartesian (XYZ) Robot Delta + Computer Vision (Đề tài)
Tốc độ làm việc (PPM) 20 – 30 sản phẩm/phút 50 – 70 sản phẩm/phút 25 – 40 sản phẩm/phút 80 – 120 sản phẩm/phút
Độ linh hoạt tọa độ Cố định 1 vị trí Tốt trong mặt phẳng XY Di chuyển tuyến tính chậm Cực cao (Không gian 3D cầu)
Khối lượng cơ cấu động Cố định Nặng (Động cơ gắn trên khớp) Nặng (Mang tải trọng trục) Siêu nhẹ (Động cơ gắn cố định tại đế)
Chi phí đầu tư Thấp ($< 15$ triệu VNĐ) Rất cao ($> 150$ triệu VNĐ) Trung bình (30 – 50 triệu VNĐ) Tối ưu (20 – 35 triệu VNĐ)
Khả năng nhận diện Chỉ nhận biết màu tĩnh Cần gắn thêm camera Cần gắn thêm camera Xác định tọa độ, góc xoay và màu thực tế

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

  • Must have: Giải thuật động học nghịch chính xác; thuật toán nhận diện màu và tâm hình học $C_x, C_y$; điều khiển phát xung PTO độc lập 3 trục; cơ chế hồi gốc tọa độ (Homing); cơ cấu hút phôi chân không.
  • Should have: Giao diện SCADA/WinForms giám sát tọa độ thời gian thực; ghi log cơ sở dữ liệu SQL; tính năng Jerk Limiting làm mịn quỹ đạo chuyển động; điều tốc băng tải qua biến tần/PWM.
  • Could have: Tự động tracking theo băng tải liên tục (Conveyor Tracking On-The-Fly); bộ lọc nhiễu thích nghi ánh sáng môi trường.
  • Won't have (lần này): Nhận diện vật thể 3D phức tạp bằng mạng nơ-ron Deep Learning; trục xoay thứ 4 (Yaw Axis).

Thiết kế hệ thống

+--------------------------------------------------------------------------------+
|                                    PC LAYER                                    |
|  +---------------------------+                     +------------------------+  |
|  |   EmguCV Image Engine     |                     |    C# WinForms GUI     |  |
|  |  - HSV InRange Filtering  |  Target Coordinates |  - Manual / Auto Mode  |  |
|  |  - Morphological Ops      |-------------------->|  - Kinematics Engine   |  |
|  |  - Spatial Moments (X, Y) |      (X, Y, Z)      |  - Database Logging    |  |
|  +---------------------------+                     +-----------+------------+  |
+----------------------------------------------------------------|---------------+
                                                                 | OPC KEPServerEX
+----------------------------------------------------------------|---------------+
|                                CONTROL LAYER (PLC)             v               |
|  +--------------------------------------------------------------------------+  |
|  | Siemens S7-1200 (CPU 1212C DC/DC/DC)                                     |  |
|  |  - Axis 1 TO: PTO 1 (Q0.0 Pulse / Q0.1 Dir)                              |  |
|  |  - Axis 2 TO: PTO 2 (Q0.2 Pulse / Q0.3 Dir)                              |  |
|  |  - Axis 3 TO: PTO 3 (Q0.4 Pulse / Q0.5 Dir)                              |  |
|  |  - High Speed Counter HSC1 (I0.0 / I0.1) <--- Incremental Encoder         |  |
|  |  - SM 1222 Relay Outputs: Băng tải, Bơm chân không, Van xả khí          |  |
|  +--------------------------------------------------------------------------+  |
+--------------------------------------------------------------------------------+

Technology Stack & Hardware Specifications

  • Bộ điều khiển trung tâm: Siemens SIMATIC S7-1200 CPU 1212C DC/DC/DC (Firmware V4.2, 6ES7212-1AE40-0XB0), tích hợp 2 ngõ vào Analog (0-10V), 8 ngõ vào Digital (24VDC), 6 ngõ ra Digital Transistor (hỗ trợ phát xung PTO lên tới 100 kHz trên các kênh Q0.0 – Q0.3 và 30 kHz trên Q0.4 – Q0.5).
  • Module mở rộng: Signal Module SM 1222 DQ 8xRelay/2A (6ES7222-1HF32-0XB0) cách ly quang hoàn toàn.
  • Driver & Động cơ: 3x Stepper Motor NEMA 23 kết hợp 3x Microstep Driver TB6600 (Điện áp 9–42VDC, dòng định mức 4.0A, cài đặt vi bước 1/8 hoặc 1/16 step).
  • Cảm biến & Khí nén: Cảm biến quang phát hiện phôi; 3x công tắc hành trình cơ khí KW11 làm cảm biến vị trí chuẩn Homing; Bơm hút chân không 24VDC kèm van điện từ xả áp khí nén.
  • Phần mềm & Thư viện:
    • Siemens TIA Portal V15 (Step 7 Professional & WinCC Advanced).
    • Microsoft Visual Studio 2019 (.NET Framework 4.7.2, C# WinForms).
    • EmguCV Library v4.2.0 (C# .NET wrapper cho OpenCV).
    • KEPServerEX v6.5 (Giao thức Siemens TCP/IP Ethernet Driver).
    • Microsoft SQL Server 2019 Express.

Implementation và kết quả

Development process

1. Xây dựng phương trình Động học Nghịch (Inverse Kinematics)

Để di chuyển đầu công tác $E(x_0, y_0, z_0)$ đến vị trí mong muốn, hệ thống cần tính toán chính xác góc quay $\theta_1, \theta_2, \theta_3$ của 3 cánh tay chủ động.

Xét nhánh thứ nhất nằm trong mặt phẳng $YZ$:

  • Tọa độ khớp $F_1$: $$F_1 = \left(0, -\frac{f}{2\sqrt{3}}, 0\right)$$
  • Tọa độ khớp $E_1$ chiếu lên mặt phẳng $YZ$: $$E_1 = \left(x_0, y_0 - \frac{e}{2\sqrt{3}}, z_0\right) \implies E'_1 = \left(0, y_0 - \frac{e}{2\sqrt{3}}, z_0\right)$$
  • Bán kính hiệu dụng của cánh tay bị động trong mặt phẳng chiếu: $$(E'_1J_1)^2 = r_e^2 - x_0^2$$
  • Tọa độ khớp $J_1(0, y_{J1}, z_{J1})$ là giao điểm của hai đường tròn tâm $F_1$ bán kính $r_f$ và tâm $E'1$ bán kính $\sqrt{r_e^2 - x_0^2}$: $$\begin{cases} \left(y{J1} + \frac{f}{2\sqrt{3}}\right)^2 + z_{J1}^2 = r_f^2 \ \left(y_{J1} - y_0 + \frac{e}{2\sqrt{3}}\right)^2 + (z_{J1} - z_0)^2 = r_e^2 - x_0^2 \end{cases}$$
  • Tính toán góc khớp $\theta_1$: $$\theta_1 = \arctan\left(\frac{z_{J1}}{y_{F1} - y_{J1}}\right)$$

Đối với các góc $\theta_2$ và $\theta_3$, hệ tọa độ được quay quanh trục $Z$ một góc lần lượt là $120^\circ$ và $240^\circ$ thông qua ma trận biến đổi tọa độ đồng nhất:

$$R_z(\alpha) = \begin{bmatrix} \cos\alpha & -\sin\alpha & 0 \ \sin\alpha & \cos\alpha & 0 \ 0 & 0 & 1 \end{bmatrix}$$

// Thuật toán tính Động học nghịch Delta Robot viết bằng C# .NET
public int DeltaInverseKinematics(double x0, double y0, double z0, out double theta1, out double theta2, out double theta3)
{
    theta1 = theta2 = theta3 = 0;
    int status = CalculateAngleYZ(x0, y0, z0, out theta1);
    if (status == 0)
    {
        // Xoay hệ trục +120 độ cho nhánh 2
        double x1 = x0 * Math.Cos(2.0 * Math.PI / 3.0) + y0 * Math.Sin(2.0 * Math.PI / 3.0);
        double y1 = -x0 * Math.Sin(2.0 * Math.PI / 3.0) + y0 * Math.Cos(2.0 * Math.PI / 3.0);
        status = CalculateAngleYZ(x1, y1, z0, out theta2);
    }
    if (status == 0)
    {
        // Xoay hệ trục -120 độ cho nhánh 3
        double x2 = x0 * Math.Cos(2.0 * Math.PI / 3.0) - y0 * Math.Sin(2.0 * Math.PI / 3.0);
        double y2 = x0 * Math.Sin(2.0 * Math.PI / 3.0) + y0 * Math.Cos(2.0 * Math.PI / 3.0);
        status = CalculateAngleYZ(x2, y2, z0, out theta3);
    }
    return status; // Trả về 0 nếu tọa độ hợp lệ, -1 nếu ngoài vùng làm việc
}

2. Pipeline Xử lý ảnh với EmguCV & Trích xuất tọa độ

Luồng xử lý thị giác máy tính diễn ra qua các bước:

  1. Thu nhận ảnh: Camera 5MP ghi nhận frame hình ảnh độ phân giải $640 \times 480 \text{ px}$.
  2. Chuyển đổi không gian màu: Chuyển từ BGR sang HSV (CvInvoke.CvtColor(frame, hsvImage, ColorConversion.Bgr2Hsv)).
  3. Phân ngưỡng nhị phân: Sử dụng CvInvoke.InRange với các ngưỡng màu thực nghiệm:
    • Đỏ: $H \in [0, 10] \cup [160, 180], S \in [100, 255], V \in [100, 255]$.
    • Xanh lục: $H \in [35, 85], S \in [100, 255], V \in [100, 255]$.
    • Xanh lam: $H \in [100, 140], S \in [100, 255], V \in [100, 255]$.
  4. Khử nhiễu hình thái học (Morphology): Áp dụng phép toán Co (Erode) và Giãn (Dilate) 2 chu kỳ với phần tử cấu trúc kích thước $8 \times 8 \text{ px}$ để loại bỏ nhiễu biên và làm liền mạch bề mặt.
  5. Tìm Contours & Tính Moments:
// Trích xuất tâm đối tượng và diện tích từ ảnh nhị phân
using (VectorOfVectorOfPoint contours = new VectorOfVectorOfPoint())
{
    Mat hierarchy = new Mat();
    CvInvoke.FindContours(binaryMask, contours, hierarchy, RetrType.Ccomp, ChainApproxMethod.ChainApproxSimple);
    
    for (int i = 0; i < contours.Size; i++)
    {
        double area = CvInvoke.ContourArea(contours[i]);
        if (area > 500 && area < 50000) // Lọc diện tích chuẩn của phôi
        {
            MCvMoments moments = CvInvoke.Moments(contours[i]);
            int cX = (int)(moments.M10 / moments.M00);
            int cY = (int)(moments.M01 / moments.M00);
            
            // Quy đổi tọa độ Pixel sang tọa độ Robot (Milimet)
            double robotX = (cX - CAMERA_CENTER_X) * SCALE_FACTOR_X + OFFSET_X;
            double robotY = (cY - CAMERA_CENTER_Y) * SCALE_FACTOR_Y + OFFSET_Y;
            double robotZ = DEFAULT_GRIPPER_Z;
            
            SendTargetToPLC(robotX, robotY, robotZ);
        }
    }
}

3. Cấu hình Motion Control trên TIA Portal V15

Để phát xung chính xác, 3 trục động cơ được cấu hình dưới dạng Technology Object Axis:

  • PTO Configuration: Gán ngõ ra xung tốc độ cao PTO1 (%Q0.0 - Pulse, %Q0.1 - Direction) cho Trục 1; PTO2 (%Q0.2, %Q0.3) cho Trục 2; PTO3 (%Q0.4, %Q0.5) cho Trục 3.
  • Dynamics Configuration:
    • Tốc độ tối đa ($V_{max}$): $500 \text{ mm/s}$ (tương đương $10,000 \text{ pulses/s}$).
    • Gia tốc ($a_{max}$): $1500 \text{ mm/s}^2$; Thời gian tăng/giảm tốc (Ramp-up/down): $0.2 \text{ s}$.
    • Jerk Limit: Kích hoạt bộ lọc S-Curve làm mịn chuyển động, triệt tiêu rung chấn quán tính tại đầu gắp robot.
  • Homing Mode: Chế độ Active Homing (Mode = 3), trục di chuyển dò công tắc hành trình KW11 với vận tốc chậm, khi chạm công tắc sẽ tự động nạp giá trị vị trí tuyệt đối $Z_{home} = 0 \text{ mm}$.
// SCL Code: Điều khiển chu trình Gắp - Thả qua khối hàm Motion Control
IF "Execute_PickAndPlace" THEN
    // Bước 1: Kích hoạt động cơ
    "MC_Power_Axis1"(Axis := "Axis_1", Enable := TRUE, StopMode := 0);
    
    // Bước 2: Di chuyển tuyệt đối đến tọa độ mục tiêu (Góc Theta1)
    "MC_MoveAbsolute_Axis1"(
        Axis := "Axis_1",
        Execute := "Start_Move_Pulse",
        Position := "Target_Theta_1",
        Velocity := 180.0, // deg/s
        Done => "Move_Done"
    );
    
    // Bước 3: Đóng van hút khí nén khi đến vị trí
    IF "Move_Done" AND "At_Target" THEN
        "Vacuum_Valve" := TRUE; // Bật giác hút
    END_IF;
END_IF;

Testing và validation

Hệ thống được vận hành kiểm thử thực nghiệm liên tục trong 5 giờ với 300 mẫu vật thể (100 mẫu Đỏ, 100 mẫu Xanh lục, 100 mẫu Xanh lam) đặt ngẫu nhiên trên băng tải chuyển động ở vận tốc $0.1 \text{ m/s}$.

Màu sắc mẫu thử Số mẫu kiểm tra Nhận diện đúng (Vision) Gắp & Thả thành công Tỉ lệ chính xác (%) Lỗi phát sinh
Màu Đỏ 100 99 98 98.0% 1 mẫu trượt do góc xoay mép băng tải
Màu Xanh lục 100 98 97 97.0% 1 mẫu nhận diện chậm do bóng mờ
Màu Xanh lam 100 99 99 99.0% Không có lỗi cơ khí
Tổng thể 300 296 294 98.0% Sai số vị trí: $\pm 0.8 \text{ mm}$

Đánh giá thời gian chu kỳ (Cycle Time Analysis)

  • Thời gian chụp & xử lý ảnh (Image Processing Latency): $42 \text{ ms}$.
  • Thời gian truyền thông OPC & Tính động học nghịch: $18 \text{ ms}$.
  • Thời gian đáp ứng chuyển động Robot (Trajectory Execution):
    • Di chuyển từ vị trí Home đến vị trí vật: $0.45 \text{ s}$.
    • Bật hút chân không & nâng vật: $0.20 \text{ s}$.
    • Di chuyển đến khay phân loại tương ứng: $0.50 \text{ s}$.
    • Xả khí nén & lùi về Home: $0.35 \text{ s}$.
  • Tổng thời gian trung bình cho 1 chu kỳ gắp: $1.56 \text{ giây/sản phẩm}$ (Đạt năng suất $\approx 38 - 40 \text{ sản phẩm/phút}$ trên mô hình thực nghiệm, đáp ứng vượt mức mục tiêu ban đầu).

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

  1. Kiến trúc điều khiển phân tầng phân tán tối ưu (Hybrid Architecture): Đề tài tách biệt rõ ràng giữa tác vụ xử lý tính toán nặng (Computer Vision, Matrix Transformation, SQL Logging trên PC core i5) và tác vụ điều khiển thời gian thực siêu chính xác (Pulse Generation, Interlock Safety, I/O Handling trên PLC S7-1200), ngăn chặn hiện tượng trễ chu kỳ quét (Scan time watchdog) của vi điều khiển đơn lẻ.
  2. Khắc phục rung chấn cơ học bằng Jerk Limit trên Technology Object: Thay vì điều khiển vận tốc dạng hình thang (Trapezoidal profile) gây giật cơ cấu khi đảo chiều, việc cấu hình đường cong hình chữ S (S-Curve Jerk Control) đã giảm thiểu 65% độ rung lắc của bàn máy động, gia tăng tuổi thọ các khớp cầu in 3D.
  3. Giải thuật hiệu chuẩn quang học - cơ khí (Camera-to-Robot Spatial Mapping): Thiết lập ma trận biến đổi afin 2D rút gọn giúp ánh xạ trực tiếp từ tọa độ ma trận điểm ảnh ($u, v$) sang tọa độ thực tế của robot ($X, Y$) với sai số dưới $1.0 \text{ mm}$ mà không cần trang bị camera công nghiệp chuyên dụng đắt tiền.
                    +---------------------------------------------+
                    |        Tọa độ Pixel: P_camera(u, v)        |
                    +----------------------+----------------------+
                                           |
                                           v
                             Ma trận biến đổi Afin 2D
                       [ X_r ]   [ s_x   0   dx ] [ u ]
                       [ Y_r ] = [  0   s_y  dy ] [ v ]
                       [  1  ]   [  0    0    1 ] [ 1 ]
                                           |
                                           v
                    +---------------------------------------------+
                    |      Tọa độ Robot: P_robot(X_r, Y_r)        |
                    +----------------------+----------------------+
                                           |
                                           v
                             Giải thuật Động học Nghịch
                             (Inverse Kinematics Model)
                                           |
                                           v
                    +---------------------------------------------+
                    |  Góc quay khớp động cơ: (theta1, theta2, 3) |
                    +---------------------------------------------+

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

Kịch bản ứng dụng thực tiễn

  • Dây chuyền đóng gói bánh kẹo & thực phẩm: Đóng gói các sản phẩm đa dạng quy cách vào hộp định hình ở tốc độ cao mà không làm dập nát sản phẩm.
  • Ngành Dược phẩm: Phân loại vỉ thuốc, chai lọ y tế theo nắp màu hoặc mã vạch định danh trước khi đóng thùng carton.
  • Lắp ráp linh kiện bán dẫn & điện tử: Gắp và định vị IC, tụ điện, rơ le lên bo mạch in (PCB) với độ lặp lại chính xác.

Phân tích Chi phí - Lợi ích (Cost-Benefit Analysis & ROI)

Giả định áp dụng mô hình cho một xưởng sản xuất bánh kẹo quy mô vừa (1 ca làm việc 8 giờ/ngày):

Hạng mục chi phí / Lợi ích Phương án Nhân công (2 nhân sự) Hệ thống Robot Delta tự động hóa
Chi phí đầu tư ban đầu (CAPEX) 0 VNĐ 35.000.000 VNĐ
Chi phí vận hành hàng năm (OPEX) 192.000.000 VNĐ (8 tr/tháng/người) 12.000.000 VNĐ (Điện năng, bảo trì)
Tỉ lệ lỗi sản phẩm trung bình 3.5% (Do mệt mỏi) $< 0.8%$
Thời gian hoàn vốn (ROI) -- $\approx 2.3 \text{ tháng}$

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

Hạn chế kỹ thuật

  • Phụ thuộc điều kiện chiếu sáng: Không gian màu HSV dù hạn chế ảnh hưởng của cường độ sáng nhưng khi ánh sáng môi trường thay đổi đột ngột vẫn gây nhiễu phân ngưỡng.
  • Giới hạn bậc tự do: Cơ cấu 3-DOF chỉ di chuyển tịnh tiến $X, Y, Z$, chưa có trục xoay Yaw ($\theta_z$) để xoay chỉnh hướng của sản phẩm trước khi đặt vào khay định hình.
  • Vòng hở của động cơ bước: Chưa có phản hồi Encoder tuyệt đối tại trục khớp động cơ bước, tiềm ẩn nguy cơ mất bước nếu vận tốc vượt quá mô-men xoắn giữ của động cơ.

Hướng phát triển

  1. Nâng cấp hệ thống chấp hành sang động cơ AC Servo Siemens V90 (PROFINET IRT) để đạt tốc độ $150 \text{ PPM}$ và triệt tiêu hoàn toàn hiện tượng mất bước.
  2. Tích hợp thuật toán học sâu YOLOv8/v9 chạy trên phần cứng nhúng (như NVIDIA Jetson) để nhận diện phân loại dạng khuyết tật sản phẩm, kích thước bất định và nhận dạng bao bì phức tạp.
  3. Lắp đặt thêm trục xoay thứ 4 gắn động cơ Servo mini tại bàn máy động để hỗ trợ tính năng định hướng góc xoay chi tiết.

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

  • Sinh viên ngành Cơ điện tử, Tự động hóa, Điện công nghiệp: Tài liệu tham khảo hoàn chỉnh từ mô hình toán động học, thiết kế cơ khí 3D, lập trình PLC chuyên sâu đến kỹ thuật thị giác máy tính C# EmguCV.
  • Kỹ sư R&D & Lập trình viên Tự động hóa: Cung cấp mẫu code chuẩn về điều khiển phát xung PTO, khối hàm PLCopen Motion Control (MC_MoveAbsolute, MC_Home) và phương pháp tích hợp OPC Server công nghiệp.
  • Doanh nghiệp vừa và nhỏ (SMEs): Giải pháp tự động hóa dây chuyền phân loại sản phẩm với chi phí chỉ bằng 1/5 so với việc nhập khẩu cánh tay robot công nghiệp nguyên chiếc từ nước ngoài.

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

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

Hệ thống yêu cầu 01 CPU PLC Siemens S7-1200 (CPU 1212C hoặc 1214C DC/DC/DC có firmware $\ge$ V4.0 để hỗ trợ Technology Object Axis), 3 bộ Driver Microstep (dòng tải $\ge 3.5\text{A}$), 3 động cơ bước NEMA 23, 1 máy tính công nghiệp hoặc PC chạy Windows 10/11 (tối thiểu Core i3, RAM 8GB) có cổng mạng Ethernet và cổng USB 2.0/3.0 kết nối Camera.

2. Làm thế nào để Robot bắt kịp phôi khi băng tải chuyển động liên tục?

Trong mô hình nâng cao, PLC đọc xung Encoder từ trục con lăn băng tải qua bộ đếm tốc độ cao HSC (High Speed Counter) để tính toán chính xác tốc độ dịch chuyển $V_{belt}$. Tọa độ $Y$ của vật thể sẽ được bù thêm một lượng $\Delta Y = V_{belt} \times (t_{delay} + t_{motion})$ giúp robot đón đầu và gắp chính xác vị trí vật khi đang di chuyển (Conveyor Tracking).

3. Tại sao chọn thư viện EmguCV thay vì chạy Python OpenCV?

EmguCV cho phép lập trình trực tiếp trên nền tảng .NET Framework (C#), mang lại hiệu năng xử lý đa luồng (Multi-threading) tối ưu trên hệ điều hành Windows, đồng thời tích hợp mượt mà và trực tiếp với các thư viện OPC Client, kết nối cơ sở dữ liệu SQL và thiết kế giao diện điều khiển SCADA hiện đại chỉ trong một chương trình thực thi duy nhất (.EXE).

4. Cách xử lý khi một trục động cơ bị kẹt hoặc trôi bước?

Hệ thống tích hợp quy trình ngắt an toàn thông qua ngõ vào khẩn cấp (E-Stop). Khi kích hoạt lệnh MC_Reset và chu trình MC_Home, robot sẽ tự động lùi 3 trục về vị trí chạm công tắc hành trình KW11 để tái thiết lập gốc tọa độ chuẩn tuyệt đối ($Z = 0$) trước khi tiếp tục chu trình tự động.

5. Chi phí chế tạo phần cứng cơ khí Robot Delta là bao nhiêu?

Nhờ ứng dụng công nghệ in 3D các khớp nối chịu lực, thanh giằng sợi carbon (Carbon Fiber Rods) và cắt laser khung thép/nhôm định hình, tổng chi phí gia công cơ khí hoàn thiện cho mô hình chỉ dao động từ $6.000.000$ đến $8.500.000 \text{ VNĐ}$.


Kết luận

Đề tài "Ứng dụng PLC điều khiển Robot Delta phân loại sản phẩm theo màu" đã nghiên cứu, thiết kế và chế tạo thành công một hệ thống tự động hóa hoàn chỉnh kết hợp liên ngành giữa Cơ khí chính xác, Điện tử điều khiển và Công nghệ thông tin. Bằng việc làm chủ mô hình toán động học song song Delta, ứng dụng nền tảng điều khiển thời gian thực Siemens S7-1200 Motion Control và xử lý ảnh EmguCV tốc độ cao, hệ thống đạt độ chính xác phân loại lên đến 98.0% với chu kỳ gắp chỉ 1.56 giây/sản phẩm. Đây là giải pháp công nghệ mang tính ứng dụng thực tiễn cao, đóng góp một phương án khả thi, chi phí thấp nhằm nâng cao năng suất và mức độ tự động hóa cho các doanh nghiệp sản xuất trong thời kỳ công nghiệp 4.0.