Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 104 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
104
Dung lượng
3,14 MB
Nội dung
Nguyễn Khương Quỳnh - Trần Thị Thơ THIẾT KẾ CHẾ TẠO HỆ THỐNG PHÂN LOẠI VÀ GẮP HÀNG TỰ ĐỘNG ỨNG DỤNG CN XLA 2018 ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CƠ KHÍ ĐỒ ÁN TỐT NGHIỆP NGÀNH: CƠ ĐIỆN TỬ CHUYÊN NGÀNH: KỸ THUẬT CƠ ĐIỆN TỬ ĐỀ TÀI: THIẾT KẾ CHẾ TẠO HỆ THỐNG PHÂN LOẠI VÀ GẮP HÀNG TỰ ĐỘNG ỨNG DỤNG CÔNG NGHỆ XỬ LÝ ẢNH Người hướng dẫn : TS VÕ NHƯ THÀNH Sinh viên thực : NGUYỄN KHƯƠNG QUỲNH : TRẦN THỊ THƠ Số thẻ sinh viên : 101130173 : 101130183 Lớp : 13CDT1 Đà Nẵng, 5/2018 ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CƠ KHÍ ĐỒ ÁN TỐT NGHIỆP CHUYÊN NGÀNH: KỸ THUẬT CƠ ĐIỆN TỬ ĐỀ TÀI: THIẾT KẾ CHẾ TẠO HỆ THỐNG PHÂN LOẠI VÀ GẮP HÀNG TỰ ĐỘNG ỨNG DỤNG CÔNG NGHỆ XỬ LÝ ẢNH Người hướng dẫn : TS VÕ NHƯ THÀNH Sinh viên thực : NGUYỄN KHƯƠNG QUỲNH : TRẦN THỊ THƠ Số thẻ sinh viên : 101130173 : 101130183 Lớp : 13CDT1 Đà Nẵng, 5/2018 TÓM TẮT Tên đề tài: Thiết kế chế tạo hệ thống phân loại gắp hàng tự động ứng dụng công nghệ xử lý ảnh Sinh viên thực hiện: Nguyễn Khương Quỳnh – Trần Thị Thơ Số thẻ SV: 101130173 - 101130183 Lớp: 13CDT1 Nội dung tóm tắt: Hệ thống phân loại sản phẩm gắp hàng tự động ứng dụng công nghệ xử lý ảnh gồm khâu: tiền xử lý liệu thu thập từ camera, phân tích phân loại Quá trình phân loại sản phẩm thực dựa việc thu thập thông tin màu sắc, hình dạng, góc lệch sản phẩm thơng qua hệ thống camera Khi sản phẩm theo quy định đưa liên tục vào kho chứa, nếu hệ thống phát sản phẩm không đạt yêu cầu theo quy định xuất tín hiệu vị trí góc lệch sản phẩm để Robot tự động gắp đưa vào kho chứa sản phẩm không đạt ĐẠI HỌC ĐÀ NẴNG CỢNG HỊA XÃ HƠI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập - Tự - Hạnh phúc KHOA ………………………………………… NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ tên sinh viên: … …………….………….…… Số thẻ sinh viên: ……………… Lớp:…………… Khoa: Ngành: ……………… Tên đề tài đồ án: ……………………………………………… ………………………………………… ………………………………………………………………………………………… Đề tài thuộc diện: ☐ Có ký kết thỏa thuận sở hữu trí tuệ kết thực Các số liệu liệu ban đầu: …………………………………… …………………………………………… …… ………………………………………………………………………………………… … ………………………………….… ……………………… ……………………… Nội dung phần thuyết minh tính tốn: … ……………………………………………………………………………………… … ……………………………………………………………………………………… … ……………………………………………………………………………………… … ……………………………………………………………………………………… … ……………………………………………………………………………………… Các vẽ, đồ thị ( ghi rõ loại kích thước vẽ ): … ……………………………………………………………………………………… … ……………………………………………………………………………………… … ……………………………………………………………………………………… … ……………………………………………………………………………………… Họ tên người hướng dẫn: ………………………………… …………………… Ngày giao nhiệm vụ đồ án: …… /……./201… Ngày hoàn thành đồ án: …… /……./201… Đà Nẵng, ngày tháng năm 201 Trưởng Bộ môn …………………… Người hướng dẫn LỜI NĨI ĐẦU Trong năm gần đây, cơng nghệ xử lý ảnh (image processing) đạt nhiều thành tựu tiến bộ vượt bậc Trong đó, nhận dạng phân loại hình ảnh mợt lĩnh vực theo đuổi một cách tích cực Ý tưởng cốt lõi việc nhận dạng phân loại hình ảnh phân tích ảnh từ liệu thu cảm biến hình ảnh camera, Webcam … Nhờ hệ thống xử lý ảnh, người giảm khối lượng công việc tăng chính xác việc đưa quyết định liên quan đến xử lý hình ảnh nhiều lĩnh vực: quân quốc phòng, hệ thống kỹ thuật hóa sinh, giải phẫu, hệ thống giao thông thông minh, công nghệ robot, … Những phần mềm xử lý ảnh sử dụng phổ biến Matlab, Visual Studio, … Trong đó phần mềm Matlab Toolbox kèm theo trở thành công cụ thiếu cán bộ nghiên cứu giảng dạy, sinh viên đại học, cao học nghiên cứu sinh thuộc ngành khoa học kỹ thuật nước ta Điều có Matlab cung cấp mợt cơng cụ tính tốn lập trình bậc cao dễ sử dụng, hiệu quả thân thiện với người dùng Matlab cung cấp cho người sử dụng phương thức để thực mô máy tính, ngồi Matlab cịn có thể giao tiếp với Vi điều khiển, PLC, … với thiết bị phần cứng để thực ứng dụng thực tế Vì phạm vi hiểu biết mình, chúng em tìm hiểu thực đề tài “Thiết kế chế tạo hệ thống phân loại gắp hàng tự động ứng dụng công nghệ xử lý ảnh” Đây nghiên cứu kết hợp Matlab Vi điều khiển để phân loại sản phẩm Trong trình thực đồ án với nỗ lực bản thân áp dụng kiến thức trang bị trường, chúng em có nhiều cố gắng để hoàn thành tốt đồ án Tuy nhiên kiến thức khả có hạn nên khó tránh khỏi thiếu sót Vì mong nhận ý kiến đóng góp giúp đỡ chân thành thầy cô khoa Cơ Khí bạn sinh viên để đồ án hoàn thiện Chúng em xin chân thành cảm ơn thầy TS Võ Như Thành tận tình hướng dẫn giúp đỡ chúng em hoàn thành đồ án Đà Nẵng, Ngày … Tháng … Năm 2018 Nhóm sinh viên thực i CAM ĐOAN Chúng xin cam đoan: Những nội dung đồ án thực hướng dẫn trực tiếp Thầy TS Võ Như Thành Mọi tham khảo dùng đồ án trích dẫn rõ ràng tên tác giả, tên cơng trình, thời gian, địa điểm cơng bố Mọi chép không hợp lệ, vi phạm quy chế đào tạo, hay gian dối, chúng tơi xin chịu hồn toàn trách nhiệm Nhóm Sinh viên thực Nguyễn Khương Quỳnh – Trần Thị Thơ iii MỤC LỤC Tóm tắt Nhiệm vụ đồ án Lời nói đầu cảm ơn i Lời cam đoan liêm chính học thuật ii Mục lục iii Danh sách bảng biểu, hình vẽ sơ đồ vi Trang MỞ ĐẦU Chương 1: TỔNG QUAN VỀ HỆ THỐNG 1.1 Giới thiệu chung về hệ thống 1.1.1 Khái quát Xử lý ảnh 1.1.2 Giới thiệu Robot 1.2 Cấu thành phần cứng 12 1.3 Quy trình cài đặt Vison Camera cho ứng dụng thực tế 14 1.4 Đặt vấn đề 16 1.5 Phương hướng giải quyết 17 1.5.1 Bài toán 17 1.5.2 Hướng giải quyết 17 1.5.3 Phân tích hệ thống 17 Chương 2: THIẾT KẾ VÀ TÍNH TOÁN PHẦN CƠ KHÍ 2.1 Xây dựng chọn phương án thiết kế 18 18 2.1.1 Hệ thống băng tải 18 2.1.2 Bộ truyền động cho băng tải 19 2.1.3 Cánh tay robot 20 2.2 Tính toán băng tải 22 iv 2.2.1 Cấu tạo băng tải 22 2.2.2 Tính toán băng tải 22 2.3 Tính toán cánh tay Robot 26 2.3.1 Tính chọn động bộ phận robot 26 2.3.2 Tính tốn đợng học thuận, đợng học nghịch 33 2.4 Tính chọn các phận khác của hệ thống 40 2.4.1 Thiết kế khung băng tải 40 2.4.2 Thiết kế giá đỡ Camera 40 2.4.3 Thiết kế khay chứa sản phẩm 41 Chương 3: TÍNH TOÁN THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN 42 3.1 Sơ đồ nguyên lý 42 3.2 Các Module được sử dụng hệ thống 42 3.2.1 Arduino Uno 42 3.2.2 Module Relay 5V 45 3.2.3 Module MDL95 47 3.2.4 Nguồn ổn áp chiều 24V 47 3.2.5 Module giảm áp 5v 3A 49 3.2.6 Module giảm áp 5v 5A 49 3.3 Lưu đồ thuật toán cánh tay Robot 51 3.3.1 Lưu đồ thuật tốn chương trình chính 51 3.3.2 Lưu đồ thuật tốn chương trình 52 Chương 4: XỬ LÝ ẢNH 54 4.1 Giới thiệu chung về xử lý ảnh 54 4.2 Phương pháp tách biên nhận dạng màu 55 4.2.1 Giới thiệu bộ tách biên 55 4.2.2 Phương pháp nhận dạng màu 60 4.3 Giới thiệu về Matlab 63 v 4.3.1 Matlab gì? 63 4.3.2 Cấu trúc liệu matlab ứng dụng 64 4.4 Cấu trúc của chương trình Matlab 64 4.4.1 Toolbox bắt ảnh xử lý ảnh 65 4.4.2 Các hàm xử lý ảnh bản Matlab 70 4.4.3 Tạo giao diện người dùng nhờ công cụ Guide 72 4.5 Lưu đồ thuật toán 77 KẾT LUẬN 78 TÀI LIỆU THAM KHẢO 79 PHỤ LỤC vi DANH SÁCH CÁC BẢNG, HÌNH VẼ Bảng 2.1 Thông số khâu cánh tay robot Bảng 2.2 Bảng D-H Bảng 3.1 Thống số bản Arduino Uno Bảng 4.1 Một số biểu thức logic bản Hình 1.1 Ứng dụng xử lý ảnh kiểm tra số lượng sản phẩm cơng nghiệp Hình 1.2 Ứng dụng camera đọc barcode Hình 1.3 Ứng dụng nhận dạng ký tự Hình 1.4 Ứng dụng định vị cho robot Hình 1.5 Ứng dụng đo kích thước Hình 1.6 Ứng dụng kiểm tra tổng quát Hình 1.7 Robot kiểu tọa đợ Descarte Hình 1.8 Robot kiểu hệ tọa đợ trụ Hình 1.9 Robot kiểu tọa đợ cầu Hình 1.10 Robot kiểu Scara Hình 1.11 Robot kiểu tay người Hình 1.12 Robot sản xuất Hình 1.13 Robot lắp ráp bợ phận tơ Hình 1.14 Đèn chiếu sáng Hình 1.15 Cơ cấu bợ đẩy bằng khí nén Hình 1.16 Cơ cấu cánh tay robot DOF Hình 1.17 Ảnh trước chỉnh sửa Hình 1.18 Ảnh sau chỉnh sửa Hình 1.19 Trước lập trình chưa đọc chữ Hình 1.20 Sau lập trình xong, thử sai hồn thiện chương trình Hình 1.21 Sơ đồ khối hệ thống phân loại gắp hàng tự động vii Tên đề tài: Thiết kế chế tạo hệ thống phân loại gắp hàng tự động ứng dụng công nghệ xử lý ảnh KẾT LUẬN • Những phần đạt được của đề tài - Đề tài đáp ứng tiến độ mà nhà trường đưa - Phân loại sản phẩm chính xác khoảng 90% - Kết nối arduino với matlab, máy tính camera tốt - Hệ thống hoạt đợng tương đối đảm bảo • Những hạn chế hướng khắc phục * Hạn chế: - Độ cứng vững cánh tay Robot chưa cao * Hướng phát triển đề tài: - Xử lý nhiễu sử dụng camera tốt hơn, để tăng độ ổn định chính xác - Sử dụng vật liệu nhôm, thép để chế tạo robot nhằm tăng độ cứng vững Sinh viên thực hiện: Nguyễn Khương Quỳnh – Trần Thị Thơ Giáo viên hướng dẫn: TS Võ Như Thành 78 Tên đề tài: Thiết kế chế tạo hệ thống phân loại gắp hàng tự động ứng dụng công nghệ xử lý ảnh TÀI LIỆU THAM KHẢO [1] PGS TS Nguyễn Quang Hoan: Xử lý ảnh – Học viện công nghệ bưu chính viễn thông [2] https://www.mathworks.com/ [3] Help Matlab [4] http://www.matlabthayhai.info/ [5] https://www.youtube.com/watch?v=oXKKiZGe95s [6] https://123doc.org [7] https://grabcad.com/ [8] http://www.instructables.com/ [9] GS TS Nguyễn Thiện Phúc: Robot Công Nghiệp – Nhà xuất bản khoa học kỹ thuật [10] PGS TS Lê Cung: Truyền Động Cơ Khí – Trường đại học bách khoa đà nẵng [11] Nguyễn Văn Dự: Hướng Dẫn Tính Toán Băng Tải [12] PGS.TS Trịnh Chất – TS Lê Văn Uyển: Tính tốn thiết kế dẫn đợng khí – Tập I, tập II Sinh viên thực hiện: Nguyễn Khương Quỳnh – Trần Thị Thơ Giáo viên hướng dẫn: TS Võ Như Thành 79 PHỤ LỤC * Chương trình Robot Arm /* DO AN TOT NGHIEP CO DIEN TU Tran Thi Tho - Nguyen Khuong Quynh */ /* */ #include #include #include // Thêm vào sketch thư viện Serial Command /* */ SerialCommand sCmd; // Khai báo biến sử dụng thư viện Serial Command #define SERVO_COUNT const byte servoPin[SERVO_COUNT] = { 2, 3, 5, 6, 9, 10, 11}; Servo myservo[SERVO_COUNT]; /* */ int matlabdata[3]; int DC=4; int k=0,m,j =0; /* */ // vi tri ban dau const byte bandau[SERVO_COUNT] = {5, 5, 175, 120, 90, 5, 10}; const byte sanphamloi[SERVO_COUNT] = {5, 53, 127, 43, 50, 5, 10}; #define thongso byte newPos[thongso]; /* */ double x; double y; double z; double dauxoay = 0; int dc,x1; float ax = 0; float ay = 0; float az = -1; double Th1; double Th2; Phụ lục double Th3; double Th4; double Th5; /* */ const float pi = 3.14; int a=0; int i=1; int d1 = 100, d5 = 110, a2 = 110, a3 = 107; float c3, s3, c2, s2, mx, my, th1, th2, th3, th4, th5, th234; /* */ void setup() { Serial.begin(9600); pinMode(DC,OUTPUT); //cài đặt servo - có thể tạo mảng servoPin để thay vào for (int i = 0; i < SERVO_COUNT; i++) { myservo[i].attach(servoPin[i]); } First_Position(); delay(20); } void loop() { if(j>=3) j=0; while(k==0) { if( Serial.available()>0 )// xem có nhận byte liệu không { m=Serial.read(); matlabdata[j]=m;//(m/(10^(2-i))); j=j+1; } if(j>2)k=1; } dc = matlabdata[0]; Phụ lục if(dc == 2) digitalWrite(DC,HIGH); x = (matlabdata[1]+110); Th5 = matlabdata[2]; if(Th5>160) Th5 = Th5-50; Th5 = 180 - Th5; y = 0; z = -10; th1 = double(atan2(y,x)); th234 = double(atan2(-ax*cos(th1)-ay*sin(th1),az)); c3 = double((sq(x*cos(th1)+y*sin(th1)+ d5*sin(th234)) + sq(z- d1 - d5*cos(th234)) - sq(a2) - sq(a3))/(2*a3*a2)); s3 = double(sqrt(1-sq(c3))); th3 = double(atan2(s3,c3)); mx =double( x*cos(th1)+y*sin(th1) + d5*sin(th234)); my = double(z-d1-d5*cos(th234)); s2 =double( my*(a3*cos(th3)+a2) - a3*sin(th3)*mx); c2 = double(mx*(a3*cos(th3) + a2) + a3*sin(th3)*my); th2 = double(atan2(s2,c2)); th4 = double(th234 - th3 - th2); Th1=110+th1*180/pi; Th2=90+th2*180/pi; Th3=120-th3*180/pi; Th4=90-((th3*180/pi)+(th2*180/pi)); if (Th1=175)Th1=175; if (Th2=175)Th2=175; if (Th3=175)Th3=175; if (Th4=175)Th4=175; Action_robotleave(); Action_robotback(); Phụ lục Action_robotdrop(); Serial.println(1); while(dc>1) { if( Serial.available()>0 )// xem có nhận byte liệu không { dc=Serial.read(); if(dc==1) digitalWrite(DC,LOW); } } k=0; } //vitribandau void First_Position() { for (int i = 0; i < SERVO_COUNT; i++) { myservo[i].write(bandau[i]); delay(500); } } // vi tri gap sp void Action_robotleave() //khong xoay khop { // khop dau xoay for (short i= bandau[5]; i