Professional Documents
Culture Documents
Thiết Kế, Mô Phỏng, Chế Tạo Và Điều Khiển Cánh Tay Robot 3 Bậc Tự Do - 1421861
Thiết Kế, Mô Phỏng, Chế Tạo Và Điều Khiển Cánh Tay Robot 3 Bậc Tự Do - 1421861
Ngày toà soạn nhận bài 20/2/2021, ngày phản biện đánh giá 6/4/2021, ngày chấp nhận đăng 6/5/2021.
TÓM TẮT
Bài báo này hướng đến phương pháp nghiên cứu cách thức chế tạo, mô phỏng và điều
khiển một mô hình cánh tay robot 3 bậc di chuyển linh hoạt trong một mặt phẳng. Đầu tiên,
quá trình thiết kế mô hình cánh tay robot 3 bậc được thực hiện trên nền tảng Solidworks. Tiếp
theo, mô phỏng và tính toán bộ điều khiển PD của cánh tay robot được thực hiện trên
Matlab- Simulink với thư viện Simscape Multibody để đánh giá hiệu quả của mô hình và bộ
điều khiển. Sau đó, mô hình thực của cánh tay robot được chế tạo cùng với tủ điều khiển.
Cuối cùng, mô hình cánh tay robot đã được điều khiển di chuyển bám theo tín hiệu đặt trong
mặt phẳng bằng bộ điều khiển PD được nhúng trên vi điều khiển STM32F4 và thu thập dữ
liệu về máy tính. Bằng việc áp dụng quy trình trên trong thiết kế robot, nó không chỉ giúp
giảm thiểu chi phí và thời gian mà còn nâng cao hiệu quả trong việc thiết kế bộ điều khiển
cho robot.
Từ khóa: bộ điều khiển PD; phân tích động học; Simscape Multibody; cánh tay robot nối tiếp
3 bậc tự do trong mặt phẳng; vi điều khiển STM32F4 .
ABSTRACT
This paper aims to study how to fabricate, simulate and control a 3-degree of freedom
(DOFs) robot arm that moves flexibly in a plane. First, the design process of the 3-DOFs
robot arm model is done on the Solidworks platform. Next, the simulation and calculation of
the PD controller of the robot arm are implemented on Matlab-Simulink with Simscape
Multibody library to evaluate the effectiveness of the model and the control design. Then, the
real model of the robot arm is fabricated with the control box. Finally, a real robot arm was
controlled to move following the reference in the plane with the PD controller embedded on
the STM32F4 microcontroller and collected data about the computer. By applying this
procedure in robot design, it helps to not only minimize the cost and time but also improve the
efficiency in the controller design for the robot.
Keywords: PD Control; kinematic analysis; Simscape Multibody; 3-DOF planar robotic
manipulator; Microcontrollers STM32F4
nghiệp thông minh và robot sử dụng trong của thế giới, chưa có đủ khả năng làm chủ
nhà [1]. công nghệ cũng như phát triển công nghệ
phù hợp. Có rất ít công ty sản xuất và phân
Tại Việt Nam: Tổng Giám đốc ABB
phối sản phẩm trong nước. Nếu có thì hầu hết
Việt Nam, ông Brian Hull cho biết, sản lượng
sản phẩm thuộc phân loại robot công nghiệp
của ABB (một trong những thương hiệu lớn
truyền thống, hạn chế về tính thông minh,
trong ngành robot thế giới) tại Việt Nam
bậc tự do, kỹ năng động lực học nâng cao.
trong 3 năm gần đây đã tăng trưởng 2 con số
mỗi năm. Tập đoàn này đã dành 50% sản Để hiểu rõ về bản chất của các kết cấu
lượng tại Việt Nam để xuất khẩu, phần còn cơ khí, cách thức tạo ra một mô hình robot,
lại phục vụ tại thị trường nội địa. Ngoài cách lập trình và điều khiển một cánh tay
ABB, một số các tên tuổi trong ngành robotic robot do mình tự chế tạo ra và xa hơn nữa là
khác cũng xuất hiện tại Việt Nam như làm chủ kỹ thuật chế tạo robot trong tương
Universal Robots (UR), ABB, Yaskawa lai, bài báo này sẽ phân tích quá trình thiết kế
Kuka... Chẳng hạn, Vinamilk đã chi hàng cánh tay robot bằng phần mềm Solidworks
ngàn tỉ đồng cho tự động hóa. Xu hướng này sau đó mô phỏng cánh tay robot đã thiết kế
không chỉ áp dụng cho các doanh nghiệp tư trên Simscape Multibody và tiến hành thi
nhân, Tập đoàn Điện lực Việt Nam cũng bắt công phần cứng của robot. Cuối cùng là điều
đầu tìm hiểu các giải pháp kỹ thuật số cho khiển mô hình thực của robot di chuyển
các trạm biến áp và nhà máy điện [2]. trong mặt phẳng bám theo tín hiệu đặt thông
qua vi điều khiển STM32F4 bằng bộ điều
Trên thế giới, các giải thuật điều khiển
khiển PD rồi gửi tín hiệu về máy tính.
nâng cao như điều khiển PID [3], điều khiển
trượt [4], điều khiển cuốn chiếu [5],… đã Cấu trúc của bài báo được tổ chức như
được triển khai để giải quyết vấn đề điều sau: phần 2 miêu tả về động học thuận động
khiển bám cho robot dưới sự tồn tại của các học nghịch của robot 3 bậc tự do và bộ điều
thông số không chắc chắn. Ngoài ra, các bộ khiển PD. Phần 3 trình bày các bước trong
điều khiển trở kháng (impedance control) [6], quá trình thiết kế robot. Phần 4 và phần 5
điều khiển kiểm soát lỗi [7,8], điều khiển lực trình bày và thảo luận về các kết quả đạt
[9] và điều khiển tối ưu [10] đã được phát được lần lượt trong mô phỏng và trong thực
triển và áp dụng cho cánh tay máy để cải nghiệm. Cuối cùng, phần 6 đưa ra kết luận về
thiện độ tin cậy, tuổi thọ và an toàn khi các những vấn đề đạt được và cần phát triển.
cánh tay máy hoạt động cùng nhau hay cùng
2. MIÊU TẢ ROBOT 3 BẬC TỰ DO
với con người [11]. Từ những kết quả nghiên
cứu trên, ta có thể thấy các vấn đề liên quan Cánh tay robot 3 bậc tự do di chuyển
tới robot đã và đang thu hút được sự quan trên một mặt phẳng thông qua ba khớp xoay,
tâm của rất nhiều nhà nghiên cứu ở các mỗi khớp này được dẫn động bằng dây đai
trường đại học, viện nghiên cứu và các công tới các động cơ tương ứng đặt ở đế, cấu trúc
ty công nghệ ở trên thế giới. này được thể hiện ở Hình 1.
Còn ở Việt Nam, robot công nghiệp đã
được quan tâm nghiên cứu nhưng mới chỉ
dừng ở việc đưa ra mô hình và đi tìm thuật
toán giải bài toán động lực học cho robot
phục vụ điều khiển chuyển động, chưa chủ
động được quá trình thiết kế và chế tạo robot
đáp ứng yêu cầu cụ thể. Robot nói chung và
robot công nghiệp thông minh nói riêng đang
được sử dụng tại Việt Nam phần lớn được
nhập khẩu. Robot được chế tạo tại Việt Nam
còn rất ít và hầu hết sử dụng công nghệ cũ Hình 1. Mô hình Robot
Tạp Chí Khoa Học Giáo Dục Kỹ Thuật Số 64 (06/2021)
42 Trường Đại Học Sư Phạm Kỹ Thuật TP. Hồ Chí Minh
2.1 Động học thuận tay máy Với 0T1, 1T2, 2T3 được tính như sau :
c1 −s1 0 L1 c1
0 s 1 c1 0 L1 s1
1T = [ ] (3)
0 0 1 0
0 0 0 1
c2 −s2 0 L2 c2
1 s 2 c 2 0 L2 s2
2T = [ ] (4)
0 0 1 0
0 0 0 1
c3 −s3 0 L3 c3
2 s 3 c 3 0 L3 s3
Hình 2. Mô hình gắn trục tay máy 3 bậc tự do 3T = [ ] (5)
0 0 1 0
Mô tả động học của cánh tay robot dựa 0 0 0 1
trên quy tắc Denavit - Hartenberg (DH), quy tắc Trong đó, 𝑠𝑖 = sin 𝜃𝑖 , và 𝑐𝑖 = 𝑐𝑜𝑠𝜃𝑖 với (𝑖 =
giúp xác định số bậc tự do và số khâu liên kết. 1,2,3).
Hình 2 là mô hình gắn trục của cánh tay robot
có 3 khớp liên kết, hệ trục tọa độ được gắn ở Từ phương trình (2) suy ra 03𝑇:
mỗi khớp xoay, trục z có hướng trùng với c123 −s123 0 Px
hướng của trục khớp xoay (có hướng từ trong 0 s123 c123 0 Py (6)
ra ngoài), trục x có hướng của khâu trước. 3T = [ ]
0 0 1 Pz
Dựa trên mô hình gắn trục tay máy ba 0 0 0 1
bậc tự do, bảng thông số D-H được lập ra Trong đó 𝑠12 = sin(θ1 + θ2 ); c12 =
như trong Bảng 1. cos(θ1 + θ2 ); 𝑠123 = sin(θ1 + θ2 + θ3 );
c123 = cos(θ1 + θ2 + θ3 ); 𝑃𝑥 , 𝑃𝑦 , 𝑃𝑧 là vị trí
Bảng 1. Bảng thông số Denavit-Hartenberg
(D-H) của Robot trong hệ tọa độ Oxyz, giá trị của
mỗi biến số này được thể hiện ở phương
ii ai αi di 𝜃𝑖
trình (7), (8) và (9).
1 𝐿1 0 0 𝜃1
𝑃𝑥 = 𝐿1 𝑐1 + 𝐿2 𝑐12 + 𝐿3 𝑐123 (7)
2 𝐿2 0 0 𝜃2
3 𝐿3 0 0 𝜃2 𝑃𝑦 = 𝐿1 𝑠1 + 𝐿2 𝑠12 + 𝐿3 𝑠123 (8)
Từ phương trình tính động học thuận đặt: Lưu ý 1: Với KP (độ lợi tỉ lệ) giá trị càng
lớn thì đáp ứng càng nhanh do đó sai số càng
𝑥 = 𝑝𝑥 − 𝐿3 𝑐𝑜𝑠(𝛾) = 𝐿1 . 𝑐1 + 𝐿2 . 𝑐12 (11)
lớn, bù khâu tỉ lệ càng lớn. Một giá trị độ lợi
𝑦 = 𝑝𝑦 − 𝐿3 . 𝑠𝑖𝑛(𝛾) = 𝐿1 . 𝑠1 + 𝐿2 . 𝑠12 (12) tỉ lệ quá lớn sẽ dẫn đến quá trình mất ổn định
𝑥 2 + 𝑦 2 = 𝐿1 2 + 𝐿2 2 − 2𝐿1 𝐿2 𝑐(180 (13) và dao động. KD (độ lợi vi phân) giá trị càng
+ 𝜃2 ) lớn càng giảm độ vọt lố, nhưng lại làm chậm
đáp ứng quá độ và có thể dẫn đến mất ổn
Đặt: 𝑎 = 𝑐2 định do khuếch đại nhiễu tín hiệu trong phép
vi phân sai số.
𝑥 2 + 𝑦 2 − 𝐿2 2 − 𝐿1 2 (14)
𝑎= 3. QUY TRÌNH THIẾT KẾ MÔ HÌNH
2𝐿1 𝐿2
VÀ BỘ ĐIỀU KHIỂN
Suy ra: 𝜃2 = 𝑎𝑡𝑎𝑛(𝑎; ±√1 − 𝑎2 ) (15)
Mô hình cánh tay robot và bộ điều khiển
Ta có : 𝛽 = 𝑎𝑡𝑎𝑛2(𝑦, 𝑥) (16) được thiết kế qua các bước sau. Bước 1:
Thiết kế mô hình trên phần mềm Solidworks;
Đặt: 𝑏 = 𝑐𝑜𝑠(𝜓)
Bước 2: Sử dụng Simscape Multibody
𝑥 2 + 𝑦 2 + 𝐿1 2 − 𝐿2 2 (17) chuyển đổi mô hình cánh tay robot từ
𝑏= Solidworks sang Matlab-Simulink; Bước 3:
2𝐿1 2 √𝑥 2 + 𝑦 2
Tính toán động học thuận-nghịch; Bước 4:
𝜓 = 𝑎𝑐𝑜𝑠(𝑏) (18) Lập quỹ đạo cho cánh tay máy; Bước 5: Sử
𝜃1 = 𝛽 ± 𝜓 (19) dụng Matlab-Simulink lập trình, áp dụng bộ
điều khiển PD vào mô phỏng và đánh giá, lập
𝜃2 = 𝑎𝑡𝑎𝑛(𝑎; ±√1 − 𝑎2 ) (20) trình cho board STM32F4; Bước 6: Thi
(b)
Hình 7. Chương trình mô phỏng
Với quỹ đạo di chuyển của cánh tay
robot là một đường tròn trong mặt phẳng oxy
với tâm I (0.15; 0.2) bán kính r = 0.1m và
góc γ=00 được thể hiện ở Hình 5.
(c)
Hình 10 thể hiện sự sai số các khớp so 400mm để truyền lực cho puly ở trục thứ 2
với giá trị đặt, trong đó: đường màu xanh và 1 dây đai GT2 400mm để truyền lực cho
dương thể hiện sự sai số của khớp thứ nhất , puly ở trục cuối. Về phần thiết bị điện mô
màu đỏ thể hiện sai số cho khớp thứ 2 và hình sử dụng 3 Động cơ JGB37-520 DC
đường màu đen lá cây thể hiện sai số cho Geared Motor, 1 board điều khiển STM32F4
khớp thứ 3, thông qua đó ta có thể dễ dàng discovery, 2 mạch công suất L298N 2A V2
nhận thấy rằng quỹ đạo di chuyển theo hình và 3 encoder cảm biến từ trường Hall được
tròn có thời gian xác lập nhanh (0.2s) tuy tích hợp sẵn vào động cơ. Tất cả thiết bị
nhiên sai số tối đa khá cao ở cả 3 khớp thứ được kết nối theo sơ đồ khối Hình 11 và kết
nhất (9 độ), khớp thứ 3 (7 độ) và ở khớp thứ quả của quá trình chế tạo được thể hiện ở
2 chỉ là (4 độ). Hình 12.
Hình 10. Sai số của 3 khớp so với giá trị đặt Hình 12. Mô hình thực tế của đề tài
5. KẾT QUẢ THỰC NGHIỆM
(a)
từ Solidworks kết hợp với tủ điện. Công cụ thể được đính kèm trong link video ở phần
Waijung Blockset hỗ trợ việc nạp chương phụ lục.
trình từ Matlab-Simulink vào vi xử lý Phần cứng của robot chưa đáp ứng được
STM32F4 để điều khiển mô hình cánh tay lực căng của đai. Vì thế hướng phát triển
robot với động cơ DC Servo có bộ điều khiển trong tương lai cần thiết kế cơ cấu tự động
vòng kín phản hồi chính xác vị trí của động điều chỉnh lực căng đai, đồng thời phát triển
cơ, từ đó điều khiển tín hiệu ngõ ra bám sát các giải thuật điều khiển khác như Fuzzy
với giá trị đặt thông qua bộ điều khiển PD. PID, điều khiển trượt thích nghi để so sánh
Quy trình thực hiện và một vài hướng dẫn cụ với bộ điều khiển PD hiện tại.
PHỤ LỤC
Video hướng dẫn và quy trình thực hiện:
https://www.youtube.com/watch?v=9lxGQ2fCpZU&list=PLQNPCSZxuW_ONccN1XOkHR
FTUSMu549sL&index