1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đề tài điều khiển hồi tiếp ảnh cho robot công nghiệp

74 6 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 74
Dung lượng 2,91 MB

Nội dung

Lời cảm ơn Quãng thời gian đại học tưởng dài mà ngắn, thấm kết thúc, tơi xin gửi lời cảm ơn đến tất quý thầy/cô giảng dạy chương trình Việt Pháp Đại học Bách Khoa TP.HCM kiến thức quý báu mà thầy, cô truyền đạt cho suốt thời gian học tập trường, không mặt học thuật mà kinh nghiệm sống kỹ mềm Đồng thời biết ơn người bạn đồng hành chặng đường này, nhờ có bạn mà sống sinh viên tràn đầy màu sắc Các bạn để lại cho kỷ niệm vui kỷ niệm buồn, lúc dịp nhìn lại, nâng niu trân quý chúng Hy vọng tơi bạn bước tiếp vai kề vai chặng đường tới Xin cảm ơn anh Đỗ Tân Khoa anh Hồ Ngọc Phú thuộc Trung tâm Đào Tạo Khu CNC TP.HCM tạo điều kiện tin tưởng cho phép tiếp xúc, sử dụng thiết bị công nghiệp luận văn Tôi xin gửi lời cảm ơn đến giáo sư Peter Corke, tác giả công cụ tuyệt vời Robotics Toolbox Machine Vision Toolbox, dùng phần mô luận văn Đặc biệt nhất, xin gửi lời cảm ơn chân thành sâu sắc đến thầy Lê Đức Hạnh tận tình hướng dẫn tơi suốt q trình tơi thực luận văn Những lời khuyên, buổi trao đổi với thầy hỗ trợ tơi nhiều chìa khố để luận văn hồn thành Cuối cùng, biết ơn vô bờ bến gia đình Cám ơn ba mẹ tạo chỗ dựa vững chắc, hỗ trợ vật chất lẫn tinh thần, động viên q trình học tập để vượt qua khó khăn học tập sống TP HCM, ngày 27 tháng năm 2019 Nguyễn Đức Tồn i Tóm tắt luận văn Đề tài “Điều khiển hồi tiếp ảnh cho robot công nghiệp” trình bày phương pháp để điều khiển cánh tay robot bậc tự dạng eye-in-hand đến vị trí mong muốn, gắp vật thả đến nơi định sẵn Đề tài điểm lại giải thuật điều khiển sử dụng điểm đánh dấu để điều hướng cánh tay robot, sau giới thiệu kỹ thuật sử dụng moment ảnh vật thể hình dạng phức tạp không đánh dấu Việc mô thực Matlab công cụ Robotics Toolbox Machine Vision Toolbox tác giả Peter Corke Đề tài tìm hiểu sử dụng Robot Serial NACHI MZ07 bậc tự hãng NACHI Robotics Nội dung luận văn bao gồm 10 chương: Chươ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 cấu chấp hành Chương 5: Giải thuật điều khiển lập trình Chương 6: Mơ Chương 7: Q trình kết thực nghiệm Chương 8: Kết luận ii 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 Tổng quan .1 1.1 Đặt vấn đề 1.2 Sơ lược robot công nghiệp 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 điều khiển robot công nghiệp 1.3 Mục tiêu, nhiệm vụ phạm vi đề tài 10 1.3.1 Đầu 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 luận văn 11 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ấu gắp vật 14 2.3 Lựa chọn gá đặt camera 16 Động học tay máy 18 3.1 Giới thiệu tay máy Nachi-MZ07 18 iii 3.2 Động học thuận 20 3.3 Jacobian 22 3.4 Góc roll, pitch, yaw 24 Hệ thống điện cấu chấp hành 25 4.1 Hệ thống điện 25 4.2 Tính tốn giác hút .27 4.3 Tính tốn đồ gá 31 Giải thuật điều khiển lập trình 32 5.1 Visual servoing dùng moment ảnh 32 5.1.1 Giới thiệu moment ảnh 32 5.1.2 Moment khối tâm 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 lọc vật thể 48 5.4 Giao tiếp điều khiển robot Nachi-MZ07 .50 5.4.1 Các phương thức tiếp Robot Nachi-MZ07 50 5.4.2 Giới thiệu giao tiếp socket 51 5.4.3 Thuật toán giao tiếp 54 Mô 56 6.1 Các bước mô 57 iv 6.2 Kết mô 58 Thực nghiệm kết 60 Kết luận 63 8.1 Kết đạt .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 v Danh sách hình ảnh Hình 1.1 - Mơ hình robot Leonardo Da Vinci Hình 1.2 - Unimate, robot kỹ thuật số lập trình giới .3 Hình 1.3 - Các mẫu robot công nghiệp đại Hình 1.4 - Robot chuỗi Hình 1.5 - Robot song song Hình 1.6 - Robot dạng toạ độ Descartes Hình 1.7 - Robot dạng toạ độ trụ .6 Hình 1.8 - Robot dạng toạ độ cầu Hình 1.9 - Ứng dụng xử lý ảnh robot gắp bánh kếp Hình 1.10 - Hệ thống camera 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 ứng dụng gắp thả 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 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 hãng Pisco 15 Hình 2.6 - Nam châm điện HGR Goudsmit Magnet 16 Hình 2.7 - Camera gắn vị trí cố định 16 Hình 2.8 - Camera gắn tay máy 17 Hình 2.9 - Stereo camera 17 Hình 3.1 - Vùng làm việc Nachi-MZ07 20 Hình 3.2 - Hệ toạ độ tay máy Nachi-MZ07 .20 vi Hình 4.1 - Sơ đồ nối dây controller 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 robot Nachi 27 Hình 4.5 - Sơ đồ hoạt động giác hút .28 Hình 4.6 - Lực tác động 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 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 tồn .31 Hình 5.1 - Ảnh vật thể gốc (bên trái cùng) ảnh vật thể dịch chuyển, xoay, thu nhỏ kết hợp ba 32 Hình 5.2 - Minh hoạ thuật tố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 số ảnh thu 46 Hình 5.6 - Vật thể dùng cho thực nghiệm vị trí thả 48 Hình 5.7 - Kết sau 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 khởi tạo socket, nhận gửi vị trí .55 Hình 5.11 - Lưu đồ chương trình điều khiển giác hút 55 Hình 5.12 - Lưu đồ giải thuật User Task chương trình Robot .56 vii Hình 6.1 - Vị trí ban đầu mô 58 Hình 6.2 - Vị trí kết thúc mô 58 Hình 6.3 - Sai số đặc trưng q trình mơ 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 đèn huỳnh quang 61 Hình 7.4 - Kết gắp thả .62 Hình 7.5 - Sai số trình thực nghiệm vật thể (6 bậc) 62 Hình 7.6 - Sai số trình thực nghiệm vị trí thả (4 bậc) 63 Hình 8.1 - Phương pháp đề xuất 64 viii 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 Nachi-MZ07 18 Bảng 3.2 - Bảng thông số D-H Nachi-MZ07 21 Bảng 3.3 - Các giá trị kích thước Nachi-MZ07 21 Bảng 5.1 - Toạ độ P1, P2, P3 45 Bảng 5.2 - Các vị trí lấy ảnh 45 Bảng 5.3 - Vector xoay vector tịnh tiến 47 Bảng 5.4 - Một số lệnh làm việc với socket CFD controller 52 Bảng 5.5 - Một số phương thức đối tượng socket .53 ix TỔNG QUAN 1.1 Đặt vấn đề Phương pháp điều khiển cánh tay robot truyền thống, nghĩa xác định toạ độ vật cần gắp dùng mơ hình động học để điều khiển cánh tay robot đến vị trí gắp, cịn tồn nhiều hạn chế: • Thứ nhất, tồn sai lệch việc xác định vị trí khớp, mơ hình động học cánh tay robot dẫn đến sai số vị trí đầu cơng tác • Việc điều khiển khơng thực trước toạ độ vật cần gắp, tồn sai số vị trí vật thể cánh tay robot hoạt động sai Qua trình phát triển, cánh tay robot đại củng cố để giảm thiểu vấn đề Các cảm biến khớp cánh tay xác, thành phần cánh tay robot gia công xác để hoạt động mơ hình động học lập trình Mỗi khâu robot phải cứng để khơng bị cong tác động trọng lực trình hoạt động, gia cố nhiều kim loại dẫn đến trọng lượng gia tăng để di chuyển khối kim loại cơng suất động phải lớn Tất yếu tố khiến cho giá thành robot công nghiệp bị đẩy lên đáng kể Không thế, robot làm việc phải gá đặt cách xác vật thể mà làm việc phải đặt vị trí xác Do hạn chế phương pháp điều khiển truyền thống nêu mà cách tiếp cận dựa vào việc sử dụng camera thuật toán xử lý ảnh, gọi chung thuật ngữ visual servoing, nghiên cứu ứng dụng ngày nhiều để đáp ứng nhu cầu ngày đa dạng trình sản xuất công nghiệp Do giới hạn quyền phần mềm, đề tài sử dụng giao tiếp socket để điều khiển Robot 5.4.2 Giới thiệu giao tiếp socket Socket cổng logic mà chương trình sử dụng để giao tiếp với chương trình khác máy, máy với máy khác mạng mạng khác kết nối qua Internet Có loại socket: - Stream Socket: Dựa giao thức TCP (Tranmission Control Protocol) việc truyền liệu thực trình thiết lập kết nối Giao thức đảm bảo liệu truyền đến nơi nhận cách đáng tin cậy, thứ tự nhờ vào chế quản lý luồng lưu thông mạng chế chống tắc nghẽn - Datagram Socket: Dựa giao thức UDP (User Datagram Protocol) việc truyền liệu không yêu cầu có thiết lập kết nối q trình Ngược lại với giao thức TCP liệu truyền theo giao thức UDP khơng tin cậy, khơng trình tự lặp lại Tuy nhiên khơng u cầu thiết lập kết nối, khơng phải có chế phức tạp nên tốc độ nhanh CFD controller cung cấp 16 cổng socket với 16 buffer để lưu liệu nhận Nó hỗ trợ loại giao thức TCP UDP Do đề tài thực việc gửi nhận liệu nhỏ nên yêu cầu tốc độ không quan trọng, ngược lại để đảm bảo an toàn robot hoạt động độ tin cậy việc truyền liệu cần thiết Do đề chọn sử dụng giao thức TCP với máy tính cá nhân máy chủ CFD controller máy khách Với giao tiếp socket mạng, máy mạng gán địa gọi địa IP Ví dụ: CFD controller sử dụng đề tài có địa IP 192.168.1.30 máy tính cá nhân thiết đặt địa IP cố định 192.168.1.16 Ngồi địa IP, giao tiếp socket cịn sử dụng thêm số port để đảm bảo tính kết nối Mỗi port sử dụng tiến trình Đề tài sử dụng port 3333 để thực kết nối Bảng 5.4 liệt kê số câu lệnh làm việc với socket CFD controller 51 Bảng 5.4 - Một số lệnh làm việc với socket CFD controller Lệnh Chức Tham số p1: số socket (1-16) SOCKCREATE p1, p2 Khởi tạo cổng socket p2: - TCP - UDP p1: số socket (1-16) SOCKCONNECT p1, p2, p3, p4 Kết nối đến p2: số cuối số địa IP (1-254) máy chủ p3: số cổng (1-65535) p4: thời gian chờ (s) p1: số socket (1-16) p2: chuỗi p3: độ dài chuỗi SOCKSENDSTR p1, p2, p3, p4, p5, p6 Gửi chuỗi p4: thời gian chờ (s) p5: kích thước liệu gửi (byte) p6: ký tự kết thúc p1: số socket (1-16) p2: số buffer (1-16) SOCKRECV p1, p2, p3, p4, p5 Chờ nhận p3: kích thước liệu (byte) liệu đến p4: thời gian chờ (s) p5: kích thước liệu nhận (byte) SOCKCLOSE p Hủy Socket 52 p: số socket (1-16) p1: số buffer (1-16) Lấy chuỗi từ p2: biến GETSTR p1, p2, p3, p4 Buffer p3: vị trí bắt đầu p4: số ký tự Đề tài sử dụng ngơn ngữ lập trình Python để thực giao tiếp socket máy tính với hỗ trợ thư viện socket Thư viện định nghĩa đối tượng socket với nhiều phương thức hỗ trợ cho việc giao tiếp Bảng 5.5 - Một số phương thức đối tượng socket Phương thức socket.accept() Mô tả Chấp nhận kết nối Socket phải gắn vào địa chờ kết nối Giá trị trả (conn, address) với conn đối tượng socket gửi nhận liệu qua kết nối address địa socket đầu bên kết nối socket.bind(address) Gắn socket vào địa address tuple (host, port) Trong host địa IP port số cổng socket.close() Đóng socket socket.listen() Chờ kết nối socket.recv(bufsize) Nhận liệu từ socket Giá trị trả đối tượng byte Kích thước tối đa liệu nhận xác định bufsize socket.send(bytes) Gửi liệu qua socket Trả số byte gửi socket.sendall(bytes) Gửi tất liệu qua socket Trả None thành cơng Nếu xảy lỗi tạo ngoại lệ (Exception), trường hợp khơng có cách biết byte gửi 53 5.4.3 Thuật tốn giao tiếp Có loại chương trình CFD controller: Chương trình Robot: Là chương trình/hàm người dùng định nghĩa cho CFD Controller biên dịch chạy dựa câu lệnh cung cấp sẵn di chuyển Robot, kích I/O, kích valve khí nén có sẵn Robot, chạy internal PLC Do yêu cầu giám sát an tồn, chương trình robot cho phép chạy chạy chương trình thời điểm (việc gọi chương trình robot từ chương trình robot khác xem việc chạy chương trình luồng điều khiển theo hướng) chương trình kết thúc User Task: Chương trình/hàm người dùng định nghĩa cho CFD Controller biên dịch chạy dựa câu lệnh cung cấp sẵn (các câu lệnh di chuyển Robot, kích I/O, chạy internal PLC bị cấm) Chương trình/hàm chạy độc lập song song với chương trình robot, chạy tối đa User Task thời điểm, có xung đột ưu tiên User Task có Priority cao Chức User Task dùng để tạo giao diện giám sát xử lý lỗi Teach Pendant Các câu lệnh khởi tạo Socket Communication truyền nhận liệu gọi từ User Task Chương trình Robot User Task sử dụng chung biến toàn cục, nên biến dùng để giao tiếp loại chương trình Hình 5.9 - Mơ hình giao tiếp điều khiển robot Hình 5.9 thể sơ đồ giao tiếp điều khiển robot, cần tổng cộng chương trình, máy tính CFD controller 54 Khởi tạo socket Đọc vị trí robot Di chuyển robot INIT_SOCKET REQUEST_POSE MOVETO(POSE) CREATE SOCKET SEND P SEND M WAIT CONNECTION ERROR? TRUE ERROR? TRUE FALSE FALSE ACCEPT CONNECTION ERROR? TRUE POSE = RECEIVE_DATA THROW EXCEPTION SEND POSE THROW EXCEPTION TRUE ERROR? FALSE FALSE RETURN POSE THROW EXCEPTION RETURN RETURN Hình 5.10 - Lưu đồ chương trình khởi tạo socket, nhận gửi vị trí Chương trình máy tính có nhiệm vụ xử lý hình ảnh thu từ camera, khởi tạo giao tiếp socket (máy chủ), gửi liệu đến cho CFD controller nhận liệu từ CFD controller để xử lý User Task dùng để khởi tạo giao tiếp socket CFD controller (máy khách), nhận gửi liệu máy tính, điều khiển giác hút Chương trình Robot chịu trách nhiệm di chuyển robot Hút Thả SUCK RELEASE SEND A SEND B ERROR? TRUE FALSE ERROR? THROW EXCEPTION TRUE FALSE RETURN THROW EXCEPTION RETURN Hình 5.11 - Lưu đồ chương trình điều khiển giác hút 55 Các chương trình máy tính để khởi tạo socket, gửi nhận vị trí thể lưu đồ giải thuật Hình 5.10, để điều khiển giác hút thể lưu đồ Hình 5.11 Lưu đồ giải thuật cụ thể User Task chương trình Robot biểu diễn Hình 5.12 Lưu ý lưu đồ thể giải thuật dạng mã giả, lệnh thực tế sử dụng CHƯƠNG TRÌNH ROBOT USER TASK START START CREATE SOCKET P = GET_POSE V99 = V100 = CONNECT SOCKET TRUE TRUE V99 = ? FALSE E1 < ? (ERROR) WAIT V100 = FALSE V50 = RECEIVE_DATA MOVE P FALSE V50 = S ? FALSE TRUE V50 = P ? TRUE FALSE V50 = M ? V50 = B ? V50 = A ? VALVE OFF VALVE ON END TRUE P = GET_POSE P = RECEIVE_DATA V100 = V99 = SEND P TRUE E1 < ? (ERROR) FALSE E1 < ? (ERROR) FALSE WAIT V100 = TRUE CLOSE SOCKET END Hình 5.12 - Lưu đồ giải thuật User Task chương trình Robot MƠ PHỎNG Đề tài thực mô phần mềm MATLAB, sử dụng công cụ Robotics Toolbox Machine Vision Toolbox tác giả Peter Corke, kết hợp với phần mềm đồ 56 hoạ vector Inkscape ngơn ngữ lập trình Python để tạo liệu vật thể Mục tiêu mơ dựa vào hình ảnh thu từ camera để điều khiển cánh tay robot cho vị trí camera tiến đến vị trí mong muốn định trước 6.1 Các bước mô Dữ liệu vật thể tạo cách dùng Python để chuyển hình vẽ từ Inkscape thành chuỗi điểm chiều lưu lại định dạng “.mat” MATLAB Vị trí mong muốn định trước camera cách mặt phẳng vật thể 0.5m trục z camera vuông góc với mặt phẳng vật thể Q trình mơ thực theo bước sau: Load liệu vật thể Sử dụng Robotics Toolbox để xây dựng đối tượng robot có thơng số DH lấy từ Bảng 3.2 Bảng 3.3 Đồng thời camera xem đầu cơng tác để thuận tiện cho việc tính Jacobian nên ma trận chuyển vị đầu công tác đối tượng robot gán 𝑇𝑡𝑜𝑜𝑙 = 𝑡𝑜𝑜𝑙 𝑇 𝑡𝑜𝑜𝑙 ⋅ 𝑐𝑎𝑚 𝑇 Lưu ý ma trận chuyển vị phải chuyển sang đơn vị mét Robot để tư ban đầu 𝜃 = [0 0 𝜋 0] Sử dụng Machine Vision Toollbox để tạo đối tượng camera với thông số mặc định Cho camera nhìn vật thể vị trí mong muốn, dùng phương thức project đối tượng camera để tính hình ảnh vật thể qua camera Từ hình ảnh thu được, tính đặc trưng mong muốn 𝑠 ∗ thông số 𝑠4𝜔𝑥 , 𝑠4𝜔𝑦 , 𝑠5𝜔𝑥 , 𝑠5𝜔𝑦 đề cập phần 5.1.3 Đặt vật thể vị trí bắt đầu mơ phỏng, vị trí có ma trận chuyển vị so với camera là: 𝑇𝑖𝑛𝑖𝑡 = 𝑡𝑥 (0.05) ⋅ 𝑡𝑧 (0.4) ⋅ 𝑅𝑦 ( 𝜋 ⁡𝜋 𝜋 ) ⋅ 𝑅𝑥 ( ) ⋅ 𝑅𝑧 ( ) 10 12 Tính đặt trưng s Tính sai số 𝑒 = 𝑠 − 𝑠 ∗ Kiểm tra điều kiện: |𝑒| < 𝑒𝑚𝑖𝑛 , thoả dừng mơ 57 Tính vận tốc camera theo công thức (5.30), (5.31), (5.32), (5.33) (5.34) giới hạn cho giá trị vận tốc Tính vận tốc khớp theo cơng thức (5.16) 10 Di chuyển robot đến vị trí mới: 𝜃 = 𝜃 + 𝑑𝜃 Quay lại bước 6.2 Kết mơ Q trình mơ 62 bước để hội tụ Hình 6.1 - Vị trí ban đầu mơ Hình 6.1 thể vị trí ban đầu cánh tay robot, camera vật thể Trong đó, đường màu đỏ tượng trưng cho vị trí mong muốn vật thể so với camera, đường màu xanh thể vị trí thực vật thể so với camera Hình 6.2 - Vị trí kết thúc mơ 58 Hình 6.2 thể vị trí kết thúc mơ phỏng, thấy camera tiến đến vị trí mong muốn, hình ảnh vật thể nhìn qua camera khít với hình ảnh mong muốn Hình 6.3 - Sai số đặc trưng trình mơ Hình 6.3 biểu diễn sai số đặc trưng q trình mơ Các sai số nhìn chung giảm dần theo thời gian Có giai đoạn đầu sai số 𝑥𝑛 𝑦𝑛 tăng ảnh hưởng từ thành phần 𝜔𝑥 𝜔𝑦 vận tốc camera Giai đoạn sau mặt phẳng vật thể gần vng góc với trục z camera 𝜔𝑥 𝜔𝑦 gần không ảnh hưởng đáng kể lên thay đổi 𝑥𝑛 𝑦𝑛 , sai số đặc trưng bắt đầu giảm dần Hình 6.4 - Một số mẫu vật thể khác Ngoài vật thể hình mèo trình bày, thuật tốn cịn thử nghiệm với số vật thể khác cáo chim Tuy thời gian hội tụ khác tất 59 đạt kết mong muốn, chứng tỏ thuật toán đề xuất hoạt động tốt có tính ổn định cao THỰC NGHIỆM VÀ KẾT QUẢ Hình 7.1 - Bố trí thực nghiệm Thực nghiệm bố trí Hình 7.1, vật thể đặt nêm có độ nghiêng 20° vị trí ngẫu nhiên tầm nhìn camera Hình 7.2 - Thiết đặt ảnh mẫu Trước đó, ảnh mẫu lấy cho vật thể vị trí thả (bằng nút “Set” giao diện người dùng) Hình 7.2 Khi chạy thuật tốn visual servoing (nút “Trace” 60 giao diện người dùng), camera di chuyển đến vị trí cho ảnh vật thể thu từ camera trùng với ảnh vật thể mẫu Khi đó, vị trí tương đối camera/đầu cơng tác so với vật thể tương tự vị trí lấy ảnh mẫu, tức biết Điều cho phép thực việc gắp thả vật dù trước vị trí vật thể Để chứng tỏ khả đáp ứng với môi trường thay đổi, thực nghiệm tiến hành ánh đèn huỳnh quang, tốc độ quét đèn huỳnh quang thấp tốc độ quét camera nên gây gợn sóng hình ảnh thu Hình 7.3 - Gợn sóng gây đèn huỳnh quang Lưu ý rằng, vật thể cần gắp, đề tài sử dụng thuật tốn visual servoing cho bậc tự Cịn vị trí thả, biết trước nằm mặt phẳng song song với mặt phẳng OXY robot nên đề tài thực visual servoing bậc tự do, bậc tự ứng với 𝜔𝑥 𝜔𝑦 giữ cố định, có nghĩa khơng sử dụng đến 𝑠4 𝑠5 Đồng thời làm so sánh visual servoing bậc bậc Hình 7.4 cho thấy vị trí vật thể thả xuống lúc kết thúc trình thực nghiệm Có thể thấy rõ gần trùng khít với đánh dấu vị trí thả nằm lọt hồn tồn vùng sai số định sẵn 61 Hình 7.4 - Kết gắp thả Hình 7.5 Hình 7.6 cho thấy sai số tính theo frame hình q trình thực nghiệm Trục hồnh thời gian chạy thực robot Có thể thấy sai số đến cuối tiến Do robot điều khiển theo kiểu gián đoạn từ điểm đến điểm nên đồ thị sai số phân bậc không mượt mô Đồng thời, robot di chuyển, hình ảnh camera thu phần bị nhoè tượng lưu ảnh, cộng với nhiễu từ môi trường, khiến cho đồ thị sai số bị chattering Có thể thấy hai thông số 𝑠4 𝑠5 chịu ảnh hưởng từ nhiễu nhiều Hình 7.5 - Sai số trình thực nghiệm vật thể (6 bậc) 62 Hình 7.6 - Sai số trình thực nghiệm vị trí thả (4 bậc) Một điểm đáng lưu ý thời gian hội tụ thuật tốn bậc bậc Có thể thấy rõ ràng thuật toán visual servoing áp dụng cho bậc hội tụ nhanh hẳn so với bậc (khoảng 10 lần) Điều giải thích thuật tốn bậc phải điều khiển đến thơng số, lại có thơng số chịu ảnh hưởng nhiễu nhiều đồng thời khó điều khiển nhất, thời gian hội tụ bị kéo dài đáng kể KẾT LUẬN 8.1 Kết đạt - Xây dựng chương trình mơ thuật toán visual servoing dựa moment ảnh - Giao tiếp thành công với robot qua socket - Thiết kết đồ gá giác hút lắp đặt camera - Thực thành cơng việc gắp thả vật nằm nghiêng hình dạng phức tạp dùng visual servoing, đạt yêu cầu đề kể điều kiện nhiễu: thời gian hội tụ phút sai số vị trí thả nằm khoảng 2mm - Xây dựng giao diện người dùng 63 8.2 Hạn chế Thời gian hội tụ cịn q chậm so với chuẩn cơng nghiệp Một phần trình thực nghiệm cố tình cho phép nhiễu, camera sử dụng chuẩn công nghiệp việc điều khiển robot theo kiểu gián đoạn từ điểm đến điểm khiến cho robot dừng nhiều lần suốt q trình điều khiển Thơng số 𝑠4 𝑠5 nhạy với nhiễu, làm cho trình điều khiển khó khăn giảm độ xác 8.3 Hướng phát triển đề tài Để tìm hai thơng số 𝑠4 𝑠5 nhạy với nhiễu chuyện khơng dễ có vơ vàn cách chọn hai thơng số này, việc thử cặp thông số tốn nhiều thời gian Để tránh việc 𝑠4 𝑠5 nhạy với nhiễu, luận văn đề xuất lợi dụng tính chất cầu sai (distortion) camera Cụ thể sử dụng camera có độ cầu sai lớn để điều khiển Khi đó, sai số góc nghiêng gây ra, nhờ có cầu sai khuếch đại, lớn đáng kể sai số nhiễu gây ra, từ tăng độ xác trình điều khiển Tuy nhiên, cầu sai lớn ảnh hưởng đến thơng số cịn lại, luận văn đề xuất sử dụng ảnh qua thuật toán khử cầu sai để điều khiển thông số Sơ đồ điều khiển thể Hình 8.1 Hình 8.1 - Phương pháp đề xuất Với cách làm này, nhiều khả cải thiện tốc độ độ xác thuật tốn visual servoing dùng moment ảnh 64 Tài liệu tham khảo [1] Nachi-Fujicoshi, MZ07-02/MZ07P-02/MZ07L-02/MZ07LP-02: Standard specifications, Toyama: Author [2] Nachi-Fujicoshi, CFD Controller Instruction Manual: Start Up, Toyama: Author [3] SMC, Series ZU catalog, Tokyo: Author [4] M.-K Hu, "Visual pattern recognition by moment invariants," IRE transactions on information theory, vol 8, no 2, pp 179-187, 1962 [5] M.-K Hu, "Visual pattern recognition by moment invariants," IRE transactions on information theory, vol 8, no 2, pp 179-187, 1962 [6] F Chaumette, "Image moments: a general and useful set of features for visual servoing," IEEE Transactions on Robotics, vol 20, no 4, pp 713-723, 2004 [7] E a C F a B S Malis, "2D 1/2 Visual Servoing," IEEE TRANS ON ROBOTICS AND AUTOMATION, vol 15, pp 238-250, 1999 [8] L Rocha, L Velho and P C P Carvalho, "Image moments-based structuring and tracking of objects," in Proceedings XV Brazilian Symposium on Computer Graphics and Image Processing, 2002, pp 99-105 [9] Z Zhang, "A flexible new technique for camera calibration," IEEE Transactions on pattern analysis and machine intelligence, vol 22, 2000 [10] P Corke, Robotic-vision and Control: Fundamental Algorithms in Matlab, Springer, 2011 65 ... văn Đề tài ? ?Điều khiển hồi tiếp ảnh cho robot cơng nghiệp? ?? trình bày phương pháp để điều khiển cánh tay robot bậc tự dạng eye-in-hand đến vị trí mong muốn, gắp vật thả đến nơi định sẵn Đề tài. .. Đặt vấn đề 1.2 Sơ lược robot công nghiệp 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 điều khiển robot công nghiệp ... nghiệp ngày Hình 1.3 - Các mẫu robot cơng nghiệp đại 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 Mỹ, định nghĩa: ? ?Robot công nghiệp tay máy vạn năng, hoạt động

