Các thuật toán điều khiển rôbốt dựa trên cơ sở nội suy splinecũng đã được nghiên cứu trong rất nhiều công trình.. Đề tài này sẽ đề xuất một thuậttoán điều khiển rôbốt
Trang 1ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KỸ THUẬT CÔNG NGHIỆP
Trang 2BẢNG TÓM TẮT LUẬN VĂN CAO HỌC Ngành : Kỹ thuật điện tử - Khóa 13
1 Tên luân văn:
ĐIỀU KHIỂN RÔ BỐT TRÊN QUỸ ĐẠO CHO TRƯỚC DẠNG PHỨC TẠP ỨNG DỤNG NỘI SUY SPLINE
2 Người thực hiện: KS Lê Trọng Nghĩa
3 Thông tin liên quan
Email: letrongnghiabn@gmail.com
Điện thoại di động: 0168.209.1582
4 Tóm tắt nội dung:
Trang 3MỞ ĐẦU
1 Lý do chọn đề tài
Hiện nay, công nghệ rôbốt được ứng dụng vô cùng rộng rãi trong nhiều lĩnhvực như công nghiệp, cứu hộ, y tế, Các rôbốt được thiết kế ngày càng thông minhvà có khả năng thực hiện những thao tác đa dạng với quỹ đạo chuyển động phứctạp Bài toán điều khiển rôbốt thường căn cứ vào các mục tiêu thiết kế rôbốt để lựachọn phương pháp phù hợp Với các rôbốt có thiết kế phức tạp, để đạt được mụctiêu của bài toán có thể phải sử dụng kết hợp nhiều phương pháp khác nhau chonhiều khâu như: Điều khiển cân bằng, điều khiển quỹ đạo chuyển động, điều khiểnchấp hành, … Đây là lĩnh vực đang được nhiều nhà khoa học quan tâm nghiên cứu.Trong khuôn khổ một luận văn thạc sĩ, tác giả chỉ đề cập và tập trung vào giảiquyết bài toán điều khiển chuyển động của rôbốt trên quỹ đạo cho trước dạng phứctạp Các kết quả đạt được sẽ góp phần đa dạng hóa cho lĩnh vực điều khiển rôbốt
2 Ý nghĩa khoa học và thực tiễn của đề tài
a Ý nghĩa khoa học
Hiện nay, để giải bài toán điều khiển rôbốt thường sử dụng các phương phápgiải số với hai cách thực hiện Cách thứ nhất là sử dụng phương pháp lặp Newton-Raphson để giải phương trình động học Phương pháp này có chi phí lớn, quá trìnhtính toán khá phức tạp và không phải lúc nào cũng hội tụ (phụ thuộc vào điều kiệnđầu) Cách thứ hai là sử dụng chuỗi Taylor và ma trận Jacobi để viết phương trìnhxấp xỉ tọa độ đầu ra, từ đó xây dựng thuật toán hội tụ theo kiểu sai phân tới hoặc saiphân lùi tới nghiệm yêu cầu Sử dụng lược đồ sai phân tới khi muốn có kết quảnhanh, tuy nhiên sai số tích lũy sẽ khá lớn qua nhiều bước lấy mẫu (vì phương phápnày không cho kết quả chính xác theo yêu cầu cho trước) Sử dụng lược đồ sai phânlùi có thể cho kết quả chính xác tùy ý, tuy nhiên phải giải lặp tại từng bước lấy mẫunên thuật toán sẽ phức tạp hơn
Nội suy spline từ khi được được phát minh, đã nhanh chóng được phát triển vàứng dụng cho nhiều bài toán kỹ thuật và trở thành công cụ tính toán gần đúng được
Trang 4ứng dụng rất rộng rãi Các thuật toán điều khiển rôbốt dựa trên cơ sở nội suy splinecũng đã được nghiên cứu trong rất nhiều công trình Đề tài này sẽ đề xuất một thuậttoán điều khiển rôbốt chuyển động trên quỹ đạo cho trước dạng phức tạp dựa trênmột số hữu hạn các điểm tọa độ được cho dưới dạng bảng giá trị theo phương phápnội suy spline bậc 3
b Ý nghĩa thực tiễn
Đề tài nghiên cứu xây dựng các thuật toán điều khiển rôbốt trên quỹ đạo chotrước dạng phức tạp bằng phương pháp nội suy spline Mô phỏng quỹ đạo chuyểnđộng của rôbốt trên máy tính để khẳng định kết quả nghiên cứu, làm cơ sở để thiếtkế khâu điều khiển quỹ đạo rôbốt trong thực tế
3 Phương pháp nghiên cứu
Nghiên cứu lý thuyết: Nghiên cứu phương pháp nội suy spline và phân tíchkhả năng ứng dụng để xây dựng mô hình toán học cho bài toán điều khiển rôbốttrên quỹ đạo cho trước dạng phức tạp
Mô phỏng: Tính toán và chạy mô phỏng trên máy tính để kiểm chứng kết quảnghiên cứu
4 Nội dung nghiên cứu
Nội dung nghiên cứu gồm 3 chương
Chương 1 Cơ sở chung về bài toán điều khiển rôbốt: Trình bày các kiến thức
cơ sở, cấu trúc, các phương thức, phương pháp điều khiển rôbốt từ đó xác địnhhướng nghiên cứu là bài toán điều khiển rôbốt trên quỹ đạo dạng phức tạp
Chương 2 Nội suy spline và khả năng ứng dụng cho bài toán điều khiểnrôbốt: Trình bày nguyên lý cơ bản của bài toán động học rôbốt, đặc điểm của bàitoán điều khiển quỹ đạo chuyển động, cơ sở về nội suy spline và khả năng ứng dụngcho bài toán điều khiển quỹ đạo dạng phức tạp
Chương 3 Xây dựng thuật toán điều khiển rôbốt trên quỹ đạo cho trước ứngdụng nội suy spline: Ứng dụng nội suy spline để xây dựng thuật toán điều khiểnrôbốt trên quỹ đạo phức tạp trong không gian hai chiều và ba chiều Mô phỏng và
so sánh với một số phương pháp khác
Trang 5CHƯƠNG 1 CƠ SỞ CHUNG VỀ BÀI TOÁN ĐIỀU KHIỂN RÔBỐT 1.1 Cấu trúc tổng quan của rôbốt
Các rôbốt công nghiệp ngày nay thường được cấu thành bởi hệ thống sau:
Hình 1.1: Sơ đồ cấu trúc tổng quan của rôbốt
- Tay máy: Là cơ cấu cơ khí gồm các khâu, khớp hình thành cánh tay để tạo
ra các chuyển động cơ bản gồm:
+ Bệ (thân) - Base
+ Khớp - thanh nối: joint- link
+ Cổ tay – wrist: Tạo nên sự khéo léo, linh hoạt
+ Bàn tay - hand: Trực tiếp hoàn thành các thao tác trên đối tượng
- Cơ cấu chấp hành: Tạo chuyển động cho các khâu của tay máy Nguồn độnglực của cơ cấu chấp hành là động cơ ( hình 1.2)
hệ thốngTruyền động cơ khí
Cơ cấu chấp hành
Sensor giám
sát thông số
môi trường
Hệ thống điềukhiển
Giao diện ngườirôbốt
Trang 6- Hệ thống cảm biến: Gồm các sensor và các thiết bị chuyển đổi tín hiệu cầnthiết khác Các rôbốt cần hệ thống sensor trong để nhận biết trạng thái của bản thâncác cơ cấu của rôbốt.
- Hệ thống điều khiển: Hệ thống điều khiển hiện nay thường là máy tính đểgiám sát và điều khiển hoạt động của rôbốt, có thể chia ra thành 2 hệ thống:
+ Hệ thống điều khiển vị trí (quỹ đạo)
+ Hệ thống điều khiển lực
Cấu trúc vật lý cơ bản của một rôbốt bao gồm thân, cánh tay và cổ tay Thân được nối với đế và tổ hợp cánh tay thì được nối với thân Cuối cánh tay là cổ tay được chuyển động tự do
Về mặt cơ khí, rôbốt có đặc điểm chung về kết cấu gồm nhiều khâu, được nối với nhau bằng các khớp để hình thành một chuỗi động học hở, tính từ thân đến phần công tác Tuỳ theo số lượng và cách bố trí các khớp mà có thể tạo ra taymáy kiểu toạ độ đề các, toạ độ trị, tọa độ cầu…
Trong rôbốt thì thân và cánh tay có tác dụng định vị trí còn cổ tay có tác dụng định hướng cho bàn tay Cổ tay gồm nhiều phần tử giúp cho nó có thể linh động xoay theo các hướng khác nhau và cho rôbốt định vị đa dạng các vị trí
Hình 1.2: Cơ cấu chấp hành
Trang 7Quan hệ chuyển động giữa các phần tử khác nhau của tay máy như: Cổ tay, cánh tay được thực hiện qua một chuỗi các khớp nối Các chuyển động bao gồm chuyển động quay, chuyển động tịnh tiến…
Các rôbốt công nghiệp ngày nay hầu hết thường được đặt trên đế và thân đếnày được gắn chặt xuống nền Gắn vào cổ tay có thể là một bàn kẹp (gripper) hoặcmột số công cụ khác dùng để thực hiện các nhiệm vụ khác nhau (như mũi khoan,đầu hàn, đầu phun sơn ) và chúng được gọi chung là “end effector”
Sự chuyển động của rôbốt bao gồm chuyển động của thân và cánh tay,chuyển động của cổ tay Những khớp kết nối chuyển động theo 2 dạng trên gọi làbậc tự do Ngày nay thông thường các rôbốt được trang bị từ 4 đến 6 bậc tự do(hình 1.3)
Hình 1.3: Hình ảnh rôbốt thực tế
Dựa vào hình dáng vật lý hoặc khoảng không gian mà cổ tay có thể di
chuyển tới mà người ta chia rôbốt thành bốn hình dạng cơ bản sau :
Trang 8Hình 1.4: Phân loại rôbốt cơ bản.
Bảng 1.1: Các dạng cơ bản của các khớp rôbốt
Hình 1.6 mô tả hình dạng của không gian làm việc của rôbốt:
Input link
Output link
Input link Output link
Output linkInput link
Trang 9Sơ đồ khối tổ chức kỹ thuật của một rôbốt (hình 1.7).
1.2 Bậc tự do của rôbốt
Bậc tự do của rôbốt là số tọa độ cần thiết để biểu diễn vị trí và hướng của vậtthể ở tay rôbốt trong không gian làm việc Để biểu diễn hoàn chỉnh một đối tượngtrong không gian cần 6 tham số: 3 tọa độ xác định vị trí đối tượng trong không gianvà 3 tọa độ biểu diễn hướng của đối tượng Như vậy một rôbốt công nghiệp điểnhình có số bậc tự do là 6 Nếu số bậc tự do nhỏ hơn 6 thì không gian chuyển độngcủa tay rôbốt sẽ bị hạn chế Với một rôbốt 3 bậc tự do, tay rôbốt chỉ có thể chuyểnđộng dọc theo các trục x, y, z và hướng của tay không xác định
Ghi dữ
liệu
Động học thuận
Động học
Bộ điều khiển Nguồn động lực
Vị trí vật lý
Máy tính
Chạy
Khóa chuyển mạch
Hình 1.7: Sơ đồ khối tổ chức kỹ thuật của rôbốt
Cơ cấu chấp hành
Lưu giữ
kết quả
Chế độ
dạy học
Trang 10Số bậc tự do của rôbốt công nghiệp sẽ tương ứng với số khớp hoặc số thanhnối của rôbốt Rôbốt hình 1.8 là rôbốt 3 bậc tự do.
Hình 1.8: Hình dạng cơ khí của rôbốt công nghiệp
Bậc tự do là tổng số các tọa độ mà phần công tác có thể dịch chuyển so vớithân rôbốt Số bậc tự do càng lớn thì hoạt động của rôbốt càng linh hoạt nhưng điềukhiển nó càng phức tạp, thống kê thực tế cho thấy phần lớn rôbốt có 4 – 5 bậc tự do.Vì phần kẹp không được tính vào bậc tự do, trên thực tế bậc tự do được tạo ra bởihai phần chính là cánh tay và cổ tay Công thức tổng quát để tính số bậc tự do củamột cấu trúc là: DOF = 6n – i.ki
1.3 Các hệ thống điều khiển rôbốt
Hệ thống điều khiển của rôbốt có nhiệm vụ điều khiển hệ truyền động điện đểthực hiện điều chỉnh chuyển động của rôbốt theo yêu cầu của quá trình công nghệ
Hệ thống điều khiển rôbốt có thể chia ra:
- Điều khiển vị trí (quỹ đạo) - điều khiển thô
- Điều khiển lực - điều khiển tinh
Tùy theo khả năng thực hiện các chuyển động theo từng bậc tự do mà phân ra các
hệ thống điều khiển dưới đây:
- Điều khiển chu tuyến: Chuyển động được thực hiện theo một đường liên tục
Trang 11- Điều khiển vị trí: Đảm bảo cho rôbốt dịch chuyển bám theo một quỹ đạo đặt trước(hình 1.10):
1.3.1 Các phương thức điều khiển
1.3.1.1 Điều khiển theo chuỗi các điểm giới hạn
1.3.1.2 Điều khiển lặp lại (playback)
a Điều khiển kiểu điểm - điểm (PTP)
b Phương pháp điều khiển quỹ đạo liên tục (PCC - Path Continuos Control)
1.3.1.3 Điều khiển kiểu rôbốt thông minh
1.3.2 Các hệ thống điều khiển
1.3.2.1 Các hệ thống điều khiển hệ tuyến tính
1.3.2.2 Các hệ thống điều khiển hệ phi tuyến
1.3.2.4 Điều khiển tuyến tính hình thức
1.3.2.5 Điều khiển bù phi tuyến.
1.3.3 Các phương pháp điều khiển
1.3.3.1 Phương pháp điều khiển động lực học ngược
1.3.3.2 Phương pháp điều khiển phản hồi phân ly phi tuyến
1.3.3.3 Phương pháp điều khiển thích nghi theo sai lệch
1.3.3.4 Phương pháp điều khiển thích nghi theo mô hình mẫu
1.3.3.5 Phương pháp điều khiển ĐLH ngược thích nghi
1.3.3.6 Điều khiển trượt
1.4 Kết luận chương 1
Bộ điều
Phản hồiQuỹ đạo đặt Tín hiệu điều khiển Quỹ đạo thực
Hình 1.10 : Sơ đồ khối mô tả hệ thống điều khiển
Trang 12Các phương pháp trình bày ở trên là những phương pháp điều khiển kinhđiển, đã được công bố trong nhiều công trình trước đây và được ứng dụng thực tế.Mỗi phương pháp đều có những ưu nhược điểm riêng và cần phân tích trước khiứng dụng cho các bài toán cụ thể để đạt hiệu quả cao nhất
Trong trường hợp riêng là bài toán điều khiển quỹ đạo chuyển động của rôbốt, từ các phân tích ở trên ta nhận thấy có rất nhiều phương pháp khả thi Mặc dùvậy, để đạt được độ chính xác và độ tin cậy cao không phải là điều dễ dàng do nhiềunguyên nhân như: Tín hiệu điều khiển không liên tục (đảo dấu ngẫu nhiên), hiện tượng rung (dao động với tần số khá cao xung quanh mặt trượt) do các yếu tố trễ và quán tính của bộ phận truyền động (các hiện tượng nhảy cấp lập bập) làm lệch quỹ đạo chuyển động Hay nói cách khác, với các quỹ đạo chuyển động phi tuyến dạng phức tạp thì việc điều khiển bám sát quỹ đạo là không dễ dàng Vì vậy, luận văn sẽ đề xuất một thuật toán điều khiển của rôbốt chuyển động trên quỹ đạo phức tạp trên
cơ sở nội suy spline bậc 3
Trang 13CHƯƠNG 2 NỘI SUY SPLINE VÀ KHẢ NĂNG ỨNG DỤNG
CHO BÀI TOÁN ĐIỀU KHIỂN RÔBỐT 2.1 Tổng quan về bài toán điều khiển động học
Bảng 2.1 trình bày một số khả năng phối hợp các bậc chuyển động chính(1, 2, 3) và các chuyển động định hướng có tính chất tham khảo
Số bậc chuyển động
định vị
Số bậc chuyển độngđịnh hướng
Khả năng phối hợp (tổng số chuyểnđộng/số chuyển động định hướng)
Để khảo sát chuyển động của các khâu, ta thường dùng phương pháp hệ
toạ độ tham chiếu (reference frame) hay hệ toạ độ cơ sở như cơ học lý thuyết đãtrình bày Bằng cách “gắn cứng” lên mỗi khâu động thứ k một hệ trục toạ độvuông góc (Oxyz)k - còn gọi là các hệ toạ độ tương đối và gắn cứng với giá cốđịnh hệ trục toạ độ vuông góc (Oxyz)o - còn gọi là hệ toạ độ tuyết đối, hệ toạ độtham chiếu hay hệ toạ độ cơ sở, ta có thể khảo sát chuyển động của một khâu bất
kỳ trên tay máy hoặc chuyển động của một điểm bất kỳ thuộc khâu
Theo đó, toạ độ của điểm M thuộc một khâu bất kỳ, được xác định bởi bánkính vecto Với các thành phần (hình chiếu) của nó trong hệ tọa độ cơ sở(oxyz)0 lần lượt là được gọi là tọa độ tuyệt đối của điểm M
- Toạ độ của điểm M thuộc khấu thứ k được xác định bởi bán kính vectơ với các thành phần tương ứng của nó trong hệ toạ độ (oxyz), gắn cứng vớikhâu lần lượt là: được gọi là tọa độ tương đối của điểm M
- Nếu M là điểm cố định trên khâu thì tọa độ tương đối của M sẽ không thayđổi khi khâu chuyển động
Trang 14- Dưới dạng ma trận ta có thể biểu diễn:
quan tâm đến chuyển động của khâu cuối bao gồm quỹ đạo hoặc các vị trí đi qua (hay tổng quát là một đường cong trong không gian ba chiều), vận tốc và gia tốc
chuyển động mà không quan tâm nhiều đến chuyển động của các khâu trunggian (gọi là các khâu thành viên) Thật ra, vì là một chuỗi động, những phân tíchdưới đây sẽ giúp nhận định rõ hơn vai trò của các khâu thành viên
2.3 Quỹ đạo chuyển động
Do tay máy là một chuỗi động hở của nhiều khâu, ta dễ nhận thấy rằng cónhiều cách phối hợp chuyển động của các khâu thành viên để làm thay đổi vị trícủa các khâu cuối bên trong vùng không gian hoạt động của nó Nói cách khác,tuỳ thuộc vào tập hợp các yếu tố chuyển động, gọi là các toạ độ suy rộng, có thểlà chuyển vị góc ở các khớp quay hoặc chuyển vị dài ở các khớp tịnh tiến của cáckhâu thành viên mà ta có những cách khác nhau để đưa các khâu tác động cuối tớivị trí và hướng mong muốn
Gọi q1, q2, qn là các toạ độ suy rộng tương ứng với các yếu tố chuyển
động tương đối giữa các khâu, ta có thể biểu diễn:
xM = xM (q1, q2, , qn)
yM = yM (q1, q2, , qn) (2.2)
zM = zM (q1, q2, , qn)
Trang 15Một khi đề cập tới chuyển động, biến độc lập thực sự của các toạ độ suyrộng là thời gian t Bằng cách thiết lập các hàm toạ độ trong (2.2) với các biến vịtrí là hàm của thời gian q = q(t) ta sẽ được phương trình chuyển động của điểm
M thể hiện dưới dạng các hàm toạ độ xM = xM(t), yM = yM(t), zM = zM(t) Sự thayđổi vị trí của điểm M theo thời gian trong không gian hoạt động của tay máy cho
ta khái niệm quỹ đạo (trajcetory) của điểm.
2.4 Cơ sở lý thuyết của phép biến đổi hệ tọa độ
Phép biến đổi hệ toạ độ được sử dụng để biến đổi các thành phần củavectơ khi chuyển từ hệ toạ độ này sang hệ toạ độ khác
Ví dụ, trong hệ trục toạ độ vuông góc (OXYZ) có các vectơ đơn vị lần lượt
tương ứng là i, J, k Ta gọi hình chiếu của vectơ a theo các hướng i, j, k, (cùng theo các trục X, Y, Z) lần lượt tương ứng là a, a, a Khi đó, khai triển vectơ a ta
nhận được
a = ax + ay + az = axi + ayj + azk (2.3)
Trong đó, ax là hệ số của i xác định được bằng cách chiếu cả hai về (2.3)lên trục X, sau đó sử dụng định lý về hình chiếu của tổng hình học và chú ý rằng
các hình chiếu của j và k lên trục x đều bằng không.
Các hình chiếu ax, ay, az được gọi là các toạ độ vuông góc hay các thànhphần của vectơ a với:
(2.4)Khi biết các thành phần của véctơ a theo các trục X, Y, Z, ta có thể tínhthành phần của nó theo hướng u bất kỳ Để làm việc này, ta lấy hình chiếu cả haivề của phương trình (2.1) trên hướng u và sử dụng định lý về hình chiếu của tổnghình học, ta nhận được kết quả
(2.5)Như vậy thành phần của vectơ a theo một phương bất kỳ có thể biểu diễnqua các thành phần của nó trên các trục của một hệ toạ độ vuông góc, và ta cũngnhận thấy rằng phép biểu diễn đó là tuyến tính Tính chất này đặc trưng cho các
Trang 16vectơ và là cơ sở để xác định một vectơ.
Trong công thức (2.5) ta thay au, ax, ay, az, bằng các biểu thức của nó ở công thức(2.4) và giản ước a, đồng thời gọi ϕ là góc giữa hướng của các vectơ a và u, tatìm được:
Ta nhận được công thức của hình học giải tích cho cosin của góc ϕ giữahướng a và u Giả sử ta biết các thành phần của vectơ a trong hệ trục toạ độ (Oxyz)(hình 2.1) là ax, ay và az Bây giờ có một hệ trục toạ độ mới (Oxyz), xác định bởi
ba vectơ đơn vị i1, j1, k1 trực giao nhau Các thành phần của vectơ a ở hệ trụctoạ độ mỗi lần lượt là ax, ay , az Hãy thử tìm mối quan hệ giữa các thành phầncủa vectơ a trong hai hệ trục toạ độ (Oxyz) và (Oxyz)1
Hãy xem các hướng x1, y1 và z1 như hướng u đã xét ở trên ta có thể tìmthấy lời giải ở công thức (2.5) như sau:
ax1 = ax cos (x1, x) + ay cos (x1, y) + az cos (x1, z) ax1 = ax cos (x1, x) + ay cos (y1, y) + az cos (y1, z)
(2.7) ax1 = ax cos (x1, x) + ay cos (z1, y) + az cos (z1, z)Để đơn giản cách viết các công thức, ta có thể đưa ra bảng côsin của chíngóc lập nên bởi các trục toạ độ cũ và mới như sau:
Hình 2.1: Quan hệ về vị trí tương đối giữa hai trục tọa độ O và O1
α1 = cos ( x 1, x ) α2 = cos( y 1, x ) β1 = cos( x 1, y ), v.v
x1 y1 z1
x α1 α2 α3
y β1 β2 β3
z γ1 γ2 γ3
Trang 17Trong đó, các côsin đó xác định toạ độ của các vectơ đơn vị.
ix1 = 1.cos (x1, x) = α1, jx1 = α2 kx1 = α3
iy1 = 1.cos (x1, y) = β1, jy1 = β2 kx1 = β3 (2.8)
iz1 = 1.cos (x1, z) = γ1 , jz1 = γ2 kx1 = γ3
theo công thức (2.6) và (2.8) ta có thể viết sáu hệ thức sau:
1 = cos(x1, x1) = cos2(x1, x) + cos2(x1, y) + cos2(x1, z) =
(2.9)
0 = cos(y1, z1) = cos(y1,x).cos(z1,x) + cos(y1,y)cos(z1,y)+cos(y1,z)cos(z1,z) =
α2α3 + β2β3 + γ2γ3 = 0α3α1 + β3β1 + γ3γ1 = 0α1α2 + β1β2 + γ1γ2 = 0Tương tự, nếu coi O1x1y1z1, như hệ toạ độ cũ và Oxyz là hệ toạ độ mới thì
ta nhận được sáu hệ thức sau