Giới thiệu dự án

Trong bối cảnh cuộc Cách mạng Công nghiệp 4.0, tự động hóa đóng vai trò then chốt giúp các doanh nghiệp sản xuất nâng cao năng suất, cắt giảm chi phí vận hành và tối ưu hóa chuỗi cung ứng. Theo các báo cáo phân tích thị trường logistics toàn cầu, khâu bốc xếp hàng hóa lên pallet (Palletizing) chiếm tới 25–30% tổng chi phí nhân công trong kho vận và thường xuyên đối mặt với rủi ro tai nạn lao động cũng như sai sót phân loại thủ công. Đề tài "Nghiên cứu và lập trình hệ thống phân loại và sắp xếp hàng hóa lên pallet tự động" được thực hiện bởi sinh viên ngành Công nghệ Kỹ thuật Điều khiển và Tự động hóa – Trường Đại học Sư phạm Kỹ thuật TP.HCM (HCMUTE), dưới sự hướng dẫn của TS. Tạ Văn Phương, nhằm giải quyết bài toán tự động hóa hoàn toàn chu trình từ nhận diện, phân loại đến bốc xếp phôi hàng.

+---------------+     +-----------------------+     +-----------------------+     +-------------------+
|  Băng tải PVC | --> | Webcam (OpenCV/Python)| --> | PLC Siemens S7-1200   | --> | Robot 4-DOF       |
|  Cấp phôi     |     | Nhận diện Màu & Dạng  |     | Xử lý Kinematics/PTO  |     | Xếp lên 2 Pallet  |
+---------------+     +-----------------------+     +-----------------------+     +-------------------+

Vấn đề thực tiễn và bài toán đặt ra (Problem Statement)

Các dây chuyền đóng gói truyền thống tại các doanh nghiệp vừa và nhỏ (SMEs) thường áp dụng phân loại thủ công hoặc cơ cấu gạt cơ khí đơn giản. Phương pháp này bộc lộ nhiều điểm nghẽn nghiêm trọng:

  • Năng suất không ổn định và dễ sai sót: Sự mệt mỏi của nhân công dẫn đến tỷ lệ phân loại nhầm lẫn và xếp lệch pallet tăng cao sau các ca làm việc dài.
  • Tính linh hoạt kém: Cơ cấu phân loại cơ khí cố định không thể thích ứng khi thay đổi mẫu mã, kích thước hoặc màu sắc sản phẩm.
  • Chi phí đầu tư robot công nghiệp trọn gói quá cao: Các hệ thống bốc xếp nhập khẩu nguyên chiếc từ nước ngoài (như ABB, Fanuc, KUKA) có giá thành vượt quá ngân sách đầu tư của các xưởng sản xuất quy mô vừa và nhỏ.

Mục tiêu của dự án

  1. Thiết kế cơ khí và mô phỏng 3D: Chế tạo mô hình cánh tay robot 4 bậc tự do (4-DOF) sử dụng cơ cấu tay đòn song song và cơ cấu kẹp/hút chân không, tối ưu hóa không gian làm việc.
  2. Xây dựng giải thuật Động học Robot: Thiết lập bảng thông số Denavit-Hartenberg (D-H), giải phương trình Động học thuận (Forward Kinematics) và Động học nghịch (Inverse Kinematics), kiểm chứng trên MATLAB.
  3. Phát triển hệ thống Thị giác máy tính (Computer Vision): Lập trình xử lý ảnh trên nền tảng Python và thư viện OpenCV để nhận diện hình dạng (tròn, chữ nhật), màu sắc (xanh lam, đỏ), đồng thời trích xuất tọa độ tâm $(X, Y)$ và góc xoay $\alpha$ của phôi.
  4. Tích hợp điều khiển và truyền thông công nghiệp: Kết nối phần mềm xử lý ảnh với bộ điều khiển lập trình PLC Siemens S7-1200 qua giao thức Ethernet TCP/IP (thư viện Snap7), điều khiển phát xung tốc độ cao (Pulse Train Output - PTO) đến các động cơ bước (Step Motor).
  5. Giám sát SCADA/HMI: Thiết kế giao diện điều khiển và giám sát thời gian thực trên nền tảng WinCC Runtime.

Phạm vi và giới hạn kỹ thuật

  • Đối tượng xử lý: Phôi phẳng gồm 2 loại hình dạng (Hình tròn $\varnothing 40\text{ mm}$, Hình chữ nhật $50 \times 30\text{ mm}$) với 2 nhóm màu sắc (Đỏ, Xanh lam).
  • Tải trọng gắp (Payload): Tối đa $200\text{ g}$.
  • Quy chuẩn cấp phôi: Phôi đặt rời rạc trên băng tải, khoảng cách giữa 2 phôi liên tiếp tối thiểu $5\text{ cm}$.

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

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

Tiêu chí Phân loại thủ công Cơ cấu cơ khí / Cảm biến tiệm cận Giải pháp Robot Thị giác máy tính (Đề tài)
Độ chính xác $85 - 90%$ (giảm theo thời gian) $90 - 94%$ (chỉ nhận diện đơn biến) $> 98%$ (nhận diện đa biến hình dáng + màu)
Tính linh hoạt Cao nhưng phụ thuộc con người Rất thấp (cố định cơ khí) Rất cao (thay đổi qua cấu hình thuật toán)
Tốc độ chu kỳ $6 - 10\text{ s/sản phẩm}$ $2 - 3\text{ s/sản phẩm}$ $4 - 5\text{ s/sản phẩm}$
Khả năng định vị góc xoay Cảm quan Không hỗ trợ Tự động tính góc lệch và bù góc xoay
Chi phí đầu tư Chi phí nhân công định kỳ Trung bình Thấp, tối ưu cho quy mô vừa và nhỏ

Ma trận ưu tiên yêu cầu kỹ thuật (MoSCoW)

  • Must have: Cánh tay robot 4-DOF hoạt động chính xác theo tọa độ $P(X, Y, Z)$; Nhận diện đúng 2 màu (Đỏ, Xanh) và 2 hình dạng (Tròn, Chữ nhật); Giao tiếp ổn định giữa PC và PLC S7-1200 qua Ethernet; Bơm hút chân không chấp hành ổn định.
  • Should have: Giao diện WinCC hiển thị trực quan số lượng sản phẩm phân loại theo từng pallet; Khả năng tự động bù góc xoay $\alpha$ của phôi.
  • Could have: Chế độ vận hành Manual/Auto/Setting độc lập; Cảnh báo lỗi phôi ngoài vùng làm việc.
  • Won't have: Bốc xếp phôi liên tục khi băng tải đang chạy với tốc độ cao (Conveyor Tracking) trong giai đoạn này.

Thiết kế hệ thống

Hệ thống được module hóa thành các phân vùng phần cứng và phần mềm liên kết chặt chẽ:

[Camera Hikvision] 
       │ (USB 2.0)
       ▼
[PC Xử lý ảnh: Python + OpenCV] 
       │ (Snap7 qua Ethernet TCP/IP - DB1)
       ▼
[PLC Siemens S7-1200 (CPU 1214C DC/DC/DC)]
       ├── (PTO: Trục Axis 1, 2, 3) ──> [Driver Stepper Motor] ──> [Động cơ bước 4-DOF]
       ├── (Digital Output - Relay)  ──> [Van điện từ & Động cơ hút chân không]
       ├── (Digital Input)          ──> [Cảm biến quang EE-SX670P & Hồng ngoại E3F-DS30P1]
       └── (Profinet / Industrial Ethernet) ──> [WinCC SCADA Interface]

Bảng đặc tả công nghệ và phiên bản (Technology Stack)

  • Bộ điều khiển trung tâm: Siemens S7-1200 CPU 1214C DC/DC/DC (Firmware V4.4).
  • Môi trường lập trình điều khiển: TIA Portal V16 / V17 (Ngôn ngữ Ladder Diagram kết hợp Motion Control Function Blocks).
  • Phần mềm giám sát: SIMATIC WinCC Runtime Advanced V16.
  • Thị giác máy tính: Python 3.9, OpenCV 4.8.0, NumPy 1.24.
  • Giao thức truyền thông: Snap7 Library (S7 Communication Protocol qua cổng RJ45 Ethernet).
  • Thiết kế cơ khí và mô phỏng: SolidWorks 2022, MATLAB R2021b (Robotics Toolbox).
  • Cảm biến và cơ cấu chấp hành: Cảm biến hồng ngoại E3F-DS30P1, Cảm biến quang chữ U Omron EE-SX670P, Động cơ bước NEMA 17/23 kết hợp Driver vi bước TB6600, Giác hút chân không chữ T SMC.