Ngày đăng: 07/08/2021, 19:31

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[4] M.-K. Hu, "Visual pattern recognition by moment invariants," IRE transactions on information theory, vol. 8, no. 2, pp. 179-187, 1962 Sách, tạp chí
Tiêu đề: Visual pattern recognition by moment invariants
[5] M.-K. Hu, "Visual pattern recognition by moment invariants," IRE transactions on information theory, vol. 8, no. 2, pp. 179-187, 1962 Sách, tạp chí
Tiêu đề: Visual pattern recognition by moment invariants
[6] F. Chaumette, "Image moments: a general and useful set of features for visual servoing," IEEE Transactions on Robotics, vol. 20, no. 4, pp. 713-723, 2004 Sách, tạp chí
Tiêu đề: Image moments: a general and useful set of features for visual servoing
[7] E. a. C. F. a. B. S. Malis, "2D 1/2 Visual Servoing," IEEE TRANS. ON ROBOTICS AND AUTOMATION, vol. 15, pp. 238-250, 1999 Sách, tạp chí
Tiêu đề: 2D 1/2 Visual Servoing
[8] L. Rocha, L. Velho and P. C. P. Carvalho, "Image moments-based structuring and tracking of objects," in Proceedings. XV Brazilian Symposium on Computer Graphics and Image Processing, 2002, pp. 99-105 Sách, tạp chí
Tiêu đề: Image moments-based structuring and tracking of objects
[9] Z. Zhang, "A flexible new technique for camera calibration," IEEE Transactions on pattern analysis and machine intelligence, vol. 22, 2000 Sách, tạp chí
Tiêu đề: A flexible new technique for camera calibration
[1] Nachi-Fujicoshi, MZ07-02/MZ07P-02/MZ07L-02/MZ07LP-02: Standard specifications, Toyama: Author Khác
[2] Nachi-Fujicoshi, CFD Controller Instruction Manual: Start Up, Toyama: Author Khác
[10] P. Corke, Robotic-vision and Control: Fundamental Algorithms in Matlab, Springer, 2011 Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w