I. Tổng quan về điều khiển cánh tay robot trong kỹ thuật tự động hóa
Điều khiển cánh tay robot là một lĩnh vực trọng tâm trong kỹ thuật điều khiển và tự động hóa. Cánh tay robot được sử dụng rộng rãi trong công nghiệp sản xuất, lắp ráp và gia công. Đồ án này thuộc chuyên ngành Tự động hóa công nghiệp, nghiên cứu thiết kế và điều khiển cánh tay robot 3 bậc tự do. Hệ thống sử dụng động cơ servo SG90 kết hợp mạch Arduino UNO R3 làm bộ điều khiển trung tâm. Phần mềm Matlab đảm nhận vai trò tính toán động học và giao diện điều khiển. Cánh tay robot EEZY là mô hình vật lý được lựa chọn cho đề tài. Bài toán động học thuận và động học ngược là hai bài toán cốt lõi cần giải quyết. Động học thuận xác định vị trí đầu cuối dựa trên góc quay các khâu. Động học ngược tính toán góc quay cần thiết để đạt vị trí mục tiêu. Phương pháp Denavit-Hartenberg được áp dụng để thiết lập hệ phương trình mô tả chuyển động. Đây là nền tảng quan trọng cho việc lập trình và điều khiển robot chạy theo quỹ đạo mong muốn.
1.1. Bậc tự do và cấu trúc cánh tay robot
Bậc tự do (DOF - Degree Of Freedom) là số tham số độc lập xác định vị trí và hướng của robot trong không gian. Cánh tay robot trong đồ án có 3 bậc tự do, cho phép di chuyển trong mặt phẳng và xoay quanh trục. Mỗi bậc tự do tương ứng với một khớp quay được điều khiển bởi động cơ servo. Cấu trúc gồm ba khâu nối tiếp, khâu cuối là bộ chấp hành thực hiện nhiệm vụ. Số bậc tự do quyết định khả năng linh hoạt và vùng làm việc của robot. Với 3 bậc tự do, robot có thể tiếp cận các điểm trong không gian làm việc hạn chế nhưng đủ cho nhiều ứng dụng công nghiệp đơn giản.
1.2. Ứng dụng thực tiễn của cánh tay robot công nghiệp
Cánh tay robot công nghiệp được ứng dụng trong nhiều lĩnh vực sản xuất hiện đại. Trong lắp ráp điện tử, robot thực hiện các thao tác chính xác với tốc độ cao. Ngành ô tô sử dụng robot để hàn, sơn và lắp ráp linh kiện. Trong y tế, cánh tay robot hỗ trợ phẫu thuật với độ chính xác vượt trội. Nông nghiệp áp dụng robot để thu hoạch và phân loại sản phẩm. Các dây chuyền đóng gói và palletizing cũng依赖 robot cánh tay. Với chi phí giảm dần, robot nhỏ gọn như mô hình trong đồ án ngày càng phổ biến trong doanh nghiệp vừa và nhỏ. Việc nghiên cứu điều khiển cánh tay robot giúp sinh viên nắm vững nguyên lý và ứng dụng thực tế.
II. Phân tích bài toán động học cánh tay robot 3 bậc tự do
Bài toán động học là nền tảng toán học của mọi hệ thống robot. Động học thuận (Forward Kinematics) xác định vị trí và hướng của đầu cuối robot khi biết góc quay tại các khớp. Công cụ chính là ma trận biến đổi tọa độ Denavit-Hartenberg (DH). Mỗi khâu robot được mô tả bằng bốn thông số DH gồm góc quay theta, khoảng cách d, chiều dài khâu a và góc xoắn alpha. Ma trận A tổng hợp các phép biến đổi tịnh tiến và quay giữa hai hệ tọa độ liên tiếp. Nhân các ma trận A theo chuỗi sẽ thu được ma trận tổng quát T mô tả vị trí đầu cuối. Động học ngược (Inverse Kinematics) giải quyết bài toán ngược lại: tìm góc quay khi biết vị trí mong muốn. Bài toán này thường phức tạp hơn do có thể tồn tại nhiều nghiệm hoặc không có nghiệm. Phương pháp giải sử dụng hàm arctan2 và các quan hệ hình học. Với cánh tay 3 bậc tự do, hệ phương trình động học được thiết lập dựa trên bảng thông số DH đã xác định.
2.1. Thiết lập hệ trục tọa độ và bảng thông số DH
2.2. Giải bài toán động học thuận và động học ngược
III. Giải pháp điều khiển cánh tay robot bằng Arduino và Matlab
Hệ thống điều khiển cánh tay robot sử dụng kết hợp phần cứng Arduino và phần mềm Matlab. Mạch Arduino UNO R3 đóng vai trò bộ điều khiển trung tâm, gửi tín hiệu PWM đến các động cơ servo SG90. Board mở rộng Arduino Nano giúp kết nối nhiều động cơ đồng thời. Động cơ servo SG90 hoạt động dựa trên tín hiệu PWM với góc quay từ 0 đến 180 độ. Phần mềm Matlab đảm nhận tính toán động học và truyền dữ liệu đến Arduino qua cổng serial. Giao diện điều khiển trên Matlab cho phép người dùng nhập tọa độ mục tiêu. Hệ thống tự động tính toán góc quay và gửi lệnh điều khiển. Quy trình hoạt động gồm ba bước chính: nhập tọa độ, giải động học ngược và điều khiển động cơ. Mô hình phần cứng hoàn chỉnh bao gồm cánh tay robot, mạch điều khiển và dây kết nối. Hệ thống được kiểm tra với nhiều vị trí mục tiêu khác nhau để đánh giá độ chính xác.
3.1. Thiết kế phần cứng và sơ đồ đấu nối
3.2. Thiết kế phần mềm và giao diện điều khiển
IV. Kết quả đạt được và hướng phát triển cánh tay robot
Đồ án đã đạt được các mục tiêu đề ra ban đầu. Hệ thống giải được bài toán động học thuận và động học ngược cho cánh tay robot 3 bậc tự do. Phần cứng hoạt động ổn định, các động cơ servo quay đúng theo góc mong muốn. Giao diện Matlab cho phép điều khiển robot trực quan và dễ sử dụng. Robot chạy được theo chuỗi các vị trí mong muốn cho trước. Tuy nhiên, đồ án vẫn còn một số hạn chế cần cải thiện. Chất lượng phần cứng giá rẻ dẫn đến sai số trong điều khiển. Bài toán động học ngược gặp lỗi ở trường hợp đặc biệt khi robot ngửa hết cỡ. Hàm arctan2 trả về nghiệm không đúng trong tình huống biên. Nhóm chưa tìm ra giải pháp triệt để cho hạn chế này. Hướng phát triển bao gồm nâng cấp phần cứng chính xác hơn, áp dụng điều khiển PID và mở rộng số bậc tự do cho robot.