Phương pháp nghiên cứu và Động học Robot (Kinematics)

Cánh tay robot 4 bậc tự do có cấu trúc gồm 4 khâu bản lề quay. Khâu tác động cuối (End-Effector) luôn duy trì hướng vuông góc với mặt phẳng gắp nhờ cơ cấu động học bù góc: $\theta_4 = 90^\circ - \theta_2 - \theta_3$.

Bảng thông số Denavit-Hartenberg (D-H)

Khâu ($i$) $\alpha_{i-1}$ $a_{i-1}\text{ (mm)}$ $d_i\text{ (mm)}$ $\theta_i$
1 $0^\circ$ $0$ $l_1 = 192$ $\theta_1$
2 $-90^\circ$ $0$ $0$ $\theta_2$
3 $0^\circ$ $l_2 = 140$ $0$ $\theta_3$
4 $0^\circ$ $l_3 = 140$ $0$ $90^\circ - \theta_2 - \theta_3$
End-Effector $0^\circ$ $l_4 = 75$ $0$ $0^\circ$

Phương trình Động học thuận (Forward Kinematics)

Vị trí điểm tác động cuối $P_{EE} = [P_X, P_Y, P_Z]^T$ được tính toán từ các góc khớp thông qua ma trận chuyển đổi đồng nhất:

$$P_X = \cos(\theta_1) \cdot \left[ l_3 \cos(\theta_2 + \theta_3) + l_2 \cos(\theta_2) \right]$$

$$P_Y = \sin(\theta_1) \cdot \left[ l_3 \cos(\theta_2 + \theta_3) + l_2 \cos(\theta_2) \right]$$

$$P_Z = l_1 - l_2 \sin(\theta_2) - l_3 \sin(\theta_2 + \theta_3) - l_4$$

Phương trình Động học nghịch (Inverse Kinematics)

Khi nhận tọa độ mục tiêu $(P_X, P_Y, P_Z)$ từ hệ thống xử lý ảnh, hệ phương trình nghiệm giải tích được thiết lập:

$$\theta_1 = \text{atan2}(P_Y, P_X)$$

$$\cos(\theta_3) = \frac{P_X^2 + P_Y^2 + (l_1 - l_4 - P_Z)^2 - l_2^2 - l_3^2}{2 \cdot l_2 \cdot l_3}$$

$$\theta_3 = \text{atan2}\left(\sqrt{1 - \cos^2(\theta_3)}, \cos(\theta_3)\right)$$

$$\theta_2 = \text{atan2}(s_2, c_2) \quad \text{với } s_2, c_2 \text{ xác định theo hình học liên kết}$$

Không gian làm việc (Work Envelope) của robot được giới hạn an toàn: $\theta_1 \in [-90^\circ, 90^\circ]$, $\theta_2 \in [-90^\circ, 0^\circ]$, $\theta_3 \in [0^\circ, 140^\circ]$.

Tiến độ thực hiện dự án (Project Timeline)

  • Tuần 1–2: Nghiên cứu tổng quan tài liệu, đặt vấn đề, xác định mục tiêu và phạm vi đề tài.
  • Tuần 3–4: Nghiên cứu cơ sở lý thuyết động học robot, thị giác máy tính, lý thuyết PLC S7-1200.
  • Tuần 5–7: Thiết kế 3D toàn bộ mô hình trên SolidWorks, thiết kế sơ đồ mạch điện, tính toán động học trên MATLAB.
  • Tuần 8–12: Gia công cơ khí, lắp ráp tủ điện, thi công phần cứng, lập trình PLC và thuật toán Python OpenCV.
  • Tuần 13–17: Tích hợp toàn hệ thống, thử nghiệm thực tế, tối ưu sai số, viết báo cáo tổng kết và bảo vệ.

Implementation và kết quả

Quy trình phát triển thuật toán và điều khiển

1. Xử lý ảnh phân loại và trích xuất tọa độ (Python + OpenCV)

