Bài viết trình bày về những kết quả nghiên cứu, thiết kế, chế tạo cánh tay robot 5 bậc tự do ứng dụng xử lý ảnh để phân loại vật thể. Cánh tay robot này được điều khiển thông qua bộ phận điều khiển với chip vi điều khiển Arduino và bộ phận xử lý hình ảnh.
Tuyển tập Hội nghị khoa học toàn quốc lần thứ Động lực học Điều khiển Đà Nẵng, ngày 19-20/7/2019, tr 160-166, DOI 10.15625/vap.2019000273 Thiết kế chế tạo cánh tay robot bậc tự ứng dụng xử lý ảnh để phân loại vật thể Đặng Phước Vinh, Lê Đình Minh Nhật, Nguyễn Đặng Mẫn Trường Đại học Bách khoa, Đại học Đà Nẵng Email: dpvinh@dut.udn.vn Tóm tắt Trong báo này, nhóm tác giả trình bày kết nghiên cứu, thiết kế, chế tạo cánh tay robot bậc tự ứng dụng xử lý ảnh để phân loại vật thể Cánh tay robot điều khiển thông qua phần điều khiển với chip vi điều khiển Arduino phận xử lý hình ảnh Ban đầu, camera thu nhận hình ảnh thực tế, sau máy tính với tảng Visual Studio C# xử lý thông tin đầu vào gửi lệnh điều khiển tới điều khiển Khi nhận thơng tin từ máy tính, điều khiển điều khiển cấu chấp hành tương tác với vật thể Bước đầu hệ thống hoạt động ổn định, nhận diện vật thể dựa vào hình dáng màu sắc cách xác với thời gian tương đối nhanh Từ khóa: Cánh tay robot bậc tự do, Vi điều khiển Aruino, Xử lý ảnh, Visual Studio C# Đặt vấn đề Thời đại công nghiệp 4.0 kéo theo phát triển không ngừng nghỉ công cụ lao động phụ trợ, từ cơng cụ máy móc thơ sơ cho suất chất lượng kém, thay cơng cụ, máy móc đại hơn, nâng cao độ xác, suất cao sản xuất nhiều mặt hàng tinh xảo Đồng thời nhằm giảm công lao động người hoạt động công nghiệp hay số môi trường đặc biệt mà người làm việc như: mơi trường độc hại khói bụi, hóa chất,… gây ảnh hưởng tới sức khỏe tính mạng người, cơng cụ thay người mang lại hiệu cao Để giải vấn đề việc áp dụng cánh tay robot vào công nghiệp ngày cấp thiết Robot ứng dụng nhiều mục đích khác nhau: phân loại sản phẩm theo hình dáng màu sắc (ứng dụng khu cơng nghiệp kho hàng, khí …) Bên cạnh đó, việc ứng dụng xử lý ảnh vào cánh tay robot thu hút nhiều nghiên cứu nước để phục vụ mục đích khác Vào năm 2015, cánh tay robot nghiên cứu chế tạo để phân loại hình dáng sản phẩm sử dụng kỹ thuật xử lý ảnh số dựa vào đường biên bao quanh vật thể [1] Một cánh tay robot gồm ngón tay ứng dụng xử lý ảnh số để phân loại sản phẩm dựa vào màu sắc Cánh tay hoạt động theo thời gian thực sử dụng webcam để chụp ảnh phân tích ảnh [2] Tương tự, robot ứng dụng vào thực tế để xác định vật thể xử lý ảnh từ camera nghiên cứu chế tạo [3] Một thuật toán phát triển giúp cho robot xác định hay vẽ hình dáng vật thể từ tọa độ điểm chúng Cánh tay robot cịn ứng dụng nghiên cứu khoa học hỗ trợ đào tạo thực hành, thí nghiệm cho sinh viên ngành khí, điện tử tự động hóa trường kỹ thuật Ý tưởng thiết kế cho mơ hình lớn ứng dụng nhiều cơng đoạn cho quy trình sản xuất sản phẩm Vậy nên, toán đặt phải thiết kế chế tạo hệ thống mà kết hợp phương pháp xử lý ảnh cấu khí áp dụng ngành công nghiệp Hệ thống sử dụng camera chụp vật mẫu, chụp vật sản xuất, sau so sánh ảnh vật mẫu ảnh vật thật phân tích đặc tính riêng sản phẩm từ phân loại xác định sản phẩm có đạt chất lượng hay không Nếu đạt chất lượng đưa sang đóng gói thành phẩm Nếu khơng đạt chất lượng loại bỏ trở thành phế phẩm Tuy nhiên thực tiễn số tốn khơng cần phải áp dụng hệ thống làm cho hệ thống phức tạp, giá thành tăng Hiện tay máy có thị trường lĩnh vực phân loại gồm dạng cấu cấu song song chuỗi Đối với tay máy có cấu song song có tốc độ phân loại nhanh phạm vi làm việc nhỏ so với kích thước tay máy Đối với cánh tay dạng chuỗi, hệ thống có phạm vi làm việc lớn Tuy nhiên, tùy thuộc vào số khớp có tay máy mà độ linh hoạt cao ngược lại độ cứng vững tay máy lại giảm Với yêu cầu phân loại sản phẩm ngày đa dạng cánh tay phải đảm bảo độ linh hoạt tốc độ, vùng làm việc rộng độ cứng vững cần thiết Hơn nữa, việc phân loại sản phẩm dựa vào hình dáng sản phẩm tối ưu kỹ thuật xử lý ảnh số áp dụng cho cánh tay robot Hình 1: Những vật thể cần phân loại hệ thống Trong báo này, nhóm tác giả nghiên cứu, thiết kế chế tạo thành công cánh tay robot bậc tự dùng để phân loại sản phẩm dựa vào màu sắc hình dáng Cơng nghệ xử lý ảnh ứng dụng hệ thống giúp cho việc phân loại xác Hệ thống điều Đặng Phước Vinh, Lê Đình Minh Nhật, Nguyễn Đặng Mẫn khiển trung tâm với chip vi điều khiển Arduino điều thực việc truyền thông cánh tay robot với phần mềm máy tính viết Visual Studio, tảng C# Các vật thể sử dụng nghiên cứu thể Hình Thiết kế 2.1 Tổng quan hệ thống Để giải tốn xử lý ảnh có nhiều cơng cụ hỗ trợ tốt Open CV, Microsoft Visual Studio hay công cụ Image Processing Toolbox Visual Studio Trong nghiên cứu này, nhóm tác giả sử dụng phần mềm Visual Studio với tảng C# để xây dựng phần mềm giao tiếp với hệ thống điều khiển cánh tay robot Hình 2: Sơ đồ phân loại gắp hàng tự động ứng dụng công nghệ xử lý ảnh Trong hệ thống sử dụng camera nhằm chụp ảnh sản phẩm, máy tính có nhiệm vụ thu nhận, lưu trữ xử lý, nhận dạng sản phẩm thơng qua hình ảnh chụp từ camera, từ xuất lệnh đưa tới điều khiển nhằm tác động đến cấu chấp hành phân loại sản phẩm theo quy định Hình thể mơ hình 3D hệ thống Hệ thống gồm phần chính: ▪ Bộ điều khiển gồm: chip vi điều khiển Arduino, mạch driver dùng để điều khiển động cánh tay robot bậc tự ▪ Cơ cấu chấp hành bao gồm: cánh tay robot bậc tự Hình 3: Mơ hình 3D hệ thống Các vật thể cần phân loại nằm vùng làm việc, phần giao vùng hoạt động cánh tay robot vùng nhận diện máy ảnh Máy ảnh chụp gửi hình ảnh máy tính để nhận diện phân loại thuộc tính sản phẩm bao gồm hình dáng, màu sắc tọa độ vật thể Tồn thơng tin máy tính đóng gói truyền cho vi điều khiển để vi điều khiển tạo tín hiệu điều khiển cánh tay robot vươn đến vị trị vật thể vùng làm việc, gắp vật thể thả vùng phân loại tương ứng vòng lặp tiếp tục phân loại hết sản phẩm có vùng làm việc nhấn nút dừng khẩn cấp Nút dừng khẩn cấp có nhiệm vụ dừng hoạt động cánh tay robot xử lý trường hợp gặp xự cố Với toán đặt trên: sản phẩm vào vùng làm việc camera, camera chụp ảnh lại lưu lại vào máy tính Yêu cầu đặt cần phải xác định hình, đặc điểm, hướng sản phẩm dựa vào phân loại sản phẩm Nếu có sản phẩm khơng trùng với quy định phân loại phế phẩm Để thực yêu cầu hệ thống ta sử dụng thư viện xử lý ảnh Visual Studio để hỗ trợ việc nhận dạng đặc điểm, hướng sản phẩm 2.2 Phương án thiết kế: a) Động Sau tìm hiểu, tính tốn thử nghiệm loại động thị trường, tác giả nhận thấy động servo động bước phù hợp * Động servo - Ưu điểm: Mômen trục hơn, tốc độ cao hơn, có nhiều kích cỡ, làm việc êm, độ xác cao * Động bước - Ưu điểm: Giá thành rẻ, điều khiển mạch hở, trì mômen tốt, mômen xoắn cao tốc độ thấp, định vị xác b) Vật liệu chế tạo thân Robot Hiện có nhiều loại vật liệu làm thân vỏ cho robot thép, nhôm nhựa Nhưng sau xem xét ưu nhược điểm loại vật liệu nhựa PLA phù hợp : nhựa có khối lượng nhẹ dễ gia cơng, tạo bề mặt phức tạp nhờ cơng nghệ in 3D 2.3 Tính tốn động học thiết kế cánh tay Nội dung động học nhằm nghiên cứu giải tích chuyển động robot hệ tọa độ tham chiếu cố định hàm theo thời gian mà không quan tâm đến lực momen gây chuyển động [4] Nó xác định mối quan hệ khơng gian biến trục với vị trí hướng khâu chấp hành cuối robot Động học robot bao gồm hai nội dung cần giải sau: Cho giá trị biến khớp góc quay độ dài tịnh tiến, thơng số hình học thông số liên kết khâu Yêu cầu xác định vị trí hướng khâu chấp hành cuối hệ tọa độ tham chiếu Đây gọi toán động học thuận – direct (forward) kinematics Cho trước thơng số hình học thông số liên kết khâu, cho trước vị trí hướng khâu chấp hành cuối hệ tọa độ tham chiếu mà ta muốn robot phải đạt đến Yêu cầu xác định giá trị biến khớp để robot đạt hướng vị trí cho trước cấu hình tay máy phù hợp với điều kiện cho Đây gọi toán động học ngược robot – inverse kinematics Cánh tay robot bậc tự ứng dụng xử lý ảnh để phân loại sản phẩm a) Bài toán động học thuận Chọn hệ tọa độ sở, gắn hệ tọa trung gian lên khâu (Hình 4), ta có bảng thơng số Denavit – Hartenberg (Bảng 1) Hình 4: Tọa độ khâu trung gian Bảng 1: Bảng thông số DH 𝜽∗𝒊 𝒅𝒊 𝒂𝒊 𝜶𝒊 𝜃1∗ 𝑑1 90𝑜 𝜃2∗ 𝑎2 0 𝜃3∗ 𝑎3 0 𝜃4∗ 90𝑜 0 𝜃5∗ 𝑑5 0 Ma trận tổng quát 𝐴𝑖 : 𝐴𝑖 𝑐𝑜𝑠(𝜃) −𝑐𝑜𝑠(𝛼) ∗ 𝑠𝑖𝑛(𝜃) 𝑠𝑖𝑛(𝛼) ∗ 𝑠𝑖𝑛(𝜃) 𝑎 ∗ 𝑐𝑜𝑠(𝜃) 𝑠𝑖𝑛(𝜃) 𝑐𝑜𝑠(𝛼) ∗ 𝑐𝑜𝑠(𝜃) −𝑠𝑖𝑛(𝛼) ∗ 𝑐𝑜𝑠(𝜃) 𝑎 ∗ 𝑠𝑖𝑛(𝜃) =[ ] 𝑠𝑖𝑛(𝛼) 𝑐𝑜𝑠(𝛼) 𝑑 0 Ma trận cho khâu 1÷5: 𝑐𝑜𝑠(𝜃1 ) 𝑠𝑖𝑛(𝜃1 ) ) 𝑠𝑖𝑛(𝜃 −𝑐𝑜𝑠(𝜃1 ) 0] 𝐴1 = [ 𝑑1 0 𝑐𝑜𝑠(𝜃2 ) −𝑠𝑖𝑛(𝜃2 ) 𝑎2 ∗ 𝑐𝑜𝑠(𝜃2 ) ) 𝑐𝑜𝑠(𝜃2 ) 𝑎2 ∗ 𝑠𝑖𝑛(𝜃2 ) 𝐴2 = [ 𝑠𝑖𝑛(𝜃2 ] 0 0 0 𝑐𝑜𝑠(𝜃3 ) −𝑠𝑖𝑛(𝜃3 ) 𝑎3 ∗ 𝑐𝑜𝑠(𝜃3 ) ) 𝑐𝑜𝑠(𝜃3 ) 𝑎3 ∗ 𝑠𝑖𝑛(𝜃3 ) ] 𝐴3 = [ 𝑠𝑖𝑛(𝜃3 0 0 0 𝑐𝑜𝑠(𝜃4 ) 𝑠𝑖𝑛(𝜃4 ) ) −𝑐𝑜𝑠(𝜃4 ) 𝐴4 = [ 𝑠𝑖𝑛(𝜃4 ] 0 0 0 𝑐𝑜𝑠(𝜃5 ) −𝑠𝑖𝑛(𝜃5 ) 0 ) 𝑐𝑜𝑠(𝜃5 ) 0] 𝐴5 = [ 𝑠𝑖𝑛(𝜃5 𝑑5 0 0 Khâu 𝑝𝑦 = 𝑠𝑖𝑛(𝜃1 ) × (𝑎3 × 𝑐𝑜𝑠(𝜃23 ) + 𝑎2 𝑐𝑜𝑠(𝜃2 ) + 𝑑5 𝑠𝑖𝑛(𝜃234 )) 𝑝𝑧 = 𝑑1 + 𝑎3 × 𝑠𝑖𝑛(𝜃23 ) + 𝑎2 × 𝑠𝑖𝑛(𝜃2 ) − 𝑑5 × 𝑐𝑜𝑠(𝜃234 ) ) 𝑛𝑥 = 𝑐𝑜𝑠(𝜃234 × 𝑐𝑜𝑠(𝜃1 ) × 𝑐𝑜𝑠(𝜃5 ) − 𝑠𝑖𝑛(𝜃1 ) × 𝑠𝑖𝑛(𝜃5 ) 𝑛𝑦 = 𝑐𝑜𝑠(𝜃234 ) × 𝑐𝑜𝑠(𝜃5 ) × 𝑠𝑖𝑛(𝜃1 ) − 𝑐𝑜𝑠(𝜃1 ) × 𝑠𝑖𝑛(𝜃5 ) 𝑛𝑧 = 𝑠𝑖𝑛(𝜃234 ) × 𝑐𝑜𝑠(𝜃5 ) 𝑜𝑥 = 𝑐𝑜𝑠(𝜃5 ) × 𝑠𝑖𝑛(𝜃1 ) − 𝑐𝑜𝑠(𝜃234 ) × 𝑐𝑜𝑠(𝜃1 ) × 𝑠𝑖𝑛(𝜃5 ) 𝑜𝑦 = −𝑐𝑜𝑠(𝜃1 ) × 𝑐𝑜𝑠(𝜃5 ) − 𝑐𝑜𝑠(𝜃234 ) × 𝑠𝑖𝑛(𝜃1 ) × 𝑠𝑖𝑛(𝜃5 ) 𝑜𝑧 = −𝑠𝑖𝑛(𝜃234 ) × 𝑠𝑖𝑛(𝜃5 ) 𝑎𝑥 = 𝑠𝑖𝑛(𝜃234 ) × 𝑐𝑜𝑠(𝜃1 ) 𝑎𝑦 = 𝑠𝑖𝑛(𝜃234 ) × 𝑠𝑖𝑛(𝜃1 ) 𝑎𝑧 = −𝑐𝑜𝑠(𝜃234 ) Với 𝜃234 = 𝜃2 + 𝜃3 + 𝜃4 𝜃23 = 𝜃2 + 𝜃3 b) Bài tốn động học nghịch Hệ phương trình động học robot thiết lập: 𝑇5 = 𝐴1 × 𝐴2 × 𝐴3 × 𝐴4 × 𝐴5 𝐴1−1 × 𝑇5 = 11𝑇5 ∗ ∗ ∗ 𝑛1 ∗ ∗ ∗ 𝑛2 ∗ ∗ [∗ ∗ ∗ 𝑛 ] = [ ∗∗ ∗∗ 0 0 Trong đó: 𝑛1 = 𝑥 × 𝑐𝑜𝑠(𝜃1 ) + 𝑦 × 𝑠𝑖𝑛(𝜃1 ) 𝑛2 = 𝑧 − 𝑑1 𝑛3 = 𝑥 × 𝑠𝑖𝑛(𝜃1 ) − 𝑦 × 𝑐𝑜𝑠(𝜃1 ) 𝑚1 = 𝑎3 × 𝑐𝑜𝑠(𝜃23 ) + 𝑎2 × 𝑐𝑜𝑠(𝜃2 ) + 𝑑5 × 𝑠𝑖𝑛(𝜃234 ) 𝑚2 = 𝑎3 × 𝑠𝑖𝑛(𝜃23 ) + 𝑎2 × 𝑠𝑖𝑛(𝜃2 ) − 𝑑5 × 𝑐𝑜𝑠(𝜃234 ) 𝑚3 = Khi biết vị trí robot cần đến hay biết x, y, z, 𝑎𝑥 , 𝑎𝑦 , 𝑎𝑧 ta tìm góc xoay (trong 𝑎𝑥 , 𝑎𝑦 , 𝑎𝑧 vecto mà theo bàn kẹp tiếp cận đến đối tượng chiếu trục x,y,z) + tính 𝜃1 : 𝑛3 = 𝑚3 𝑥 × 𝑠𝑖𝑛(𝜃1 ) − 𝑦 × 𝑐𝑜𝑠(𝜃1 ) = 𝑜𝑥 𝑜𝑦 𝑜𝑧 𝑎𝑥 𝑎𝑦 𝑎𝑧 𝑝𝑥 𝑝𝑦 ] = 𝐴1 ∗ 𝐴2 ∗ 𝐴3 ∗ 𝐴4 ∗ 𝐴5 𝑝𝑧 Cân phần tử ma trận vế ta hệ phương trình sau: 𝑝𝑥 = 𝑐𝑜𝑠(𝜃1 ) × (𝑎3 × 𝑐𝑜𝑠(𝜃23 ) + 𝑎2 𝑐𝑜𝑠(𝜃2 ) + 𝑑5 𝑠𝑖𝑛(𝜃234 )) 𝑠𝑖𝑛(𝜃1 ) 𝑐𝑜𝑠(𝜃1 ) Ma trận tác động cuối 𝑛𝑥 𝑛𝑦 𝑇5 = [ 𝑛𝑧 ∗ 𝑚1 ∗ 𝑚2 ∗ 𝑚3 ] 𝜃234 = 𝑦 𝑥 𝜃1 = 𝑎𝑡𝑎𝑛2𝑑(𝑦, 𝑥) 𝜃234 = 𝜃2 + 𝜃3 + 𝜃4 = 𝑎𝑡𝑎𝑛2(−𝑎𝑥 × 𝑐𝑜𝑠(𝜃1 ) − 𝑎𝑦 × 𝑠𝑖𝑛(𝜃1 ), 𝑎𝑧) + tính 𝜃3 : 𝑛1 = 𝑚1 {𝑛 = 𝑚 2 Đặng Phước Vinh, Lê Đình Minh Nhật, Nguyễn Đặng Mẫn 𝑥 × 𝑐𝑜𝑠(𝜃1 ) + 𝑦 × 𝑠𝑖𝑛(𝜃1 ) = 𝑎3 × 𝑐𝑜𝑠(𝜃23 ) + 𝑎2 × 𝑐𝑜𝑠(𝜃2 ) + 𝑑5 × 𝑠𝑖𝑛(𝜃234 ) 𝑧 − 𝑑1 = { 𝑎3 × 𝑠𝑖𝑛(𝜃23 ) + 𝑎2 × 𝑠𝑖𝑛(𝜃2 ) − 𝑑5 × 𝑐𝑜𝑠(𝜃234 ) 𝑥 × 𝑐𝑜𝑠(𝜃1 ) + 𝑦 × 𝑠𝑖𝑛(𝜃1 ) − 𝑑5 × 𝑠𝑖𝑛(𝜃234 ) = 𝑎3 × 𝑐𝑜𝑠(𝜃23 ) + 𝑎2 × 𝑐𝑜𝑠(𝜃2 ) 𝑧 − 𝑑1 + 𝑑5 × 𝑐𝑜𝑠(𝜃234 ) = { 𝑎3 × 𝑠𝑖𝑛(𝜃23 ) + 𝑎2 × 𝑠𝑖𝑛(𝜃2 ) Tại khâu 1, toàn cánh tay robot đặt lên ổ bi dùng truyền động đai để điều chỉnh góc xoay khâu Trên ổ bi, nhóm tác giả đặt động bước trọng tâm ổ bi nhằm giảm thiểu rung lắc quay lệch tâm gây Để giảm mơmen cho khâu 3, nhóm dời trục động bước số xuống thấp có thể, khâu cịn lại, nhóm định sử dụng động servo Ta đặt: 𝑛𝑥 = 𝑥 × 𝑐𝑜𝑠(𝜃1 ) + 𝑦 × 𝑠𝑖𝑛(𝜃1 ) − 𝑑5 × 𝑠𝑖𝑛(𝜃234 ) { 𝑛𝑦 = 𝑧 − 𝑑1 + 𝑑5 × 𝑐𝑜𝑠(𝜃234 ) 𝑛𝑥 = 𝑎3 × 𝑐𝑜𝑠(𝜃23 ) + 𝑎2 × 𝑐𝑜𝑠(𝜃2 ) { 𝑛𝑦 = 𝑎3 × 𝑠𝑖𝑛(𝜃23 ) + 𝑎2 × 𝑠𝑖𝑛(𝜃2 ) 𝑛𝑥 + 𝑛𝑦 = (𝑎3 × 𝑐𝑜𝑠(𝜃23 ) + 𝑎2 × 𝑐𝑜𝑠(𝜃2 ))2 + (𝑎3 × 𝑠𝑖𝑛(𝜃23 ) + 𝑎2 × 𝑠𝑖𝑛(𝜃2 ))2 𝑐𝑜𝑠(𝜃3 ) = 𝑛𝑥 +𝑛𝑦 −𝑎3 −𝑎2 2×𝑎3 ×𝑎2 𝑠𝑖𝑛(𝜃3 ) = −√1 − 𝑐𝑜𝑠(𝜃3 )2 𝜃3 = 𝑎𝑡𝑎𝑛2(𝑠𝑖𝑛(𝜃3 ), 𝑐𝑜𝑠(𝜃3 )) +Tính 𝜃2 : 𝑛𝑥 = 𝑎3 × 𝑐𝑜𝑠(𝜃23 ) + 𝑎2 × 𝑐𝑜𝑠(𝜃2 ) Ta có: { 𝑛𝑦 = 𝑎3 × 𝑠𝑖𝑛(𝜃23 ) + 𝑎2 × 𝑠𝑖𝑛(𝜃2 ) 𝑛𝑥 = 𝑎3 × (𝑐𝑜𝑠(𝜃2 ) × 𝑐𝑜𝑠(𝜃3 ) − 𝑠𝑖𝑛(𝜃2 ) × 𝑠𝑖𝑛(𝜃3 ) + 𝑎2 × 𝑐𝑜𝑠(𝜃2 )) 𝑛𝑦 = 𝑎3 × (𝑐𝑜𝑠(𝜃2 ) × 𝑠𝑖𝑛(𝜃3 ) − 𝑠𝑖𝑛(𝜃2 ) × 𝑐𝑜𝑠(𝜃3 ) + 𝑎2 × 𝑠𝑖𝑛(𝜃2 )) { { 𝑐𝑜𝑠(𝜃2 ) = 𝑠𝑖𝑛(𝜃2 ) = 𝑛𝑥 +𝑎3 ×𝑠𝑖𝑛(𝜃2 )×𝑠𝑖𝑛(𝜃3 ) 𝑎3 ×𝑐𝑜𝑠(𝜃3 )+𝑎2 𝑛𝑦−𝑎3 ×𝑐𝑜𝑠(𝜃2 )×𝑠𝑖𝑛(𝜃3 ) (1) (2) 𝑎3 ×𝑐𝑜𝑠(𝜃3 )+𝑎2 Hình 5: Sơ đồ động học Ta thay (2) vào (1) rút gọn ta được: 𝑐𝑜𝑠(𝜃2 ) 𝑛𝑥 × (𝑎3 × 𝑐𝑜𝑠(𝜃3 ) + 𝑎2 ) + 𝑎3 × 𝑠𝑖𝑛(𝜃3 ) × 𝑛𝑦 = (𝑎3 × 𝑐𝑜𝑠(𝜃3 ) + 𝑎2 )2 + (𝑎3 × 𝑠𝑖𝑛(𝜃3 ))2 Tương tự thay (1) vào (2) ta được: 𝑠𝑖𝑛(𝜃2 ) 𝑛𝑦 × (𝑎3 × 𝑐𝑜𝑠(𝜃3 ) + 𝑎2 ) − 𝑎3 × 𝑠𝑖𝑛(𝜃3 ) × 𝑛𝑥 = (𝑎3 × 𝑐𝑜𝑠(𝜃3 ) + 𝑎2 )2 + (𝑎3 × 𝑠𝑖𝑛(𝜃3 ))2 𝜃2 = 𝑎𝑡𝑎𝑛2(𝑠𝑖𝑛(𝜃2 ), 𝑐𝑜𝑠(𝜃2 )) + Tính 𝜃4 : 𝜃4 = 𝜃234 − 𝜃3 − 𝜃2 2.4 Sơ đồ động học Sau tính tốn khâu cho cánh tay robot, nhóm lựa chọn động cơ, truyền nhằm tối ưu hóa mơmen động tạo (Hình 5) 2.5 Tính tốn lực cho khâu - Robot với cấu hình bậc tự do, bao gồm: khớp xoay, khớp giúp cánh xoay - Tay xoay sang hai bên, tiếp khớp xoay giúp cánh tay gập lên xuống để nâng hạ vật, cuối khớp giúp định vị vật xác tay kẹp dùng để gắp vật Sau xem xét tính chọn cấu phù hợp cho khâu 5, nhóm tính tốn khâu tính khối lượng khâu sau: Khối lượng khâu 2: 𝑚2 = 1800 𝑔 Khối lượng khâu 3: 𝑚3 = 520 𝑔 Khối lượng khâu 4: 𝑚4 = 155 𝑔 Khối lượng khâu 5: 𝑚5 = 109 𝑔 a) Tính mơmen tĩnh tác dụng lên khâu 2: Chọn vị trí nguy hiểm khâu 2, 3, 4, duỗi thẳng vị trí nằm ngang (Hình 6), lúc mômen tĩnh trọng trường gây lớn nhất: Cánh tay robot bậc tự ứng dụng xử lý ảnh để phân loại sản phẩm Điều khiển xử lý Hình 6: Sơ đồ tải trọng robot chịu trọng lượng lớn Trong đó: 𝑃𝑣 trọng lượng vật nâng 𝑃𝑣 = 0,2 × 9,8 = 1,96 𝑁 𝑃2 , 𝑃3 , 𝑃4 , 𝑃5 trọng lượng khâu 2, 3, 4, 𝑃2 = × 9,8 = 9,8 N 𝑃3 = 0,47 × 9,8 = 4,606 N 𝑃4 = 0,155 × 9,8 = 1,519 N 𝑃5 = 0,109 × 9,8 = 1,068 N b) Tổng mômen tĩnh trọng lực gây trục 𝑂1 : 𝑀𝑡2 = 𝑃2 × 0,111 + 𝑃3 × 0,316 + 𝑃4 × 0,451 + 𝑃5 × 0,555 + 𝑃𝑣 × 0,6 = 6,115 𝑁𝑚 Ngoài làm việc từ trạng thái ban đầu đứng yên, lực quán tính sinh kết hợp với tải trọng tĩnh gây lực cản lớn đặt lên trục khớp Ở ta bỏ qua ma sát Bản vẽ 3D hình ảnh thực tế cánh tay robot bậc tự thể Hình Hệ thống điều khiển kết hợp chip vi điều khiển máy tính thơng qua truyền thơng nối tiếp RS232 [5] 3.1 Điều khiển cấu Hệ thống gồm phần: - Khối điều khiển: Sử dụng vi điều khiển Arduino, thực chức tiếp nhận thông tin từ máy tính tạo tín hiệu điều khiển truyền tới driver để điều khiển cấu chấp hành - Khối xử lý trung tâm: hệ thống máy tính để thực chức xử lý ảnh thu từ khối camera xử lý hình ảnh đóng gói thơng tin tương ứng để truyền khối điều khiển - Khối Camera: Sử dụng camera Logitech C270 có độ phân giải 720p, có chức thu thập hình ảnh xung quanh cho robot - Khối cấu chấp hành: Cánh tay robot bậc chuyển động để vươn tới vị trí xác định thơng qua hệ động cơ, thực động tác gắp, thả vật thể theo điều khiển khối điều khiển - Khối nguồn: Sử dụng nguồn 24VDC – 20A giảm áp LM2596 để đạt điện áp 7V cung cấp nguồn cho hoạt động robot khối điều khiển Quá trình điều khiển biểu diễn dạng lưu đồ thuật tốn Hình Hình 7: Bản vẽ 3D cánh tay robot Hình 8: Hình ảnh thực tế cánh tay robot Hình 9: Lưu đồ thuật toán điều khiển cánh tay robot Đặng Phước Vinh, Lê Đình Minh Nhật, Nguyễn Đặng Mẫn 3.2 Xử lý hình ảnh Tác giả sử dụng thư viện OpenCV phiên 3.4.1 để thực việc nhân diện phân loại dựa đặc tính có sẵn vật thể Đầu tiên, ảnh máy ảnh ghi lại theo định dạng màu RGB (Hình 10) arduino bắt đầu phân tách thơng tin từ máy tính bắt đầu trình phân loại vật thể theo chương trình viết sẵn Tốc độ lúc rơi khoảng trung bình 10 giây cho hành động tương tác với vật thể Nếu sau khoảng thời gian mà hệ thống khơng nhận tín hiệu từ máy tính, tồn hệ thống vị trí ban đầu đợi lệnh từ máy tính Quy trình mơ tả sơ đồ khối Hình 13 Hình 10: Ảnh RGB Sau đó, qua phép tốn lọc nhiễu, phép tốn hình thái học (dãn nở điểm, lọc gauss, khép kín biên dạng) lọc màu nhằm tạo ảnh nhị phân tương ứng với loại màu (Hình 11) Nhóm dùng hàm Inrange thư viện OpenCV 3.4.1 để lọc màu tạo ảnh nhị phân Ưu điểm phương pháp vùng nhận diện lớn tránh yếu tố mơi trường ánh sáng Hình 12: Lưu đồ thuật tốn xử lý ảnh Hình 11: Ảnh nhị phân Khi bước xác định màu sắc kết thúc, toàn ảnh nhị phân xử lý nhằm xác định tâm, hình dạng vật thể góc lệch (góc tạo cạnh đường biên ảnh) Cuối cùng, thông số vật thể màu sắc, hình dạng, tọa độ góc lệch lưu vào chuỗi sẵn sàng gửi Quy trình xử lý mơ tả lưu đồ thuật tốn Hình 12 3.3 Phân loại vật thể Sau bước lọc ảnh, phân loại, tìm đặc tính vật thể máy tính xử lý xong Các thơng số truyền đến chip vi điều khiển Arduino thông qua giao tiếp nối tiếp RS232 [5] Sau nhận tín hiệu, Hình 13: Lưu đồ thuật tốn phân loại vật thể Cánh tay robot bậc tự ứng dụng xử lý ảnh để phân loại sản phẩm Giao diện điều khiển Giao diện điều khiển nhóm tác giả tạo phần mềm Visual Studio với ngơn ngữ C# (xem Hình 14) Bảng điểu khiển giúp cho người sử dụng thao tác dễ dàng với hệ thống nhờ nút bấm Bên cạnh người sử dụng thay đổi thông số đầu vào để giúp hệ thống đáp ứng với tác động tác nhân bên ngồi đặc biệt ánh sáng Hình 14: Giao diện điều khiển viết tảng C# Kết luận Hệ thống hoạt động ổn định việc nhận diện phân loại vật thể theo màu sắc hình dạng mong muốn với độ xác cao Việc kết nối camera, phần mềm Visual Studio vi điều khiển thực tốt Nhóm tác giả tạo giao diện điều khiển để giúp người sử dụng trực tiếp tương tác với hệ thống cách tốt Bên cạnh đó, hệ thống chế tạo với chi phí thấp 40% giá thành so với mẫu loại với tính Với giá thành thấp, độ xác cao dễ dùng, hệ thống công cụ hỗ trợ đắc lực cho sinh viên ngành việc thực hành mơn học có liên quan đến hệ thống tay máy robot Bên cạnh kết đạt được, hệ thống số nhược điểm định Đa số chi tiết làm nhựa PLA nên tuổi thọ hệ thống không cao so với hệ thống loại với cấu tạo từ hợp kim Thêm vào đó, tốc độ hệ thống chưa cao, chưa đáp ứng nhiệm vụ với yêu cầu tốc độ xử lý nhanh khoản thời gian vài giây Trong thời gian tới, nhóm tiếp tục phát triển hệ thống cụ thể nâng cao tốc độ hoạt động tay máy, tính tốn nâng cao phương trình động học hệ thống Tài liệu tham khảo [1] V.B.Raskar, N Hargude, S Vishwanath, K Chavan, Practical applications of robotic hand using image processing International Journal of Advanced Research in Computer Engineering & Technology (IJARCET), Vol Issue 3, 2015 [2] Bhumeshwari Basule1 , Shubhangi Borkar, A Review: Robotic Four Finger ARM Controlling using Image Processing, International Journal of Engineering Science and Computing, Vol 7, No.7, 2017 [3] M Dragusu, A Mihalache, R Solea, Practical applications for robotic arms using image processing, 16th International Conference on System Theory, Control and Computing (ICSTCC), 2012 [4] Nguyễn Thiện Phúc, Giáo trình robot cơng nghiệp, Nhà xuất Giáo Dục, 2009 [5] Đặng Phước Vinh, Võ Như Thành, Giáo trình kỹ thuật vi điều khiển PIC, Nhà xuất Xây Dựng, 2019 ... trường gây lớn nhất: Cánh tay robot bậc tự ứng dụng xử lý ảnh để phân loại sản phẩm Điều khiển xử lý Hình 6: Sơ đồ tải trọng robot chịu trọng lượng lớn Trong đó: