Khối Image Jacobian Inverse thực hiện quá trình nhận các giá trị trọng tâm và chiều sâu để tính tốn ra giá trị ma trận Jacobian hình ảnh của từng điểm và gộp chúng lại với nhau.
Hình 6.29: Q trình tính tốn giá trị ma trận Jacobian
Tiếp đến khối Error Function sẽ cho ta giá trị sai lệch giữa vị trí mong muốn và vị trí hiện tại của các khối màu được hiển thị trên camera:
Cuối cùng khi nhân L_Inverse tức chuỗi ma trận Jacobian hình ảnh của 3 điểm với giá trị Error ta sẽ được giá trị vận tốc của khâu cuối robot là RobotVelocity.
Motor Control:
Hình 6.31: Tổng quan về khối Motor Control
Với giá trị đầu vào là vận tốc của khâu cuối robot ta có thể tìm được vận tốc của từng khâu của robot thông qua biểu thức:
𝜃̇ = 𝐽−1𝜐 (51) Với 𝜐 = [ 𝑣𝑥 𝑣𝑦 𝑣𝑧 𝜔𝑥 𝜔𝑦 𝜔𝑧]
là giá trị của vận tốc khâu cuối robot
𝐽−1 là giá trị nghịch đảo của ma trận Jacobian. Do 𝜐 là ma trận 6x1 ta cần phải
có ma trận Jacobian nghịch đảo có kích thước tương ứng. Ta có thể tính ma trận Jacobian dựa trên bảng cơng thức như sau:
Hình 6.32: Cơng thức tính tốn ma trận Jacobian
Với cấu hình robot bao gồm 3 khớp quay (Revolute joint), với n = 3, ta có ma trận Jacobian như sau:
J = [ 𝑅00[ 0 0 1 ] × (𝑑30− 𝑑00), 𝑅10[ 0 0 1 ] × (𝑑30− 𝑑10), 𝑅20[ 0 0 1 ] × (𝑑30− 𝑑20) 𝑅00[ 0 0 1 ] , 𝑅10[ 0 0 1 ] , 𝑅20[ 0 0 1 ] , ] (52)
Với 𝑅00 𝑅10 𝑅20 lần lượt là các ma trận xoay của 𝑇00 𝑇10 𝑇20
𝑑00 𝑑10 𝑑20 𝑑30 lần lượt là các ma chuyển dịch của 𝑇00 𝑇10 𝑇20 𝑇30
Với các giá trị trên đã xác định ta có thể tìm ra giá trị của ma trận Jacobian như sau: J= [ −𝑠1∗ (𝐿3𝑐23+ 𝐿2𝑐2) −𝑐1∗ (𝐿3𝑠23+ 𝐿2𝑠2) −𝐿3𝑠23𝑐1 𝑐1∗ (𝐿3𝑐23+ 𝐿2𝑐2) −𝑠1∗ (𝐿3𝑠23+ 𝐿2𝑠2) −𝐿3𝑠23𝑠1 0 𝐿3𝑐23+ 𝐿2𝑐2 𝐿3𝑐23 0 𝑠1 𝑠1 0 −𝑐1 −𝑐1 1 0 0 ]
Từ kết quả trên ta có thể nhận thấy ma trận Jacobian có giá trị khơng khác giá trị Jacobian mà ta tìm được trước đó.
Với ma trận Jacobian có kích thước (6x3) vừa tìm được, ta có thể
nghịch đảo nó để được 𝐽−1. Tuy nhiên ma trận hiện tại có kích thước
6x3 khơng khả nghịch, do đó ta cần sử dụng ma trận giả nghịch đảo
Pseudo inverse: 𝐽+ = (𝐽𝑇𝐽)−1𝐽𝑇
Hình 6.33: Ma trận Jacobian
Tiếp đến khi nhân vận tốc khâu cuối robot cùng với ma trận Jacobian nghịch đảo vừa tìm được, ta được một ma trận 3x3 thể hiện vận tốc của từng khớp robot:
𝜃̇ = [ 𝜃1̇ 𝜃2̇ 𝜃3̇ ] (54)
Tổng quan: khối Motor Control sẽ nhận giá trị đầu vào là vận tốc của khâu cuối robot, sau khi qua các khối tính tốn sẽ cho ta giá trị đầu ra là góc quay của từng khớp robot. Vì ma trận Jacobian là một ma trận thay đổi phụ thuộc vào giá trị của các góc
quay 𝜃1, 𝜃2 và 𝜃3 của robot, ta cần sử dụng các giá trị đó để tính giá trị của ma trận
Jacobian theo thời gian.
6.7 Gửi giá trị tìm được lên ROS network và Raspberry Pi:
Hình 6.35: Gửi các giá trị góc quay của từng motor lên ROS
Hình 6.37: Quy trình điều khiển Task của robot
6.8 Tiến hành mô phỏng:
Mô phỏng animation trong cơng nghiệp:
Hình 6.39: Mơ phỏng, định vị và gắp sản phẩm
Hình 6.41: Giao diện Motion Animation
• Nhận xét:
Cánh tay robot được mô phỏng bởi phần mềm Solidworks Motion Animation, Robot đang tiến nâng và di chuyển hàng hóa từ vị trí băng tải 1, sang đặt vào thùng gỗ ở băng tải 2.
Mô phỏng này chúng em dựa trên ứng dụng thực tế trong việc gắp sản phẩm và đóng gói trong kho hàng, kho bãi của cơng ty, nhà máy và xí nghiệp.
Mơ phỏng điều khiển chuyển động:
Hình 6.43: Giao diện điều khiển robot thơng qua GUIDE
• Nhận xét:
Để hạn chế việc lỗi xảy ra khi mô phỏng chuyển động trên matlab. Nên chúng em đã thay thế mơ hình thực tế của robot bằng một mơ hình khác đơn giản hơn để tiện cho việc mô phỏng.
Kết quả đạt được là mơ hình chuyển động thành cơng và luôn giữ mặt của khâu luôn hướng xuống và song song với mặt đất, đúng với những yêu cầu mà chúng em đã đặt ra ở chương 3 và chương 4.
CHƯƠNG 7: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
7.1 Nhận xét tổng quan:
• Nhược điểm:
Visual Servoing được ứng dụng cho các thao tác của robot trở nên đơn giản và linh hoạt, tuy nhiên do robot được áp dụng chỉ có 3 bậc tự do, do đó camera được kết nối vào khâu cuối của robot cũng chỉ có 3 bậc tự do, điều này hạn chế các góc và hướng chuyển động của robot do đó robot chỉ có thể thao tác và nhận biết đối với các vật bị hạn chế bởi 3 góc xoay quanh trục x y z.
• Bộ điều khiển vẫn còn đơn giản nên đầu ra chính xác vẫn chưa đủ tốt.
• Robot di chuyển chậm do khả năng kiểm sốt bộ điều khiển cịn hạn
chế.
• Vùng làm việc bị giới hạn.
• Hộp số của động cơ cũng như độ chính xác của encoder có thể ảnh
hướng đến độ chính xác của robot.
• Việc dùng vít cố định trục động cơ là khơng tối ưu về mặt cơ khí khi
có thể làm biến dạng then của trục một cách không đồng đều. Dẫn đến tháo lắp khó khăn.
• Khơng có phần ngắt điện tự động khi động cơ bị nhiễu dẫn đến tình
trạng mất kiểm sốt tay máy.
• Ưu điểm:
Tuy vậy, đồ án vẫn đáp ứng được những yêu cầu của phạm vi đề tài, thu được những kết quả tốt:
• Với ứng dụng phương pháp điều khiển bằng Visual Servoing ta khơng
• Với việc ứng dụng kết nối hệ thống với ROS (Robot Operating System) ta có thể dễ dàng quan sát tín hiệu và giá trị được truyền và nhận từ robot. Thiết lập được robot chạy trong thời gian thực.
• Với thiết kế nhỏ gọn, cánh tay dễ dàng lắp đặt lên các xe tự hành AGV
• Sử dụng các bộ điều khiển tối ưu về tốc độ, ứng dụng trong việc vận
chuyển trong cơng nghiệp.
7.2 Hướng phát triển:
• Ta có thể sử dụng nhận diện vật dựa vào mã QR thay cho việc nhận diện
bằng màu sắc, kết quả mang lại giúp robot nhận diện vật chính xác hơn, không bị phụ thuộc vào màu sắc của vật cũng như các tín hiệu nhiễu từ mơi trường bên ngồi.
• Ta có thể thay đổi stereo camera bằng camera cảm biến chiều sâu bằng
lazer giúp tín hiệu nhận được nhanh hơn.
• Sử dụng ROS network như một công cụ giao tiếp giữa người dùng với
TÀI LIỆU THAM KHẢO
[1] Tài liệu tham khảo là sách:
Lê Hoài Quốc (2001), Chung Tấn Lâm, Nhập Môn Robot công nghiệp,
Nhà xuất bản Khoa học và Kỹ thuật.
Gs.Ths Nguyễn Thiện Phúc (1990), Robot công nghiệp.
Ninh Đức Tôn (2016), Dung sai và lắp ghép, Nhà xuất bản giáo dục. TS Nguyễn Hữu Lộc (2016), Cơ sở thiết kế máy, Nhà xuất bản Đại học
quốc gia tp.HCM.
Trịnh Chất – Lê Văn Uyển, Tính tốn thiết hệ dẫn động cơ khí tập 1 và
2, Nhà xuất bản bộ giáo dục.
[2] Tài liệu tham khảo là nghiên cứu khoa học:
Hanwen Yu, Qun Sun, Chong Wang, Yongjun Zhao December 12,
2019. Frequency response analysis of heavy-load palletizing robot considering eslactic deformation
Bryan Kelly a, J. Padayachee b and G. Bright. Quasi-serial
Manipulator for Advanced Manufacturing Systems.
Lv Mei-yu, LI Jin-quan, Duan Bing-lei, Fu Rong. 2012. The
Dynamics Analysis on a Type Palletizing Robot.
John J. Craig. Introduction to Robotics Mechanics and Control 3rd
edition
Bruno Siciliano, Lorenzo Sciavicco, Luigi Villani, Giuseppe Oriolo.
Robotics: Modelling, Planning and Control by
Min Xiu Kong, Wei You, Zhi Jiang Du, Li Ning Sun. Optimal design
for a 2-DOF high dyamic manipulator based onparallelogram mechanism.
Robot Master class của Peter Corke: https://robotacademy.net.au/ Các bài giảng online của Liang Zhao về robot trong lecture 9 và 10:
https://www.youtube.com/channel/UCR8fRMFnlfUmH7p0cgwBnVw
https://new.abb.com/products/robotics/industrial-robots/irb-460/irb-
460-data, 27/06/2021
http://roboconshop.com/, 27/06/2021 https://hshop.vn/, 27/06/2021
PHỤ LỤC
• Bản vẽ mơ hình 3D
Ghi chú có đính kèm file
Ghi chú có đính kèm file
Ghi chú có đính kèm theo file
• Bản vẽ điện: