Giới thiệu dự án
Trong bối cảnh Cách mạng Công nghiệp 4.0, tự động hóa đóng vai trò then chốt trong việc tối ưu hóa chuỗi cung ứng và logistics nội bộ nhà máy. Theo thống kê từ Hiệp hội Tự động hóa và Robot Quốc tế (IFR), khâu đóng gói và bốc xếp hàng hóa lên pallet (Palletizing) chiếm tới 35–40% tổng thời gian trong chuỗi hậu cần cuối dây chuyền (End-of-Line Packaging). Tuy nhiên, tại nhiều doanh nghiệp vừa và nhỏ, công đoạn này vẫn phụ thuộc lớn vào lao động thủ công, dẫn đến các rủi ro về bệnh nghề nghiệp cơ xương khớp, sai sót định vị kiện hàng và giảm năng suất khi vận hành liên tục 24/7.
Vấn đề kỹ thuật cốt lõi đặt ra là các sản phẩm sau đóng gói di chuyển trên băng tải thường đến ngẫu nhiên ở các góc xoay ($\theta$) và tọa độ lệch tâm $(x, y)$ bất kỳ. Các giải pháp robot truyền thống với quỹ đạo cố định (Fixed-trajectory) đòi hỏi cơ cấu căn chỉnh cơ khí phức tạp, chi phí đầu tư cao và thiếu tính linh hoạt khi thay đổi quy cách sản phẩm.
Dự án "Nghiên cứu, thiết kế và chế tạo mô hình cánh tay robot bốc xếp hàng lên pallet" được triển khai nhằm giải quyết triệt để bài toán định vị và sắp xếp hàng hóa động thông qua việc tích hợp thị giác máy tính (Machine Vision) và bộ điều khiển logic khả trình công nghiệp (Industrial PLC).
[Băng tải / Camera] ---> [OpenCV / Python (Xử lý ảnh & Tọa độ)]
| (S7 Protocol / Ethernet)
v
[Động cơ TB6600 / Servo] <--- [PLC Siemens S7-1200 (Điều khiển chuyển động)]
|
v
[Robot 4-DOF gắp & xếp Pallet]
Mục tiêu của dự án:
- Thiết kế cơ khí và động học: Chế tạo cánh tay robot 4 bậc tự do (4-DOF: 3 bậc RRR định vị không gian và 1 bậc R xoay định hướng bàn kẹp) với kết cấu bền vững, tải trọng nâng định mức $0.5\text{ kg}$.
- Xử lý ảnh thời gian thực: Ứng dụng thư viện OpenCV trên nền tảng Python để nhận diện, phân ngưỡng, xác định tâm $(x, y)$, diện tích và góc nghiêng $\theta$ của sản phẩm trên băng tải.
- Điều khiển chuyển động công nghiệp: Cấu hình phát xung tốc độ cao (PTO - Pulse Train Output) trên PLC Siemens S7-1200 CPU 1212C kết hợp Signal Board SB 1222 DQ4 để điều khiển 4 trục động cơ bước thông qua driver TB6600.
- Truyền thông tích hợp: Thiết lập kênh truyền thông công nghiệp Ethernet ISO-on-TCP (giao thức S7 Protocol qua Snap7) giữa máy tính xử lý ảnh và PLC với độ trễ dưới $20\text{ ms}$.
- Thực nghiệm xếp hàng đa tầng: Tự động hóa quy trình bốc xếp hàng hóa từ băng tải lên pallet theo 2 quy cách: xếp lồng liên kết (interlocking) và xếp chồng khối (column stacking) cho 2 tầng sản phẩm với năng suất thiết kế $10\text{ sản phẩm/phút}$.
Phạm vi và giới hạn:
- Phạm vi: Mô hình hóa cánh tay robot công nghiệp 4-DOF, tích hợp thị giác 2D, điều khiển cấp phát xung PLC S7-1200, truyền thông Snap7 và cơ cấu chấp hành end-effector servo.
- Giới hạn: Tải trọng tối đa $0.5\text{ kg}$; phôi sản phẩm dạng khối hộp chữ nhật phẳng; camera xử lý trong điều kiện chiếu sáng ổn định tiêu chuẩn phòng Lab.
Phân tích và thiết kế giải pháp
Phân tích hiện trạng
Trước khi đề xuất kiến trúc hệ thống, các giải pháp bốc xếp tự động hiện hành đã được phân tích toàn diện nhằm xác định cấu trúc tối ưu:
| Tiêu chí |
Robot Delta |
Robot SCARA |
Robot Khớp nối 4-DOF (Đề tài) |
| Không gian làm việc |
Dạng vòm nón, giới hạn trục $Z$ |
Mặt phẳng trụ $R-\theta$, trục $Z$ tịnh tiến |
Không gian cầu linh hoạt, tầm với rộng |
| Độ phức tạp cơ khí |
Khớp song song phức tạp |
Khớp quay song song + trục vít me |
Khớp nối nối tiếp nối trục đơn giản |
| Khả năng xoay góc linh hoạt |
Kém (chủ yếu gắp đặt song song) |
Tốt trên mặt phẳng ngang ($XY$) |
Rất tốt (xoay tự do $\pm 90^\circ$ tại khâu cuối) |
| Tải trọng / Trọng lượng |
Thấp ($< 1.0\text{ kg}$) |
Trung bình ($1 - 5\text{ kg}$) |
Tùy biến cao theo công suất động cơ |
| Chi phí chế tạo mô hình |
Rất cao |
Cao |
Tối ưu, linh kiện phổ biến |
Đánh giá yêu cầu theo mô hình MoSCoW:
- Must have (Bắt buộc): Động học thuận/nghịch chính xác; nhận diện góc xoay $\theta$ và tâm $(x, y)$ vật thể; giao tiếp Ethernet S7 Protocol; chức năng Homing (
MC_Home) và điều khiển vị trí tuyệt đối (MC_MoveAbsolute).
- Should have (Nên có): Xếp pallet đa tầng (2 tầng trở lên) theo quy cách đan xen chống đổ; cảm biến hồng ngoại phát hiện vật cản đầu vào; chế độ Manual/Auto trên giao diện điều khiển.
- Could have (Có thể có): Giao diện HMI giám sát SCADA tích hợp cảnh báo lỗi thời gian thực; tính toán bù sai số động học.
- Won't have (Chưa thực hiện): Nhận diện chiều sâu 3D (3D Point Cloud); tải trọng công nghiệp nặng trên $50\text{ kg}$.
Thiết kế hệ thống
Kiến trúc hệ thống được chia thành 3 phân tầng chức năng chính:
+-------------------------------------------------------------------------+
| VISION LAYER (PC) |
| - Python 3.10 + OpenCV 4.8 |
| - Camera USB 1080p -> Trích xuất Contours, MinAreaRect (x, y, theta) |
| - Snap7 Client -> Ghi dữ liệu vào Data Block S7-1200 |
+------------------------------------+------------------------------------+
| Ethernet TCP/IP (Port 102)
+------------------------------------v------------------------------------+
| CONTROL LAYER (PLC) |
| - Siemens SIMATIC S7-1200 CPU 1212C DC/DC/DC + SB 1222 DQ4x24VDC |
| - Technology Objects (TO Axis 1 to 4) -> Phát xung PTO |
| - Hàm FC1 (PALLET), DB17, DB18, DB28, DB46 |
+------------------------------------+------------------------------------+
| Digital Output / Pulse + Dir
+------------------------------------v------------------------------------+
| ACTUATION LAYER (HARDWARE) |
| - 4x Driver TB6600 4A 42V -> 4x Stepper Motor (Khâu 1, 2, 3, 4) |
| - Arduino UNO R3 (ATmega328P) -> PWM Control RC Servo (Kẹp End-Effector)|
| - Băng tải DC + Cảm biến quang E3F-DS30C4 + Relay Omron MY2N |
+-------------------------------------------------------------------------+
Technology Stack và Phần cứng:
- Bộ điều khiển trung tâm: PLC Siemens S7-1200 CPU 1212C DC/DC/DC (Firmware v4.4), tích hợp 8 DI / 6 DO transistor hỗ trợ xung $100\text{ kHz}$.
- Board mở rộng: Signal Board SB 1222 DQ4x24VDC (Mã 6ES7222-1AD30-0XB0) để mở rộng 4 ngõ ra số tốc độ cao điều khiển 4 trục động cơ bước độc lập.
- Cơ cấu chấp hành: 4 Động cơ bước 2 pha kết hợp driver TB6600 (vi bước 1/8, dòng định mức cài đặt $2.5\text{ A}$); 1 động cơ RC Servo điều khiển tay gắp kẹp/nhả thông qua vi điều khiển Arduino UNO R3 (ATmega328P).
- Môi trường phát triển: TIA Portal V16/V17 (Lập trình PLC & Motion Control), PyCharm IDE (Python 3.10, OpenCV 4.8.0, Snap7 v1.4), Arduino IDE 2.2.
Methodology
Dự án áp dụng mô hình phát triển hệ thống kết hợp chữ V (V-Model) trong cơ điện tử:
- Giai đoạn 1 (Tuần 1–4): Khảo sát bài toán, giải tích toán học động học thuận/nghịch (DH Parameters) và thiết kế 3D CAD trên SolidWorks.
- Giai đoạn 2 (Tuần 5–8): Gia công cắt Laser Mica/nhôm, lắp ráp cơ khí 4 trục, thiết kế sơ đồ đấu nối tủ điện động lực và điều khiển 24VDC/5VDC.
- Giai đoạn 3 (Tuần 9–12): Lập trình thuật toán thị giác máy tính OpenCV, cấu hình Motion Control PLC (PTO/Axis), thiết lập truyền thông Snap7.
- Giai đoạn 4 (Tuần 13–16): Tích hợp liên động toàn hệ thống, hiệu chuẩn tọa độ Camera - Robot, tối ưu quỹ đạo gắp thả và thử nghiệm độ tin cậy.
Implementation và kết quả
Development process
1. Thuật toán Xử lý ảnh (Vision Algorithm)
Camera thu nhận luồng video thời gian thực từ băng tải. Ảnh được cắt vùng quan tâm (ROI), chuyển đổi không gian màu sang Grayscale, áp dụng lọc nhiễu Gaussian Blur ($5 \times 5$), nhị phân hóa phân ngưỡng Otsu và trích xuất đường biên bằng cv2.findContours. Hàm cv2.minAreaRect xác định hình chữ nhật bao quanh có diện tích tối thiểu, trả về tọa độ tâm $(x, y)$, kích thước dài/rộng và góc nghiêng $\theta$.
import cv2
import numpy as np
import snap7
from snap7.util import set_real, set_int
def process_frame(frame, plc, db_number):
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
blurred = cv2.GaussianBlur(gray, (5, 5), 0)
_, thresh = cv2.threshold(blurred, 60, 255, cv2.THRESH_BINARY_INV)
contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
for cnt in contours:
area = cv2.contourArea(cnt)
if 3000 < area < 25000: # Lọc diện tích sản phẩm hợp lệ
rect = cv2.minAreaRect(cnt)
(x, y), (w, h), angle = rect
# Chuẩn hóa góc xoay sản phẩm [-90, 90] độ
if w < h:
angle = angle - 90
# Đóng gói dữ liệu và gửi sang PLC Siemens qua Snap7
data = bytearray(8)
set_real(data, 0, float(x)) # Offset 0.0: Tọa độ X
set_real(data, 4, float(angle)) # Offset 4.0: Góc xoay Theta
plc.db_write(db_number, 0, data)
break
2. Mô hình Động học Robot (Kinematics Modeling)
Hệ thống sử dụng bảng thông số Denavit-Hartenberg (D-H) tách rời thành 2 phân hệ: Mô hình 1 (3 khâu RRR định vị tọa độ đầu cuối $(P_x, P_y, P_z)$ trong không gian) và Mô hình 2 (1 khâu R xoay trục bàn kẹp khớp với góc $\theta$).
| Khớp $i$ |
$\theta_i$ |
$\alpha_i$ |
$a_i\text{ (mm)}$ |
$d_i\text{ (mm)}$ |
| 1 |
$\theta_1^*$ |
$90^\circ$ |
$0$ |
$d_1$ |
| 2 |
$\theta_2^*$ |
$0^\circ$ |
$a_2$ |
$0$ |
| 3 |
$\theta_3^*$ |
$90^\circ$ |
$a_3$ |
$0$ |
Phương trình động học thuận:
$$T_0^3 = A_1 \cdot A_2 \cdot A_3 = \begin{bmatrix} c_1 c_{23} & -c_1 s_{23} & s_1 & c_1(a_2 c_2 + a_3 c_{23}) \ s_1 c_{23} & -s_1 s_{23} & -c_1 & s_1(a_2 c_2 + a_3 c_{23}) \ s_{23} & c_{23} & 0 & d_1 + a_2 s_2 + a_3 s_{23} \ 0 & 0 & 0 & 1 \end{bmatrix}$$
Giải bài toán động học nghịch (IK) trên PLC thông qua giải tích hình học để tính toán tức thời các góc khớp $(\theta_1, \theta_2, \theta_3)$ từ tọa độ mục tiêu $(X, Y, Z)$ và nạp vào khối MC_MoveAbsolute.
3. Cấu trúc Chương trình PLC S7-1200
Hệ thống sử dụng khối hàm chức năng FC1 ("PALLET") kết hợp các Data Block chuyên biệt: DB46 (Góc động học nghịch), DB28 (Tín hiệu điều khiển Servo gắp), DB17 (Tọa độ tầng 1 Pallet), DB18 (Tọa độ tầng 2 Pallet).
// Đoạn mã điều khiển kích hoạt trục phát xung Motion Control (Structured Control Language)
IF "Sensor_Input" = TRUE AND "System_State" = 1 THEN
// Đọc góc nghịch từ DB46 và gọi lệnh định vị tuyệt đối Axis_1
"MC_MoveAbsolute_Axis1"(
Axis := "Axis_1",
Execute := TRUE,
Position := "DB46".Angle_Theta1,
Velocity := 180.0, // deg/s
Acceleration := 500.0,
Deceleration := 500.0
);
IF "MC_MoveAbsolute_Axis1".Done THEN
"DB28".Gripper_Trigger := TRUE; // Kích hoạt kẹp phôi
"System_State" := 2; // Chuyển sang trạng thái nhấc và xếp pallet
END_IF;
END_IF;
[Chờ phôi (Sensor=1)]
|
v
[Đọc Camera & Tính IK (DB46)]
|
v
[Phát xung PTO -> Di chuyển tới phôi (MC_MoveAbsolute)]
|
v
[Kích hoạt kẹp (DB28 -> Arduino)]
|
v
[Di chuyển tới vị trí Pallet (DB17 / DB18)]
|
v
[Nhả kẹp & Tăng biến đếm sản phẩm]
Testing và validation
Hệ thống đã trải qua $100$ chu trình gắp - đặt liên tục với các vị trí phôi ngẫu nhiên trên băng tải nhằm đánh giá tính ổn định và độ chính xác:
- Độ chính xác nhận diện thị giác: Đạt $98.2%$ trong khoảng góc xoay $\theta \in [-90^\circ, +90^\circ]$. Sai số định vị tâm vật thể $\Delta x, \Delta y \le 1.2\text{ mm}$.
- Thời gian đáp ứng thị giác & truyền thông: Thuật toán OpenCV xử lý trung bình $45\text{ ms/frame}$; thời gian ghi Snap7 qua Ethernet $12\text{ ms}$; tổng độ trễ tính toán $< 60\text{ ms}$.
- Độ chính xác lặp lại cơ khí: Sai số định vị tại đầu gắp $\pm 1.8\text{ mm}$, đảm bảo phôi nằm gọn trong dung sai định vị của pallet ($5\text{ mm}$).
- Năng suất thực tế: Đạt $8.5 - 9.2\text{ sản phẩm/phút}$ (đạt $92%$ so với mục tiêu lý thuyết $10\text{ sp/phút}$).
Phân bố thời gian trong 1 chu trình bốc xếp (Tổng: 6.8s):
[Xử lý ảnh: 0.1s] [Di chuyển đón: 2.2s] [Kẹp phôi: 0.8s] [Di chuyển xếp Pallet: 2.7s] [Nhả: 1.0s]
Kết quả đạt được
Hệ thống đã chế tạo hoàn chỉnh mô hình phần cứng và phần mềm, thực hiện thành công việc bốc xếp tự động 2 tầng pallet:
- Tầng 1: 4 sản phẩm bố trí theo quy cách nằm ngang và dọc xen kẽ.
- Tầng 2: 4 sản phẩm bố trí xoay góc $90^\circ$ so với tầng 1, tạo liên kết khóa khối bền vững chống xô lệch khi vận chuyển.
Đổi mới và đóng góp
- Định hướng linh hoạt không cần đồ gá cơ khí: Khác với các hệ thống phân loại cố định, giải pháp cho phép phôi xuất hiện tại mọi góc quay tự do trên băng tải; camera tự động đo góc lệch $\theta$ và truyền xuống khâu quay thứ 4 để tự vi chỉnh góc kẹp, loại bỏ $100%$ chi phí chế tạo đồ gá dẫn hướng cơ khí.
- Kiến trúc điều khiển phân tán Hybrid (PLC + PC Vision + Microcontroller): Tận dụng tối đa sức mạnh xử lý ảnh cao cấp của máy tính, tính ổn định điều khiển thời gian thực và an toàn công nghiệp của PLC S7-1200, cùng khả năng băm xung PWM linh hoạt của Arduino để điều khiển Servo.
- Thuật toán Động học tách kênh (Decoupled Kinematics Solution): Tách bài toán 4-DOF thành module 3-DOF định vị và 1-DOF định hướng, giảm thời gian giải phương trình phi tuyến trên PLC xuống dưới $5\text{ ms}$, tránh hiện tượng nghẽn chu kỳ quét (Scan time).
So sánh hiệu suất:
+------------------------------------+------------------------------------+
| Hệ thống truyền thống | Hệ thống tích hợp Vision - PLC |
| (Không Camera) | (Đề tài nghiên cứu) |
+------------------------------------+------------------------------------+
| - Cần cơ cấu nắn thẳng phôi | - Đón phôi ở mọi góc xoay |
| - Tỷ lệ kẹt phôi: 4.5% | - Tỷ lệ gắp thành công: 98.2% |
| - Đổi loại sản phẩm mất 30-45 phút | - Đổi cấu hình bằng phần mềm (<1p) |
+------------------------------------+------------------------------------+
Ứng dụng thực tế và triển khai
Kịch bản ứng dụng thực tế
- Dây chuyền đóng gói thực phẩm & đồ uống: Đóng hộp sữa, bánh kẹo từ băng chuyền thứ cấp lên pallet trước khi bọc màng co.
- Kho vận thông minh (Smart Logistics / E-Commerce Fulfillment): Phân loại và xếp các kiện hàng có quy cách đồng nhất tại các trạm xuất hàng tự động.
- Nhà máy sản xuất linh kiện điện tử: Bốc xếp khay linh kiện vào thùng chứa tiêu chuẩn.
Yêu cầu hệ thống và hướng dẫn triển khai
Yêu cầu hệ thống:
- Phần cứng PLC: Siemens S7-1200 CPU 1212C DC/DC/DC, SB 1222 DQ4, Nguồn xung 24VDC/10A, 5VDC/5A.
- Máy tính thị giác (Vision Host): CPU Intel Core i3 trở lên, RAM 4GB, Cổng mạng Ethernet RJ45 100Mbps, Camera USB độ phân giải tối thiểu 720p @ 30fps.
- Môi trường phần mềm: Windows 10/11 64-bit, Python 3.8+, thư viện
python-snap7, opencv-python, numpy, TIA Portal V16+.
Quy trình cấu hình mạng triển khai:
[PC Host: 192.168.0.100] <==== Cáp CAT6 ====> [PLC S7-1200: 192.168.0.1]
Subnet Mask: 255.255.255.0 Rack: 0, Slot: 1
TIA Portal: Enable "Permit access with PUT/GET communication from remote partner"
Hướng dẫn xử lý sự cố (Troubleshooting Guide):
- Lỗi mất kết nối Snap7 (
CLI: function rejected by remote partner): Kiểm tra cấu hình thuộc tính DB trong TIA Portal, tắt chế độ "Optimized block access" và bật cho phép kết nối PUT/GET trong cấu hình Security của CPU.
- Động cơ bước bị rung giật hoặc trượt bước (Step Loss): Giảm giá trị gia tốc (
Acceleration) trong cấu hình Technology Object Axis; kiểm tra dòng cấp của Driver TB6600 (khuyến nghị cài đặt công tắc gạt $2.5\text{ A} - 3.0\text{ A}$).
- Camera nhận diện sai tâm khi phôi bị bóng: Điều chỉnh phân ngưỡng nhị phân thích nghi (Adaptive Threshold) hoặc lắp đặt nguồn sáng vòng LED trắng đồng trục chống lóa.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật hiện tại:
- Động cơ bước điều khiển vòng hở (Open-loop) chưa có Encoder phản hồi vị trí thực tế, tiềm ẩn sai số tích lũy nếu xảy ra va chạm cơ học.
- Cấu trúc vật liệu khung mô hình bằng Mica chịu lực giới hạn, độ rung cơ học xuất hiện khi tăng tốc độ chuyển động trên $200^\circ/\text{s}$.
- Thị giác máy tính 2D chỉ xử lý được bài toán phôi đơn lớp trên mặt phẳng cố định, chưa nhận diện được các khối hàng xếp chồng lộn xộn theo phương $Z$.
Hướng phát triển:
- Nâng cấp hệ thống truyền động sang Động cơ Servo AC/DC Closed-loop có phản hồi Encoder tuyệt đối để tăng độ chính xác lên $\pm 0.1\text{ mm}$ và tăng tốc độ chu trình lên $> 15\text{ sp/phút}$.
- Nâng cấp camera 2D thành Camera chiều sâu 3D (Intel RealSense / Stereovision) kết hợp thuật toán AI Deep Learning (YOLOv8-OBB) để phát hiện và bốc dỡ hàng hóa không định hình (Random Bin Picking).
- Mở rộng phần mềm PLC để xếp pallet linh hoạt từ 3 đến 5 tầng, tích hợp chuẩn truyền thông công nghiệp OPC UA kết nối hệ thống điều hành sản xuất MES/SCADA nhà máy.
Đối tượng hưởng lợi
+-------------------------------------------------------------------------+
| ĐỐI TƯỢNG HƯỞNG LỢI |
+-------------------------------------------------------------------------+
| [Sinh viên & Nghiên cứu sinh] --> Nền tảng thực nghiệm Động học Robot |
| & Tích hợp Vision - PLC S7-1200 |
| |
| [Kỹ sư Tự động hóa] --> Mẫu code Snap7 & Motion Control PTO |
| chuẩn công nghiệp dễ tái sử dụng |
| |
| [Doanh nghiệp Sản xuất] --> Giải pháp tự động hóa chi phí thấp, |
| ROI < 12 tháng, giảm 100% đồ gá |
+-------------------------------------------------------------------------+
- Sinh viên chuyên ngành Tự động hóa / Cơ điện tử: Cung cấp tài liệu hoàn chỉnh từ giải tích động học D-H, cấu hình phần cứng PLC, thiết kế mạch điện đến lập trình thị giác nhúng.
- Kỹ sư phát triển phần mềm công nghiệp: Tham khảo kiến trúc kết nối thời gian thực giữa Python AI/Vision và hệ thống PLC công nghiệp qua giao thức S7 Protocol không qua trung gian OPC server đắt tiền.
- Doanh nghiệp vừa và nhỏ (SMEs): Mô hình minh chứng tính khả thi của giải pháp tự động hóa dây chuyền đóng gói với chi phí chỉ bằng $20 - 30%$ so với việc trang bị các cánh tay robot công nghiệp nhập ngoại cỡ lớn.
Câu hỏi thường gặp
1. Yêu cầu cấu hình phần cứng tối thiểu để triển khai hệ thống là gì?
Hệ thống yêu cầu 01 PLC Siemens S7-1200 (CPU 1212C trở lên), 01 Signal Board SB 1222 DQ4, 04 Driver TB6600 (hoặc tương đương), 04 động cơ bước Nema 17/23, 01 Camera chuẩn USB 2.0/3.0 độ phân giải HD 720p, nguồn tổ ong 24VDC/10A và máy tính điều khiển chạy hệ điều hành Windows hoặc Linux có cổng LAN.
2. Hệ thống có thể mở rộng xếp pallet lên 3, 4 hoặc 5 tầng không?
Hoàn toàn có thể. Về mặt phần mềm, chỉ cần khai báo thêm các khối dữ liệu tọa độ DB_PALLET_LAYER_N và tham số hóa biến đếm tầng trong hàm chức năng FC1. Về mặt cơ khí, cần đảm bảo chiều cao sải tay trục $Z$ của robot đủ tầm với đến cao độ của tầng thứ $N$ mà không bị giới hạn điểm kỳ dị động học.
3. Tại sao sử dụng thư viện Snap7 thay vì giao tiếp OPC UA hay Modbus TCP?
Snap7 giao tiếp trực tiếp trên lớp ISO-on-TCP (Port 102) của giao thức Siemens S7 Communication độc quyền. Giải pháp này giúp đọc/ghi thẳng vào các vùng nhớ I, Q, M, DB của PLC với độ trễ cực thấp ($< 15\text{ ms}$), không yêu cầu license phần mềm trả phí và không đòi hỏi cấu hình máy chủ OPC trung gian phức tạp.
4. Khi sản phẩm thay đổi kích thước hoặc màu sắc, hệ thống có tự thích ứng được không?
Có. Trong thuật toán OpenCV, chương trình sử dụng phương pháp trích xuất biên minAreaRect dựa trên hình học và diện tích thay vì nhận diện theo mẫu cố định. Khi thay đổi kích thước sản phẩm, người vận hành chỉ cần cập nhật ngưỡng diện tích lọc nhiễu min_area và max_area trên tệp cấu hình Python mà không cần lập trình lại toàn bộ hệ thống.
5. Chi phí đầu tư chế tạo mô hình và thời gian hoàn vốn (ROI) ước tính như thế nào?
Chi phí linh kiện chế tạo mô hình thử nghiệm dao động khoảng 12 – 18 triệu VNĐ. Khi chuyển giao phiên bản công nghiệp hóa (sử dụng khung hợp kim nhôm và động cơ servo công nghiệp), chi phí ước tính khoảng 80 – 120 triệu VNĐ, mang lại thời gian thu hồi vốn (ROI) từ 8 đến 12 tháng nhờ cắt giảm 1–2 nhân công bốc xếp mỗi ca làm việc.
Kết luận
Đồ án tốt nghiệp "Nghiên cứu, thiết kế và chế tạo mô hình cánh tay robot bốc xếp hàng lên pallet" đã giải quyết thành công bài toán tự động hóa quá trình đóng gói và bốc xếp hàng hóa có tọa độ và góc xoay ngẫu nhiên. Thông qua việc kết hợp liên ngành giữa Cơ học Động học Robot, Xử lý ảnh Thị giác Máy tính (OpenCV/Python) và Kỹ thuật Điều khiển Chuyển động Công nghiệp (Siemens S7-1200 Motion Control), hệ thống chứng minh độ ổn định, khả năng định vị chính xác và năng suất vận hành thực tế cao.
Mô hình là nền tảng vững chắc để tiếp tục phát triển lên các giải pháp cánh tay robot công nghiệp tự hành, tích hợp trí tuệ nhân tạo nhận diện đa đối tượng trong các nhà máy thông minh (Smart Factory) tương lai.