Lê Văn Chung<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
118(04): 113 - 118<br />
<br />
NÂNG CAO CHẤT LƯỢNG ĐIỀU KHIỂN ROBOT SCARA 4 BẬC TỰ DO<br />
Lê Văn Chung*<br />
Trường ĐH Công nghệ thông tin và Truyền thông – ĐH Thái Nguyên<br />
<br />
TÓM TẮT<br />
Bài báo này đưa ra phương pháp điều khiển động lực học ngược thích nghi trên cơ sở của luật điều<br />
khiển động lực học ngược với các tham số của robot SCARA được nhận dạng bởi khâu nhận dạng<br />
online và tín hiệu điều khiển phụ có cấu trúc PD. Thuật toán điều khiển robot SCARA 4 bậc tự do<br />
sao cho các khớp đạt được vị trí đặt mong muốn khi có ảnh hưởng của các tham số bất định. Độ ổn<br />
định của hệ thống đã được chứng là ổn định tiệm cận tại gốc tọa độ 0 theo lý thuyết ổn định<br />
Lyapunov.<br />
Từ khóa: Rô bốt, SCARA, thích nghi, nhận dạng online .<br />
<br />
GIỚI THIỆU*<br />
Rô bốt ngày càng được ứng dụng trong công<br />
nghiệp. Các phương pháp điều khiển hiện đại<br />
cho rô bốt ngày càng được ứng dụng nhiều để<br />
tăng sự hoạt động ổn định của rô bốt. Rô bốt<br />
SCARA (Selective Compliant Assembly<br />
Robot Arm hoặc Selective Compliant<br />
Articulated Robot Arm) được nghiên cứu ra<br />
từ những năm 1979 là tay máy lắp ráp chọn<br />
lọc. Trong bài báo này rô bốt SCARA có cấu<br />
tạo gồm 4 khớp trong đó 2 khớp quay ở cánh<br />
tay, 1 khớp quay ở cổ tay và 1 khớp tinh tiến,<br />
các khớp quay hoạt động nhờ các động cơ<br />
điện một chiều có phản hồi vị trí tạo 1 vòng<br />
điều khiển kín, chuyển động tịnh tiến theo<br />
phương thẳng đứng được thực hiện bằng<br />
pittông khí nén. Do chuyển động của rô bốt<br />
SCARA tương đối dễ trong việc điều khiển<br />
nên nó được sử dụng nhiều trong công<br />
nghiệp. Mô hình rô bốt SCARA được mô tả<br />
như trong hình 1.<br />
MÔ HÌNH ĐỘNG LỰC HỌC RÔ BỐT<br />
Trước tiên ta tìm ma trận chuyển đổi đồng nhất<br />
từ hệ tọa độ O4X4Y4Z4 về hệ tọa độ gốc. Hệ<br />
toạ độ quy chiếu của robot được xác định theo<br />
quy tắc David - Hetenberg như trên hình 1.<br />
Bảng D-H [1]:<br />
Khớp<br />
1<br />
2<br />
3<br />
4<br />
*<br />
<br />
θ<br />
θ1<br />
θ2<br />
0<br />
θ4<br />
<br />
α<br />
0<br />
180o<br />
0<br />
0<br />
<br />
α<br />
α1<br />
α2<br />
0<br />
0<br />
<br />
d<br />
0<br />
0<br />
d3<br />
0<br />
<br />
Hình 1. Mô hình rô bốt SCARA<br />
<br />
Ma trận chuyển hệ tọa độ O4X4Y4Z4 về gốc<br />
tọa độ:<br />
(1)<br />
<br />
Trong đó ký hiệu:<br />
<br />
Từ thế năng và động năng của các khớp ta có<br />
phương trình Lagrange:<br />
<br />
Tel: 01654236119; Email: lvchung@ictu.edu.vn<br />
<br />
113<br />
<br />
Lê Văn Chung<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
(2)<br />
Giải phương trình lực đặt lên các khớp và viết<br />
lại dưới dạng ma trận ta có phương trình động<br />
lực học của robot SCARA:<br />
(3)<br />
Với các thành phần:<br />
<br />
nghi được thiết kế với mục đích đảm bảo khử<br />
hoàn toàn tính phi tuyến và ràng buộc của hệ<br />
thống trong trường hợp các tham số robot<br />
không được xác định chính xác.<br />
Bộ điều khiển động lực học ngược thích nghi<br />
sẽ được xây dựng trên cơ sở của luật điều<br />
khiển động lực học ngược với các tham số sử<br />
dụng trong tính toán luật điều khiển được<br />
nhận dạng bởi khâu nhận dạng online. Khi đó<br />
phương trình luật điều khiển được biểu diễn ở<br />
dạng sau:<br />
<br />
(6)<br />
•<br />
<br />
: là ma trận moment.<br />
<br />
•<br />
<br />
: là ma trận các thành phần gia tốc<br />
khớp với<br />
<br />
là thành phần gia tốc khớp i<br />
<br />
tác động tới khớp j được tính từ moment<br />
tác động lên các khớp.<br />
(5)<br />
<br />
•<br />
<br />
là các ma trận<br />
<br />
,<br />
ước<br />
<br />
(4)<br />
•<br />
<br />
118(04): 113 - 118<br />
<br />
lượng<br />
<br />
củ a<br />
<br />
các<br />
ma<br />
trận<br />
được tính toán từ<br />
<br />
các tham số nhận dạng trong quá trình<br />
làm việc.<br />
•<br />
là vector sai số vị trí của khớp<br />
•<br />
<br />
robot.<br />
là các ma trận đường chéo<br />
<br />
Thiết kế bộ điều khiển<br />
Cân bằng đầu ra của bộ điều khiển (6) và đầu<br />
vào mô hình robot, với sử dụng các ký hiệu<br />
đã nêu ta nhận được phương trình sau:<br />
<br />
: là ma trận các thành phần tốc độ<br />
(7)<br />
<br />
khớp,<br />
•<br />
<br />
: là ma trận trọng trường.<br />
<br />
PHƯƠNG PHÁP ĐỘNG LỰC HỌC<br />
NGƯỢC THÍCH NGHI ĐIỀU KHIỂN<br />
RÔBỐT SCARA<br />
Hệ thống điều với bộ điều khiển cấu trúc PID<br />
thông thường chỉ thực hiện được khi tất cả<br />
các tham số robot được xác định chính xác.<br />
Nhưng nếu giá trị các tham số sử dụng trong<br />
tính toán bộ điều khiển có nhiều yếu tố bất<br />
định như tính phi tuyến và sự ràng buộc của<br />
hệ thống động lực học không được khử hoàn<br />
toàn thì độ chính xác điều khiển sẽ giảm,<br />
không đáp ứng tốt với các yêu cầu về độ ổn<br />
định. Bộ điều khiển động lực học ngược thích<br />
114<br />
<br />
(8)<br />
Trong đó:<br />
•<br />
<br />
ma trận sai<br />
lệnh ước lượng của<br />
<br />
•<br />
<br />
ma trận<br />
sai lệch ước lượng của<br />
<br />
•<br />
<br />
ma trận sai lệch<br />
ước lượng của<br />
<br />
Lê Văn Chung<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
Phương trình (8) được viết lại ở dạng sau:<br />
<br />
118(04): 113 - 118<br />
<br />
Từ phương trình (11), phương trình sai số của<br />
một khớp được viết ở dạng sau:<br />
<br />
(9)<br />
Trong đó:<br />
<br />
(12)<br />
<br />
là<br />
vector sai lệch mômen gây ra bởi sai lệch<br />
nhận dạng tham số<br />
Phương trình (9) biểu thị quan hệ giữa sai số<br />
điều khiển (sai số vị trí khớp ) và sai số<br />
nhận dạng tham số<br />
. Khi các tham số<br />
robot được ước lượng chính xác, tức các ma<br />
trận sai lệch<br />
đều<br />
<br />
Trong đó:<br />
thành phần hàng thứ<br />
<br />
Đặt<br />
<br />
thái<br />
<br />
bằng không, phương trình (9) sẽ có dạng:<br />
Điều đó có nghĩa là có thể tính toán được<br />
,<br />
để sai số điều khiển hội tụ về không với<br />
tốc độ hội tụ mong muốn<br />
Sử dụng thuộc tính tuyến tính của phương<br />
trình động lực học robot, vector sai lệch<br />
mômen có thể phân tích thành hai thành phần<br />
và phương trình được viết ở dạng sau:<br />
<br />
(11)<br />
Trong đó:<br />
•<br />
vector chứa các sai lệch của tham số<br />
robot chưa biết cần ước lượng.<br />
<br />
là<br />
<br />
vector<br />
sai<br />
<br />
lệch<br />
<br />
của ma trận<br />
<br />
biến<br />
<br />
trạng<br />
thái:<br />
là vector trạng<br />
<br />
của<br />
<br />
khớp<br />
<br />
và<br />
<br />
là vector trạng thái sai<br />
lệch của robot. Khi đó phương trình trạng thái<br />
của một khớp sẽ có dạng:<br />
(13)<br />
Trong đó:<br />
,<br />
Sơ đồ khối của hệ thống điều khiển<br />
Sơ đồ khối của hệ thống điều khiển có dạng<br />
như hình 2.<br />
<br />
Luật thích<br />
nghi<br />
<br />
Hình 2. Sơ đồ khối hệ thống điều khiển động lực học ngược thích nghi<br />
<br />
115<br />
<br />
Lê Văn Chung<br />
<br />
Tạp chí KHOA HỌC & CÔNG NGHỆ<br />
<br />
Trong sơ đồ trên thì KP và KD là các thông số<br />
của bộ điều khiển PD được chỉnh định theo<br />
phương pháp PD bù trọng trường.<br />
Chứng minh:<br />
Thuật toán nhận dạng thích nghi được xây<br />
dựng sử dụng tiêu chuẩn ổn định Lyapunov.<br />
Chọn hàm Lyapunov có dạng:<br />
<br />
118(04): 113 - 118<br />
<br />
MÔ PHỎNG<br />
Tiến hành mô phỏng hệ thống trên MatLab<br />
Simulink với các thông số của rô bốt như sau:<br />
<br />
(14)<br />
;<br />
<br />
Trong đó:<br />
•<br />
<br />
2<br />
<br />
là ma trận đối xứng xác định dương.<br />
<br />
•<br />
<br />
là ma trận đường chéo xác định dương<br />
<br />
Đạo hàm của và sử dụng (13), sau một số<br />
biến đổi nhận được:<br />
<br />
(15)<br />
<br />
Chọn:<br />
(15a)<br />
<br />
đối xứng xác định dương nên:<br />
<br />
Vì<br />
<br />