TỔNG QUAN VỀ ĐỀ TÀI
Giới thiệu
Mobile manipulator là một loại robot kết hợp cả khả năng di chuyển và khả năng thao tác, tạo nên một hệ thống đa nhiệm có khả năng di chuyển tự động trong môi trường và đồng thời có khả năng tương tác với các đối tượng xung quanh bằng cách sử dụng cánh tay robot hoặc các công cụ thao tác Điều này tăng cường tính linh hoạt và ứng dụng của robot, cho phép chúng thực hiện nhiều loại công việc trong môi trường động và đa dạng.
Một số đặc điểm chính của Mobile Manipulator:
- Khả năng di chuyển: Mobile manipulator được trang bị khả năng di chuyển, thường thông qua bánh xe, dây đeo hoặc chân robot, giúp chúng tự do di chuyển trong môi trường.
- Cánh tay robot hoặc công cụ thao tác: Mobile manipulator thường có một hoặc nhiều cánh tay robot hoặc công cụ thao tác mà chúng có thể sử dụng để thực hiện các nhiệm vụ thao tác như nâng, di chuyển, hoặc đặt các đối tượng.
- Cảm biến: Để thu thập thông tin về môi trường xung quanh và thực hiện các chức năng tự động, mobile manipulator thường được trang bị nhiều loại cảm biến như camera, LiDAR, radar, và cảm biến độ sâu.
- Điều khiển tự động: Mobile manipulator thường có khả năng điều khiển tự động, cho phép chúng lập kế hoạch cho đường đi, tránh vật cản, và thực hiện các nhiệm vụ mà không cần sự can thiệp liên tục của con người.
- Ứng dụng đa dạng: Mobile manipulator có thể được sử dụng trong nhiều lĩnh vực như logistics, sản xuất, y tế, dịch vụ và nghiên cứu Chúng có thể thực hiện các nhiệm vụ như tự động hóa quá trình giao hàng, lắp ráp tự động, hoặc thậm chí làm nhiệm vụ cứu thương.
- Hợp tác con người-robot: Với sự phát triển của công nghệ an toàn, mobile manipulators có thể làm việc cùng con người trong môi trường làm việc chung, thúc đẩy sự hợp tác và tăng cường hiệu suất làm việc.
Mobile manipulator đại diện cho sự kết hợp động giữa di chuyển và thao tác trong một hệ thống robot linh hoạt Điều này mở ra nhiều tiềm năng trong việc giải quyết các vấn đề trong thực tế và tạo ra những giải pháp tự động hóa đa dạng.
Hình 1.1 Một số mẫu Mobile Mnipulator trên thế giới
Lịch sử phát triển robot ở châu Âu có niên đại từ thế kỷ XVIII đến thế kỷ XIX, còn ở Nhật Bản, các con búp bê karakuri (cơ khí), được chế tác trong thời đại Edo (1603-1868) Sau thế kỷ XX, vào năm 1954, một robot có khả năng nhấc lên và đặt xuống các vật thể được cấp bằng sáng chế tại Hoa Kỳ Khái niệm về robot công nghiệp được khai sinh Trong Chiến tranh thế giới thứ II, công nghệ điều khiển được phát triển, bao gồm cả điều khiển phản hồi, điều này cho phép chuyển động chính xác hơn.
Hình 1.2 Hình ảnh robot hình người trên thế giới Năm 1973, WABOT-1, robot hình người đầu tiên trên thế giới, được phát triển tại Đại học Waseda Năm 1969, Kawasaki Heavy Industries, Ltd ra mắt Kawasaki- Unimate 2000, robot công nghiệp đầu tiên Robot công nghiệp trở nên phổ biến trong những năm 1980 Ngoài ra, cùng với sự phát triển của robot công nghiệp, ứng dụng thực tế của robot đã trở nên phổ biến trong cuộc sống hàng ngày, robot có thể trợ giúp con người trong công việc tại các địa điểm thiên tai khó tiếp cận và robot có thể thay thế cho các chức năng vật lý bị mất (ví dụ: chân, tay giả ).
Năm 1999, robot AIBO được chế tạo giống chú chó nhỏ, được phát hành bởi Tập đoàn Sony AIBO đã được tích hợp chương trình để học một cách máy móc từ trải nghiệm của chính nó và từ cách dạy của chủ nhân AIBO có thể nũng nịu chủ nhân và chủ nhân có thể cảm nhận được “suy nghĩ” của robot Năm 2000, robot ASIMO có thể bước đi thành thục bằng hai chân được Honda Motor Co cho ra mắt, ASIMO được trang bị công nghệ đi bộ linh hoạt thời gian thực thông minh, công nghệ này giúp cho ASIMO có thể thay đổi trọng tâm theo thời gian thực để phù hợp với các tính toán của những chuyển động tiếp theo Nó di chuyển trơn tru bằng cách kiểm soát “thời điểm 0 - thời điểm cân bằng” ASIMO sau đó có thể chạy vào năm 2004, và nhiều ASIMO đã có thể đồng bộ hóa hiệu quả các chuyển động của chúng qua một mạng liên kết vào năm 2007.
Trong những năm gần đây, nhu cầu về chăm sóc điều dưỡng đã tăng lên bởi sự già hóa dân số Theo nhu cầu này, một bộ khung robot HAL (Hybrid Assistive Limb) được phát triển bởi GS Yoshiyuki Sankai tại Đại học Tsukuba, đã được đưa vào sử dụng tại các cơ sở y tế và xã hội để cải thiện, hỗ trợ và mở rộng hoạt động thể chất của người Ngoài ra, robot đã được sử dụng để giám sát bên trong lò phản ứng, hoặc để dọn dẹp đống đổ nát hay những công việc tương tự trongmôi trường có mức bức xạ và rác thải phóng xạ cao.
Ngoài ra, đối với robot công nghiệp, liên kết nhiều robot tạo ra khả năng làm việc với người đã được đưa vào sử dụng thực tế Ví dụ, CR-35iA, một robot hợp tác được sản xuất bởi FANUC Corp vào năm 2015 và Coro Co-robot do Life Robotics Inc sản xuất vào năm 2015, có thể làm việc với người mà không cần hàng rào an toàn Ngoài ra, NEXTAGE, được sản xuất bởi Kawada Robotics Corp vào năm 2011, có cấu trúc bắt chước phần thân trên của con người và robot có thể thực hiện các nhiệm vụ mà trước đây cần được thực hiện bởi công nhân.
Hơn nữa, việc sử dụng robot đã trở nên phổ biến ngay cả trong cuộc sống hàng ngày Ví dụ, máy giặt hoàn toàn tự động, máy rửa chén, máy kiểm tra vé tự động và hệ thống vận chuyển hoàn toàn tự động Yurikamome có thể được cho là robot theo nghĩa rộng Năm 2010, Tập đoàn iRobot của Mỹ đã phát hành Roomba, một loại robot hút bụi, các nhà sản xuất Nhật Bản cũng đã cho ra đời robot làm sạch Ngoài ra, trong năm
2015, Soft Bank Corp ra mắt robot cá nhân Pepper có thể biết được cảm xúc của con người Nghiên cứu đã được tiến hành trên mối quan hệ giữa robot và con người.
Mục tiêu đề tài
I TÍNH TOÁN THIẾT KẾ CHO PHẦN CÁNH TAY
Bộ phận Manipulator là một phần của hệ thống Mobile Manipulator được dùng để di chuyển đồ vật, gắp vật …, có thể hoạt động trong những môi trường và điều kiện làm việc khác nhau các yêu cầu kỹ thuật cụ thể như sau:
1.1 Sức nâng của tay máy
Sức nâng của tay máy được tính là phần trọng lượng (Newton) lớn nhất mà robot manipulator có thể nâng được (không tính phần trọng lượng của các khớp và cánh tay) trong một điều kiện cụ thể, như là: khi tốc độ của toàn bộ Mobile Manipulator là cao nhất hoặc khi khoảng cách giữa khâu cuối của cánh tay khâu đầu tiên là xa nhất (cánh tay nằm ngang) Thông số này rất quan trọng đối với các robot vận chuyển, lắp ráp, vì nó quyết định đến mội trường và điều kiện làm việc cụ thể của robot.
Ngoài sức nâng của robot, chúng ta cần quan tâm đến lực và moomen lớn nhất mà cánh tay có thể sinh ra.
Mobile Manipulator được thảo luận trong đề tài này được thiết kế để làm việc trong phòng thí nghiệm, hoặc nơi công sở Vì vậy tay máy được thiết kế để nâng các vật có khối lượng vừa phải với kích thước nhỏ gọn
Với những điều kiện đã được đề cập, ta chọn sức nâng tối đa của tay máy là 5 (N), tương ứng với khối lượng của vật là 0.5 (Kg).
1.1 Số bật tự do của tay máy (DOF: Degrees Of Freedom)
THIẾT KẾ CƠ KHÍ CHO HỆ THỐNG
TÍNH TOÁN THIẾT KẾ CHO PHẦN CÁNH TAY
Bộ phận Manipulator là một phần của hệ thống Mobile Manipulator được dùng để di chuyển đồ vật, gắp vật …, có thể hoạt động trong những môi trường và điều kiện làm việc khác nhau các yêu cầu kỹ thuật cụ thể như sau:
1.1 Sức nâng của tay máy
Sức nâng của tay máy được tính là phần trọng lượng (Newton) lớn nhất mà robot manipulator có thể nâng được (không tính phần trọng lượng của các khớp và cánh tay) trong một điều kiện cụ thể, như là: khi tốc độ của toàn bộ Mobile Manipulator là cao nhất hoặc khi khoảng cách giữa khâu cuối của cánh tay khâu đầu tiên là xa nhất (cánh tay nằm ngang) Thông số này rất quan trọng đối với các robot vận chuyển, lắp ráp, vì nó quyết định đến mội trường và điều kiện làm việc cụ thể của robot.
Ngoài sức nâng của robot, chúng ta cần quan tâm đến lực và moomen lớn nhất mà cánh tay có thể sinh ra.
Mobile Manipulator được thảo luận trong đề tài này được thiết kế để làm việc trong phòng thí nghiệm, hoặc nơi công sở Vì vậy tay máy được thiết kế để nâng các vật có khối lượng vừa phải với kích thước nhỏ gọn
Với những điều kiện đã được đề cập, ta chọn sức nâng tối đa của tay máy là 5 (N), tương ứng với khối lượng của vật là 0.5 (Kg).
1.1 Số bật tự do của tay máy (DOF: Degrees Of Freedom)
Số bậc tự do là số khả năng chuyển động của một cơ cấu (chuyển động quay hoặc chuyển động tịnh tiến) Để dịch chuyển một vật trong không gian , cơ cấu chấp hành của cánh tay robot phải đạt được một số bậc tự do nhất định. Đối với các cơ cấu có các khâu được nối với nhau bằng khớp quay hoặc tịnh tiến thì số bậc tự do bằng với số khâu động. Để định vị và định hướng khâu cuối của cánh tay robot một cách tùy ý trong không gian 3 chiều, robot cần có ít nhất 3 bậc tự do, trong đó 2 bậc tự do để định vị và 1 bậc tự do để định hướng.
Giả sử bài toán đặt ra là: có một vật nằm trên mặt phẳng nằm ngang , nhiệm vụ của Mobile Manipulator là định vị và di chuyển vật đến một vị trí đã được định trước Phần mobile robot sẽ di chuyển đến gần vật chỉ định và định hướng nhằm đưa vật vào không gian làm việc của cánh tay sau đó đó cánh tay robot sẽ định vị vật trong không gian 2 chiều.
Việc gặp vật yêu cầu độ chính xác cao, trong một số trường hợp còn yêu cầu về tốc độ xử lý nhanh và độ linh hoạt của cánh tay nên với yêu cầu trên số bậc của cánh tay robot phải đủ lớn để có thể đáp ứng việc xử lý Tuy nhiên số bậc tự do càng cao thì độ phức tạp trong quá trình thiết kế cũng như chi phí sẽ tăng lên Trong phạm vi đề tài, mô hình nhỏ gọn và để định vị vật trong mặt phẳng 2D chỉ cần cánh tay 2 bậc.
Với các giả định được nêu trên số bậc của cánh tay robot được chọn là 2 bậc:
Hình 2.1 Sơ đồ của cánh tay 2 bậc tự do (2 DOF)
1.2 Tốc độ di chuyển và gia tốc của các khớp
Xé về năng suất làm việc, người ta mong muốn tốc độ di chuyển của từng khâu càng nhanh càng tốt Tuy nhiên, xét về mặt cơ học ,tốc độ cao sẽ dẫn đến các vấn đề như : giảm tính ổn định , lực quán tính lớn , tuổi thọ của động cơ và các bộ phận cơ cấu giảm…
Xét về điều khiển, tốc độ cao có thể gây nên độ vọt lố cho điều khiển vị trí , với độ phân giải nhất định của bộ điều khiển ,việc tăng tốc độ của động cơ có thể làm giảm độ chính xác định vị.
Với những nhận xét được nêu trên, ta chọn vận tốc tối đa cho từng khớp là 10 (RPM).
Với yêu cầu tăng tốc từ 0 lên 10 (RPM) trong 1s, ta tính được gia tốc của khớp: α dc = 10 * 2 * π / (60*1) = 1.047 (rad/s 2 )
1.3 Lựa chọn cơ cấu chấp hành cho khâu cuối của robot
Có nhiều kiểu cơ cấu được trang bị cho khâu cuối của cánh tay robot để gắp vật, phổ biến nhất là hai kiểu cơ cấu : cơ cấu sử dụng giác hút chân không và cơ cấu dạng tay kẹp
Với yêu cầu bài toán đặt ra cần có một tay gắp có thể thực hiện được các nhiệm vụ gắp vật mềm mà làm biến dạng, hư hỏng vật , có khả năng linh hoạt, tiếp cận được vật một cách tối ưu nhất Vì vậy ta chọn cơ cấu gắp vật bằng tay kẹp:
Hình 2.2 Tay gắp robot cho Servo Bảng 2.1 thông số kỹ thuật của tay gắp
STT Thông số Giá trị
2 Chiều dài tối đa 108 (mm)
3 Chiều rộng tối đa 98 (mm)
4 Độ mở tối đa 55 (mm)
Trong phạm vị của đề tài cần ưu tiên những vật liệu nhẹ vì robot được thiết kế để hoạt động trong điều kiện không quá khắc nhiệt, robot có cấu trúc phức tạp nên yêu cầu vật liệu về tính linh hoạt cũng như dễ tạo hình, gia công, vật liệu cũng loại dễ tiếp cận , có sẵn để giảm thời gian công sức khi thiết kế.
Với những yêu cầu được nêu trên, ta chọn nhôm để chế tạo , gia công các thành phần cơ khí cho robot:
Bảng 2.2 Bảng thống kê thiết bị và thông số thiết bị
Tên chi tiết Vật liệu Khối lượng (g) Kích thước(mm)
2 Bạc đạn RC Servo Thép 3x8x3
3 Động cơ RC Servo Nhựa 55 40x20x43
2 Tính toán lựa chọn động cơ
Ta lựa chọn thiết kế khớp cơ sơ là thiết kế điển hình vì khi cánh tay hoạt động bộ truyền và động cơ tại khớp 1 chịu tải lớn nhất.
Chọn vị trí nguy hiểm nhất khi các khâu duỗi thẳng ở vị trí nằm ngang và gắp vật có khối lượng 0.5 (kg), lúc này momen cản là lớn nhất. Đơn giản cho việc tính toán mô men (nếu cần thiết) ta xem kích thước của các khớp đúng bằng với động cơ Servo: là hình hộp chữ nhật 40x20, vật nâng là chất điểm.
Hình 2.3 Sơ đồ cánh tay ở trạng thái nguy hiểm nhất Khối lượng tại khớp O2: m2 = 55 + 16 + 22 + 7 + 9 = 109 (g)
Khối lượng tại khâu cuối O3: m3 = 68 + 55 * 2 + 16 + 22 + 7 + 9 * 2 = 241 (g) Khối lượng tối đa của vật nâng: m = 500 (g)
Tổng mô men do trọng lực tác dụng lên khớp O1:
Ngoài mô men của trọng lượng tác động, khi làm việc từ vị trí đứng yên, lực quán tính sinh ra từ các khớp và vật nâng sẽ tạo ra lực cản lên khớp 1.
Mô men quán tính của khớp O2 của tác động lên khớp O1, áp dụng định lý Huyghen-Stênơ:
Mô men quán tính của khâu O3 tác động lên khớp O1, áp dụng định lý Huyghen-Stênơ:
Mô men quán tính của vật nâng tác dụng lên khớp O1:
Mqtm = m * (l1 + l2) 2 = 0.5 * (150 + 150) 2 = 45000(Nmm 2 ) = 0.045 (Nm 2 ) Tổng mô men sinh ra do lực quán tính tác động lên khớp 1:
Mqt = (Mqt1 + Mqt2 + Mqtm) * α dc = 0.072 (Nm)
Mô men cản trên khớp 1:
Mc = Mqtm + Mtl = 0.072 + 2.383 = 2.455 (Nm) Suy ra mô men yêu trên trục ra của động cơ : Mdc ≥ Mc = 2.455 (Nm)
Chọn đông cơ: Servo Kỹ Thuật Số Spt535Lv-180
Hình 2.4 Động cơ Servo Kỹ Thuật Số Spt535Lv-180
Bảng 2.3 Thông số kỹ thuật của động cơ servo Đại lượng Giá trị
Mô-men xoắn tối đa (6.0V): 35 kg.cm
Dải điện áp hoạt động 4.8V-6.0V
Khâu 1 được gắn trực tiếp lên thân xe bằng liên kết bulong đồng thời nhận chuyển động và quay trong mặt phẳng vuông góc với thân xe , có phương đi qua tâm thân xe.
TÍNH TOÁN THIẾT KẾ BỘ PHẬN MOBILE ROBOT
Bộ phận Mobile Robot giúp robot di chuyển, định hướng và đưa vật cần nâng vào không gian làm việc của cánh tay Đồng thời phần mobile robot còn chịu thêm tải trọng của cánh tay và vật nâng nhưng cũng phải đảm bảo được hiệu suất vận hành và độ chính xác, nên thiết kế và cấu trúc cơ khí của mobile robot cần được tuân thủ chặt chẽ theo một số yêu cầu kỹ thuật sau đây:
Mỗi loại mobile robot được thiết kế cho một nhiệm vụ riêng biệt, cấu trúc của robot tùy thuộc vào công việc và mội trường làm việc cụ thể Mobile robot có thể được xây dựng theo ràng buộc holonomic hoặc non-holonomic Thành phần quyết định đến kiểu cấu trúc của hệ thống là bánh xe.
- Những loại bánh xe thông dụng cho mobile robot
Bảng 2.4 đặc điểm những bánh xe thông dụng
Loại bánh xe Hình ảnh Đặt điểm
Bánh xe này có hai độ tự do và có thể di chuyển theo hướng tiến hoặc lùi Tâm của bánh xe được cố định vào khung của robot. Góc giữa khung của robot và mặt phẳng của bánh xe là không đổi Bánh xe cố định thường được sử dụng phổ biến trong hầu hết các hệ thống robot di động có bánh xe (WMR) Caster Wheel Caster Wheel là bánh xe bi này chứa một quả bóng kim loại hoặc nylon hình cầu được đặt trong một giá đỡ Quả bóng có góc tự do 360° và thường được sử dụng để giữ thăng bằng cho robot.
Omni Wheel là bánh xe có con lăn thụ động được gắn xung quanh bánh xe trung tâm Bánh xe Omni có thể di chuyển theo bất kỳ hướng nào và có lực cản thấp Các con lăn được gắn sao cho trục của nó là trực giao với trục chính của bánh xe lớn , giúp bánh xe có thể di chuyển song song với trục của chính nó.
Mecanum Wheel tương tự như cấu trúc bánh xe Omni Wheel ngoại trừ các con lăn được lắp với trục của chúng một góc 45 độ so với trục của đế bánh xe chủ động Mobile robot sử dụng bánh xe Mecanum có thể di chuyển đa hướng: cho phép di chuyển theo đường chéo,tiến , lùi hoặc chuyển động quay quanh trục của robot
- Cấu hình của bánh xe trên mobile robot
Bảng 2.5 Bảng kiểu cấu hình bánh xe thông dụng
Kiểu cấu hình Minh họa Cấu trúc
- Bánh xe caster được sử dụng như các bánh xe thụ động và chúng có thể được sử dụng cùng với các bánh xe khác để đạt được khả năng di chuyển đa hướng
- Một trong những cấu hình phổ biến để sử dụng các bánh xe như vậy là robot sử dụng
2 bánh xe; 2 bánh Conventional Wheel được sử dụng làm bánh xe chủ động và bánh xe caster là bánh xe bị động.
Steering Wheel - Cơ chế bánh lái, hoạt động thông qua một hệ thống truyền động của robot Một động cơ lái điều khiển hướng lái (qua trái hoặc qua phải) của bánh xe và từ đó quyết định hướng di chuyển, trong khi một động cơ truyền động truyền mô-men xoắn đến bánh xe để cung cấp chuyển động thuận và lùi
- Bánh xe lái thường được sử dụng trong các cấu hình có bốn bánh ba bánh và cấu hình hai bánh (ví dụ: xe đạp)
- Cấu hình của Omni Wheel có thể được tối ưu hóa bằng cách sử dụng ba hoặc bốn bánh:
- Ba bánh xe có thể được gắn trên một nền tảng hình tam giác với trục của chúng được nghiêng 120 độ so với nhau.
- Bánh xe được đặt đối xứng trên hai bên của nền tảng di động hình vuông với góc
90 độ giữa các bánh xe
- Bánh xe được đặt đối xứng tại các góc của nền tảng di động hình vuông và trục của chúng được nghiêng 90 độ so với nhau
Mecanum Wheel Với bánh xe đa hướng Mecanum, một cấu trúc điển hình là 4 bánh xe được sắp xếp theo hình chữ nhật hoặc hình vuông và các bánh xe được đặt theo kiểu xe ô tô và được lắp xen kẽ với nhau theo hàng ngang.
- So sánh khả năng vận hành dựa trên môi trường làm việc
Bảng 2.6 So sánh khả năng vận hành giữa các loại bánh
Loại bánh xe Độ nhạy cảm trên bề mặt gồ ghề Độ nhạy cảm khi có vật nhỏ trên bề mặt
- So sánh cấu hình và khả năng chuyển động
Bảng 2.7 So sáng cấu hình và khả năng chuyển động
Loại bánh xe Cấu hình bánh xe có thể có
Cấu hình bánh xe tối thiểu
Conventional Wheel 2 hoặc nhiều hơn 2 bánh
Caster Wheel 1 và được sử dụng như bánh xe thụ động
Mecanum Wheel 4 hoặc nhiều hơn 4 3
- So sánh thông số kỹ thuật
Bảng 2.8 So sánh thông số kỹ thuật giữa các bánh
Loại bánh xe Đường kính tối thiểu
Trong phạm vi nghiêng cứu của đề tài:
- Mobile Manipulator được thiết kế để hoạt động trong môi trong phòng, nơi có bề mặt nhẵng
- Vật được nâng có khối lượng không quá lớn và robot cũng được thiết kế nhỏ gọn suy ra tải trọng cho bánh xe cũng không quá lớn
- Môi trường làm việc trong phòng thường bị giới hạn, không gian chật hẹp và thường có chướng ngại vật, hoặc có vùng cấm nên diện tích chiến dụng của mobile robot cũng bị hạn chế, suy ra cần ưu tiên robot có cấu trúc đa hướng
Từ những thông tin về bánh xe, cấu hình bánh xe trên mobile robot kết hợp với những điều kiện được đề ra, ta chọn mobile robot sử dụng bánh xe mecanum:
Bảng 2.9 Thông số kỹ thuật của bánh xe mecanum
Hình ảnh Thông số kỹ thuật
Mecanum – Số lượng con lăn: 9
– Vật liệu thân: nhựa ABS – Vật liệu con lăn: cao su mềm – Khớp nối: chưa kèm theo
– Chiều dài của con lăn: 38mm – Khối lượng 2 bánh: 300g – Tải trọng: 8kg ( nếu sử dụng 4 bánh)
1.2 Sơ đồ của bánh xe trên mobile robot
- Điều kiện đa hướng của Mobile Robot Để giảm độ khó của mô hình động học và động lực học của robot , một số giả định được đưa ra để robot hoạt động trong điều kiện lý tưởng :
- Giả sử rằng robot di động, đặc biệt là bánh xe, nó sẽ không bị biến dạng cơ học lúc vận hành
- Toàn bộ mặt phẳng chuyển động được giới hạn trong một mặt phẳng 2D, bỏ qua tác động của mặt đất
- Con lăn có đủ ma sát với mặt đất, bánh xe sẽ không bị trượt
- Giả sử rằng điểm tiếp xúc giữa con lăn và mặt đất nằm ngay dưới tâm bánh xe
Hình 2.8 Sơ đồ của một bánh xe Mecanum Phương trình động học của một bánh xe Mecanum:
Ma trận Jacobian vận tốc nghịch đảo của một hệ thống di động bao gồm n bánh xe Mecanum (n ≥ 3) là Jn×3 Theo nguyên lý động học của robot, nếu ma trận Jacobian là ma trận hạng cột đầy đủ, nghĩa là bậc ( J n ×3) = 3, hệ thống robot sẽ có ba bậc tự do trong mặt phẳng Ma trận Jacobian J n ×3 được viết thành dạng ma trận khối, được biểu thị dưới dạng:
Trong hệ thống mobile robot bao gồm n bánh xe Mecanum, hệ thống có thể đạt được chuyển động đa hướng, miễn là ma trận Jacobian nghịch đảo của ba bánh xe bất kỳ là một ma trận hạng cột đầy đủ: Rank (J) = 3.
- Mối quan hệ giữa số điểm giao nhau của trục lăn trên ba bánh Mecanum và bậc của ma trận Jacobian
Trong một mặt phẳng, số giao điểm của ba trục lăn trên ba bánh xe Mecanum là
0, 1, 2, 3 và vô hạn Ta nhận thấy, mối quan hệ giữa số lượng giao điểm và bậc của ma trận Jacobian là mối quan hệ giữa cấu hình bánh xe Mecanum và khả năng chuyển động của hệ thống robot:
Trường hợp 1 : Trục con lăn của ba bánh xe bất kỳ không giao nhau
Hình 2.9 Cấu hình của mobile robot sử dụng ba bánh mecanum mà trục con lăn không giao nhau Trong đó:
XiOiYi: Hệ tọa độ gắn với bánh xe XOY: Hệ tọa độ của mobile robot γi: Góc nghiêng của trục con lăn trên mỗi bánh xei: Góc nghiêng của trục con lăn trên mỗi bánh xe αi, βi, i, βi, i, li: Trạng thái vị trí của mỗi bánh xe so với hệ tọa độ XOY
Mối quan hệ giữa các góc trên mỗi bánh xe:
Bảng 2.10 Mối quan hệ giữa góc trên bánh xe
Gốc O của hệ tọa độ XOY nằm trên trục con lăn của bánh xe O1
Vì trục con lăn của hai bánh bất kỳ luôn song song với nhau, nên ta suy ra mối quan hệ của các góc như sau : β 1 +γ 1 =0,α i +β i +γ i =c i (i=1,2,3)
Các góc nghiêng của trục của ba con lăn là như nhau, vì vậy c i =α 1
Ta có ma trận Jacobian nghịch đảo:
R [ cos cos cos sin sin sin α γ α γ α γ 1 2 3 1 2 3 sin sin sin sin sin sin α α α γ γ γ 1 2 3 3 1 2 l l l 1 2 3 sin sin sin sin sin sin ( ( ( β β β γ γ γ 1 2 3 + 1 + 2 + 3 γ γ γ 1 2 3 ) ) ) ] = −1 R SM
, 1 sinγ 2 , 1 sinγ 3 ) , M= [ cos cos cos α α α 1 1 1 sin sin sin α α α 1 1 1 l l l 1 2 3 sin sin sin ( ( ( β β β 1 2 3 +γ +γ +γ 1 2 3 ) ) ) ]
Bậc Ma trận Jacobian J nghịch đảo phụ thuộc vào ma trận M, nghĩa là :
Từ những phân tích trên, ta suy ra: det(M)=0,Rank(M)≠3
Theo định lý nhân của đa thức, ta thu được: det(J)=0,Rank(J)≠3
XÂY DỰNG PHƯƠNG TRÌNH ĐỘNG HỌC VÀ ĐỘNG LỰC HỌC CHO MOBILE MANIPULATOR
Xây dựng mô hình động học và động lực học cho mobile robot
Mô hình động học của Mecanum Mobile Robot là bài toán chỉ xét đến mô hình mô tả chuyển động của robot mà không quan tâm đến nguyên nhân gây ra chuyển động (lực hoặc mô men) Do đó, đây là mô hình toán học thể hiện mối quan hệ giữa các thông số điều khiển và quy luật chuyển động của robot (vị trí và hướng) trong hệ quy chiếu gắn liền với sàn di chuyển của robot Vì vậy, mà bài toán này được dùng để thiết kế hướng điều khiển robot Đối với bài toán động học được chia thành hai dạng đó là:
Bài toán động học thuận biết trước các thông số điều khiển xác định quỹ đạo chuyển động
Bài toán động học ngược biết trước quỹ đạo chuyển động xác định các thông số điều khiển robot.
Hình 3.1 Mô hình động học mecanum mobile robot Xét:
- Pf {Of , Xf , Yf } là hệ trục tọa độ toàn cục gắn với bề mặt di chuyển ;
- PR{OR , XR , YR} là hệ trục tọa độ cục bộ gắn trên mobile robot ;
- qf = [xf (t) yf (t) θ(t)] T là vector định vị trí và hướng của mobile robot trong hệ trục tọa độ Pf ;
- qR = [xR (t) yR (t) θ(t)] T là vector tham số của mobile robot trong hệ tọa độ PR; Khi đó : qf = Q(θ)qR (1.1) qR = Q(θ) T qf (1.2) Trong đó:
Q(θ) = [ cos sin 0 θ θ −sin cos 0 θ θ 0 0 1 ] là một ma trận chuyển hướng từ hệ tọa độ toàn cục Pf sang hệ tọa độ cục bộ PR của mobile robot.
2 Xây dựng phương trình động học
- Vận tốc tịnh tiến của bốn 4 bánh xe đa hướng Mecanum trong hệ tọa độ PR :
Trong đó: r: Bán kính của bánh xe Mecanum ω 1 , ω 2 , ω 3 , ω 4 : Lần lược là vận tốc góc của 4 bánh xe Mecanum
- Chọn chiều tọa độ như Hình và giả sử bánh xe không trượt:
Ta có mối liên hệ giữa các thành phần vận tốc của bánh xe 1 Hình:
VM1: Vận tốc tịnh tiến của con lăn bị động trong bánh xe mecanum d: Khoảng cách giữa 2 trục của bánh xe
L: Khoảng cách giữa 2 tâm bánh xe trên một trục
VRx, VRy : Lần lượt là vận tốc của mobile robot theo trục x , y trong hệ tọa độ PR ω : Là vận tốc góc xoay của mobile robot
- Từ phương trình (2.2), ta suy ra vận tốc tịnh tiến của bánh xe 1:
- Tương tự cho các bánh xe còn lại, ta có:
{ V V V V 1 2 4 3 (t (t (t (t )=V )=V )=V )=V Rx Rx Rx Rx (t (t (t (t )− )+ )− )+ L 2 L 2 L 2 L 2 ω( ω ω ω(t (t (t t )−(V )+(V )+(V )−(V Ry Ry Ry Ry (t)− (t)− (t)+ ( t )+ d 2 d d 2 2 d 2 ω ω(t ω(t ω( (t)) t )) )) )) tan tan tan tan 1 1 1 1 ( ) ( ) ( ) ( ) (2.4)
Ta có góc = 45°, thay vào phương trình (2.4) ta được:
{ V V V V 4 1 2 3 (t (t (t ( t )=V )=V )=V )=V Rx Rx Rx Rx (t)−V (t)+ (t)−V (t )+V V Ry Ry Ry Ry (t (t (t (t)+( )−( )+( )−( L 2 L 2 L 2 L 2 + + + + d d d 2 2 2 d 2 )ω )ω(t )ω(t ) ω(t (t ) ) ) ) (2.5)
- Thay phương trình (2.1) vào phương trình (2.5), ta được mối liên hệ giữa vận tốc góc của từng bánh xe và vận tốc tuyến tính của mobile robot:
[ ω ω ω ω 1 2 3 4 (t) (t) (t) (t) ] = 1 r [ 1 1 1 1 −1 −1 1 1 −( −( ( ( L 2 L 2 L 2 L 2 + + + + d 2 d 2 d 2 d 2 ) ) ) ) ] [ V V ω Rx Ry (t (t (t ) ) ) ] (2.6) Gọi: ω wheel = [ ω 1(t)ω 2 (t)ω 3 (t)ω 4 (t)] T : Ma trận chứ các tham số là vận tốc góc của từng bánh xe Mecanum
T = = 1 r [ 1 1 1 1 −1 −1 1 1 −( −( −( ( L 2 L 2 L 2 L 2 + + + + d 2 d d d 2 2 2 ) ) ) ) ] : Ma trận Jacobian của Mecanum mobile robot cho bài toán động học ngược
Khi đó (2.6) sẽ tương đương với: ω wheel = T q ´ R (2.7) Đây cũng là phương trình mô tả động học ngược cho mô hình Mecanum mobile robot.
Từ (2.7) ta suy ra được vận tốc tịnh tiến và vận tốc xoay của mobile robot: q´R = T + ω wheel (2.8) Trong đó:
T + = (T T T) -1 T T = 4 r [ ( L 2 −1 1 1 + d 2 ) ( L 2 −1 1 1 + d 2 ) ( L 2 1 1 1 + d 2 ) ( L 2 − − 1 + 1 1 d 2 ) ] : Là Ma trân Jacobian cho bài toán động học thuận
Khi đó phương trình (2.8) trở thành:
2.1 Bài toán động học thuận Động học thuận trong điều khiển vị trí của Mecanum Mobile Robot là việc biết trước các giá trị ω wheel và tìm vận tốc tịnh tiến, vận tốc xoay q ´ R của mobile robot trong hệ tọa độ cục bộ PR rồi từ đó suy ra vị trí của mobile robot qf = [xf (t) yf (t) θ(t)] T trong hệ tọa độ toàn cục Pf : q´f = Q(θ) q ´ R = Q(θ) (T T T) -1 T T ω wheel
- Tìm vận tốc tịnh tiến q ´ R của mobile robot thông qua phương trình (2.8):
- Đưa q ´ R về hệ tọa độ toàn cục Pf thông qua phương trình (1.1):
[ V V ω( fx fy ( (t t t ) ) ) ] = 4 r [ cosθ sin 0 θ −sin cos 0 θ θ 0 0 1 ] [ ( L 2 −1 −1 + 1 d 2 ) ( L 2 + 1 1 1 d 2 ) ( L 2 −1 + 1 1 d 2 ) ( L 2 −1 + 1 1 d 2 ) ] [ ω ω ω ω 1 2 3 4 (t (t (t (t ) ) ) ) ]
- Suy ra vị trí của robot trên hệ tọa độ Pf :
2.2 Bài toán động học nghịch Động học ngược là bài toán xác định các thông số điều khiển ω wheel = [ ω 1(t)ω 2 (t)ω 3 (t)ω 4 (t)] T của bánh xe Mecanum từ phương trình tham số của quỹ đạo (xf(t), yf(t) ) trong hệ tọa độ toàn cục Pf
- Từ quỹ đạo (xf(t), yf(t)) trong hệ tọa độ Pf xác định được q ´ f = ¿ ¿], kết hợp (1.1) và (2.7) ta được: ω wheel =T + Q( θ ) q ´ f
Khi đó, thông số điều khiển mỗi bánh xe để bám quỹ đạo (xf(t) , yf(t)) cho trước :
3 Xây dựng phương trình động lực học
Tính toán mô men quán tính của các thành phần cơ học của mobile robot:
- Nếu xét bánh xe Mecanum là một đĩa tròn đồng chất bán kính r, khối lượng m w , trục quay qua tâm của bánh xe và vuông góc với mặt phẳng chứa bánh xe, ta có mô men quán tính của bánh xe Mecanum:
Hình 3.2 Mô men quán tính của đĩa tròn đồng chất
- Nếu xét thân xe là một hình hộp chữ nhật đồng chất khối lượng m p , chiều rộng
L, chiều dài d, trục quay qua tâm của hình chữ nhật và vuông góc với mặt trên, ta có mô men quán tính của thân xe:
- Mô men quán tính của bánh xe Mecanum khi di chuyển, với trục quay là trục z nằm trong hệ trục tọa độ PR được gắn với mobile robot:
Nguyên lý Lagrangian sẽ được sử dụng để tìm ra phương trình động lực học của Mecanum Mobile Robot:
K: Động năng của Mecanum Mobile Robot
P: Thế năng của Mecanum Mobile Robot Động năng của mobile robot khi chuyển động bao gồm động năng của thân xe và động năng của cả 4 bánh xe:
- Động năng của thân xe khi chuyển động :
2m p ( V 2 Rx −V 2 Ry ) + 1 2 I p θ´ 2 (3.2) Trong đó: m p : Khối lượng của mobile robot
V Rx , V Ry : Lần lược là vận tốc theo trục x, y của mobile robot trên hệ trục tọa độ PR gắn với robot
Ip: Mô men quán tính của thân xe θ: Góc xoay của thân xe quanh trục z của hệ tọa độ PR gắn với robot
- Động năng của 4 bánh xe Mecanum khi mobile robot chuyển động:
2+ ´φ 2 2 + ´φ 3 2 + ´φ 4 2 ) + 4 [ 1 2 m w ( V 2 Rx −V 2 Ry ) + 1 2 I ℘ θ´ 2 ] (3.3) Trong đó: m w : Khối lượng của mỗi bánh xe Mecanum
I w : Mô men xoắn của bánh xe Mecanum quay quanh trục của bánh xe
Iwp: Mô men xoắn của bánh xe Mecanum khi di chuyển , với trục quay là trục z nằm trong hệ trục tọa độ PR được gắn với mobile robot φ 1 , φ 2 , φ 3, φ 4 : Lần lượt là góc chuyển động của từng bánh xe Mecanum Khi đó tổng động năng của mobile robot:
Thay phương trình (3.2), (3.3) vào (3.4), ta được phương trình tổng động năng của mobile robot sau khi khai triển:
Kết hợp phương trình (2.6) và (3.5) để suy ra sự liên hệ giữa động năng và [
Cho rằng Mecanum Mobile Robot chuyển động trên bề mặt phẳng rộng nên thế năng của mobile robot tạo ra không đáng kể:
Vì vậy từ phương trình (3.1) và (3.7) suy ra:
Phương trình Lagrange dựa vào phép tính vi phân của các thành phần năng lượng với các biến thay đổi của hệ thống và thời gian Trong trường hợp đơn giản, nó có thể tốn nhiều thời gian hơn Cơ học Newton Tuy nhiên, khi hệ thống trở nên phức tạp hơn thì phương pháp dựa vào nguyên lý Lagrange trở nên hiệu quả và đơn giản hơn Phương trình chuyển động Lagrange dành cho hệ thống bảo toàn được đưa ra như sau:
L: Là hàm Lagrange là hiệu số của động năng trừ thế năng q: vector n hệ trục tổng quát với hệ trục thành phần là qi
: vector n của lực tổng quát với các lực thành phần là i
Thực hiện đạo hàm hàm Lagrange để có được phương trình di chuyển tịnh tiến của mobile robot:
- Khi đó phương trình di chuyển tịnh tiến là:
Thực hiện đạo hàm hàm Lagrange để có được phương trình di chuyển quay quanh trục của mobile robot:
- Khi đó phương trình chuyển động quay của mobile robot:
M ´ θ = Iθ ´ + 1 r 2 (4Iw( L 2) 2 θ ´ + 8Iw( L 2)( d 2)θ ´ + 4Iw( d 2) 2 θ ´ ) (4.7) Viết lại phương trình (4.4) và (4.7) dưới dạng ma trận, ta được:
[ m+ 0 0 4 r I 2 w − m+ 0 0 4 r I 2 w I + r 1 2 (4 I w ( L 2 )2+8 I w 0 0 ( L 2 )( d 2 )+4 I w ( d 2 )2) ] [ V V ´ ´ θ ´ Rx Ry ] = [ M F F x y ´ θ ] (4.8)Chúng ta có thể thu gọn phương trình vector (4.8) như sau:
M q ´ R = τ (4.9) Trong đó: qR = [xR (t) yR (t) θ(t)] T : vector tham số của mobile robot trong hệ tọa độ
PR; τ = [ F x F y M θ ´ ] T : Vector lực gây ra chuyển động của hệ
Phương trình (4.9) là phương trình động lực học thuận cho Mecanum mobile robot với vector đầu vào chứa các giá trị lực và mô men xoắn là các tác nhân gây ra sự chuyển động của mobile robot.
Phương trình (4.9) có thể chuyển đổi thành: q´ R = M -1 τ (5.0)
Phương trình (5.0) là phương trình động lực học nghịch, dùng để tính toán các giá trị gia tốc của mobile robot khi các giá trị đầu vào là lực và mô men xoắn là các tác nhân gây ra sự chuyển động của mobile robot.
Tính toán động học, động lực học cho cánh tay robot
1 Tổng quan Động học và động lực học là hai lĩnh vực quan trọng trong điều khiển cánh tay robot, cung cấp thông tin về chuyển động và tác động của cánh tay trong quá trình thực hiện nhiệm vụ
- Động học tập trung vào mối quan hệ giữa tham số cơ học và vị trí, hướng, tốc độ của các khớp trong cánh tay robot Đồng thời mục tiêu là xác định vị trí và hướng của cánh tay robot dựa trên các thông số cơ học như góc quay của các khớp
- Động lực học nghiên cứu về các lực và mô men ảnh hưởng lên cánh tay robot, cũng như về tốc độ và gia tốc của các khớp Mục tiêu là xác định và dự đoán tác động của lực và mô men lên cánh tay robot trong quá trình chuyển động
2 Phương trình động học của cánh tay robot
Hình 3.3 Mô hình robot hai bậc tự do Thông số D-H của mô hình robot
Bảng 3.1 Bảng thông số D-H của mô hình robot
Ma trận biểu diễn sự chuyển vị giữa các hệ trục và ma trận chuyển vị tổng như sau:
Từ đó ta suy ra động học vị trí: p x =l 1 c 1 +l 2 c 12 p z =l 1 s 1 +l 2 s 12
Phương trình động học vị trí: p x =l 1 c 1 +l 2 c 12 p z =l 1 s 1 +l 2 s 12
Chiều dài của vecto vị trí P là chiều dài từ vị trí gốc tọa độ 2 đến gốc tọa độ 0 Bình phương chiều dài P, ta có: p x 2
Bên cạnh đó chúng ta có: c 2 =c 12 c 1 +s 12 s 1
Từ hàm cos( θ 2) chúng ta có θ 2 =atan2(c 2 , ± √ 1− c 2
2) Với mỗi θ 2 ta có phương trình
Giải hệ phương trình tuyến tính trên ta được:
Giá trị θ 1duy nhất với θ 1=atan2(c 1 , s 1 ) kết hợp với hai giá trị c 1và s 1 đã tìm ở trên
3 Phương trình động lực học:
Trong hình là động học của hai khâu phẳng RR Để xác định động lực học của nó, giả sử khối lượng của các khâu đặt ở cuối mỗi khâu Các biến khớp là q=[ θ 1 θ 2 ] T
Và vector lực tổng thể: τ=[ τ 1 τ 2 ] T
Hình 3.4 Tay máy hai khâu RR Trong đó τ 1 và τ 2 là moment cung cấp bởi các cơ cấu chấp hành
- Thế năng và động năng ở từng khâu:
Với khâu 2: x 2 =l 1 cosθ 1 +l 2 cos(θ 1 +θ 2 ) y 2 =l 1 sinθ 1 +l 2 sin(θ 1 +θ 2 ) x´ 2 =−l 1 θ´ 1 sinθ 1 −l 2 ( ´θ 1 + ´θ 2 )sin(θ 1 +θ 2 ) y´ 2 =l 1 θ´ 1 cosθ 1 +l 2 ( ´θ 1 + ´θ 2 )cos(θ 1 +θ 2 )
Vì thế khi chúng ta bình phương vận tốc có: v 2 2 = ´x 2 2 + ´y 2 3 =l 1 2 θ´ 1 2 −l 2 2 ( θ ´ 1 + ´θ 2 ) 2 +2l 1 l 2 ( ´θ 1 2 + ´θ 1 θ´ 2 )cosθ 2 Động năng của khâu 2 là:
Chúng ta xác định các thành phần của phương trình động học
Cuối cùng, theo phương trình Lagrange, động lực học của tay máy được đưa ra bởi hai phương trình vi phân phi tuyến sau:
[ cos ] sin cos( ) m m l m l m l l m l m l l m l l m m gl m gl m l m l l m l m l l m gl
Động lực học của tay máy Ta viết động lực học của cánh tay máy dạng vector như sau:
M(q)=[ ( m 1 +m m 2 ) 2 l 1 2 l 2 2 + + m m 2 2 l 2 2 l 1 + l 2 2 cosθ m 2 l 1 2 l 2 cos θ 2 m 2 l 2 2 +m m 2 2 l 1 l 2 2 l 2 cos θ 2 ] Động lực học tay máy dưới dạng tiêu chuẩn:
Với M(q) là ma trận quán tính, V(q,q) là vector hướng tâm/Coriolis và G(q) là vector trọng lực.
XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN CHO MOBILE MANIPULATOR
Cơ sở lý thuyết
1 Lý thuyết về bộ điều khiển PID
Một bộ điều khiển vi tích phân tỉ lệ (PID- Proportional Integral Derivative) là một cơ chế phản hồi vòng điều khiển tổng quát được sử dụng rộng rãi trong các hệ thống điều khiển công nghiệp – bộ điều khiển PID là bộ điều khiển được sử dụng nhiều nhất trong các bộ điều khiển phản hồi Bộ điều khiển PID sẽ tính toán giá trị "sai số" là hiệu số giữa giá trị đo thông số biến đổi và giá trị đặt mong muốn Bộ điều khiển sẽ thực hiện giảm tối đa sai số bằng cách điều chỉnh giá trị điều khiển đầu vào Trong trường hợp không có kiến thức cơ bản (mô hình toán học) về hệ thống điều khiển thì bộ điều khiển PID là sẽ bộ điều khiển tốt nhất Tuy nhiên, để đạt được kết quả tốt nhất, các thông số PID sử dụng trong tính toán phải điều chỉnh theo tính chất của hệ thống-trong khi kiểu điều khiển là giống nhau, các thông số phải phụ thuộc vào đặc thù của hệ thống.
Giải thuật tính toán bộ điều khiển PID bao gồm 3 thông số riêng biệt, do đó đôi khi nó còn được gọi là điều khiển ba khâu: các giá trị tỉ lệ, tích phân và đạo hàm, viết tắt là P, I, và D Giá trị tỉ lệ xác định tác động của sai số hiện tại, giá trị tích phân xác định tác động của tổng các sai số quá khứ, và giá trị vi phân xác định tác động của tốc độ biến đổi sai số Tổng chập của ba tác động này dùng để điều chỉnh quá trình thông qua một phần tử điều khiển như vị trí của van điều khiển hay bộ nguồn của phần tử gia nhiệt Nhờ vậy, những giá trị này có thể làm sáng tỏ về quan hệ thời gian: P phụ thuộc vào sai số hiện tại, I phụ thuộc vào tích lũy các sai số quá khứ, và D dự đoán các sai số tương lai, dựa vào tốc độ thay đổi hiện tại
Bằng cách điều chỉnh 3 hằng số trong giải thuật của bộ điều khiển PID, bộ điều khiển có thể dùng trong những thiết kế có yêu cầu đặc biệt Đáp ứng của bộ điều khiển có thể được mô tả dưới dạng độ nhạy sai số của bộ điều khiển, giá trị mà bộ điều khiển vọt lố điểm đặt và giá trị dao động của hệ thống Lưu ý là công dụng của giải thuật PID trong điều khiển không đảm bảo tính tối ưu hoặc ổn định cho hệ thống.
Hình 4.1 Sơ đồ thuật toán PID Ngõ ra của bộ điều khiển PID chính là tổng của ngõ ra ba khâu:
PID out =P out +I out +D out
Khâu tỉ lệ là tích giữa sai số hiện tại với độ lợi K P
- P out : thừa số tỉ lệ của đầu ra
Khâu tích phân là tích giữa tổng sai số tức thời theo thời gian với độ lợi K I :
- I out : thừa số tích phân của đầu ra
- τ: biến tích phân trung gian
Khâu vi phân là tích giữa độ dốc sai số theo thời gian với độ lợi vi phân K D
- D out : thừa số tích phân đầu ra
Vậy ngõ ra tác động là: u(t)=K P e(t)+K I ∫
0 t e(τ)dτ+K D d d(t)e(t) Hàm truyền của bộ điều khiển PID liên tục:
Sự phát triển của các hệ thống điều khiển số yêu cần cần có những bộ điều khiển rời rạc Do đó thuật toán điều khiển PID rời rạc cũng được sử dụng rộng rãi trên máy tính cũng như hệ thống nhúng Chuyển đổi về miền thời gian rời rạc cho từng khâu như sau:
- Khâu tỉ lệ: u(kT)=K P e(kT)
- Khâu vi phân: u(kT)=K D e(kT)−e¿
Với T là chu kì lấy mẫu theo thời gian (giây) Từ đó cho ta ngõ ra tác động u(kT) là: u(kT)=K P e(kT)+K I ∑
2 Mô hình động học và động lực học
Ta kế thừa và sử dụng các mô hình động học và động lực học nghịch thu được từ chương III để xây dựng bộ điều khiển động lực học cho hệ thống:
II.1 Mô hình động lực học của Mobile Robot
Ta có phương trình động lực học thuận của mobile robot:
M q ´ R = τ Khi đó , phương trình động lực học nghịch được khai triển: q´ R = M -1 τ Trong đó: qR = [xR (t) yR (t) θ(t)] T : vector tham số của mobile robot trong hệ tọa độ PR; τ = [ F x F y M θ ´ ] T : Vector lực gây ra chuyển động của hệ
II.2 Mô hình động lực học của cánh tay robot
Ta có phương trình động lực học thuận của cánh tay robot :
Khi đó , phương trình động lực học nghịch được khai triển : q´ = (τ - V (q,q) - G(q)) M -1
Thiết kế hệ thống điều khiển
1 Thiết kế mô hình điều khiển cho mobile robot
Với các phương trình động học và động lực học , ta xây dựng bộ điều khiển vị trí cho phần mobile robot như sau :
Hình 4.2 Sơ đồ điều khiển phần Mobile robot
1.2 Kết quả mô phỏng Matlab/ Simulink
Ta xây dựng mô hình điều khiển trong phần mềm Simulink/Matlab như sau:
Hình 4.3 Mô hình điều khiển trong Matlab/Simulink
1.2.2 Chức năng của từng module trong mô hình
Ta xây dưng bộ điều khiển PID dựa trên lý thuyết, để tạo ra tín hiệu điều khiển mô men xoắn dựa trên tín hiệu đầu vào là sai số vị trí của phần mobile robot :
Hình 4.4 Bộ điều khiển PID
Sử dụng phương pháp thử và sai ta thu được thông số PID cho Mobile robot:
Bảng 4.1 Thông số PID cho Mobile robot
Hình : Thông số PID cho Mobile Robot
1.2.2.2 Thành phần chuyển vị Jacobian
Ta dùng ma trận chuyển vị Jacobian để chuyển đổi hệ trục tọa độ làm việc từ hệ tọa toàn cục thành hệ tọa đọ cục bộ gắn với robot.
Hình 4.6 Code thực hiện trong module chuyển vị Jacobian
1.2.2.3 Thành phần tạo quỹ đạo chuyển động mong muốn
Ta dùng một module để tạo chuyển động mong muốn của robot, quỹ đạo là phương trình tham số theo thời gian.
Hình 4.7 Thành phần tạo quỹ đạo mong muốn
Hình 4.8 Code thực hiện trong module
1.2.2.4 Thành phần động lực học
Ta sử dụng mô hình động lực học nghịch của robot để tính toán vận tốc và vị trí của robot thông qua các tác nhân lực đầu vào.
Hình 4.9 Mô hình động lực học của mobile robot
Hình 4.10 Chi tiết thành phần động lực học
Hình 4.11 Code thực hiện mô hình động lực học
Bài toán : Ta cho mobile robot bán quỹ đạo đường thẳng có phươn trình tham số: x(t) = 0 + 1.t y(t) = 0 + 1.tKết quả :
Hình 4.12 Đồ thị ví trí của mobile robot
Hình 4.15 Đồ thị vận tốc theo trục X và Y
Hình 4.16 Đồ thị sai số theo trục X và Y
Hình 4.17 Đồ thị vận tốc góc của từng bánh xe
Bài toán : Cho mobile robot bám theo quỹ đạo mong muốn là hình tròn có bán kính là 1 (m) phương trình tham số: x(t) = 0 + sin (0.5t) y(t) = 0 + cos(0.5t)
Hình 4.18 Đồ thị quỹ đạo của mobile robot
Hình 4.19 Đồ thị trục X(t) của mobile robot
Hình 4.20 Đồ thị trục Y(t) của mobile robot
Hình 4.21 Đồ thị vận tốc theo trục X và Y của robot
Hình 4.22 Đồ thị sai số theo trục X và Y của mobile robot
Hình 4.23 Đồ thị vận tốc của từng bánh xe
2 Thiết kế mô hình điều khiển cho cánh tay robot
Với các phương trình động học và động lực học , ta xây dựng bộ điều khiển vị trí cho phần mobile robot như sau :
Hình 4.24 Sơ đồ điều khiển phần cánh tay robot
2.2 Kết quả mô phỏng Matlab/Simulink
Ta xây dựng mô hình điều khiển trong Matlab/Simulink như sau:
Hình 4.25 Mô hình điều khiển của cánh tay robot
2.2.2 Chức năng của từng module trong mô hình
Ta xây dưng bộ điều khiển PID dựa trên lý thuyết, để tạo ra tín hiệu điều khiển mô men xoắn dựa trên tín hiệu đầu vào là sai số vị trí của phần mobile robot :
Hình 4.26 Bộ điều khiển PID
Sử dụng phương pháp thử và sai ta thu được thông số PID cho cánh tay robot:
Bảng 4.2 Bảng thông số PID cho cánh tay robot
2.2.2.2 Thành phần động học thuận
Thành phần động học thuận dùng để tính toán vị trí khâu cuối cuối của cánh tay với đầu vào là góc của từng khớp
Hình 4.27 Thành phần động học thuận trong cánh tay robot
Hình 4.28 Code thực hiện động học thuận
2.2.2.3 Thành phần động học nghịch
Thành phần động học nghịch dùng để tính toán các thành phần góc của các khớp dựa vào vị trí của khâu cuối cánh tay robot.
Hình 4.29 Thành phần động học nghịch của cánh tay robot
Hình 4.30 Code thực hiện động học nghịch của cánh tay robot
2.2.2.4 Thành phần động lực học của cánh tay robot
Ta sử dụng thành phần động lực học để tính toán vận tốc và vị trí của các khâu dựa vào các giá trị mô men đầu vào
Hình 4.31 Thành phần động lực học của cánh tay robot
Hình 4.32 Chi tiết của thành phần động lực học cánh tay robot
Hình 4.33 Code thực hiện mô hình động lực học của cánh tay robot
2.2.2.5 Thành phần tạo quỹ đạo mong muốn
Hình 4.34 Thành phần tạo quỹ đạo cho cánh tay robot
Hình 4.35 Code thực hiện tạo quỹ đạo
Bài toán : Cho khâu cuối của cánh tay di chuyển theo đường thẳng có phương trình tham số: x(t) = 0.3 – 0.15t y(t) = 0.09 + 0.14t Kết quả :
Hình 4.36 Đồ thị quỹ đạo của cánh tay robot
Hình 4.37 Đồ thị x(t) của cánh tay robot
Hình 4.38 Đồ thị z(t) của cánh tay robot
Hình 4.39 Đồ thị góc Theta 1 của cánh tay robot
Hình 4.40 Đồ thị góc Theta 2 của cánh tay robot
Hình 4.41 Sai số góc Theta 1 của cánh tay robot
Hình 4.42 Sai số góc Theta 2 của cánh tay robot
Hình 4.43 Vận tốc góc của khớp 1
Hình 4.44 Vận tốc góc của khớp 2
3 Mô hình điều khiển hệ thống Mobile Manipulator
Việc điều khiển , kết hợp hai hệ thống mobile và manipulator trong mobile manipulator robot để đạt được quỹ đạo hoặc vị trí mong muốn ,thường được thiết kế theo hai hướng chủ yếu :
- Xem phần di động và cánh tay là một hệ thống:
Với cách này phần mobile và cánh tay sẽ hoạt động một cách đồng bộ với nhau , chuyển động mượt , trơn tru và thời gian đáp án cao hơn , năng suất làm việc cao hơn Nhưng nế robot hoạt động theo cách này thì sẽ tiêu tốn năng lượng nhiều hơn , không kiểm soát được quỹ đạo của phần mobile, tăng sự phúc tạp khi tính tính toán.
- Điều khiển riêng biệt hai phần di động và cánh tay:
Phần cánh tay và phần di động của robot sẽ được điều khiển một cách độc lập với nhau , và sẽ hoạt động dựa trên nhiệm vụ và mode đã được lập trình sẵn, sẽ có một bộ điều khiển Switch Case để điều hướng nhiệm vụ của hai bộ phận, thiết kế hoạt động theo hướng này sẽ đơn giản hơn
Trong phạm vi đề tài , robot sẽ được thiết kế theo kiểu hai: Điều khiển riêng biệt hai phần di động và cánh tay.
Hình 4.45 Sơ đồ điều khiển tổng quát của hệ thống
3.2 Kết quả mô phỏng Matlab/Simulink
Ta xây dưng mô hình điều khiển trong Matlab/Simulink như sau :
Hình 4.46 Mô hình điều khiển của Mobile Manipulator
3.2.2 Chức năng của từng module trong mô hình
Switch Task dùng để điều hướng , sắp xếp nhiệm vụ của từng bộ phận đã được lập trình sẵn:
Hình 4.47 Bộ điều khiển Switch Case
Hình 4.48 Chi tiết bộ điều khiển Switch Case
Hình 4.49 Code thực hiện task cho phần mobile robot
Hình 4.50 Code thực hiện task cho phần cánh tay
Bài toán : Cho mobile robot vận hành theo các task đã được lập trình sẵn:
- Task 1 : Cánh tay robot di chuyển về điểm setpoint tại vị trí (0.15; 0; 0.24)
- Task 2 : Phần Mobile di chuyển từ điểm ban đầu đến điểm A(1 ;1 ; 0) để nâng vật
- Task 3 : Tay gắp di chuyển để nâng vật tại vị trí (0.2; 0; 0)
- Task 4 : Tay gắp nâng vật về vị trí setpoint
- Task 5 : Phần Mobile di chuyển đến điểm B(2; 1 ; 0) để thả vật.
- Task 6 : Tay gắp hạ vật xuống điểm đặt có vị trí (0.25; 0 ; 0)
- Task 7 : Tay gắp về vị trí setpoint
- Trạng thái ban đầu của Mobile Manipulator
Hình 4.51 Trạng thái ban đầu của robot
Hình 4.52 Vị trí của robot sau khi hoàn thành Task 1
Hình 4.53 Ví trí của robot sau khi hoàn thành Task 2
Hình 4.54 Vị trí của robot sau khi hoàn thành Task 3
Hình 4.55 Vị trí của robot sau khi hoàn thành Task 4
Hình 4.56 Vị trí của robot sau khi hoàn thành Task 5
Hình 4.57 Vị trí robot sau khi hoàn thành Task 6
Hình 4.58 Vị trí của robot sau khi hoàn thành Task 7
Hình 4.59 Đồ thị vị trí X(t) và Y(t) của mobile robot
Hình 4.60 Đồ thị vận tốc của mobile robot
Hình 4.61 Đồ thị sai số vị trí của mobile robot
Hình 4.62 Vận tốc góc của từng bánh xe mobile robot
Hình 4.63 Đồ thị vị trí X(t) và Z(t) của cánh tay robot
Hình 4.64 Đồ thị góc của các khớp cánh tay robot
Hình 4.65 Sai số vị trí của khâu cuối cánh tay robot
Hình 4.66 Vận tốc góc của từng khớp cánh tay robot
Xây dựng hệ thống điện
1 Sơ đồ mạch điện tổng quan của hệ thống
Hình 4.67 Sơ đồ khối hệ thống
1.2 Sơ đồ chi tiết kết nối của các thiết bị điện
Nguồn điện Động cơ Servo
Hệ thống truyền động tay máy
Hình 4.68 Sơ đồ điện của hệ thống
2 Thông số kỹ thuật của các thiết bị điện
Bảng 4.3 Thông số thiết bị
Thông số kỹ thuật Hình mô tả Động cơ
- Xung/vòng: 12 xung, 2 kênh AB
- Tốc độ không tải: 469rmp
- Công suất đầu ra: 30W Động cơ servo kỹ thuật số
- Điện áp hoạt động: 4.8-6VDC
- Kích thước: 40,5mm x 20mm x 40mm
L298N - Chip điều khiển: L298N tích hợp 2 mạch cầu H
- Công suất tải tối đa: 25W
- Dòng tiêu thụ không tải: 0 - 36mA
- Nhiệt độ bảo quản: 20 đến 135 độC
- Vi điều khiển chính: ATmega2560
- IC nạp và giao tiếp UART:
- Nguồn nuôi mạch: 5VDC từ cổng USB hoặc nguồn ngoài cắm từ giắc tròn DC ((khuyên dùng 7-9 VDC để đảm bảo mạch hoạt động tốt Nếu bạn cắm 12V thì IC ổn áp rất dễ chết và gây hư hỏng mạch)
- Có chân Digital:54 (15 chân PWM)
- Giao tiếp UART: 4 bộ UART
- Giao tiếp SPI: 1 bộ (chân 50 tới 53) dùng với thư viện SPI của Arduino
- Bộ nhớ Flash:256 KB, 8KB sử dụng cho Bootloader
- Điện áp hoạt động : +3.3VDC 30mA(hỗ trợ IC 5.0V)
- Dòng điện khi hoạt động : Khi
CHẾ TẠO THỰC NGHIỆM
Lập trình giao diện giao tiếp với hệ thống
MIT App Inventor dành cho Android là một ứng dụng web nguồn mở ban đầu được cung cấp bởi Google và hiện tại được duy trì bởi Viện Công nghệ Massachusetts (MIT) Nền tảng cho phép nhà lập trình tạo ra các ứng dụng phần mềm cho hệ điều hành Android (OS) Bằng cách sử dụng giao diện đồ họa, nền tảng cho phép người dùng kéo và thả các khối mã (blocks) để tạo ra các ứng dụng có thể chạy trên thiết bị Android Đến thời điểm hiện tại 07/2017, phiên bản iOS của nền tảng này đã bắt đầu được đưa vào thử nghiệm bởi Thunkable, là một trong các nhà cung cấp ứng dụng web cho ngôn ngữ này.
Mục tiêu cốt lõi của MIT App Inventor là giúp đỡ những người chưa có kiến thức về ngôn ngữ lập trình từ trước có thể tạo ra những ứng dụng có ích trên hệ điều hành Android Phiên bản mới nhất là MIT App Inventor 2.
Ngày nay, MIT đã hoàn thiện App Inventor và nó được chia sẻ ngay trên tài khoản Google Các lập trình viên mới bắt đầu hoặc bất kỳ ai muốn tạo ra ứng dụng Android chỉ cần vào địa chỉ web của MIT, nhập thông tin tài khoản Google, và từ những mảnh ghép nhỏ, xây dựng những ý tưởng của mình Bạn là người mới bắt đầu hoặc chưa biết gì hết về App Inventor? MIT có sẵn một loạt các hướng dẫn cụ thể cho bạn làm quen với chương trình. Để sử dụng được App Inventor, các bạn truy cập vào địa chỉ http://ai2.appinventor.mit.edu Sau đó tiến hành đăng nhập bằng tài khoản Google của bạn để mở trang quản lí các project.
Giao diện quản lý project
Hình 5.1 Giao diện quản lý project của MIT App Inventor
Giao diện thiết kế (Design)
Hình 5.2 Giao diện thiết kế của MIT App Inventor
Giao diện lập trình (Blocks)
Hình 5.3 Giao diện lập trình của MIT App Inventor
Giao diện của nhóm thiết kế như hình
Hình 5.4 Giao diện điều khiển Giao diện thiết bị của nhóm bao gồm 4 phần chính:
- Phần thứ nhất: gồm hai nút nhấn START và STOP dùng để khởi động và kết thúc chương trình
- Phần thứ hai: bao gồm hai chế độ MANUAL và AUTO Sau khi khởi động ở phần thứ nhất, ta có thể chọn chế độ chạy AUTO với chế độ tùy chỉnh cho trước hoặc chạy với chế độ MANUAL để tùy chỉnh những chế độ này theo ý muốn
- Phần thứ ba: là phần điều khiển cho Mobile Robot Với phần này, người điều khiển có thể tùy chỉnh cho xe chạy các hướng theo yêu cầu như tiến, lùi, trái và phải
- Phần thứ tư: là phần điều khiển cho cánh tay Robot Với phần này người điều khiển có thể tùy ý điều chỉnh cho các khớp cũng như tay kẹp có thể nâng hạ và gắp vật
Ngoài ra, vì sử dụng giao diện trên mobile nên kết nối với bộ phận điều khiển bằngBluetooth, do đó để biết chúng kết nối hay chưa tín hiệu sẽ trả về là Connected và NotConnected
Thuật toán điều khiển
1 Điều khiển động cơ DC Motor
Encoder gồm có hai pha A và B đặt lệch nhau thường là 90° để xác định số vòng quay được và chiều quay hiện tại của động cơ
Hình 5.5 Giản đồ xung Clock Encoder
Quy ước khi động cơ quay theo chiều thuận thì pha A sớm hơn pha B và ngược lại Có ba chế độ đọc xung Encoder là x1, x2, x4 Chế độ x1 chỉ đọc cạnh lên của pha A Chế độ x2 đọc cạnh lên và cạnh xuống của pha A Chế dộ x4 sẽ đọc cạnh lên và cạnh xuống của pha A và pha B Đây cũng là chế độ cho độ phân giải cao nhất.
Pha A sớm hơn pha B, khi A có cạnh lên thì B sẽ ở cạnh xuống và ngược lại Khi quay thuận thì biến đếm ở các chế độ tăng lên một tại các thời điểm đọc được và ngược lại Từ lý thuyết đọc Encoder trên, ta thấy rằng việc đọc xung Encoder cho những loại Encoder có PPR lớn với phương pháp sử dụng ngắt ngoài bắt cạnh hai pha A và B sẽ rất tốn thời gian xử lý Ngoài ra còn có các yếu tố khác ảnh hưởng đến quá trình đọc như nhiễu trên đường truyền, méo dạng xung,… sẽ gây ra sai số Để khắc phục khuyết điểm trên, nhóm quyết định sử dụng timer để đọc xung Encoder, việc đọc xung này hoạt động độc lập với quá trình xử lý của CPU thông qua các thanh ghi của timer
1.2 Điều khiển vận tốc bằng thuật toán PID
Thuật toán PID (Proportional-Integral-Derivative) là một phương pháp điều khiển phản hồi tiêu biểu được sử dụng để điều khiển vận tốc hoặc vị trí trong hệ thống tự động
Công thức tổng quát cho điều khiển PID là: Đầu ra: P.e +I ∫ e dt D de dt
- e là sự chênh lệch giữa giá trị đặt trước và giá trị hiện tại.
- ∫ e dt là tổng tích phân của e theo thời gian.
- de dt là đạo hàm của e theo thời gian. Để thực hiện điều khiển vận tốc bằng thuật toán PID, bạn cần điều chỉnh các hệ số
P, I, và D sao cho hệ thống đạt được hiệu suất tốt Quá trình này thường được gọi là
"tinh chỉnh PID" Điều này có thể được thực hiện thông qua thử nghiệm và lỗi hoặc bằng các phương pháp tối ưu hóa.
Có nhiều loại động cơ servo và tính năng chính của chúng là khả năng điều khiển chính xác vị trí của trục Động cơ servo là một hệ thống vòng kín sử dụng phản hồi vị trí để điều khiển chuyển động và vị trí cuối cùng của nó.
Hình 5.6 Vòng hồi tiếp kín Động cơ servo là loại cảm biến phản hồi vị trí, thường là một bộ code hóa có độ chính xác cao, trong khi trong các động cơ RC hoặc nhỏ hơn, cảm biến vị trí thường là một chiết áp đơn giản Vị trí thực tế được tìm thấy bởi các thiết bị này được đưa trở lại bộ phát hiện lỗi nơi nó được so sánh với vị trí đích Sau đó, theo lỗi, bộ điều khiển sửa vị trí thực tế của động cơ để khớp với vị trí đích.
- Bên trong một servo cổ diển có bốn thành phần chính, động cơ DC, hộp số, biến trở và mạch điều khiển Động cơ DC có tốc độ cao và mô-men xoắn thấp nhưng hộp số giảm tốc độ xuống khoảng 60 vòng / phút, đồng thời tăng mô-men xoắn.
- Cách thức hoạt động của Servo bên trong các thành phần Mạch điều khiển chiết áp động cơ DC Chiết áp được gắn trên bánh răng cuối cùng hoặc trục đầu ra, do đó động cơ cũng quay chiết áp, tạo ra một điện áp liên quan đến góc tuyệt đối của trục đầu ra Trong mạch điều khiển, điện áp chiết áp này được so sánh với điện áp đến từ đường tín hiệu Nếu cần, bộ điều khiển kích hoạt mạch cầu H tích hợp cho phép động cơ quay theo hai hướng cho đến khi hai tín hiệu đạt mức chênh lệch bằng không.
- Một động cơ servo được điều khiển bằng cách gửi một loạt các xung qua đường tín hiệu Tần số của tín hiệu điều khiển phải là 50Hz hoặc một chu kỳ xung là 20ms Độ rộng của xung xác định vị trí góc của servo và các loại servo này thường có thể xoay 180 độ (chúng có giới hạn vật lý khi di chuyển).
Hình 5.7 Minh họa điều khiển động cơ RC servo
CHƯƠNG 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 6.1 Kết quả
Trải qua thời gian nghiên cứu tìm hiểu và thực hiện đồ án Cơ điện tử với đề tài Nghiên cứu, thiết kế chế tạo Mobile Manipulator, nhóm đã thiết kế được mô hình mobile robot như hình
Các kết quả nhóm đã đạt được như sau:
- Phần khung được chế tạo từ mica in 3D, mô hình Robot được lắp ráp hoàn thiện, các chi tiết được kết nối chắc chắn, đảm bảo các yêu cầu đặt ra
- Lựa chọn nguồn, các linh kiện điện tử phù hợp cho Robot
- Thiết kế giao diện điều khiển cho Robot, Robot di chuyển linh hoạt như yêu cầu đã đặt ra ban đầu
6.2 Hạn chế của đề tài
Với sự cố gắng tìm tòi học hỏi, nghiên cứu nhóm đã thực hiện được mục tiêu ban đầu được đề ra nhưng vì lượng thời gian và kiến thức còn hạn chế nên khả năng hoàn thiện đồ án không được như mong đợi
Cùng với những điều đạt được thì đề tài vẫn có những hạn chế như chưa kiếm soát tốt được vận tốc, gắp vật chưa tốt Việc điều chỉnh các thông số PID chưa tốt Chương trình điều khiển nhiều khi bị lỗi, treo hệ thống dẫn đến robot mất kiểm soát
6.3 Hướng phát triển Để hoàn thiện một Robot tối ưu, hoạt động tốt, ổn định trong nhiều điều kiện môi trường khác nhau qua đó có thể thương mại hóa mô hình Robot này nhóm nghiên cứu cần phải có thêm nhiều thời gian và phải nghiên cứu, cải thiện thêm một số vấn đề như sau:
- Cải thiện thiết kế phần cứng chắc chắn, đẹp mắt, chịu lực tốt để Robot có thể gắp được vật ở vị trí xa và lớn hơn Thay thế khung thành khung kim loại
- Cải thiện bộ thông số PID
- Sử dụng thêm cảm biến để tối ưu hơn cho việc di chuyển
- Hoàn thiện mô hình Mobile Manipulator ở đồ án Tốt nghiệp