BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ, CHẾ TẠO VÀ ĐIỀU KHIỂN CÁNH TAY ROBOT CÔNG NGHIỆP DẠNG CƠ CẤU HÌNH BÌNH HÀNH NGÀNH KỸ THUẬT CƠ ĐIỆN TỬ GIẢNG VIÊN HƯỚNG DẪN TS Ngô Hà Quang Thịnh Sinh viên thực hiện MSSV Lớp Trần Chí Tài 1711030265 17DCTA2 Trần Minh Thành 1711030135 17DCTA2 Đường Minh Triết 1711030292 17DCTA2 Tp Hồ Chí Minh, tháng 92021 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HỒ CHÍ MINH ĐỒ ÁN TỐT NGHIỆP THIẾT KẾ, CHẾ TẠO VÀ ĐIỀ.
Phương án thiết kế
Thiết kế cơ khí
Cánh tay robot cần có độ cứng vững và động lực học tốt, đồng thời kích thước nhỏ gọn Hiện nay, có hai cơ cấu tay máy toàn khớp bản lề phổ biến dựa trên cách sắp đặt động cơ.
Cơ cấu truyền động hệ hở:
Robot serial có cấu trúc với các động cơ được lắp đặt tại các điểm nối giữa các khớp, hình thành một chuỗi động hở Đặc điểm này mang lại cho robot tính linh động cao và động lực học đơn giản, giúp cải thiện hiệu suất hoạt động.
Nhược điểm của thiết kế này là độ cứng vững không cao khi thiếu cơ cấu đỡ lực, cùng với việc các động cơ phía sau được bố trí xa trọng tâm, điều này dẫn đến việc tăng moment tác động lên các khớp.
Cơ cấu hình bình hành hệ kín:
Hình 2.2: Mô hình cơ cấu hình bình hành
Tay máy toàn khớp bản lề hình bình hành được cải tiến bằng cách thêm hai hình bình hành ở khâu 1 và khâu 2, giúp giữ hướng xoay của khâu cuối song song với mặt đất và tăng cường độ cứng vững Thiết kế này cho phép lực được phân chia hợp lý, làm cho tay máy trở nên lý tưởng cho việc di chuyển các vật nặng với tốc độ cao Các động cơ được tập trung vào một khâu, và một cơ cấu hình bình hành được thêm vào để dẫn động từ động cơ số 3 lên khâu 3 Nhờ đó, tay máy có độ cứng vững tốt, khâu 2 và khâu 3 nhẹ hơn, đồng thời hoạt động với tốc độ cao hơn.
Nhược điểm của hệ thống này là tính động lực học phức tạp do nó là một hệ kín, điều này trở thành yếu tố quan trọng trong luận án Hệ thống này cũng gặp hạn chế khi phát triển lên robot 6 bậc, dẫn đến tính linh hoạt không đạt bằng cánh tay truyền thống.
Cơ cấu hình bình hành được cải tiến thành robot palletizing, như robot ABB IRB 460, nhằm tối ưu hóa độ cứng vững và duy trì hướng của khâu cuối, từ đó giúp tiết kiệm chi phí cho các bộ phận công.
Robot ABB IRB 460, như được thể hiện trong sơ đồ nguyên lý, là một thiết bị lý tưởng cho các ứng dụng không yêu cầu độ linh hoạt cao, chẳng hạn như gắp vật, hàn mạch và khâu vá.
Sơ đồ nguyên lý của cơ cấu robot palletizing được chọn lựa vì độ cứng vững cao, khả năng giảm thiểu mô men cần cung cấp và tốc độ hoạt động nhanh Cơ cấu này rất phù hợp cho ứng dụng văn phòng và dễ dàng trong việc lựa chọn động cơ.
Cơ cấu định hướng của tay máy:
Cơ cấu định hướng của khâu cuối tay máy được thiết kế song song với mặt đất và cố định, nhằm tối giản hoạt động của tay máy và đáp ứng mục tiêu sử dụng tay máy cơ cấu hình bình hành Để tối ưu hóa quy trình, chúng tôi đã kết nối tool với hệ thống hút chân không cho khâu cuối.
Thiết kế hệ thống điện
• Kết cấu nhỏ gọn, có bán nhiều trên thị trường
• Tối ưu về năng lượng
• Thích hợp hoạt động trong văn phòng
• Trong các nguồn truyền động là thủy lực, khí nén và điện cơ thì truyền động điện cơ là phù hợp với mục tiêu đặt ra nhất
• Có 2 loại động cơ thường kể đến trong công nghiệp đó là động cơ DC servo, động cơ bước: Động cơ bước: Ưu điểm:
• Độ chính xác cao nếu moment tải nằm trong giới hạn cho phép của động cơ
• Điều khiển đơn giản khi động cơ bước thực hiện quay qua các bước góc của động cơ, không cần dùng giải thuật điều khiển phức tạp
• Hiệu suất không cao (tầm 50-60%)
Quá trình kiểm tra độ chính xác trong điều khiển động cơ DC servo gặp khó khăn do không có phản hồi, đặc biệt khi hiện tượng trượt xung xảy ra Tuy nhiên, động cơ DC servo vẫn có nhiều ưu điểm nổi bật.
• Có tín hiệu hồi tiếp từ encoder phục vụ cho luật điều khiển
• Đường đặc tuyến giữa moment và tốc độ là tuyến tính
• Moment cấp hoạt động từ vị trí dừng lớn
• Thường xuyên bảo trì chổi than để đảm bảo động cơ hoạt động tốt
• Độ chính xác phụ thuộc vào encoder và bộ điều khiển
Động cơ DC servo được lựa chọn cho luận văn này nhờ vào ưu điểm tối ưu về moment so với động cơ bước, cùng với giá thành hợp lý.
Truyền động qua bộ trung gian:
Bộ truyền bánh răng: Ưu điểm:
• Tỷ số truyền không thay đổi do không có hiện tượng trượt trơn
• Hiệu suất truyền cao, có thể đạt 0,97 ÷ 0,99
• Tuổi thọ cao, làm việc với độ tin cậy cao
• Kết cấu trở nên cồng kềnh và nặng nề khi khoảng cách hai trục truyền lớn
• Cần có phương pháp bôi trơn, che chắn
Bộ truyền xích: Ưu điểm:
• Chủ động trong việc bố trí khoảng cách 2 trục
• Ồn khi các mắt xích và bánh xích vào ra khớp
• Cần phải có giả pháp bôi trơn che chắn
Bộ truyền đai răng: Ưu điểm:
• Kích thước bộ truyền nhỏ gọn, dễ bố trí, và tìm mua
• Hiện tượng trượt đai do quán tính
• Cần phải có giải pháp căng đai
Vì yêu cầu thiết kế nhỏ gọn, truyền động trực tiếp được lựa chọn khi động cơ thường được bán sẵn kèm hộp số hành tinh.
Cảm biến
Yêu cầu: Cảm biến có khả năng nhận biết vị trí của vật cần thao thác với vị trí khâu cuối của tay máy robot
Với mục tiêu đề ra cho đề tài ta chọn camera là cảm biến định hướng cho tay máy robot.
Thiết kế bộ điều khiển
Có hai phương án phổ biến để lựa chọn cho thiết bị điều khiển của hệ thống
Vi điều khiển là một hệ thống bao gồm vi xử lý hiệu suất đủ dùng và giá thành thấp, kết hợp với các khối ngoại vi như bộ nhớ, mô đun I/O, ADC và DAC, nhằm điều khiển các thiết bị điện tử Với kích thước nhỏ gọn và chi phí thấp, vi điều khiển rất phù hợp cho các mạch điện tử và hệ thống nhúng Tuy nhiên, nhược điểm của vi điều khiển là độ tin cậy trong công nghiệp thấp và hoạt động với điện áp thấp.
PLC là thiết bị điều khiển lập trình linh hoạt, cho phép thực hiện các thuật toán điều khiển logic thông qua ngôn ngữ lập trình Nó hoạt động bằng cách quét trạng thái đầu vào và đầu ra, với khả năng thay đổi đầu ra theo sự thay đổi của đầu vào PLC nổi bật với độ tin cậy cao, hỗ trợ nhiều chuẩn giao tiếp công nghiệp và có dung lượng bộ nhớ lớn, giúp lập trình dễ dàng Tuy nhiên, nhược điểm lớn nhất của PLC là giá thành tương đối cao, khiến nó thường được sử dụng trong các ứng dụng công nghiệp thay vì các dự án nhỏ lẻ.
Với kích thước nhỏ gọn của tay máy, vi điều khiển được lựa chọn là thiết bị điều khiển cho hệ thống trong luận văn.
Cấu trúc điều khiển
Có 2 loại điều khiển là điều khiển tập trung và cấu trúc điều khiển phân cấp Điều khiển tập trung:
Cấu trúc điều khiển trung tâm là hệ thống đảm nhận toàn bộ các tính toán, nhận tín hiệu phản hồi, xuất tín hiệu cho cơ cấu chấp hành và giao tiếp với máy tính Ưu điểm của hệ thống này là khả năng quản lý và điều phối hiệu quả các hoạt động, giúp tối ưu hóa quy trình vận hành.
• Khối lượng lập trình và đi dây được giảm tải khi giao tiếp truyền thông giữa các bộ xử lí được giảm tải
• Bộ điều khiển đơn giản, dễ xử lí
• Dễ kiểm tra khi có lỗi xảy ra, dễ quản lí
• Đòi hỏi bộ xử lí trung tâm mạnh
• Đòi hỏi bộ xử lí tập trung nhiều chức năng để sử dung dẫn đến khó khăn trong lựa chọn Điều khiển phân cấp:
Là cấu trúc điều khiển gồm 1 bộ xử lí trung tâm và nhiều bộ xử lí nhỏ lẻ để thực hiện các tác khác nhau đồng thời Ưu điểm:
• Giảm thiểu tính toán cho bộ trung tâm
• Dễ dàng đáp ứng thời gian thực khi có nhiều bộ xử lí đồng thời
• Bộ xử lí slave không đòi hỏi quá mạnh
• Truyền thông giữa các vi điều khiển tương đối phức tạp
• Khó quản lí, phát hiện lỗi
• Đi dây rối rắm, bộ điều khiển cồng kềnh
Bộ điều khiển tập trung được lựa chọn trong luận văn này do tay máy có thiết kế 3 bậc tự do, mang lại sự đơn giản và dễ quản lý.
Luật điều khiển robot
Có nhiều luật điều khiển được áp dụng ở robot có 2 luật điều khiển đặc trưng: điều khiển PID, điều khiển moment Điều khiển PID:
Hình 2.4: Minh họa giải thuật PID (nguồn Internet)
PID là một bộ điều khiển kết hợp ba thành phần: tỉ lệ, tích phân và vi phân, giúp điều chỉnh sai số một cách tối ưu Với khả năng tăng tốc độ đáp ứng, giảm độ vọt lố và hạn chế dao động, PID mang lại hiệu suất điều khiển cao.
• Không cần phần cứng quá mạnh
• Giải thuật đơn giản và đã được ứng dụng rộng rãi trong một thời gian dài
• Đa dạng trong tùy chỉnh để cải thiện chất lượng điều khiển
• Phụ thuộc nhiều và mô hình toán của Plant để điều khiển chính xác ref Điều khiển moment:
Hình 2.5: Minh họa giải thuật điều khiển moment (nguồn Internet)
Giải thuật điều khiển moment dựa vào phương trình động lực học để tính ra moment cần thiết ở các khớp Ưu điểm:
• Giải thuật giúp robot đạt được tốc độ cao
• Khối lượng tính toán lớn và đòi hỏi phải đáp ứng nhanh trong quá trình vận hành robot
• Yêu cầu thiết kế về phần cứng cao
Vì giới hạn robot đòi hỏi tốc độ không cao nên giải thuật PID được lựa chọn trong luận văn nay.
Lựa chọn phương pháp thu nhận tín hiệu camera cho Visual servoing
Để điều khiển robot bằng phương pháp visual servoing, cần phân tích vị trí và chiều sâu của vật thể từ hình ảnh thu được từ camera.
Để xác định vị trí của vật trên hình ảnh, phương pháp phân loại vùng dựa trên màu sắc (Feature extraction region) là lựa chọn hiệu quả.
Feature extraction region sẽ cho ta biết các đặc điểm về màu sắc, hình dạng, trọng tâm, hướng của vật hay đặc điểm được phân tính trong ảnh
Để xác định chiều sâu của vật trong hình ảnh, chúng ta sử dụng phương pháp so sánh sự khác biệt giữa hình ảnh ở hai điểm nhìn, hay còn gọi là độ chênh lệch hình ảnh hai mắt (Binocular disparity), nhằm đo khoảng cách từ vật đến camera.
Với camera stereo, chúng ta có khả năng thu thập hình ảnh của một vật từ hai điểm nhìn khác nhau Nhờ vào đó, chúng ta có thể xác định khoảng cách của vật cần đo đến camera được lắp đặt ở vị trí cuối cùng.
Tổng kết lựa chọn
Bảng 2.1: Phương án lựa chọn
BẢNG LỰA CHỌN PHƯƠNG ÁN
Kết cấu tay máy Dạng hình bình hành palletizing
Truyền động Động cơ DC servo
Cơ cấu truyền động Truyền động trực tiếp
Cảm biến HOME Công tắc hành trình
Thiết bị điều khiển Vi điều khiển
Kiểu điều khiển Điều khiển tập trung
Thông số cho Visual servoing Nhận diện màu sắc kết hợp stereo camera
Mô hình hóa động học
Động học thuận
Phân tích động học thuận là quá trình xác định mối quan hệ toán học giữa vị trí và hướng của tay máy, dựa trên các giá trị đã biết của các khớp góc.
Hình 3.1: Sơ đồ nguyên lý động học thuận của rbot
• Từ sơ đồ ta có ta thiết lập như sau:
Ma trận chuyển đổi từ khâu i về khâu i-1:
Từ đó ta có ma trận chuyển đổi lần lượt từ các hệ tọa độ từ 0 đến 4:
Hệ tọa độ khâu 4 chuyển về tọa độ gốc: (2), (3), (4), (5)
Ta có tọa độ điểm cuối của tay máy trong hệ tọa độ gốc là: Đặt:
Ta có vận tốc khâu cuối liên hệ với vận tốc các khớp thông qua biểu thức: v = ṗ = J 𝜃̇ => 𝜃̇ = J −1 v (9)
Với: v là vận tốc của vị trí khâu cuối theo x,y,z
Công thức (9) sẽ được sử dụng để mô phỏng tính toán vận tốc các khớp khi khâu cuối di chuyển.
Động học nghịch
Bài toán phân tích động học ngược nhằm xác định giá trị các biến khớp khi đã biết vị trí và hướng của công cụ Trong luận văn này, robot palletizing giữ hướng khâu cuối, do đó việc tính toán trở nên đơn giản hơn so với các loại robot cần điều khiển hướng khâu cuối như robot 6 bậc tự do Phương pháp giải hình học được áp dụng để tìm các góc quay tại các khớp, nhằm đạt được giá trị điểm D mong muốn.
Hình 3.2: Sơ đồ tính toán động học nghịch theo hình chiếu đứng
Hình 3.3: Sơ đồ tính toán động học nghịch theo hình chiếu bằng
Dựa theo hình 3.2 và hình 3.3, Với tọa độ điểm mong muốn D là [𝑥 𝐷 ,𝑦 𝐷 ,𝑧 𝐷 ]:
• Áp dụng định lý cosin và pytago trong tam giác ACG:
• Áp dụng định luật cosin trong tam giác ABC:
Từ (11), (14) ta tính được góc θ2 của khớp 2: θ2=𝐵𝐴𝐶̂+𝐶𝐴𝐺̂= 𝑎𝑟𝑐𝑡𝑎𝑛 ( 𝑧 𝐷 −𝑑
2.𝐿 2 √(𝑋 𝐷 −𝐿 4 ) 2 +(𝑍 𝐷 −𝑑) 2 ) (15) Áp dụng định luật cosin trong tam giác ABC:
Ta có góc θ3 của khớp 3: θ30 0 − 𝐴𝐵𝐶̂ 0 0 −arcos( 𝐿 2 2 +𝐿 3 2 −(𝑋 𝐷 −𝐿 4 ) 2 −(𝑍 𝐷 −𝑑) 2
Dựa vào hình 3.3, Ta có góc quay θ1 của khớp 1 là : θ1=𝑎𝑟𝑐𝑡𝑎𝑛 ( 𝑦𝑑
Kết luận động học ngược của robot, mối liên hệ giữa tọa độ mong muốn
D [xd, yd, zd] và các khớp quay là: θ1= 𝑎𝑟𝑐𝑡𝑎𝑛 ( 𝑦𝑑
Moment của tay máy
Do cấu trúc tay máy palletizing phức tạp, tầm với tối đa bị giới hạn ở góc θ2 là 10 độ, trong khi θ3 được xác định là θ2 cộng thêm 5 độ, tức là 15 độ Sản phẩm được phát triển trong luận văn này vẫn đang ở giai đoạn thử nghiệm nhằm nghiên cứu thuật toán, với yêu cầu về tốc độ không quá cao.
Dựa theo datasheet của robot ABB IBR 460 ta có yêu cầu kỹ thuật của momen các khớp: ζ1max = 8,8875 Nm ζ2max = 3,5147 Nm ζ3max = 2,1213 Nm
Moment khớp 1 và 3 đạt tối đa khi gia tốc từ vị trí tĩnh đến chuyển động Khớp
2 đạt moment tối đa khi cả 3 khớp đang di chuyển và khớp 1,3 giảm tốc, khớp 2 tăng tốc.
Thiết kế cơ khí
Thiết kế 2D
Hình 4.1: Sơ đồ sơ lược và các vị trí tọa độ của robot
Hình 4.2: Sơ đồ tham số cần thiết của robot
Thông số thiết kế
Vùng làm việc của tay máy được xác định bởi hai thông số chính là L2 và L3 Để đạt được tầm với lý tưởng là 475 mm, công thức tổng quát được sử dụng là L = L2 + L3 + L4 = 475 mm.
Theo tài liệu, tỷ số r tối ưu nằm trong khoảng 0,5 ÷ 0,6, với r = 𝐿2
Từ yêu cầu đề bài, chọn L2 = 250 mm , L3 = 230 mm , L4 = 25 mm , lúc đó tỉ số r = 0,52 nằm trong khoảng tối ưu cần thiết kế
Các giá trị tham số phụ như a1, a2, a3, β, γ không ảnh hưởng đến thiết kế vùng làm việc của robot, nhưng chúng rất quan trọng trong việc thiết kế hình bình hành để điều khiển các khâu 3 và 4 của robot Những giá trị này được lựa chọn để phù hợp với thiết kế nhỏ gọn của robot.
Bảng 4.1: Thông số kích thước và góc của các khâu d mm
L4 mm a1 mm a2 mm a3 mm β độ γ độ
Bảng 4.2: Thông số bản DH, để thiết kế
Việc duy trì hướng khâu cuối của robot palletizing được đảm bảo nhờ thiết kế hình bình hành OABC và FCGH OA được cố định với khâu 1 và tạo với phương nằm ngang một góc β Vì OABC là hình bình hành và OA cố định, hướng BC cũng sẽ cố định do BC song song với OA Trong tam giác ΔFCB, FC tạo với BC một góc γ, dẫn đến hướng cố định của FC và tam giác FCB Đối với khâu cuối GHIP, vì GHCF cũng là hình bình hành, FC song song với GH, do đó GH cũng có hướng cố định Điều này cho thấy toàn bộ khâu cuối GHIP sẽ có hướng cố định tùy thuộc vào góc thiết lập Trong luận văn này, chúng tôi muốn IH song song với mặt đất, do đó hình dạng thiết kế khâu cuối sẽ là tam giác với IH tạo với GH một góc α = 180 − (β + γ) 40°.
Hình 4.3: Minh họa sơ đồ các góc của robot
Lựa chọn vật liệu cho robot
Cánh tay robot cần được thiết kế nhẹ để đảm bảo tốc độ và quán tính, đồng thời phải có độ cứng vững để hoạt động lâu dài mà không bị hư hại Nhiều loại vật liệu như nhựa HPDE, sợi carbon fiber và gỗ đáp ứng các tiêu chí này với giá thành hợp lý Tuy nhiên, trong luận văn này, vật liệu nhôm sẽ được sử dụng cho cánh tay robot, vì nhôm có độ cứng vững theo khối lượng vượt trội hơn nhiều so với thép Ngoài ra, nhôm cũng dễ dàng gia công bằng các phương pháp truyền thống như tiện, phay và CNC Hợp kim nhôm 6061 sẽ được áp dụng trong nghiên cứu này.
Hầu hết các bộ phận của cánh tay robot được chế tạo từ hợp kim nhôm 6061, một loại hợp kim nhôm cứng kết tủa chứa magiê và silicon Hợp kim này nổi bật với tính chất cơ học tốt, khả năng hàn vượt trội và được ưa chuộng chỉ sau hợp kim nhôm 6063.
Bảng 4.3: Tính chất vật lý của nhôm 6061
Giời hạn bền 310 (MPa) Độ cứng 95 (HB)
Mô đun đàn hồi 68,9 (GPa)
Bộ phận đế của robot đóng vai trò quan trọng trong việc chịu tải trọng toàn bộ hệ thống Để đảm bảo độ bền và tính ổn định, vật liệu được lựa chọn là thép AISI 304, nổi bật với độ cứng và trọng lượng nặng, có sẵn với nhiều kích thước trên thị trường Bên cạnh đó, các bộ phận mặt bích kết nối giữa các khâu và động cơ cũng được chế tạo từ thép AISI 304, nhờ vào khả năng chịu lực tốt từ trục động cơ.
Khối lượng của các khâu
Bảng 4.4: Chi tiết và khối của khâu 1
Khớp nối mặt bích 0.98 kg
Bảng 4.5: Chi tiết và khới lượng của khâu 2
2xChi tiết vai cánh tay 0.26 kg Đồ bảo vệ vai cánh tay 0.20 kg
Khớp tam giác 110 độ 0.02 kg Thanh nối khới tam giác 0.02 kg
Thanh nối với khâu 4 0.02 kg
Bảng 4.6: Chi tiết và khối lượng của khâu 3
2xChi tiết khuỷ tay 0.20 kg
Thanh nối khủy tay 0.02 kg
Bảng 4.7: Chi tiết và khối lượng của khâu 4
Khung xương đối diện 0.01 kg
• Tổng khối lượng của các chi tiết: 16.055 kg
Tải trọng, ứng suất tác động lên máy
Tải trọng tác động lên máy và các chi tiết máy bao gồm lực, momen và áp suất Đây là đại lượng vector, được xác định bởi các thông số như cường độ, phương, chiều, điểm đặt và đặc tính của tải trọng.
• Lực, được ký hiệu bằng chữ F, đơn vị đo là N , 1 N = 1 kg.m/s
• Momen uốn, ký hiệu là M, đơn vị đo là Nmm
• Momen xoắn, ký hiệu là T, đơn vị đo là Nmm
• Áp suất, ký hiệu là p, đơn vị đo là MPa, 1 MPa = 1 N/mm 2
Tải trọng không đổi, là tải trọng có phương, chiều, cường độ không thay đổi theo thời gian Sơ đồ của tải trọng không đổi biểu diễn trên Hình 4.5
Tải trọng thay đổi là loại tải trọng mà ít nhất một trong ba yếu tố: phương, chiều, hoặc cường độ, thay đổi theo thời gian Trong thực tế, khi tính toán chi tiết máy, loại tải trọng có cường độ thay đổi thường gặp Sơ đồ của tải trọng thay đổi được thể hiện trong Hình 4.6.
Hình 4.5: Tải trọng không thay đổi theo thởi gian
Ứng suất là lực tác động lên các phần tử của chi tiết máy khi chúng chịu tải trọng, được biểu thị dưới dạng vectơ với phương, chiều và cường độ Đơn vị đo ứng suất là MPa, trong đó 1 MPa tương đương với 1 N/mm².
Ứng suất được phân loại thành hai nhóm chính: ứng suất pháp (ký hiệu σ) và ứng suất tiếp (ký hiệu τ) Ứng suất pháp có phương trùng với phương pháp tuyến của phân tố tách ra từ chi tiết góc, trong khi ứng suất tiếp có phương trùng với mặt phẳng của phân tố tách ra từ chi tiết máy.
Ứng suất được chia thành hai loại chính: ứng suất không đổi và ứng suất thay đổi Ứng suất không đổi, hay còn gọi là ứng suất tĩnh, có phương, chiều và cường độ không thay đổi theo thời gian, như được thể hiện trong Hình 4.7 Ngược lại, ứng suất thay đổi có ít nhất một đại lượng (phương, chiều, cường độ) biến đổi theo thời gian, có thể là thay đổi ngẫu nhiên hoặc thay đổi theo chu kỳ Trong thiết kế chi tiết máy, loại ứng suất thay đổi thường gặp là ứng suất có chu kỳ tuần hoàn hoặc gần như tuần hoàn, được minh họa trong Hình 4.8.
Hình 4.7: Ứng suất không thay đổi theo thời gian
Hình 4.8: Ứng suất thay đổi theo thời gian
Phương trình ứng suất tổng quan: σ = F A
Trong đó: σ là ứng suất, F là lực và A diện tích bề mặt.
Mô phỏng ứng suất, chuyển vị
Sử dụng tải lớn nhất tại các khớp, tiến hành mô phỏng trong SolidWorks Simulation để tính toán ứng suất uốn và chuyển vị của các khâu, dựa trên độ bền uốn của vật liệu.
Dựa vào thông tin về vật liệu, trọng lượng và kích thước của các khâu (mục 4.3, 4.4), chúng ta có thể xác định tải trọng tương đương mà từng chi tiết có khả năng chịu đựng, tùy thuộc vào khối lượng của chúng.
Kết quả thí nghiệm mô phỏng nhằm xác định mức tải trọng mà các khâu của robot có thể chịu đựng khi giữ cố định một bậc tự do, dựa trên nguyên lý hoạt động của robot.
Mức tải trọng lý tưởng: bao gồm cân nặng của các chi tiết mà khâu phải chịu, lẫn khối lượng hàng mà Robot phải nâng đó là 500gram
Việc xác định ứng suất và chuyển vị lớn nhất là vì mục đích đảm bảo kết cấu làm việc trong giai đoạn đàn hồi
Giúp tối ưu hóa kết cấu các khâu nhằm phục vụ cho mục đích làm việc với năng suất cao nhất, hiệu quả nhất
Hoàn thiện hơn về nặt thẩm mỹ của Robot
Xác định được những rủi ro, hư hỏng trong tương lai
Hỗ trợ thêm có việc tính toán tuổi thọ của của Robot
Hình 4.9: Mô phỏng phân tích ứng suất khâu 2
Hình 4.10: Mô phỏng sự chuyển vị khâu 2:
• Sau khi mô phỏng phân tích khâu 2, ta có kết quả:
Hình ảnh mô phỏng cho thấy đám mây ứng suất trong hình 4.10 đang gặp phải sự phá hủy nhỏ tại điểm cực đại 5.530e MPA, vượt quá mức cho phép của vật liệu là 3.100e +02 MPA, dẫn đến hiện tượng uốn cong Hiện tượng này chỉ xảy ra khi khâu phải chịu tải, trong khi khâu 2, với chức năng chuyển động liên tục, sẽ không gặp phải sự phá hủy và biến dạng ngay lập tức Tuy nhiên, theo thời gian làm việc lâu dài, hiện tượng phá hủy có thể xảy ra.
Hình 4.11 cho thấy đám mây chuyển vị đang di chuyển từ vị trí đám mây xanh sang đám mây cam, theo hướng từ dưới lên trên Điều này mô phỏng lực tác động theo phương ngang, trong khi vật được giữ cố định theo phương thẳng Chuyển vị xảy ra tại những nơi có lực tác dụng, với giá trị chuyển vị lớn nhất đạt 3.27e+01 MPA, vẫn nhỏ hơn 2.1 so với mức độ cho phép của vật liệu.
Hình 4.11: Mô phỏng phân tích ứng suất khâu 3
Hình 4.12: Mô phỏng sự chuyển vị khâu 3
• Sau khi mô phỏng phân tích khâu 3, ta có kết quả:
Hình ảnh mô phỏng cho thấy đám mây ứng suất trong hình 4.12 không bị phá hủy, vì cả ứng suất tối đa và tối thiểu đều thấp hơn mức ứng suất cho phép của vật liệu.
Trong hình 4.13, đám mây chuyển vị đang di chuyển và thay đổi từ vị trí của đám mây xanh sang đám mây cam, với hướng di chuyển từ trên xuống.
Sự chuyển vị lớn nhất đạt 8.975e+00 MPA, vượt mức cho phép của vật liệu, nhưng không có biến dạng ngoại hình nào xảy ra Theo hình ảnh, sự thay đổi duy nhất là di chuyển vị trí tại phần chịu lực.
Hình 4.13: Mô phỏng phân tích ứng suất khâu 7
Hình 4.14: Mô phỏng sự chuyển vị khâu 7
• Sau khi mô phỏng phân tích khâu 7, ta có kết quả:
Hình ảnh mô phỏng cho thấy đám mây ứng suất hình 4.14 đang gặp tình trạng phá hủy xung quanh rãnh đáy của chi tiết, với đám mây ứng suất màu cam đạt mức tối đa 6.364e+00 MPA, vượt quá giới hạn cho phép của vật liệu là 3.100e+02 MPA Tuy nhiên, hiện tượng này chỉ xảy ra khi khâu phải chịu tải Khâu 7, với chức năng chuyển động liên tục trong cơ cấu di chuyển của robot, sẽ không bị phá hủy hay biến dạng ngay lập tức, nhưng hiện tượng phá hủy có thể xảy ra sau thời gian làm việc dài.
Hình 4.15 cho thấy đám mây chuyển vị đang di chuyển và thay đổi từ vị trí của đám mây xanh sang đám mây cam, với hướng di chuyển từ dưới lên trên.
Sự chuyển vị trong trường hợp này rất nhỏ, với đám mây lớn nhất đạt 3.356e+01, không vượt quá giới hạn cho phép của vật liệu Tuy nhiên, có sự thay đổi về vị trí ban đầu tại điểm tác động lực, đây là nơi lực được áp dụng.
Hình 4.15: Mô phỏng phân tích ứng suất khâu 1
Hình 4.16: Mô phỏng sự chuyển vị khâu 1
• Sau khi mô phỏng khâu 1 xong và cho ra kết quả:
Hình ảnh mô phỏng cho thấy đám mây ứng suất hình 4.16 đang trải qua biến dạng rõ rệt, với giá trị ứng suất tối đa đạt 8.629e+08 MPA, cao hơn nhiều so với 3.100e+02 MPA của vật liệu Lực tác động chủ yếu tập trung vào phần khớp nối, dẫn đến sự phân bố lực không đều xung quanh.
Hình 4.17 cho thấy sự thay đổi rõ rệt của ứng suất, điều này đã ảnh hưởng đến sự biến đổi của đám mây chuyển vị, dẫn đến sự chuyển vị mạnh mẽ tại khu vực khớp nối.
Qua mô phỏng lực tác dụng, hầu hết các khâu của robot không xảy ra hiện tượng phá hủy và biến dạng lớn khi chịu tải lý tưởng Mặc dù một số khâu có sự biến dạng và thay đổi nhưng không đáng kể, do độ ứng suất và chuyển vị đều nằm trong mức cho phép của vật liệu Điều này đảm bảo độ bền của robot trong quá trình gia công.
Nhưng ở khâu 1, sự phá hủy và biến dạng đã xảy ra, khiến cho chi tiết bị biến dạng và thay đổi về ngoại hình
Nhóm đã đề xuất phương án nhằm giảm thiểu tối đa sự biến dạng của các khâu do tác động của tải trọng Thông tin chi tiết có thể được tham khảo ở phần 4.7.
Cách khắc phục sự phá hủy và biến dạng ở các khâu
Để cải thiện độ vững chắc cho khâu 1, việc gắn thêm gối SKF FYJ 40mm là cần thiết, giúp giảm lực tác động và giữ cho thân được cố định với đế Đối với các khâu còn lại, chỉ cần bổ sung bulong ở các khớp để gia cố các chi tiết, từ đó tăng cường sự kiên cố và ổn định cho toàn bộ hệ thống.
• d = 40mm là đường kính vòng lỗ
Hình 4.17: Bản vẽ chi tiết, Gối SKF FYJ 40mm
• d1= 51.8mm là đường kính ngoài của vòng trong
• A = 36mm là chiều rộng tổng thể
• A1 = 14mm là chiều rộng mặt bích
• A3 = 3.2mm là chiều sâu rãnh định tâm
• B = 49.2mm là chiều rộng tổng thể ổ lăn
• B4 = 8mm là khoảng cách từ mặt hông thiết bị khóa đến tâm ren
• L = 130mm là chiều dài tổng thể
• J = 102mm là khoảng cách lỗ bulong ở đế
Hình 4.18: Bulong đai ốc, ví dụ 1 số vị trí gắn bulong
Thông qua tính toán, mô phỏng và thiết kế thì ta có hình dáng thiết kế đầy đủ của robot:
Hình 4.19: Robot khi hoàn thiện
Thiết kế hệ thống điện
Sơ đồ hệ thống điện sơ bộ
Hình 5.1: Sơ đồ điện tổng quát
Sơ đồ hệ thống điện tổng quát gồm có 3 khối chủ đạo:
Khối động cơ bao gồm ba động cơ DC được trang bị encoder và driver, cho phép giao tiếp hiệu quả giữa vi điều khiển và động cơ Hệ thống còn tích hợp van điện và camera nhận diện hình ảnh, gửi tín hiệu về máy tính Trong khi đó, khối cảm biến sử dụng camera stereo để thu nhận hình ảnh phục vụ cho việc điều khiển.
Khối mạch điều khiển bao gồm một mạch điều khiển trung tâm, có nhiệm vụ nhận tín hiệu từ camera, phân tích và đưa ra chuyển động cho động cơ Đồng thời, mạch này cũng truyền tín hiệu quan sát đến máy tính qua mạng ROS.
Khối nguồn: Gồm 2 nguồn chính là 24V để nuôi động cơ, nguồn 5V để nuôi vi điều khiển, driver, encoder.
Sơ đồ đấu nối
Hình 5.2: Sơ đồ đấu nối linh kiện điện tử
• Nguyên lý hoạt động của sơ đồ đấu nối:
Nguồn 24 V được cấp vào mạch hạ áp Module DCLM25963A (24 V – 5 V), với đầu ra 5 V để nuôi Raspberry pi hoạt động điều khiển toàn bộ hệ thống
Driver điều khiển động cơ DC Servo PID MSD_EM sử dụng nguồn cấp 5 V và có khả năng điều khiển động cơ tích hợp encoder Thiết bị này không chỉ cho phép dò tìm thông số của hệ thống mà còn đưa ra các chuẩn đoán về các hệ số điều khiển của động cơ, giúp tối ưu hóa hiệu suất hoạt động.
Raspberry Pi được kết nối với Driver điều khiển DC Servo PID MSD_Em, trong đó các chân PUL1, PUL2, PUL3 được kết nối với GPIO 12, GPIO 13 và GPIO 18 để điều khiển động cơ 1, 2, 3.
DIR: Là chân đảo chiều với 2 giá trị 0 và 1: 0 quay cùng chiều kim đồng hồ , 1 quay ngược chiều kim đồng hồ
PUL là tín hiệu từ vi điều khiển đến driver, điều khiển động cơ DC Servo PID MSD_EM sử dụng nguồn 24V Động cơ được kết nối đúng chiều với chân P+ và P- của driver, trong khi chân L và R được sử dụng để kết nối động cơ Encoder được nối với các chân theo thứ tự B, A, 5V và GND để cung cấp tín hiệu và nguồn.
Switch: Có chức năng bật tắt khởi động cánh tay
Công tắc hành trình: Đưa tay máy về vị trí home
Van điện: Dùng để hút chân không di chuyển đồ vật
Camera: gửi hình ảnh nhận được đến Raspberry Pi để tiến hành phân tích.
Lựa chọn động cơ
Dựa trên kết quả từ chương 4, tải lớn nhất tác động lên các khớp gắn động cơ được xác định là ζ1max = 8,8875 Nm, ζ2max = 3,5147 Nm và ζ3max = 2,1213 Nm Do đó, cần lựa chọn các thành phần sao cho moment xoắn tối đa vượt quá 8,8875 Nm để đảm bảo hiệu suất và độ bền của hệ thống.
Hình 5.3: Động cơ 24 V 60 W có gắn hộp số hành tinh và encoder (nguồn Internet)
Hình 5.4: Bản vẽ thiết kế Các thông số của động cơ bao gồm:
• Tốc độ qua giảm tốc: 30 vòng/phút
• Động cơ planet cao cấp, bền bỉ với thời gian Hộp số mạnh mẽ với nhông ăn khớp trong chính xác, giảm tiếng ồn
Kết luận: Động cơ 24 V 60 W có gắn hộp số hành tinh và encoder đáp ứng đủ yêu cầu của đồ án:
• Tốc độ qua giảm tốc: 60 vòng/phút
Công suất 60 W với động cơ planet cao cấp mang lại độ bền vượt trội theo thời gian Hộp số mạnh mẽ, kết hợp với nhông ăn khớp chính xác, giúp giảm thiểu tiếng ồn hiệu quả Lựa chọn driver động cơ đa dạng đáp ứng nhu cầu sử dụng.
Sử dụng động cơ trên cho cả 3 khớp quay.
Lựa chọn driver động cơ
Nhờ sự phát triển công nghệ, driver hiện nay không chỉ truyền tín hiệu từ vi điều khiển mà còn tích hợp vi xử lý, cho phép điều khiển động cơ như một thiết bị slave với khả năng truyền thông đơn giản.
Luận văn này sử dụng driver PID MSD_EM có tích hợp nhân ARM Coretex- M3 với công nghệ mosfet tiên tiến
Hình 5.5: DC driver PID MSD_EM của CCSmart (nguồn Internet)
Hình 5.6: Sơ đồ đấu chân driver PID MSD_Em
Các thông số kĩ thuật của driver:
• Tần số xung input tối đa: 500 KHz
• Dòng tiêu thụ đối đa: 10 A
• Dòng tiêu thụ nhân xử lí: 150 mA
Lựa chọn vi điều khiển
Hình 5.7: Raspberry Pi 4 (nguồn Internet)
• Broadcom BCM2711, Quad core Cortex-A72 (ARM v8) 64-bit SoC @ 1.5GHz
• 2GB, 4GB hoặc 8GB LPDDR4-3200 SDRAM (tùy thuộc vào kiểu máy)
• Đầu cắm GPIO 40 chân tiêu chuẩn Raspberry Pi
• Khe cắm thẻ nhớ Micro-SD để tải hệ điều hành và lưu trữ dữ liệu
• 5V DC qua đầu nối USB-C (tối thiểu 3A *)
• 5V DC qua đầu cắm GPIO (tối thiểu 3A *)
• Nhiệt độ hoạt động: 0-50 độ C
Hình 5.8: Sơ đồ chân và các cổng giao tiếp của mạch (nguồn Internet)
Trong 40 chân GPIO bao gồm:
• 26 chân GPIO Khi thiết lập là input, GPIO có thể được sử dụng như chân interupt, GPIO 14 & 15 được thiết lập sẵn là chân input
• 2 chân nguồn 5V, 2 chân nguồn 3.3V, 8 chân GND
Hình 5.9: Giá trị điện áp của 40 chân (nguồn Internet) Điện áp
• Các chân inputs và outputs - 3V3(high) và 0V (low)
Cần 3 cặp chân xuất tín hiệu xung điều khiển và chiều quay đến driver
Cần cổng USB để đọc tín hiệu từ camera
Phần cứng có khả năng cài đặt hệ điều hành để tương tác với máy tính qua mạng ROS, đáp ứng nhu cầu điều khiển robot trong thời gian thực Nó cũng cho phép truyền tải các giá trị điều khiển và hình ảnh từ camera về máy tính, giúp người dùng dễ dàng giao tiếp và quan sát.
Dựa vào các yêu cầu, tiến hành chọn Raspberry Pi Model B - 4GiB với các thông số kỹ thuật và ưu điểm sau:
• CPU ARM Cortex-A72 lõi tứ 64-bit 1.5GHz (ARM v8, BCM2837)
• RAM 1GB, 2GB hoặc 4GB (LPDDR4)
• Tích hợp Wireless LAN (băng tần kép 802.11 b/g/n/ac)
Lựa chọn thiết bị cho hệ thốn hút chân không
Van xả điện từ hai chiều:
• Dòng định mức: < 150 mA, < 100 mA, < 70 mA
• Tỷ lệ khử khí: < 3s ( thời gian cần thiết cho áp suất không khí từ 300mmHg đến 15mmHg trong thùng 500cc)
• Phạm vi áp suất: 0-350 mmHg
Khả năng bịt kín của hệ thống được đánh giá bằng cách thổi phồng áp suất từ 0 đến 300 mmHg trong thùng chứa 500 cc Sau 30 giây ổn định, giá trị áp suất giảm không vượt quá 5 mmHg mỗi phút, cho thấy hiệu suất giữ áp suất tốt.
Hình 5.10: Van xả điện từ hai chiều (nguồn Internet) Máy bơm hút chân không:
Hình 5.11: Máy bơm hút chân không Micro (nguồn Internet)
• Dòng định mức: 1500 mA, 900 mA
• Áp suất tối đa: > 525 mmHg (+701 Kpa) Kín : < 100 mmHg/ phút
Hình 5.12: Giác hút chân không (nguồn Internet)
Bộ giác hút chân không được chế tạo từ kim loại và cốc hút chân không bằng silicone dẻo, giúp tăng cường lực hút và giữ chắc chắn các vật thể trong quá trình hoạt động Sản phẩm này được ứng dụng cùng với van xả điện tử, ống dẫn khí mềm silicone trắng và bơm hút chân không mini, rất phù hợp cho các mô hình robot, gắp và thả sản phẩm Việc lắp ráp hệ thống bộ hút chân không dựa trên nguyên lý hoạt động hiệu quả, mang lại sự tiện lợi trong nhiều ứng dụng công nghiệp.
Hình 5.13: Sơ đồ lắp hệ thống hút chân không
Hình 5.14: Hệ thống thực tế (nguồn Internet)
Bộ hút chân không bao gồm các thành phần chính như giác hút chân không, van xả điện tử và máy bơm hút chân không, tất cả được kết nối với nhau qua ống dẫn khí.
Máy bơm hút chân không hoạt động liên tục để loại bỏ không khí, với luồng khí được kiểm soát bởi van điện Khi giác hút chân không tiếp xúc với bề mặt cần hút, van điện sẽ đóng lại, cho phép máy bơm tiếp tục hút khí còn lại ra ngoài.
Khi hết khí vật được cố định chặt vào cốc hút và được vận chuyển đến vị trí yêu cầu
Khi đến vị trí yêu cầu, van điện mở khí đưa vật được đặt tại vị trí yêu cầu.
Stereo Camera
Camera Stereo là cảm biến 3D tiên tiến nhất từ Stereolabs, giúp nhận diện chiều sâu, theo dõi chuyển động và áp dụng AI không gian Điều này cho phép các nhà phát triển xây dựng hệ thống thông minh, hiểu rõ hơn về môi trường xung quanh và thực hiện các hành động thông minh.
• Cảm biến có độ sâu
• Phát hiện đối tượng trong không gian
• Khung hoàn toàn bằng nhôm với kiểm soát nhiệt
• Bộ xử lý lõi kép 2.3 GHz hoặc nhanh hơn
Công tắc hành trình
Hình 5.16: Công tắc hành trình (nguồn Internet)
Công tắc hành trình là thiết bị có bánh xe lăn, giúp giới hạn chuyển động và thực hiện chức năng đóng mở mạch điện Nó được lắp đặt trên hành trình hoạt động của một cơ cấu, cho phép ngừng hoạt động khi cơ cấu đạt đến vị trí nhất định Hành trình có thể là tịnh tiến hoặc quay tròn, đảm bảo hoạt động an toàn và hiệu quả cho thiết bị.
• Cường độ dòng điện chịu được có thể lên tới 10A ở điện áp 250V
• Đòn bẩy có con lăn giúp giảm ma sát và kẹt khi hoạt động
• Có 3 tiếp điểm COM, NC và NO (thường đóng và thường mở)
• Đầu ra tiếp điểm có thể hàn hoặc cắm giắc kết nối nhanh
• Khả năng chịu lực tác dụng đầu đòn bẩy tối đa lên tới 1.96N
• Hoạt động được ở nhiệt độ lên tới 80 độ C
• Lỗ bắt vào khung máy có đường kính 3.1mm, dễ dàng sử dụng với các loại bulong M3 thông thường.
Lựa chọn nguồn
Bảng 5.1: Lựa chọn thiết bị
Thiết bị Điện áp Dòng điện tiêu thụ SL Động cơ DC Servo 24 V 10000 mA 3
Bơm hút chân không 24 V 1500 mA 1
Từ Bảng trên ta có dòng tiêu thụ tối đa cho nguồn 5 V là:
I 5V = 25.3 + 3000 + 150.3 + 150 = 3675 mA (25) Dòng tiêu thụ tối đa cho nguồn 24V là:
Tiến hành chọn nguồn tổ ong 12V-5V và nguồn meanwell 24 V-30 A 750 W:
Hình 5.17: Nguồn tổ ong 12 V-5 A (nguồn Internet)
Hình 5.18: Nguồn meanwell 24 V-30 A 750 W (nguồn Internet)
Thiết kế chương trình điều khiển và mô phỏng
Phương trình động học của motor
Ta có các phương trình động học của motor như sau:
𝑑𝑡 Áp dụng biến đổi Laplace ta được:
Từ những phương trình trên ta có hàm truyền:
• Hàm truyền theo vị trí và điện áp:
• Hàm truyền theo vận tốc điện áp:
Các thông số của động cơ:
• Moment quán tính của roto: 𝐽 𝑚 = 0.02215 (Kgm 2 )
• Hằng số ma sát: 𝐷 𝑚 = 0,002953 (Nm/rad)
• Hằng số điện áp cảm ứng: 𝐾 𝑏 = 0.0045 (Vs/rad)
Tìm các thông số cho visual servoing qua xử lý hình ảnh
Tìm tọa độ của vật trên camera:
Hình ảnh được máy tính hiểu và biểu diễn dưới dạng ma trận Đối với bức ảnh màu, nó được cấu thành từ ba lớp khác nhau: lớp đỏ, lớp xanh lá và lớp xanh dương, vì vậy bức ảnh màu còn được gọi là hình ảnh RGB (Đỏ, Xanh lá, Xanh dương).
Hình 6.1: Ví dụ về màu sắc (nguồn Internet)
Trong bài viết này, chúng ta phân tích các lớp màu trong hình ảnh, bắt đầu với lớp đỏ, nơi những bông hoa cúc màu đỏ, vàng và hồng nổi bật hơn nhờ gần gũi với màu đỏ, trong khi hoa xanh và tím cùng lá thì tối hơn Tiếp theo, ở lớp xanh, lá cây và hoa vàng sáng hơn do sự kết hợp giữa xanh lá và đỏ Cuối cùng, lớp xanh lam cho thấy hoa xanh, tím và hồng có màu sắc sáng hơn nhờ chứa nhiều sắc tố xanh.
Trước khi bắt tay vào lập trình phân loại màu sắc trong hình ảnh, chúng ta cần xem xét một số yếu tố bên ngoài có thể ảnh hưởng đến quá trình phân loại này.
• Ảnh hưởng của ánh sáng môi trường:
Hình 6.2: Màu sắc và độ sáng (nguồn Internet)
Màu cam, dù giống nhau, có thể hiển thị khác biệt dưới các điều kiện ánh sáng khác nhau Khi được chiếu sáng ở mức 100%, màu cam sẽ có giá trị RGB là (253, 124, 27), nhưng khi ở trong một căn phòng tối với độ sáng chỉ 50%, giá trị này giảm xuống còn (105, 46, 13), làm cho nó không còn là màu cam trong mắt chúng ta, mặc dù thực tế bên ngoài ống kính vẫn là màu cam Sự thay đổi này dẫn đến sai lệch lớn trong việc phân loại màu sắc dựa trên môi trường làm việc Để hiểu rõ hơn về màu sắc, chúng ta có thể sử dụng hệ thống HSB, bao gồm hue (họ màu), saturation (độ bão hòa) và brightness (độ sáng tối), cho phép kết hợp hue và saturation để biểu thị dưới dạng tọa độ sắc độ (chromaticity coordinate).
Hình 6.3: Toạ độ sắc độ (Chromaticity coordinate) (nguồn Internet)
Để khắc phục vấn đề về độ sáng và tối của màu sắc, chúng ta sẽ chuyển đổi các giá trị RGB của bức ảnh sang HSB Qua đó, màu sắc sẽ được biểu diễn bằng hai giá trị chính: tọa độ sắc độ (chromaticity coordinate) và độ sáng tối của màu sắc (brightness).
Với các giá trị X, Y, Z tương ứng cho layer đỏ, layer xanh và layer xanh dương, ta có thể hiểu rằng tọa độ sắc thái (Chromaticity coordinate) giúp giải quyết vấn đề về độ sáng trong môi trường.
Hình 6.4: Ví dụ Chromaticity coordinate (nguồn Internet)
Khi ánh sáng mặt trời chiếu vào quả táo, nó phản xạ màu sắc vào mắt chúng ta với giá trị RGB khoảng (0,6, 0,4, 0,3), cho phép chúng ta nhận biết màu đỏ Tuy nhiên, khi có mây che khuất ánh sáng từ mặt trời, giá trị RGB mà chúng ta nhận được sẽ giảm xuống còn (0,3, 0,2, 0,1).
Nếu áp dụng chromaticity coordinate ta sẽ có giá trị của rgb là:
Kết quả cho thấy giá trị chromaticity không thay đổi dù giá trị RGB bị ảnh hưởng bởi sự giảm ánh sáng từ nguồn sáng Do tổng r + g + b luôn bằng 1, chúng ta chỉ cần hai giá trị r và g để xác định một màu sắc.
Mã hoá gamma là một khái niệm quan trọng khi tìm hiểu về lịch sử tivi, đặc biệt là những chiếc tivi sử dụng ống tia cực âm (Cathode Ray Tube) để hiển thị hình ảnh Ống tia cực âm là thiết bị phi tuyến, có nghĩa là đầu ra của nó không thể được giải thích bằng phương trình đầu vào Để xử lý các phương trình đầu ra của hệ phi tuyến này, chúng ta thường phải xấp xỉ chúng bằng một hệ tuyến tính.
Độ sáng màn hình của tivi, ký hiệu là 𝐿 𝑡𝑖𝑣𝑖, được tính toán bằng công thức 𝐿 𝑡𝑖𝑣𝑖 ≈ 𝑉^𝛾, trong đó 𝑉 là điện áp đầu vào và 𝛾 là giá trị gamma của thiết bị hiển thị, thường có giá trị là 2,2.
Khi sử dụng một camera để quay phim và kết nối với tivi, camera sẽ nhận ánh sáng từ môi trường thực tế và chuyển đổi nó thành tín hiệu điện áp.
Và ta sử dụng tín hiệu này truyền vào tivi, ta sẽ có:
Áp dụng gamma lên độ sáng môi trường thực tế có thể tạo ra hiệu ứng màu sắc tương phản kém Để khắc phục vấn đề này, cần thực hiện tuyến tính hóa ngược cho đầu vào L, giúp hệ thống trở nên tuyến tính hơn.
𝐿 𝑡𝑖𝑣𝑖 = 𝐿 Phương pháp chuyển đổi trên trong camera thường được gọi là gamma encoder
Và hình ảnh trước khi được hiển thị sẽ được màn hình chuyển đổi qua gamma decoder hay còn gọi là gamma corrector
Dưới đây là hình ảnh minh hoạ để ta hiểu rõ hơn vấn đề:
Hình 6.5: Sơ đồ phương pháp gamma encoder (nguồn Internet)
Mặc dù công nghệ hiện đại đã thay thế ống tia cực âm trong thiết bị hiển thị, nhưng nhiều thiết bị ngày nay vẫn mô phỏng theo chúng Do đó, mã hóa gamma (gamma encoder) vẫn tiếp tục được sử dụng.
Ảnh hưởng của gamma encoder đến việc xử lý ảnh rất lớn, bởi vì tất cả hình ảnh từ camera đều đã được xử lý qua gamma encoder, dẫn đến màu sắc của chúng không hoàn toàn phản ánh thực tế.
Hình 6.6 minh họa tác động của gamma encoder lên màu sắc của quả táo Màu sắc ban đầu của quả táo trong môi trường bên ngoài là (0,6 0,4 0,2), và sau khi qua gamma encoder, màu sắc của quả táo chuyển thành (0,793 0,659 0,481).
Ta có thể thấy chúng khác với giá trị ban đầu mà ta tính được là: 0,6 và 0,4
Tìm chiều sâu của vật:
Điều khiển bằng phương pháp VISUAL SERVOING cho Robot
Trong phần này, nhóm sẽ trình bày về các giải thuật áp dụng trong visual servoing, đồng thời mô tả cách xác định thông số chuyển động của camera, vị trí và hình ảnh của vật thể cần thao tác Từ những thông tin này, chúng tôi sẽ cung cấp các thông số đầu vào cần thiết để robot thực hiện chuyển động chính xác.
Hình 6.11: Sơ đồ điều khiển vòng kín của robot
Hình 6.12: Lưu đồ giải thuật Các thành phần cơ bản của visual servoing:
Ta có hàm biểu thị độ sai lệch với phương pháp điều khiển bằng visual servoing như sau
• e(t): là sai lệch mà ta cần giảm
• s(m(t),a): là giá trị biểu diễn vị trí hiện tại của vật, m(t) là giá trị ta đo được từ hình ảnh hiển thị trên camera, a là thông số của camera
• s*: là giá trị biểu diễn vị trí của vật mà ta mong muốn
Giải bài toán điều khiển và tìm ra các tham số cần thiết:
Mối quan hệ giữa sai lệch mong muốn e(t) và chuyển động của camera 𝑣 𝑐 (v,𝜔): Đạo hàm s(m(t),a) ta có:
▪ Ls là ma trận Jacobian của hình ảnh
▪ vc là vận tốc chuyển động của camera, nó bao gồm vận tốc v và vận tốc góc
Tương tự ta có đạo hàm của e(t):
• 𝐿 𝑒 = 𝐿 𝑠 do 𝑠 ∗ là một hằng số
Để đạt được độ chính xác mong muốn, mục tiêu không phải là giảm thiểu ngay lập tức sự sai lệch giữa vị trí mong muốn và vị trí hiện tại của vật cần thao tác, mà là giảm dần sự sai lệch này theo thời gian Vì vậy, tham số lambda 𝜆 là rất cần thiết trong quá trình này.
Giả sử ta chỉ muốn giảm thiểu sai lệch 10% cho mỗi lần, khi đó ta có:
Từ biểu thức (39) cho thấy, để tìm ra vận tốc của khâu cuối robot hay nói cách
Ta có thể tính e(t) thông qua biểu thức (33) như sau: s(m(t), a) = {𝑥 = 𝑋/𝑍 = (𝑢 − 𝑐 𝑢 )/𝑓
• X, Y, Z là toạ độ của vật trong không gian 3 chiều.
• u, v lần lượt là giá trị toạ độ vị trí của vật hiện tại được hiển thị trong ảnh
• 𝑢 ∗ , 𝑣 ∗ lần lượt là giá trị toạ độ vị trí của vật mà ta mong muốn được hiển thị trong ảnh
Trong một bức ảnh hiển thị từ camera, tọa độ của điểm chính (c_u, c_v) thể hiện vị trí trung tâm của hình ảnh Ví dụ, nếu camera cung cấp một bức ảnh có kích thước 800x800 pixel, tọa độ của điểm chính sẽ là 400x400.
• f là tiêu cự của ống kính camera
Để xác định các giá trị 𝑢 ∗ và 𝑣 ∗, chúng ta sử dụng các thông số đã thiết lập như 𝑐 𝑢, 𝑐 𝑣 và f của camera Qua việc nhận diện hình ảnh dựa trên màu sắc, camera sẽ giúp tìm ra trọng tâm của các đối tượng, từ đó cho phép chúng ta tính toán được các giá trị 𝑢 và 𝑣.
Như vậy ta có thể dễ dàng tiến hành việc tính toán e(t)
Tiếp theo để tìm được Le = Ls ta cần phải xác định được 𝑠̇, do đó ta có:
Đạo hàm vị trí của một điểm trong không gian ba chiều có thể được biểu diễn thông qua vận tốc và vận tốc góc.
Với biểu thức (34) ta có:
Chúng ta đã xác định được ma trận Jacobian của hình ảnh, với các tham số x và y được xác định thông qua biểu thức đã trình bày trước đó.
Z là tham số thể hiện độ sâu của vật, tức là khoảng cách của vật cần thao tác trong không gian ba chiều so với vị trí của camera Điều này cho phép chúng ta xác định vị trí chính xác của vật trong không gian.
Bằng cách sử dụng camera Stereo, chúng ta có thể truyền các tọa độ u và v từ hình ảnh hiển thị của vật thể cần thao tác Qua đó, hệ thống sẽ trả về giá trị khoảng cách giữa vật thể và camera.
Để thực hiện Visual Servoing cho một vật, cần ít nhất tham số của ba điểm, vì biểu thức (47) chỉ cho phép biểu diễn vận tốc và vận tốc góc của một điểm thông qua ma trận Jacobian Do đó, việc gộp nhiều ma trận Jacobian thành một ma trận tổng hợp là cần thiết để đạt được kết quả chính xác.
Với 3 ma trận Jacobian cho 3 điểm được gộp lại ta sẽ có ma trận với kích thước 6x6 Tuy nhiên nếu bài toán cần đến nhiều điểm hơn để có độ chính xác cao khi đó ma trận L sẽ không còn là một ma trận vuông và điều đó dẫn đến việc ta không thể áp dụng biểu thức (5) để tính toán vận tốc cho camera do lúc đó L không còn khả nghịch. Để khắc phục điều này ta sẽ cần một phương pháp thay thế đó là sử dụng ma trận giả nghịch đảo (Pseudo inverse) cho L:
• 𝐿 + : là ma trận giả nghịch đảo (Pseudo inverse) của chuỗi ma trận Jacobian hình ảnh của nhiều điểm.
• 𝐿 𝑇 : là ma trận chuyển vị của chuỗi ma trận Jacobian hình ảnh của nhiều điểm
Ma trận giả nghịch đảo có thể được tính dễ dàng bằng câu lệnh pinv(L) trong matlab
Với các tham số cần thiết để xác định vận tốc và vận tốc góc của khâu cuối tay máy robot và camera, chúng ta có thể truyền giá trị vận tốc đã tính toán cho robot nhằm thực hiện chuyển động hiệu quả.
Thực nghiệm mô phỏng nhận diện màu sắc cho camera với matlab
Khai báo thông tin camera và thiết lập đầu vào:
Trước tiên hết để bắt đầu ta cần phải khai báo thông tin camera sử dụng trên matlab thông qua các câu lệnh sau:
%Xác định camera đầu vào
%Khai báo thông số của Gamma decoder
• hga mma = vision.GammaCorrector(3,'Correction','De-gamma');
% Thiết lập tham số đầu vào của video
Trước tiên để thử nghiệm, ta thiết lập một vòng lặp mà sẽ dừng sau 200 khung hình:
% Lấy hình ảnh từ khung hình hiện tại và lưu vào data
%Áp dụng gamma decoder vào khung hình hiện tại
Trong MATLAB, giá trị hình ảnh được mặc định lưu trữ dưới dạng kiểu dữ liệu uint8, với khoảng giá trị từ 0 đến 255 Tuy nhiên, điều này có thể gây ảnh hưởng đến các phép toán khi giá trị hình ảnh nằm ngoài khoảng này, chẳng hạn như 0,5 Do đó, cần chuyển đổi kiểu dữ liệu hình ảnh từ uint8 sang double để đảm bảo tính chính xác trong các phép tính.
%Chuyển đổi kiểu dữ liệu của ma trận từ uint8 sang double
• diff_im = im2double(data1);
%Chuyển đổi giá trị RGB của ảnh sang Chromaticity coordinate
Thiết lập tham số cho màu sắc cần nhận dạng:
Để phân loại đối tượng, bước đầu tiên là xác định màu sắc của nó Trong luận văn này, chúng ta sẽ tập trung vào ba màu cơ bản: đỏ, xanh lá và xanh dương Việc khảo sát và xác định giá trị thực tế của màu sắc sẽ giúp chúng ta phân biệt rõ ràng và loại bỏ các màu gần giống nhau như đỏ, cam và vàng.
Dựa trên kết quả khảo sát, giá trị màu đỏ của khối Rubik trên ma trận r sẽ nằm trong khoảng từ 0,5 trở lên.
Trên ma trận g sẽ có giá trị bé hơn 0,17 Để thực hiện việc này ta có thể sử dụng câu lệnh sau:
Biến diff_imr được sử dụng để gán giá trị phân loại màu đỏ từ hình ảnh Qua các biểu đồ dưới đây, ta nhận thấy rằng ở biểu đồ cuối cùng, các ô Rubik màu đỏ hiển thị dưới dạng ô màu trắng, trong khi phần còn lại sẽ có màu đen sau khi tiến hành lọc bỏ.
Hình 6.13: Kiểm tra giá trị tham số cho nhận diện màu đỏ
Tương tự, chúng ta tiến hành kiểm tra các màu còn lại, bao gồm xanh lá và xanh dương Qua khảo sát, giá trị của màu xanh lá trên khối Rubik được xác định nằm trong khoảng r < 0,25 và g > 0,35.
Hình 6.14: Kiểm tra giá trị tham số cho nhận diện màu xanh dương
Và đối với màu xanh dương giá trị đó sẽ là: r < 0,25 và g