• Việc điều khiển sẽ không thực hiện được khi không biết trước toạ độ của vật cần gắp, hoặc nếu tồn tại sai số trong vị trí của vật thể thì cánh tay robot sẽ hoạt động sai.. Do những hạn
Trang 1i
Lời cảm ơn
Quãng thời gian đại học tưởng dài mà ngắn, thấm thoát đã sắp kết thúc, tôi xin gửi lời cảm ơn đến tất cả quý thầy/cô giảng dạy tại chương trình Việt Pháp Đại học Bách Khoa TP.HCM về những kiến thức quý báu mà thầy, cô đã truyền đạt cho tôi trong suốt thời gian tôi học tập tại trường, không chỉ về mặt học thuật mà còn cả về kinh nghiệm sống và các kỹ năng mềm Đồng thời tôi cũng rất biết ơn những người bạn đã đồng hành cùng tôi trên chặng đường này, nhờ có các bạn mà cuộc sống sinh viên của tôi tràn đầy màu sắc Các bạn đã để lại cho tôi những kỷ niệm vui và cả những kỷ niệm buồn, để mà lúc này đây tôi được dịp nhìn lại, nâng niu và trân quý chúng Hy vọng rằng tôi có thể cùng các bạn bước tiếp vai kề vai trên chặng đường sắp tới
Xin cảm ơn anh Đỗ Tân Khoa và anh Hồ Ngọc Phú thuộc Trung tâm Đào Tạo Khu CNC TP.HCM đã tạo điều kiện và tin tưởng cho phép tôi tiếp xúc, sử dụng các thiết bị công nghiệp trong luận văn này
Tôi cũng xin gửi lời cảm ơn đến giáo sư Peter Corke, tác giả của bộ công cụ tuyệt vời Robotics Toolbox và Machine Vision Toolbox, được dùng trong phần mô phỏng của luận văn
Đặc biệt nhất, xin gửi lời cảm ơn chân thành và sâu sắc đến thầy Lê Đức Hạnh đã tận tình hướng dẫn tôi trong suốt quá trình tôi thực hiện luận văn Những lời khuyên, những buổi trao đổi với thầy đã hỗ trợ tôi rất nhiều và là chìa khoá để luận văn này được hoàn thành
Cuối cùng, đó là sự biết ơn vô bờ bến của tôi đối với gia đình Cám ơn ba mẹ đã tạo chỗ dựa vững chắc, hỗ trợ về vật chất lẫn tinh thần, động viên con trong quá trình học tập để con có thể vượt qua mọi khó khăn trong học tập cũng như trong cuộc sống
TP HCM, ngày 27 tháng 5 năm 2019
Nguyễn Đức Toàn
Trang 2Chương 1: Tổng quan
Chương 2: Lựa chọn phương án
Chương 3: Động học tay máy
Chương 4: Hệ thống điện và cơ cấu chấp hành
Chương 5: Giải thuật điều khiển và lập trình
Chương 6: Mô phỏng
Chương 7: Quá trình và kết quả thực nghiệm
Chương 8: Kết luận
Trang 3iii
Mục lục
Lời cảm ơn i
Tóm tắt luận văn ii
Danh sách hình ảnh vi
Danh sách bảng ix
1 Tổng quan 1
1.1 Đặt vấn đề 1
1.2 Sơ lược về robot công nghiệp 2
1.2.1 Lịch sử 2
1.2.2 Các dạng robot công nghiệp 4
1.2.3 Ứng dụng xử lý ảnh trong điều khiển robot công nghiệp 7
1.3 Mục tiêu, nhiệm vụ và phạm vi đề tài 10
1.3.1 Đầu bài 10
1.3.2 Mục tiêu 10
1.3.3 Nhiệm vụ 10
1.3.4 Phạm vi đề tài 11
1.4 Tổ chức của luận văn 11
2 Lựa chọn phương án 12
2.1 Lựa chọn dạng robot 12
2.2 Lựa chọn cơ cấu gắp vật 14
2.3 Lựa chọn gá đặt camera 16
3 Động học tay máy 18
3.1 Giới thiệu tay máy Nachi-MZ07 18
Trang 4iv
3.2 Động học thuận 20
3.3 Jacobian 22
3.4 Góc roll, pitch, yaw 24
4 Hệ thống điện và cơ cấu chấp hành 25
4.1 Hệ thống điện 25
4.2 Tính toán giác hút 27
4.3 Tính toán đồ gá 31
5 Giải thuật điều khiển và lập trình 32
5.1 Visual servoing dùng moment ảnh 32
5.1.1 Giới thiệu về moment ảnh 32
5.1.2 Moment khối tâm và các bất biến 33
5.1.3 Thuật toán visual servoing sử dụng moment ảnh 35
5.1.4 Cải tiến giải thuật 41
5.1.5 Hiệu chỉnh góc θ 41
5.2 Camera calibration 42
5.2.1 Lý thuyết 42
5.2.2 Tiến hành 44
5.3 Giải thuật nhận diện và lọc vật thể 48
5.4 Giao tiếp và điều khiển robot Nachi-MZ07 50
5.4.1 Các phương thức tiếp của Robot Nachi-MZ07 50
5.4.2 Giới thiệu về giao tiếp socket 51
5.4.3 Thuật toán giao tiếp 54
6 Mô phỏng 56
6.1 Các bước mô phỏng 57
Trang 5v
6.2 Kết quả mô phỏng 58
7 Thực nghiệm và kết quả 60
8 Kết luận 63
8.1 Kết quả đạt được 63
8.2 Hạn chế 64
8.3 Hướng phát triển đề tài 64
Tài liệu tham khảo 65
Trang 6vi
Danh sách hình ảnh
Hình 1.1 - Mô hình robot của Leonardo Da Vinci 2
Hình 1.2 - Unimate, robot kỹ thuật số lập trình được đầu tiên trên thế giới 3
Hình 1.3 - Các mẫu robot công nghiệp hiện đại 3
Hình 1.4 - Robot chuỗi 4
Hình 1.5 - Robot song song 5
Hình 1.6 - Robot dạng toạ độ Descartes 5
Hình 1.7 - Robot dạng toạ độ trụ 6
Hình 1.8 - Robot dạng toạ độ cầu 6
Hình 1.9 - Ứng dụng xử lý ảnh trong robot gắp bánh kếp 8
Hình 1.10 - Hệ thống camera và tay máy gắp xúc xích 8
Hình 1.11 - Hệ thống tay máy đóng gói hộp mực 9
Hình 1.12 - Sử dụng camera độ sâu trong ứng dụng gắp thả 9
Hình 2.1 - Robot Delta Yaskawa Motoman MPP3S 12
Hình 2.2 - Robot SCARA Mitsubishi RH-CH 13
Hình 2.3 - Robot cánh tay 6 bậc Nachi MZ07 14
Hình 2.4 - Tay gắp Schunk PGN 50 15
Hình 2.5 - Giác hút dạng ống dài của hãng Pisco 15
Hình 2.6 - Nam châm điện HGR của Goudsmit Magnet 16
Hình 2.7 - Camera gắn ở vị trí cố định 16
Hình 2.8 - Camera gắn trên tay máy 17
Hình 2.9 - Stereo camera 17
Hình 3.1 - Vùng làm việc của Nachi-MZ07 20
Hình 3.2 - Hệ toạ độ tay máy Nachi-MZ07 20
Trang 7vii
Hình 4.1 - Sơ đồ nối dây giữa controller và robot 26
Hình 4.2 - Nối dây teach pendent 26
Hình 4.3 - Sơ đồ nối dây nguồn controller 27
Hình 4.4 - Hệ thống khí nén tích hợp của robot Nachi 27
Hình 4.5 - Sơ đồ hoạt động của giác hút 28
Hình 4.6 - Lực tác động khi hút 29
Hình 4.7 - Máy nén khí Hitachi Bebicon 29
Hình 4.8 - Van hút chân không SMC ZU05L 30
Hình 4.9 - Đồ thị áp suất của van hút chân không 30
Hình 4.10 - Đồ gá giác hút ESH-HD 31
Hình 4.11 - Bảng tra khối lượng ứng với chiều dài tool an toàn 31
Hình 5.1 - Ảnh vật thể gốc (bên trái cùng) và ảnh vật thể lần lượt đã được dịch chuyển, xoay, thu nhỏ và kết hợp cả ba 32
Hình 5.2 - Minh hoạ thuật toán tính góc θ 42
Hình 5.3 - Minh hoạ hiệu chỉnh góc θ 42
Hình 5.4 - Mẫu pattern dùng cho camera calibration 45
Hình 5.5 - Nhận diện ma trận điểm tròn của một trong số các ảnh thu được 46
Hình 5.6 - Vật thể dùng cho thực nghiệm và vị trí thả 48
Hình 5.7 - Kết quả sau khi lọc màu HSV 49
Hình 5.8 - Các bước khử nhiễu 50
Hình 5.9 - Mô hình giao tiếp điều khiển robot 54
Hình 5.10 - Lưu đồ chương trình con khởi tạo socket, nhận và gửi vị trí 55
Hình 5.11 - Lưu đồ chương trình con điều khiển giác hút 55
Hình 5.12 - Lưu đồ giải thuật của User Task và chương trình Robot 56
Trang 8viii
Hình 6.1 - Vị trí ban đầu của mô phỏng 58
Hình 6.2 - Vị trí kết thúc của mô phỏng 58
Hình 6.3 - Sai số đặc trưng trong quá trình mô phỏng 59
Hình 6.4 - Một số mẫu vật thể khác 59
Hình 7.1 - Bố trí thực nghiệm 60
Hình 7.2 - Thiết đặt ảnh mẫu 60
Hình 7.3 - Gợn sóng gây ra bởi đèn huỳnh quang 61
Hình 7.4 - Kết quả gắp thả 62
Hình 7.5 - Sai số trong quá trình thực nghiệm đối với vật thể (6 bậc) 62
Hình 7.6 - Sai số trong quá trình thực nghiệm đối với vị trí thả (4 bậc) 63
Hình 8.1 - Phương pháp đề xuất 64
Trang 9ix
Danh sách bảng
Bảng 2.1 - Bảng lựa chọn phương án 18
Bảng 3.1 - Thông số kỹ thuật của Nachi-MZ07 18
Bảng 3.2 - Bảng thông số D-H của Nachi-MZ07 21
Bảng 3.3 - Các giá trị kích thước của Nachi-MZ07 21
Bảng 5.1 - Toạ độ của P1, P2, P3 45
Bảng 5.2 - Các vị trí lấy ảnh 45
Bảng 5.3 - Vector xoay và vector tịnh tiến 47
Bảng 5.4 - Một số lệnh làm việc với socket trong CFD controller 52
Bảng 5.5 - Một số phương thức của đối tượng socket 53
Trang 10• Thứ nhất, nếu tồn tại bất kỳ sai lệch nào trong việc xác định vị trí các khớp, hoặc trong mô hình động học của cánh tay robot thì đều dẫn đến sai số của vị trí đầu công tác
• Việc điều khiển sẽ không thực hiện được khi không biết trước toạ độ của vật cần gắp, hoặc nếu tồn tại sai số trong vị trí của vật thể thì cánh tay robot sẽ hoạt động sai
Qua quá trình phát triển, cánh tay robot hiện đại đã được củng cố để giảm thiểu các vấn đề này Các cảm biến ở mỗi khớp trên cánh tay đều cực kỳ chính xác, các thành phần của cánh tay robot cũng được gia công rất chính xác để nó hoạt động đúng như mô hình động học đã được lập trình Mỗi khâu của robot đều phải cứng để nó không bị cong dưới tác động của trọng lực trong quá trình hoạt động, do đó nó được gia cố bằng nhiều kim loại dẫn đến trọng lượng gia tăng và để di chuyển được các khối kim loại này thì công suất của động cơ cũng phải lớn Tất cả các yếu tố trên khiến cho giá thành của robot công nghiệp bị đẩy lên đáng kể Không những thế, để cho robot làm việc được thì
nó phải được gá đặt một cách chính xác và vật thể mà nó làm việc cũng phải được đặt ở
vị trí chính xác
Do những hạn chế của phương pháp điều khiển truyền thống nêu trên mà cách tiếp cận dựa vào việc sử dụng camera và các thuật toán xử lý ảnh, được gọi chung bằng thuật ngữ visual servoing, đang được nghiên cứu và ứng dụng ngày càng nhiều để đáp ứng nhu cầu ngày một đa dạng hơn của quá trình sản xuất công nghiệp
Trang 11Theo thời gian, cùng với sự phát triển của các kỹ thuật tự động, ý tưởng về robot dần cụ thể hoá Đã có nhiều nhà phát minh cố gắng chế tạo những cỗ máy mô phỏng chuyển động của con người hoặc động vật Trong đó có cả thiên tài người Ý Leonardo
Da Vinci (1452 – 1519) khi người ta phát hiện trong quyển sổ ghi chú của ông một bản phát thảo người máy mặc giáp với các cơ cấu chuyển động ở bên trong
Hình 1.1 - Mô hình robot của Leonardo Da Vinci
Thuật ngữ robot xuất hiện lần đầu tiên vào năm 1920 trong vở kịch Rossum’s Universal Robots của nhà văn người Séc, Karel Čapek Từ robot lấy nguyên gốc từ chữ robota trong tiếng Xla-vơ, nghĩa là công nhân Vở kịch mô tả các công nhân nhân tạo giống người, được gọi là robot, làm việc trong nhà máy
Cho đến năm 1954 thì robot kỹ thuật số lập trình được đầu tiên ra đời, có tên là Unimate, cha đẻ của nó là nhà phát minh người Mỹ George Devol Ông sau đó cùng với Joseph Engelberger đã lập nên công ty Unimation Đến năm 1961, Unimate được lắp đặt tại công ty General Motors ứng dụng trong việc đúc kim loại
Trang 123
Hình 1.2 - Unimate, robot kỹ thuật số lập trình được đầu tiên trên thế giới
Sự ra đời của Unimate đã đặt nền tảng cho nền công nghiệp robot hiện đại Trải qua nhiều thập kỷ, robot nói chung cũng như robot công nghiệp nói riêng đã tiến hoá vượt bậc Chúng mạnh mẽ hơn, chính xác hơn, đa năng hơn và đóng một vai trò không thể thay thế trong nền sản xuất công nghiệp ngày nay
Hình 1.3 - Các mẫu robot công nghiệp hiện đại
Trang 134
1.2.2 Các dạng robot công nghiệp
Robot công nghiệp, theo Viện nghiên cứu Robot của Mỹ, được định nghĩa: “Robot công nghiệp là tay máy vạn năng, hoạt động theo chương trình và có thể lập trình lại
để hoàn thành và nâng cao hiệu quả hoàn thành các nhiệm vụ khác nhau trong công nghiệp, như vận chuyển nguyên vật liệu, chi tiết, dụng cụ hoặc các thiết bị chuyên dùng khác.”
Có thể thấy thuật ngữ robot công nghiệp thường được dùng để chỉ các robot dạng tay máy, mặc dù trong công nghiệp có thể sử dụng các loại robot khác như robot vận chuyển tự động Do đó dưới đây sẽ chỉ đề cập đến việc phân loại các robot dạng tay máy
Robot công nghiệp có thể được phân loại theo nhiều cách:
Phân loại theo kết cấu
Robot chuỗi: là một chuỗi động học hở với một khâu cố định gọi là khâu giá và
các khâu động, trong đó các khâu động được bố trí nối tiếp với nhau Mỗi khâu động được liên kết hay nối động với một khâu khác qua các khớp Robot chuỗi có tốc độ không cao bằng robot song song, nhưng ngược lại nó linh hoạt hơn và vùng làm việc rộng
Hình 1.4 - Robot chuỗi
Trang 145
Robot song song: là một chuỗi động học kín, trong đó mỗi khâu được liên kết với
ít nhất hai khâu khác Robot song song hoạt động rất nhanh, việc tính động học ngược
dễ dàng nhưng động học thuận lại rất phức tạp và không gian làm việc hạn chế
Hình 1.5 - Robot song song
Phân loại theo không gian làm việc
Không gian làm việc dạng toạ độ Descartes: dạng Robot có 3 chuyển động tịnh
tiến theo phương của các trục tọa độ gốc Không gian làm việc có dạng hình hộp chữ nhật Kết cấu đơn giản, độ tuyến tính trong điều khiển cao, độ cứng vững cao, thường được dùng trong các ứng dụng nâng hạ vật, cấp phôi, lắp ghép, máy CNC, …
Hình 1.6 - Robot dạng toạ độ Descartes
Trang 156
Không gian làm việc dạng toạ độ trụ: vùng làm việc của Robot có dạng hình trụ
rỗng, khớp thứ nhất thường là khớp xoay, được ứng dụng chủ yếu trong nâng hạ và sắp xếp sản phẩm
Hình 1.7 - Robot dạng toạ độ trụ
Không gian làm việc dạng toạ độ cầu: vùng làm việc của Robot có hình cầu, độ
cứng vững của dạng này thấp hơn các dạng trên, bù lại độ linh hoạt cao hơn
Hình 1.8 - Robot dạng toạ độ cầu
Phân loại theo hệ thống truyền động
Hệ truyền động điện: Dùng các động cơ điện một chiều hoặc xoay chiều để điều
khiển các khớp của robot, do sử dụng điện nên loại robot này dễ điều khiển và có kết cấu nhỏ gọn
Trang 167
Hệ truyền động thuỷ lực: Sử dụng động cơ thuỷ lực để di chuyển các khớp, có khả
năng tạo lực lớn nhưng kết cấu cồng kềnh và độ phi tuyến cao
Hệ truyền động khí nén: Sử dụng động cơ khí nén, có ưu điểm là tốc độ cao, tuy
nhiên độ phi tuyến lớn, gây tiếng ồn khi làm việc
Phân loại theo cách thức điều khiển
Điều khiển hở: Dùng truyền động bước (động cơ điện hoặc động cơ thuỷ lực, khí
nén) mà quảng đường hoặc góc dịch chuyển tỷ lệ với xung điều khiển Kiểu điều khiển này đơn giản nhưng cho độ chính xác thấp
Điều khiển kín (điều khiển servo): sử dụng tín hiệu hồi tiếp vị trí để tăng độ chính
xác điều khiển
Phân loại theo số bậc tự do
Tuỳ theo số bậc tự do mà robot được gọi là robot 4 bậc, 5 bậc, 6 bậc… Trong đó các robot có bậc nhiều hơn 6 được gọi là robot dư bậc (redundant robot), robot có ít hơn
6 bậc được gọi là robot thiếu bậc (deficent robot) Robot dư bậc ngoài khả năng điều khiển vị trí và hướng của đầu công tác thì còn có thể điều khiển hình dáng của cánh tay Trong khi đó, robot thiếu bậc có kết cấu đơn giản và giá thành rẻ hơn, phù hợp với các công việc đơn giản
1.2.3 Ứng dụng xử lý ảnh trong điều khiển robot công nghiệp
Việc dùng camera và các thuật toán xử lý ảnh để điều khiển cánh tay robot được ứng dụng chủ yếu trong các tác vụ gắp thả vật thể Vật thể ở đây thường nằm ở vị trí ngẫu nhiên không biết trước và camera được dùng để xác định toạ độ, đôi khi cả tư thế của những vật thể này
Hình 1.9 mô tả một dây chuyền sản xuất bánh kếp trong công nghiệp Các bánh kếp phân bố ngẫu nhiên trên băng chuyền Camera được lắp đặt phía trên ghi lại hình ảnh và xác định toạ độ các bánh kếp để cho tay máy gắp bánh và thả vào một băng chuyền khác ở giữa Trong ứng dụng này chỉ đòi hỏi thuật toán xử lý ảnh xác định tâm của bánh kếp
Trang 178
Hình 1.9 - Ứng dụng xử lý ảnh trong robot gắp bánh kếp
Tương tự, Hình 1.10 là ảnh chụp một dây chuyền sản xuất xúc xích Thuật toán xử
lý ảnh được áp dụng để xác định vị trí tâm của xúc xích hình trụ và truyền tín hiệu điều khiển đến tay máy Tay máy sau đó sẽ xếp các cây xúc xích vào những khay ở giữa
Hình 1.10 - Hệ thống camera và tay máy gắp xúc xích
Ở Hình 1.11 mô tả một hệ thống đóng gói hộp mực in Ở đây, thuật toán xử lý ảnh được dùng để xác định cả vị trí trọng tâm lẫn góc quay của hộp mực Cánh tay máy sẽ dựa vào những thông tin này để gắp và xếp hộp mực ngay ngắn vào hộp các-tông Sau khi đủ 4 hộp mực thì các cơ cấu ở hai bên sẽ tiến hành đóng hộp các-tông và chuyển sang khâu tiếp theo
Trang 189
Hình 1.11 - Hệ thống tay máy đóng gói hộp mực
Camera sử dụng trong công nghiệp không chỉ là các loại camera 2D Một số ứng dụng còn dùng đến các loại camera độ sâu hoặc sử dụng hai camera 2D đặt chéo nhau
và dùng thuật toán để tính độ sâu Các kỹ thuật này được ứng dụng trong việc gắp thả các chi tiết nằm lẫn lộn trong thùng, còn gọi là bin-picking Hình 1.12 thể hiện một ứng dụng như vậy, ở đó các chi tiết trong thùng được chụp lại bằng camera độ sâu và áp dụng các thuật toán tính vectơ pháp tuyến và vectơ dọc trục, những thông tin này được
sử dụng để điều khiển robot gắp chi tiết khỏi thùng và đặt lên băng tải
Hình 1.12 - Sử dụng camera độ sâu trong ứng dụng gắp thả
Trang 19Đề tài đặt ra mục tiêu điều khiển như sau:
- Điều khiển tay máy đến đúng vị trí mong muốn với thời gian dưới một phút
- Sai số vị trí thả vật tối đa là 2mm, tính bằng cách mở rộng biên dạng đánh dấu tại
vị trí thả ra 2mm, nếu vật nằm gọn bên trong thì đạt yêu cầu
+ Thiết kế, chế tạo đồ gá cho camera và cơ cấu gắp
- Xây dựng sơ đồ mạch điện, đấu nối thiết bị
+ Thiết kế sơ đồ đấu nối các thiết bị phần cứng
+ Kiểm tra mạch và tính ổn định của thiết bị
- Xây dựng giải thuật điều khiển
+ Viết chương trình giao tiếp giữa máy tính, cánh tay robot, camera và cơ cấu gắp
+ Sử dụng thư viện mã nguồn mỡ OpenCV để xử lý hình ảnh thu được từ camera để điều khiển cánh tay đi đến vị trí mong muốn và gắp vật
Trang 2011
- Kiểm tra, đánh giá kết quả
+ Đo và đánh giá sai số, đánh giá hiệu quả của quá trình hoạt động
+ Đề xuất hướng cải tiến
1.3.4 Phạm vi đề tài
Đề tài ứng dụng các kiến thức về cơ, điện là lập trình đã được dạy ở trường kết hợp với nghiên cứu và tìm hiểu từ các bài báo khoa học Đề tài chủ yếu tập trung vào việc kiểm tra tính khả dụng của giải thuật và thực hành gắp thả vật đứng yên Có thiết
kế giao diện người dùng
1.4 Tổ chức của luận văn
Với mục tiêu và nhiệm vụ được đề ra, luận văn được phân thành các chương có nội dung như sau:
- Chương 1: Tổng quan
Tìm hiểu tổng quan về robot công nghiệp và ứng dụng của xử lý ảnh trong điều khiển robot công nghiệp
- Chương 2: Lựa chọn phương án
Lựa chọn dạng robot, cơ cấu gắp và cách gá đặt camera
- Chương 3: Động học tay máy
Phân tích động học thuận, ma trận Jacobian và góc roll, pitch, yaw của tay máy
- Chương 4: Hệ thống điện và cơ cấu chấp hành
Cách đi dây, tính toán giác hút, đồ gá
- Chương 5: Giải thuật điều khiển và lập trình
Giới thiệu giải thuật visual servoing dùng moment ảnh, giải thuật calib camera, xây dựng giải thuật tách vật thể từ hình ảnh camera, tính toán thông số điều khiển và gửi tín hiệu điều khiển đến cơ cấu chấp hành
- Chương 6: Mô phỏng
Trang 2112
Thực hiện mô phỏng trên matlab giải thuật visual servoing sử dụng moment ảnh bằng công cụ Robotics Toolbox và Machine Vision Toolbox
- Chương 7: Quá trình và kết quả thực nghiệm
Áp dụng giải thuật vào mô hình cánh tay máy thực tế Đánh giá kết quả
- Chương 8: Kết luận
Những điều đã đạt được, các hạn chế và đề xuất các phương pháp cải tiến
2 LỰA CHỌN PHƯƠNG ÁN
Chương 1 đã trình bày tổng quan về các dạng robot cũng như mục tiêu, nhiệm vụ
và giới hạn đề tài Chương này sẽ đi vào phân tích, lựa chọn các phương án phù hợp với mục tiêu, nhiệm vụ đề ra
2.1 Lựa chọn dạng robot
Như đã đề cập ở trên, có rất nhiều dạng robot phục vụ trong công nghiệp Trong
đó, đối với ứng dụng gắp thả thì các dạng robot Delta, Scara và dạng cánh tay là được dùng nhiều hơn cả
Robot Delta: là một dạng robot song song thường dùng cho các ứng dụng gắp thả
Hình 2.1 - Robot Delta Yaskawa Motoman MPP3S
- Ưu điểm: do là robot song song nên robot Delta có tốc độ làm việc rất cao, cao
nhất trong các dạng cơ cấu robot Ngoài ra tính động học ngược của robot Delta khá đơn giản
Trang 2213
- Nhược điểm: robot Delta có độ cứng vững thấp và vùng làm việc hạn chế, nó chỉ
có thể hoạt động chủ yếu với các dạng cơ cấu chấp hành hướng vuông góc với mặt đất
Do những ưu, nhược điểm trên mà robot Delta phù hợp với các ứng dụng gắp thả vật thể nhẹ và đòi hỏi năng suất cao
Robot SCARA: là một dạng robot thường gồm 4 bậc tự do và không gian làm
việc hình trụ
Hình 2.2 - Robot SCARA Mitsubishi RH-CH
- Ưu điểm: ưu điểm chính của robot SCARA là tốc độ và độ chính xác cao Ngoài
ra do có các trục khớp song song nhau nên phương trình động học của robot SCARA đơn giản Hơn nữa robot SCARA chiếm ít không gian hơn các dạng cơ cấu robot khác
- Nhược điểm: robot SCARA chỉ có tới 4 bậc tự do và có tầm với thấp, cộng với
việc đầu công tác luôn vuông góc với mặt đất nên kém linh hoạt Do cấu trúc của
nó mà robot SCARA thường chỉ nâng được tải trọng nhẹ (thường dưới 2kg) Những đặc điểm trên làm cho robot SCARA phù hợp với các ứng dụng làm việc trên mặt phẳng, đòi hỏi độ chính xác và tốc độ cao, không gian làm việc hạn chế Điển hình là ứng dụng gắp thả, bơm chất lỏng hoặc dán keo trên bề mặt phẳng
Robot dạng cánh tay: là dạng robot được dùng phổ biến nhất trong công nghiệp
hiện nay
Trang 2314
Hình 2.3 - Robot cánh tay 6 bậc Nachi MZ07
- Ưu điểm: độ cứng vững cao, vùng làm việc rộng, số bậc tự do dao động từ 5 đến
6 nên độ linh hoạt cao
- Nhược điểm: tốc độ làm việc thấp so với các dạng robot khác, tính động học phức
tạp
Robot dạng này còn được gọi là robot đa dụng (general purpose robot) do độ linh hoạt của nó Các robot dạng cánh tay có thể được dùng cho rất nhiều ứng dụng từ gắp thả, đóng gói cho đến hàn, dán keo, gia công,…
Đề tài này không chỉ đơn giản là gắp thả mà hướng đến việc kiểm nghiệm tính khả dụng của giải thuật điều khiển hồi tiếp ảnh và có tính đến trường hợp vật thể nằm nghiêng so với đầu công tác nên sẽ lựa chọn dạng robot cánh tay 6 bậc
2.2 Lựa chọn cơ cấu gắp vật
Các cơ cấu gắp được sử dụng phổ biến gồm có: tay gắp, giác hút và nam châm điện
Tay gắp: sử dụng các ngón tay để gắp vật thể, tay gắp có thể có hai hoặc nhiều
hơn hai ngón và có thể sử dụng khí nén hoặc điện
Trang 2415
Hình 2.4 - Tay gắp Schunk PGN 50
- Ưu điểm: lực gắp chặt, sử dụng được với nhiều loại hình dạng khác nhau
- Nhược điểm: khi gắp cần phải xác định cả vị trí và hướng gắp, khe hở giữa hai
ngón tay có giới hạn nên thường mỗi tay gắp chỉ gắp những vật có kích thước
giới hạn, khi sử dụng cần đặc biệt chú ý tránh va chạm
Giác hút: sử dụng áp suất không khí để hút vật, một hệ thống gắp có thể bao gồm
một hoặc một nhóm nhiều giác hút
Hình 2.5 - Giác hút dạng ống dài của hãng Pisco
- Ưu điểm: dễ lắp đặt và sử dụng, giá thành rẻ, có thể kết hợp nhiều giác hút để tăng lực hút
- Nhược điểm: chỉ gắp được các vật nhẹ, bề mặt phẳng
Nam châm điện: sử dụng từ trường để hút các vật làm bằng vật liệu từ tính
Trang 2516
Hình 2.6 - Nam châm điện HGR của Goudsmit Magnet
- Ưu điểm: lực hút mạnh, dễ dàng lắp đặt và sử dụng, có thể hút được các mặt không
phẳng, đa dạng công suất cho các ứng dụng khác nhau
- Nhược điểm: chỉ hút được các vật liệu có từ tính
Do vật thể cần gắp làm bằng nhựa nên nam châm điện không sử dụng được Đồng thời vật thể có hình dạng phức tạp nên không phù hợp với tay gắp Ngược lại vật thể cần gắp nhẹ và có bề mặt phẳng nên lựa chọn cơ cấu giác hút là thích hợp nhất
2.3 Lựa chọn gá đặt camera
Có hai cách gá camera được sử dụng trong visual servoing: camera gắn ở vị trí cố định và camera gắn trên tay máy Ứng với mỗi cách gá là các thuật toán điều khiển khác nhau
Camera gắn ở vị trí cố định: còn được gọi là dạng end-point open-loop Giải
thuật điều khiển dùng cho dạng này thường là xác định vị trí và hướng của vật thể bằng camera sau đó điều khiển robot đi đến vị trí ấy bằng cách tính động học ngược tương tự như điều khiển truyền thống
Hình 2.7 - Camera gắn ở vị trí cố định
Trang 2617
- Ưu điểm: tầm nhìn bao quát, tốc độ hoạt động nhanh
- Nhược điểm: phải qua quá trình calib để xác định ma trận thông số ngoại dùng cho
việc chuyển từ toạ độ pixel sang toạ độ thực, đồng thời đòi hỏi phải biết được ma trận chuyển hệ toạ độ giữa camera và robot, giải thuật điều khiển là vòng hở Camera chỉ thu ảnh hai chiều nên thường chỉ làm việc với các vật thể có chiều cao xác định trước và nằm trên mặt phẳng vuông góc với trục Z của camera
Camera gắn trên tay máy: còn được gọi là end-point closed-loop hoặc
eye-in-hand Giải thuật điều khiển thường dùng là image-based visual servoing, tức là điều khiển sao cho đặc trưng ảnh nhận được trùng với đặc trưng ảnh mong muốn
Hình 2.8 - Camera gắn trên tay máy
- Ưu điểm: giải thuật điều khiển là vòng kín, không cần chuyển toạ độ pixel về toạ
độ thực, không cần biết tư thế của camera, robot hay vật thể
- Nhược điểm: tầm nhìn không bao quá, có thể xảy ra trường hợp vật thể trượt khỏi
thị trường của camera Trong quá trình đi đến vị trí mong muốn, quỹ đạo của robot không xác định được nên có khả năng rơi vào điểm kỳ dị Tốc độ hoạt động chậm hơn điều khiển vòng hở
Stereo camera: dựa trên cơ chế hoạt động của mắt người để xác định độ sâu Giải
thuật điều khiển tương tự như phương pháp gắn cố định một camera
Hình 2.9 - Stereo camera
Trang 2718
- Ưu điểm: tốc độ hoạt động nhanh, hai camera thường được đặt song song cạnh
nhau nên tầm nhìn bao quát, cộng thêm việc xác định được độ sâu nên có thể làm việc được với vật thể nằm nghiêng
- Nhược điểm: cần phải sử dụng đến hai camera, tức là phải calib cả hai camera và
tìm ma trận chuyển hệ toạ độ giữa hai camera này với nhau và với robot, thuật toán xác định độ sâu phức tạp, điều khiển là vòng hở
Do đề tài hướng tới khắc phục các hạn chế của phương pháp điều khiển truyền thống như đã đề cập ở phần 1.1, đồng thời vật thể cần gắp không xác định trước hình dạng và có thể bị nghiêng nên đề tài này sẽ lựa chọn cách gá eye-in-hand
Tổng hợp lại, đề tài lựa chọn phương án như sau:
Bảng 2.1 - Bảng lựa chọn phương án
3 ĐỘNG HỌC TAY MÁY
3.1 Giới thiệu tay máy Nachi-MZ07
Nachi-MZ07 là sản phẩm tay máy dạng cánh tay 6 bậc tự do của hãng Nachi
Robotics Robot có thông số kỹ thuật được liệt kê trong Bảng 3.1 và vùng làm việc như Hình 3.1 [1]
Bảng 3.1 - Thông số kỹ thuật của Nachi-MZ07
Trang 28Momen tải tĩnh tối đa
Trục 4 16.6 N.m Trục 5 16.6 N.m Trục 6 9.4 N.m
Momen quán tính cho phép
Trục 0.47 kg.m2 Trục 5 0.47 kg.m2 Trục 6 0.15 kg.m2
Trang 2920
Hình 3.1 - Vùng làm việc của Nachi-MZ07
3.2 Động học thuận
Tay máy Nachi-MZ07 có 6 bậc tự do với hệ toạ độ được cho như Hình 3.2
Hình 3.2 - Hệ toạ độ tay máy Nachi-MZ07
Bảng 3.2 thể hiện các thông số D-H phục vụ cho việc tính toán
Trang 30Với các giá trị kích thước được cho trong Bảng 3.3
Bảng 3.3 - Các giá trị kích thước của Nachi-MZ07
Trong đó, theo quy ước:
• 𝛼𝑖 là góc giữa trục 𝑍𝑖−1 và trục 𝑍𝑖 quanh trục 𝑋𝑖
• 𝑎𝑖 là khoảng cách từ trục 𝑍𝑖−1 đến trục 𝑍𝑖 theo chiều 𝑋𝑖
• 𝑑𝑖 là khoảng cách từ trục 𝑋𝑖−1 đến trục 𝑋𝑖 theo chiều 𝑍𝑖−1
1
Trang 31Trong visual servoing không sử dụng đến phương trình động học ngược, thay vào
đó cần phải tính ma trận Jacobian của tay máy khi xem camera như đầu công tác Ma
Trang 32𝜈 = 𝐽𝑖𝜃̇𝑖 với 𝐽𝑖 chính là cột thứ i của ma trận Jacobian
𝑖=1
= ∑ 𝜃̇𝑖0𝑅𝑖−1𝑖−1𝑧𝑖−1𝑛
𝑖=1
= ∑ 𝜃̇𝑖0𝑧𝑖−1𝑛
𝑖=1
(3 5)
𝑛 = 6 tương ứng với 6 khớp của robot Lưu ý rằng vận tốc góc của khâu thứ 6 cũng chính là vận tốc góc của camera do nó được gắn cứng vào khâu cuối cùng của cánh tay robot
Suy ra nửa dưới của ma trận Jacobian:
Trang 33Từ đó rút ra được nửa trên của cột thứ i của ma trận Jacobian:
𝐽𝑣𝑖
0 = 𝑧0 𝑖−1× ( 𝑃0 𝑡𝑜𝑜𝑙− 𝑃0 𝑖−1) (3 10) Suy ra nửa trên của ma trận Jacobian:
𝐽𝑣
0 = [ 𝐽0 𝑣1 0𝐽𝑣2 0𝐽𝑣3 0𝐽𝑣4 0𝐽𝑣5 0𝐽𝑣6] (3 11) Như vậy ma trận Jacobian của tay máy là:
𝑅𝑎
3.4 Góc roll, pitch, yaw
Robot Nachi-MZ07 mô tả vị trí đầu công tác bằng 6 thông số X, Y, Z, roll, pitch, yaw Trong đó các góc roll, pitch, yaw được quy ước như sau:
• Góc roll là góc quay quanh trục z
Trang 3425
• Góc pitch là góc quay quanh trục y
• Góc yaw là góc quay quanh trục x
• Thứ tự quay là x → y → z
Để cho gọn, đặt:
• 𝑟 = 𝑟𝑜𝑙𝑙𝑝 = 𝑝𝑖𝑡𝑐ℎ, 𝑦 = 𝑦𝑎𝑤
• cos(𝑟𝑜𝑙𝑙) = 𝑐𝑟, cos(𝑝𝑖𝑡𝑐ℎ) = 𝑐𝑝, 𝑐𝑜𝑠(𝑦𝑎𝑤) = 𝑐𝑦
• sin(𝑟𝑜𝑙𝑙) = 𝑠𝑟, sin(𝑝𝑖𝑡𝑐ℎ) = 𝑠𝑝, sin(𝑦𝑎𝑤) = 𝑠𝑦
Ma trận xoay 𝑅 của đầu công tác so với hệ toạ độ cơ sở được cho bởi:
{
𝑟𝑜𝑙𝑙 = arctan (𝑟𝑟21
11)𝑝𝑖𝑡𝑐ℎ = − arcsin(𝑟31)𝑦𝑎𝑤 = arctan (𝑟32
𝑟33)
(3 17)
4 HỆ THỐNG ĐIỆN VÀ CƠ CẤU CHẤP HÀNH
4.1 Hệ thống điện
Bộ điều khiển của robot Nachi MZ07 được gọi là CFD Controller Hình 4.1 [2]
mô tả cách nối dây từ controller vào robot, trong đó cổng ENC1 và ENC2 được nối vào cổng CNR04, cổng MOTOR1 và MOTOR2 nối vào CNR01 Các dây nối được cung cấp sẵn cùng với robot
Trang 3526
Hình 4.1 - Sơ đồ nối dây giữa controller và robot
Hình 4.2 [2] mô tả cách nối dây teach pendent, có 2 loại teach pendent là compact
TP và smart TP Đề tài sử dụng smart TP
Hình 4.2 - Nối dây teach pendent
Cổng nguồn của CFD controller có 4 chân , có thể sử dụng nguồn 3 pha hoặc nguồn
1 pha (Hình 4.3 [2]) Đề tài sử dụng nguồn điện dân dụng 1 pha nên nối dây vào chân 1
và 3 của cổng nguồn, chân 4 nối đất
Trang 3627
Hình 4.3 - Sơ đồ nối dây nguồn controller
Robot Nachi MZ07 có hỗ trợ hệ thống khí nén tích hợp như biểu diễn ở Hình 4.4
[1] Trong đó, van solenoid được sử dụng là loại SYJ3220-5GR-M3 của SMC, có thể điều khiển từ cổng CNR010 ở bệ robot Đề tài này sử dụng tín hiệu từ digital I/O board của controller điều khiển solenoid thông qua cổng CNR010 Cụ thể: O9 → SOL1A và O10 → SOL1B
Hình 4.4 - Hệ thống khí nén tích hợp của robot Nachi
Ngoài ra, thiết bị dùng để bảo vệ toàn bộ hệ thống khỏi sự cố quá tải và chập mạch
là aptomat cũng được lắp đặt ở đầu mạng điện
4.2 Tính toán giác hút
Hình 4.5 thể hiện sơ đồ hoạt động của giác hút Trong đó, van hút chân không có
nguyên lý tương tự như ống Venturi, cổng P cung cấp dòng khí có áp suất cao, dòng khí
Trang 3728
này di chuyển ngang cổng V gây sụt áp, làm cho áp suất tại cổng V thấp hơn áp suất khí quyển, vì thế tạo được lực hút hút vật lên
Hình 4.5 - Sơ đồ hoạt động của giác hút
Các lực tác động khi vừa hút vừa di chuyển được thể hiện ở Hình 4.6 Khi đó, lực
giữ lý thuyết được tính như sau:
𝐹𝑇𝐻 = 𝑚 (𝑔 +𝑎
Trong đó:
• 𝑚: khối lượng vật cần gắp, theo đề bài lấy bằng 0.1kg
• 𝑔: gia tốc trọng trường, có giá trị 9.81kg.m/s2
• 𝑎: gia tốc di chuyển, ước tính cao nhất là 5m/s2
• 𝜇: hệ số ma sát, với bề mặt phẳng không ướt, lấy bằng 0.5
• 𝑠: hệ số an toàn, cân nhắc đến việc gắp vật hơi nghiêng so với mặt đất, chọn giá trị bằng 3
Như vậy:
𝐹𝑇𝐻 = 0.1 × (9.81 + 5
0.5) × 3 = 5.943(𝑁)