Luồng xử lý dữ liệu hình ảnh từ Camera Hikvision DS-U02:

  • Tiền xử lý: Đọc khung hình (Frame) $\rightarrow$ Cắt vùng quan tâm (ROI) trên băng tải $\rightarrow$ Chuyển đổi không gian màu sang HSV và Grayscale $\rightarrow$ Lọc nhiễu Gaussian Blur.
  • Phân loại màu sắc: Áp dụng dải ngưỡng màu HSV (cv2.inRange) cho màu Đỏ và Xanh lam.
  • Nhận diện hình dạng và tính góc xoay: Áp dụng thuật toán Canny trích xuất biên $\rightarrow$ Tìm đường viền (cv2.findContours) $\rightarrow$ Đa giác xấp xỉ (cv2.approxPolyDP) và cv2.minAreaRect để tính tâm $(x_c, y_c)$ cùng góc lệch xoay $\alpha$.
import cv2
import numpy as np
import snap7

# Khởi tạo kết nối PLC Siemens S7-1200 qua Snap7
plc = snap7.client.Client()
plc.connect('192.168.0.1', 0, 1) # IP PLC, Rack 0, Slot 1

def process_frame(frame):
    # Cắt vùng làm việc ROI
    roi = frame[100:400, 150:500]
    hsv = cv2.cvtColor(roi, cv2.COLOR_BGR2HSV)
    gray = cv2.cvtColor(roi, cv2.COLOR_BGR2GRAY)
    
    # Phân ngưỡng màu đỏ (Red HSV Range)
    lower_red = np.array([0, 120, 70])
    upper_red = np.array([10, 255, 255])
    mask_red = cv2.inRange(hsv, lower_red, upper_red)
    
    contours, _ = cv2.findContours(mask_red, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
    for cnt in contours:
        area = cv2.contourArea(cnt)
        if area > 500: # Loại bỏ nhiễu diện tích nhỏ
            peri = cv2.arcLength(cnt, True)
            approx = cv2.approxPolyDP(cnt, 0.04 * peri, True)
            rect = cv2.minAreaRect(cnt)
            (x, y), (w, h), angle = rect
            
            # Phân loại hình dạng
            shape_id = 1 if len(approx) > 5 else 2 # 1: Tron, 2: Chu nhat
            color_id = 1 # 1: Do, 2: Xanh
            
            # Chuyển đổi tọa độ Pixel sang Tọa độ thực Robot (mm)
            robot_x = float(x * 0.45 + 120.0)
            robot_y = float(y * 0.45 - 80.0)
            
            # Gửi dữ liệu xuống Data Block PLC (DB1)
            send_data_to_plc(plc, shape_id, color_id, robot_x, robot_y, angle)
            break

2. Cấu hình Motion Control và Điều khiển PLC S7-1200

Trên TIA Portal, 3 ngõ ra phát xung tốc độ cao PTO được cấu hình thành 3 đối tượng công nghệ (Technology Objects - Axis):

  • Axis_1 (Khâu đế xoay $\theta_1$): Cấu hình ngõ ra xung Q0.0, hướng Q0.1.
  • Axis_2 (Khâu nâng hạ 1 $\theta_2$): Cấu hình ngõ ra xung Q0.2, hướng Q0.3.
  • Axis_3 (Khâu nâng hạ 2 $\theta_3$): Cấu hình ngõ ra xung Q0.4, hướng Q0.5.

Các khối hàm chuẩn được thực thi theo chu trình tuần tự:

  • MC_Power: Kích hoạt trạng thái sẵn sàng cho các trục Driver.
  • MC_Home: Định vị điểm gốc không gian máy (gốc Home) dựa vào tín hiệu từ cảm biến quang chữ U Omron EE-SX670P.
  • MC_MoveAbsolute: Điều khiển vị trí góc tuyệt đối cho từng trục động cơ bước theo kết quả tính toán động học nghịch.
[Start Cycle] 
      │
      ▼
[Băng tải chạy] ──(Gặp E3F-DS30P1)──> [Dừng Băng tải] 
                                              │
                                              ▼
[Camera chụp + Python xử lý] ──(Snap7 DB1)──> [PLC nhận (X, Y, Z, Angle)]
                                              │
                                              ▼
                                      [MC_MoveAbsolute đến Phôi]
                                              │
                                              ▼
                                      [Bật Giác hút Chân không]
                                              │
                                              ▼
                                      [Nâng phôi + Di chuyển đến Pallet]
                                              │
                                              ▼
                                      [Xoay bù góc + Đặt phôi + Tắt Hút]
                                              │
                                              ▼
                                      [Robot về Home + Băng tải tiếp tục]

Kết quả thử nghiệm và kiểm chứng hệ thống

Hệ thống được vận hành thử nghiệm liên tục với 100 mẫu phôi ngẫu nhiên (50 phôi hình tròn, 50 phôi hình chữ nhật; phân bổ đều 2 màu Đỏ và Xanh lam).

========================= KẾT QUẢ THỬ NGHIỆM VẬN HÀNH =========================
Tổng số chu kỳ thử nghiệm : 100 lần
Phân loại chính xác       : 98/100 mẫu (Độ chính xác: 98.0%)
Gắp & Đặt phôi thành công : 97/100 mẫu (Tỷ lệ thành công: 97.0%)
Thời gian chu kỳ bình quân: 4.6 giây / sản phẩm
Sai số định vị tọa độ     : ± 0.8 mm
Độ trễ truyền thông Snap7 : 12 - 15 ms
================================================================================

Ma trận đánh giá kết quả thực tế

Hạng mục kiểm tra Mục tiêu thiết kế ban đầu Kết quả thực nghiệm đạt được Đánh giá
Nhận diện màu sắc Phân loại Đỏ / Xanh lam Độ chính xác $99.0%$ Đạt vượt mức
Nhận diện hình dáng Tròn / Chữ nhật Độ chính xác $97.0%$ Đạt yêu cầu
Bù góc xoay phôi Xoay góc $\pm 90^\circ$ Sai số góc $< 2^\circ$ Đạt yêu cầu
Tải trọng phôi $200\text{ g}$ Nâng ổn định phôi $180 - 200\text{ g}$ Đạt yêu cầu
Giao tiếp PLC - WinCC Thời gian thực, trễ $< 100\text{ ms}$ Chu kỳ cập nhật dữ liệu $30\text{ ms}$ Hoạt động mượt mà

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

  1. Tích hợp liên kết mềm giữa Open-Source Vision và Chuẩn điều khiển Công nghiệp: Đề tài làm chủ kỹ thuật giao tiếp trực tiếp giữa Python (OpenCV) và PLC Siemens S7-1200 thông qua bộ giao thức Ethernet Snap7 mà không cần qua các phần mềm trung gian thương mại (như Kepware OPC Server), giúp tiết kiệm hàng ngàn USD chi phí bản quyền phần mềm.
  2. Cơ cấu bù góc thụ động và cơ cấu tay đòn song song: Thiết kế cơ khí cánh tay robot sử dụng các thanh liên kết song song giúp đưa toàn bộ các động cơ bước nặng về phía cụm đế (Base). Giải pháp này giảm đáng kể quán tính chuyển động của các khâu, giúp tăng tốc độ đáp ứng và hạn chế rung lắc cơ học khi gắp tải.
  3. Thuật toán tự động hiệu chỉnh tọa độ và định vị đa góc: Hệ thống không chỉ nhận dạng phôi cố định mà còn tự động tính toán ma trận xoay, gửi góc lệch $\alpha$ xuống PLC để định hướng giác hút chân không, giúp xếp phôi thẳng hàng tuyệt đối trên ma trận pallet $2 \times 3$ hoặc $3 \times 3$.
  4. Hiệu quả kinh tế vượt trội: Toàn bộ chi phí nghiên cứu và chế tạo mô hình chỉ bằng khoảng $15 - 20%$ so với việc mua sắm các hệ thống module đào tạo hoặc dây chuyền nhập ngoại tương đương.

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

Kịch bản ứng dụng trong nhà máy

  • Ngành công nghiệp thực phẩm & đồ uống (F&B): Phân loại các hộp bánh, lon nước ngọt lỗi hoặc phân loại sản phẩm theo bao bì đóng gói trước khi chuyển vào khâu đóng thùng carton.
  • Ngành dược phẩm: Phân loại vỉ thuốc theo màu sắc quy định và đóng gói tự động vào khay chuẩn.
  • Gia công chi tiết cơ khí và linh kiện điện tử: Bốc xếp các chi tiết đúc, linh kiện PCB từ băng chuyền gia công CNC lên khay chứa chuyên dụng.
       [Khu vực Cấp liệu]
               │
               ▼
   [Băng tải phân loại tự động]
               │
      (Camera quét biên dạng)
               │
        ┌──────┴──────┐
        ▼             ▼
   [Pallet A]     [Pallet B]
(Phôi Tròn/Đỏ)  (Phôi Chữ nhật/Xanh)

Yêu cầu triển khai phần cứng tại xưởng sản xuất

  • Nguồn cấp điện: 1-phase 220VAC 50Hz, bộ nguồn chuyển đổi DC 24V 5A (cho PLC, Cảm biến, Driver) và 5V 3A (cho mạch điều khiển/vi xử lý).
  • Hệ thống khí nén: Nguồn khí nén $4 - 6\text{ bar}$ phục vụ cho đầu hút chân không Ejector (hoặc sử dụng bơm hút chân không mini 12V DC độc lập).
  • Ánh sáng môi trường: Lắp đặt hộp che sáng tiêu chuẩn kết hợp đèn LED vòng (Ring Light) công nghiệp nhằm duy trì cường độ sáng cố định $500 - 600\text{ Lux}$, loại bỏ hiện tượng bóng đổ làm sai lệch giải thuật phân ngưỡng HSV.

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

Hạn chế kỹ thuật hiện tại

  • Chế độ làm việc ngắt quãng (Stop-and-Go): Băng tải phải dừng tạm thời khi cảm biến phát hiện phôi để camera chụp ảnh và robot thực hiện chu trình gắp, chưa đạt chế độ gắp đuổi liên tục (Conveyor Tracking).
  • Phân loại 2D tĩnh: Webcam 2D chỉ trích xuất được tọa độ trong mặt phẳng $XY$, chiều cao $Z$ hiện đang được cố định theo chiều cao tiêu chuẩn của phôi.
  • Giới hạn nhận diện trong môi trường thay đổi ánh sáng mạnh: Nếu ánh sáng môi trường tự nhiên thay đổi đột ngột, việc cố định ngưỡng HSV tĩnh có thể gây nhận diện sai màu.

Hướng phát triển nâng cao

  • Tích hợp Encoder băng tải: Lập trình đồng bộ tốc độ băng tải với chuyển động robot sử dụng thuật toán Conveyor Tracking, nâng cao năng suất lên $200%$.
  • Ứng dụng Trí tuệ Nhân tạo (AI/Deep Learning): Triển khai các mô hình mạng nơ-ron tích chập nhẹ (như YOLOv8-Nano hoặc MobileNet) để nhận diện phôi dị hình, phôi bị khuyết tật hoặc dán nhãn phức tạp.
  • Nâng cấp Camera 3D (Depth Camera): Tích hợp cảm biến độ sâu (như Intel RealSense) để tính toán điểm gắp tối ưu cho các sản phẩm xếp chồng ngẫu nhiên trong thùng chứa (Bin-Picking).

Đố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ử, Robot: Cung cấp tài liệu mẫu hoàn chỉnh về quy trình kết hợp giữa thiết kế cơ khí 3D, giải bài toán động học D-H, cấu hình Motion Control PLC và lập trình xử lý ảnh công nghiệp.
  • Kỹ sư tích hợp hệ thống (System Integrators): Nắm bắt kiến trúc kết nối trực tiếp Python – S7-1200 qua Snap7 để ứng dụng vào các dự án thị giác máy tính chi phí thấp trong thực tế.
  • Doanh nghiệp sản xuất vừa và nhỏ (SMEs): Bản thiết kế tham chiếu khả thi để tự động hóa công đoạn đóng gói, xếp pallet với mức vốn đầu tư ban đầu thấp, thời gian hoàn vốn (ROI) nhanh trong vòng $10 - 14\text{ tháng}$.
  • Cơ sở đào tạo và trường đại học: Làm bộ giáo cụ thực hành trực quan cho các môn học: Kỹ thuật Robot, Điều khiển Logic & PLC, Xử lý ảnh công nghiệp và SCADA.

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

1. Yêu cầu kỹ thuật tối thiểu để triển khai hệ thống là gì?

Hệ thống yêu cầu máy tính vận hành tối thiểu CPU Intel Core i3 (thế hệ 8 trở lên), 8GB RAM, cổng mạng Ethernet RJ45 kết nối với PLC Siemens S7-1200 (CPU 1214C DC/DC/DC). Phần mềm yêu cầu cài đặt Windows 10/11, TIA Portal V16+, Python 3.8+ cùng các thư viện OpenCV, Snap7. Nguồn điện cấp là 220VAC tiêu chuẩn chuyển đổi qua nguồn tổ ong 24VDC/5A.

2. Làm thế nào để mở rộng hệ thống cho các loại sản phẩm có kích thước và màu sắc khác?

Người vận hành chỉ cần truy cập vào module cấu hình trên giao diện Python:

  1. Thêm dải màu HSV mới trong hàm cv2.inRange().
  2. Định nghĩa số cạnh đa giác hoặc tỷ lệ khung bao (Aspect Ratio) trong hàm cv2.approxPolyDP().
  3. Khai báo thêm mã định danh (Product ID) trong Data Block DB1 gửi xuống PLC để phân bổ thêm vị trí ô nhớ pallet mới.

3. Tại sao chọn giao tiếp Snap7 thay vì chuẩn OPC UA hay Modbus TCP?

Snap7 giao tiếp trực tiếp trên tầng S7 Communication độc quyền của Siemens thông qua cổng TCP port 102. Phương thức này cho phép đọc/ghi trực tiếp vào vùng nhớ DB, M, I, Q của PLC với độ trễ cực thấp ($< 15\text{ ms}$), không tiêu tốn tài nguyên CPU của PLC và hoàn toàn miễn phí, không yêu cầu license máy chủ OPC đắt tiền.

4. Giải pháp khắc phục khi robot gắp bị lệch tọa độ thực tế?

Sai lệch tọa độ thường do 2 nguyên nhân: sai số thấu kính camera và sai số cơ khí. Khắc phục bằng cách:

  • Thực hiện chuẩn hóa ma trận thấu kính (Camera Calibration) bằng bàn cờ chuẩn Checkerboard để khử méo góc.
  • Thiết lập lại hàm chuyển đổi tọa độ affine/perspective giữa mặt phẳng ảnh (Pixel) và mặt phẳng robot (Milimet).
  • Kiểm tra lại độ căng dây đai và điểm Home vật lý thông qua cảm biến quang chữ U EE-SX670P.

5. Chi phí chế tạo hệ thống và thời gian thu hồi vốn (ROI) ước tính như thế nào?

Chi phí linh kiện phần cứng (PLC S7-1200 cũ/mới, động cơ bước, driver, gia công khung nhôm định hình, cảm biến, camera) dao động từ $15 - 25\text{ triệu VNĐ}$. Một hệ thống tự động thay thế 1 nhân công bốc xếp thủ công (chi phí $7 - 9\text{ triệu VNĐ/tháng}$) sẽ giúp doanh nghiệp hoàn vốn đầu tư chỉ sau khoảng $3 - 5\text{ tháng}$ vận hành thực tế.


Kết luận

Đề tài "Nghiên cứu và lập trình hệ thống phân loại và sắp xếp hàng hóa lên pallet tự động" đã hoàn thành xuất sắc toàn bộ các mục tiêu đặt ra:

  • Chế tạo thành công mô hình cơ khí cánh tay robot 4-DOF vững chắc, chuyển động êm ái nhờ cơ cấu đòn song song và động cơ bước vi bước.
  • Làm chủ phương pháp mô hình hóa toán học động học thuận - nghịch, kiểm chứng độ chính xác giải thuật trên MATLAB trước khi nạp vào PLC.
  • Xây dựng hệ thống thị giác máy tính nhận dạng đa đặc tính (hình học, màu sắc, góc xoay) với độ chính xác đạt $98%$.
  • Tích hợp trơn tru hệ thống điều khiển công nghiệp đa tầng: Vision (Python) $\leftrightarrow$ PLC (S7-1200) $\leftrightarrow$ SCADA (WinCC).

Dự án là minh chứng rõ nét cho xu hướng kết hợp giữa công nghệ phần mềm mở hiện đại và nền tảng điều khiển công nghiệp chuẩn mực, mang lại giải pháp tự động hóa hiệu quả, linh hoạt và chi phí tối ưu cho các dây chuyền sản xuất thông minh.