2.1.1. Lịch sử phát triển của Robot Almega 16.Robot Almega 16 là Robot được sản xuất ở Nhật Bản cũng đã khá lâu, có 6 trục quay, được thiết kế riêng cho ngành công nghiệp chế tạo sử dụng tự động hóa dựa trên các tay máy có tính linh hoạt được ứng dụng rất mạnh trong công nghiệp như vận chuyển, sắp xếp, đóng gói hàng, đặc biệt là trong ngành phun sơn, hàn…, nó có một cấu trúc mở để đáp ứng yêu cầu sử dụng linh hoạt và có thể giao tiếp một cách sâu rộng với các hệ thống bên ngoài. Cơ cấu của Robot được thiết kể một cách chắc chắn, có thể chịu đựng được các môi trường khắc nhiệt hay những đòi hỏi khắt khe của mối trường. Các phần trụ, đệm, bánh răng và các phần nhạy cảm khác đều được bảo vệ một cách rất tốt. Ngày nay Robot Almega 16 này được sử dụng với nhiều phiên bản khác nhau tùy thuộc vào khả năng thích ứng với môi trường và có thể được trang bị các phần mềm ứng dụng tùy theo các yêu cầu ứng dụng. Chương 1: Tổng quan về Robot công nghiệpChương 2: Nghiên cứu Robot Almega 16Phương trình động học thuậnPhương trình động lực họcChương 3: Thuật toán điều khiển thích nghi LiSlotine cho hệ chuyển động Robot Almega 16Nội dung phương phápTính toán áp dụng cho Robot Almega 16Chương 4: Mô phỏng và kết luậnGiới thiệu phương trình mô phỏng MatlabSimulink và MatlabSimechanicMô phỏng cho 3 khớp đầu sao cho vị trí khớp thực bám vị trí khớp đặt với sai số cho phép < 0.1
Trang 1BỘ CÔNG THƯƠNGTRƯỜNG ĐẠI HỌC KINH TÊ - KỸ THUẬT CÔNG NGHIỆP
LUẬN VĂN TỐT NGHIỆP
TÊN ĐỀ TÀI LUẬN VĂN:
Nghiên cứu và ứng dụng các thuật toán điều khiển thích nghi Li-Slotine cho hệchuyển động Robot Almega 16
Ngành đào tạo: KỸ THUẬT ĐIỆN
Mã số ngành: 103
Họ và tên sinh viên: Nguyễn Minh Đông
Người hướng dẫn luận văn tốt nghiệp
1 TS Võ Thu Hà
Hà nội - Năm 2012
Trang 2Đề tài 2 Tên đề tài:
Nghiên cứu và ứng dụng các thuật toán điều khiển thích nghi Li-Slotine cho
hệ chuyển động Robot Almega 16
Nội dung đồ án:
Mục tiêu đề tài: Điều khiển bám quỹ đạo chính xác
Tên sinh viên: Nguyễn Minh Đông
Chương 1: Tổng quan về Robot công nghiệp
Chương 2: Nghiên cứu Robot Almega 16
- Phương trình động học thuận
- Phương trình động lực học
Chương 3: Thuật toán điều khiển thích nghi Li-Slotine cho hệ chuyển động Robot Almega 16
- Nội dung phương pháp
- Tính toán áp dụng cho Robot Almega 16
Chương 4: Mô phỏng và kết luận
- Giới thiệu phương trình mô phỏng Matlab/Simulink và
Matlab/Simechanic
- Mô phỏng cho 3 khớp đầu sao cho vị trí khớp thực bám vị trí khớp đặt với sai số cho phép < 0.1
Trang 3Giảng Viên Hướng Dẫn
Võ Thu Hà CHƯƠNG 2: NGHIÊN CỨU ROBOT ALMEGA 16.
2.1.GIỚI THIỆU VỀ ROBOT ALMEGA 16
2.1.1 Lịch sử phát triển của Robot Almega 16.
Hình 2.1 Mô hình robot Almega 16
Robot Almega 16 là Robot được sản xuất ở Nhật Bản cũng đã khá lâu, có 6trục quay, được thiết kế riêng cho ngành công nghiệp chế tạo sử dụng tự động hóa
Trang 4dựa trên các tay máy có tính linh hoạt được ứng dụng rất mạnh trong công nghiệpnhư vận chuyển, sắp xếp, đóng gói hàng, đặc biệt là trong ngành phun sơn, hàn…,
nó có một cấu trúc mở để đáp ứng yêu cầu sử dụng linh hoạt và có thể giao tiếpmột cách sâu rộng với các hệ thống bên ngoài Cơ cấu của Robot được thiết kể mộtcách chắc chắn, có thể chịu đựng được các môi trường khắc nhiệt hay những đòihỏi khắt khe của mối trường Các phần trụ, đệm, bánh răng và các phần nhạy cảmkhác đều được bảo vệ một cách rất tốt Ngày nay Robot Almega 16 này được sửdụng với nhiều phiên bản khác nhau tùy thuộc vào khả năng thích ứng với môitrường và có thể được trang bị các phần mềm ứng dụng tùy theo các yêu cầu ứngdụng
2.1.2.Xác định các thông số của Robot Almega 16
Do cấu trúc phức tạp của Robot mà ở đây ta không có điều kiện xác định hoàntoàn chính xác các thông số của Robot như khối lượng các khớp, chiều dài các khớp Việc xác định các thông số của Robot ở đây mang tính gần chính xác nhất bằng cách xấp xỉ các khâu của Robot về các hình đơn giản có thể tính toán được
Trang 52 3 0
Là một phần của Robot gắn giữa khớp quay thứ hai và khớp quay thứ ba
Thể tích của khâu thứ hai như sau:
Hình 2.5 Hình dạng đơn giản hóa của khâu thứ nhất
Trang 6Hình 2.10 Hình dạng thật của
khâu thứ tư
Hình 2.11 Hình dạng đơn giản hóa của khâu thứ tư
Trang 72.1.2.5.Khâu thứ năm và khâu thứ sáu
Khâu thứ 5 một phần của Robot nằm giữa khớp quay thứ năm và khớp quay thứ sáu của Robot
Khâu thứ 6 là một phần của Robot gắn giữa khâu thứ năm của Robot vào khâu tác động cuối của Robot
Thể tích của khâu thứ năm:
3 5
Hình 2.13 Hình dạng đơn
giản hóa của khâu thứ năm
Hình 2.14 Hình dạng đơn giản hóa của khâu thứ sáu
Trang 82 3 6
0,08
2
2.1.3.Khối lượng của các khâu của Robot
Để cho đơn giản ở đây ta giả thiết là toàn bộ vật liệu làm Robot là cùng loại,
và đồng nhất vì vậy mà khối lượng sẽ tỉ lệ với thể tich
Trang 9Hình 2.15 Mô hình Robot Almega 16
0 0
0 0
Trang 13 Thế năng của khối 3
2.2.2.Sử dụng đạo hàm Lagarange cho các khớp.
Lấy đạo hàm hàm Lagrange theo biến i và i (i=1,2,3)ta được
2.2.2.1.Khớp 1.
2 2
1 1 2 2 2 3 3 23 2 2 1
Trang 162.2.3.Phương trình động lực học dưới dạng ma trận trạng thái.
Phương trình động lực học dưới dạng ma trận trạng thái dạng tổng quát nhưsau:
Trang 18C(q,q) được thiết lập như ở phần sau đây
Trang 1912 12 22 221
Trang 212 3
Trang 22CHƯƠNG 3: THUẬT TOÁN ĐIỀU KHIỂN THÍCH NGHI LI-SLOTINE
CHO HỆ CHUYỂN ĐỘNG ROBOT ALMEGA 16.
3.1 NỘI DUNG PHƯƠNG PHÁP:
Khi mô hình robot là không biết rõ hoặc không xác định được chính xác cáctham số mô hình thì luật điều khiển thích nghi theo Li-Slotine đề xuất bằng việcước lượng các thông số động lực học không biết chính xác như ma trận quán tính
M, vectơ tương hỗ và ly tâm H, vectơ gia tốc trọng trường G
Trong luật điều khiển thích nghi theo Li-Slotine luôn có hệ thống nhận dạngtham số động của hệ thống, luôn cập nhật các tham số đó so sánh giá trị ước lượngđược với giá trị thực rồi đưa vào bộ điều khiển để hiệu chỉnh đảm bảo hệ thống ổnđịnh và sai lệch các khớp quay sẽ hội tụ về không, luật điều khiển cũng được xâydựng dựa trên tiêu chuẩn ổn định Lyapunov
Xuất phát từ phương trình động lực học của robot viết dưới dạng:
- Giả thiết F 0 , d 0
M q q C q q q G q
(3.9)Luật điều khiển thích nghi Li-Slotine được đưa ra như sau:
Trang 23ˆ ˆ
ˆ ( , , , )
M q C q q G qˆ ( ), ( , ), ( ) :ˆ ˆ các thành phần ước lượng của M q C q q G q( ), ( , ), ( )
v q d (q d q) q e
:là ma trận chéo, xác định dương
r v q
K D: hệ số hiệu chỉnh
pˆ : tham số ước lượng của mô hình robot
Y p p v v( , , , ) : là ma trận hồi quy, viết gọn Y(.)
Kết hợp phương trình (3.9) và (3.10) được phương trình động lực học kíncủa robot :
ˆ
M q q C q q q G q M q v C q q G q K r (3.11)Viết gọn thành :
ˆ ( ), ( )
M q M q chỉ viết M M, ˆ
ˆ ( , ), ( , )
C q q C q q chỉ viết C C, ˆˆ
Trang 24ˆ ˆ
Với bộ điều khiển thích nghi Li-Slotine đưa ra như trên thì hệ thống Robot
là ổn định theo tiêu chuẩn Lyapunov
Trang 263.1.2.Sơ đồ cấu trúc luật điều khiển Li-Slotine :
Hình 3.7 Mô hình luật điều khiển Li-Slotine
Các bước tiến hành thuật toán điều khiển thích nghi theo Li-Slotine :
Trang 27Bước 1 : Đặt các giá trị ước lượng ˆp từ phương trình động lực học
Bước 2 : Tìm các giá trị ước lượng ma trận quán tính Mˆ , vectơ tương hỗ và
ly tâm Cˆ, vectơ trọng trường Gˆ
Bước 3 : Tính ma trận Y q q v vˆ( , , , )
Bước 4 : Tìm các hệ số hiệu chỉnh KD và ma trận chéo dương tối ưu
Bước 5 : Kiểm tra sự hội tụ của sai lệch về không cho các khớp quay theo
tiêu chuẩn Lyapunov
Ưu điểm, nhược điểm của phương pháp điều khiển thích nghi theo Slotine :
Li-Ưu điểm : Ưu điểm lớn nhất của phương pháp này là không cần biết chính
xác các tham số của mô hình thì bộ điều khiển vẫn đảm bảo hệ thống ổn định vì bộđiều khiển luôn luôn cập nhật sự thay đổi tham số của mô hình với việc chọn cáctham số của bộ điều khiển tối ưu nhất thì hệ thống sẽ vừa bám chính xác quỹ đạođặt tốt, vừa tác động nhanh
Nhược điểm : Nhược điểm lớn nhất của phương pháp điều khiển này là
không bền với nhiễu Bộ điều khiển thích nghi Li-Slotine không có khả năng loạiđược nhiễu cho dù là nhiễu nhỏ Mà trong quá trình robot hoạt động luôn có nhiễutác động chính vì thế mà để có bộ điều khiển thích nghi thôi thì rất khó áp dụngvào thực tế
3.3.ÁP DỤNG VÀO ROBOT ALMEGA 16
3.3.1.Phương trình động lực học dạng triển khai.
Để áp dụng thuật toán điều khiển Li-Slotine ta sử dụng phương trình động lực học của robot Almega 16 đã thiết lập ở chương 2 dưới dạng là:
Trang 282 3
Trang 293.3.2.Áp dụng luật điều khiển:
Luật điều khiển thích nghi Li-Slotine đưa vào có dạng:
dk M( )v C( , )v G( ) K rˆ ˆ ˆ D
D
ˆY( , , v, v)p K r
Trang 33CHƯƠNG 4 : MÔ PHỎNG VÀ KẾT LUẬN
4.1.GIỚI THIỆU CHƯƠNG TRÌNH MÔ PHỎNG MATLAB
4.1.1.Chương trình mô phỏng Matlab/Simulink
4.1.1.1 Giới thiệu
MATLAB là một chương trình phần mềm lớn được viết cho máy tính PCnhằm hỗ trợ các tính toán khoa học kỹ thuật với các phần tử cở bản là các ma trận.Thuật ngữ Matlab là chữ viết tắt của hai từ MATrix và LABoratory, thể hiện địnhhướng chính của phương trình là các phép tính vector và ma trận Phần cốt lõi củachương trình bao gồm các hàm toán học, các chức năng xuất nhập cũng như cáckhả năng điều khiển chương trình
MATLAB cung cấp các toolbox với phạm vi chức năng chuyên dụng khácnhau Ví dụ như: một số toolbox liên quan tới điều khiển( control system toolbox,Optimzation toolbox…); các toolbox liên quan tới lĩnh vực điện, cơ khí…
SIMULINK là một công cụ của MATLAB nhằm mục đích mô hình hóa, môphỏng và khảo sát các hệ thống động học Giao diện đồ họa trên màn hình củaSIMULINK cho phép thể hiện hệ thống dưới dạng sơ đồ tín hiệu với các khối chứcnăng quen thuộc SIMULINK cung cấp cho người dùng một thư viện rất phong
Trang 34phú, có sẵn với số lượng lớn các khối chức năng cho các hệ tuyến tính, phi tuyến
và gián đoạn
MATLAB cung cấp cho người dùng các toolbox tiêu chuẩn tùy chọn.Ngườidùng cũng có thể tạo ra các hộp công cụ riêng của mình gồm các "mfiles"được viết cho các ứng dụng cụ thể
Chúng ta có thể sử dụng các tập tin trợ giúp của MATLAB cho các chứcnăng và các lệnh liên quan với các toolbox có sẵn (dùng lệnh help)
Trang 354.1.1.2.Hướng dẫn sử dụng Simulink:
a, Cách mở chương trình Simulink
- Click vào biểu tượng như hình dưới (Simulink icon)
- Từ cửa sổ lệnh, đánh lệnh simulink và enter
Trang 36b, Cửa sổ thư viện Simulink sẽ hiển thị:
c, Tạo một mô hình mới bằng cách:
- Click vào icon New model hoặc gõ Ctrl-N
- Menu File→ New → Model
Trang 37d, Cửa sổ xây dựng mô hình xuất hiện:
e, Tạo các khối:
Từ thư viện Simulink chọn khối cần dùng, nhấp chuột vào và kéo ra ra cửa
sổ mô hình
Trang 38Lưu trữ mô hình bằng lệnh Save (File → Save) hoặc nhấp vào icon Save
f, Dịch chuyển các khối đơn giản bằng cách nhấp vào khối đó và kéo thả
Trang 39g, Nối tín hiệu:
Đưa con chuột tới ngõ ra của khối (dấu “>”), khi đó con chuột sẽ có dạng
“+” Kéo rê chuột tới ngõ vào của một khối khác và thả ra để kết nối tín hiệu
h,Mô phỏng mô hình:
Dùng lệnh Start (Menu Simulation →Start) hoặc nhấp chuột vào icon Start
Trang 40i, Xem tín hiệu từ Scope:
Nhấp đôi vào khối Scope
k, Chỉnh thông số của một khối bằng cách nhấp đôi vào khối cần chỉnh:
Trước khi mô phỏng mô hình Simulink, chúng ta cần đặt các thông số mô
phỏng bằng cách chọn menu Simulation →Configuration Parameters
Trang 41Ở cửa sổ Configuration Parameters, chúng ta có thể đặt một số thông số như Start time, Stop time (second – giây), và phương pháp giải Solver, Solver options, sau đó nhấn nút OK
Trang 424.1.2.Chương trình mô phỏng Matlab/Simmechanic
Trang 434.1.2.1.Giới thiệu:
SIMMECHANICS là một công cụ của Matlab cho phép người dùng mô hìnhhóa được các chi tiết cơ khí, từ đó xây dựng được mô hình các bộ phận máy, các máy cơ khí
4.1.2.2 Các thư viện và các khối của Simmechanic.
a, Thư viện Bodies:
- Khối Ground: Mô phỏng một ngàm tại một vị trí nào đó trong hệ tọa độ
mặc định của chương trình “World”
- Khối Body: Mô phỏng một chi tiết cơ khí với các thong số: Khối lượng,
Tensor mô men quán tính, vị trí các hệ tọa độ gắn tại điểm đầu và cuối củachi tiết Tất cả các điều khiển chuyển động chi tiết đều điều khiển thongqua các hệ tọa độ này
b, Thư viện Constraint & Driver:
Trang 44- Khối Distance Driver: Điều khiển khoảng cách giữa hai hệ tọa độ gắn
trên hai chi tiết theo một hàm của thời gian
- Khối Angle Driver: Điều khiển góc quay của hai hệ tọa độ gắn trên hai
chi tiết theo một hàm của thời gian
- Khối Linear Driver: Định rõ một thành phần vector giữa hai gốc hệ tọa
độ của hai Body như một hàm của thời gian
- Khối Point- Curve Driver: Cưỡng bức chuyển động của một điểm trên
một Body di chuyển dọc theo một đường cong trên một Body khác
- Khối Prallel Constraint: Cưỡng bức vector trục Body của hai Body luôn
song song
- Khối Gear Constraint: Cưỡng bức chuyển động quay của hai Body di
chuyển dọc theo vòng tròn bước răng tiếp tuyến
c, Thư viện Joints:
Trang 45Một số khớp trong thư viện Joint
Trang 46Khèi Telescoping Khèi bearing Khèi Cylindial
Khèi Primastic
Khèi Planar
Khèi Universal
d, Thư viện Sensor & Actuator:
- Khối Driver Actutor: Kích động cho các khối điều khiển chuyển động
như: Linear Driver, Angle Driver, Distance Driver…
- Khối Constraint & Driver Sensor: Cảm biến đo chuyển động các khối
trong thư viện Constraint & Driver
- Khối Joint Stiction Actuator: Tạo ma sát cho các khớp
Trang 474.2.MÔ PHỎNG CHO 3 KHỚP ĐẦU ROBOT ALMEGA 16 SAO CHO VỊ TRÍKHỚP THỰC BÁM VỊ TRÍ KHỚP ĐẶT VỚI SAI SỐ CHO PHÉP <0.1%