Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 101 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
101
Dung lượng
6,22 MB
Nội dung
BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CƠ KHÍ BÁO CÁO ĐỜ ÁN TỐT NGHIỆP Đề tài: NGHIÊN CỨU, THIẾT KẾ MÁY BÁN HÀNG TỰ ĐỘNG ỨNG DỤNG BỘ ĐIỀU KHIỂN RASPBERRY PI Giáo viên hướng dẫn: ThS Lê Ngọc Duy Sinh viên thực hiện: Dương Viết Nguyên Mã SV: 2018606266 Lớp:2018DHCODT04 Nguyễn Tấn Ngọc Mã SV: 2018605905 Lớp:2018DHCODT03 Nguyễn Văn Sớm Mã SV: 2018606161 Lớp:2018DHCODT04 Khóa 13 Hà Nội, 2022 MƠ TẢ THIẾT BỊ Mô tả nhiệm vụ công nghệ Máy bán hàng hay máy bán hàng tự động máy tự động cung cấp các mặt hàng đồ ăn nhẹ, đồ uống, thuốc lá vé số cho người tiêu dùng sau đưa tiền mặt, thẻ tín dụng thẻ thiết kế đặc biệt vào máy Máy bán hàng tự động hiện đại phát triển Anh vào đầu năm 1880 để phát bưu thiếp Cấu trúc thiết bị Nội dung báo cáo LỜI MỞ ĐẦU MỤC LỤC CHƯƠNG GIỚI THIỆU CHUNG 1.1 Các vấn đề đặt 1.2.Tổng quan đề tài 1.3.Ý nghĩa khoa học thực tiễn đề tài 1.4 Mục tiêu nghiên cứu đề tài 1.5 Đối tượng phạm vi nghiên cứu 1.6 Phương pháp nghiên cứu CHƯƠNG TỔNG QUAN VỀ MÁY BÁN HÀNG TỰ ĐỘNG 2.1 Tổng quan máy bán hàng tự động 2.2 Tổng quan vi điều khiển camera 2.3 Phương pháp nhận dạng tiền giấy CHƯƠNG TÍNH TỐN, THIẾT KẾ MƠ HÌNH MÁY MÁY BÁN HÀNG TỰ ĐỘNG 3.1 Thiết kế hệ thống khí 3.2 Thiết kế hệ thống nhận dạng tiền 3.3 Thiết kế tích hợp hệ thống điện, hệ thống điều khiển vào máy bán hàng CHƯƠNG 4: KẾT LUẬN VÀ ĐỊNH HƯỚNG PHÁT TRIỂN 4.1 Kết đạt 4.2 Định hướng phát triển LỜI MỞ ĐẦU Với sự phát triển cách mạng công nghiệp 4.0, công nghệ xử lý ảnh có bước tiến lớn Ngày nhiều cơng nghệ mới phát triển từ trí tuệ nhân tạo(Artificial Intelligence - AI) công nghệ học máy(Machine Learning) sau cơng nghệ học sâu(Deep Learning) giúp cải thiện độ thơng minh trí tuệ nhân tạo Đối với điều khiển Raspberry Pi, điều khiển đánh giá cao mảng Internet vạn vật(Internet of Things - IoT ) Từ thành đó, nhóm nhận thấy ngành trí tuệ nhân tạo phát triển nhanh chóng góp phần vào sự phát triển chung nên nhóm định chọn mảng xử lý ảnh theo dạng Neural Networks để nhận diện số loại tiền mặt Việt Nam để hoàn thành học phần “Đồ án tốt nghiệp” với đề tài “Nghiên cứu, thiết kế máy bán hàng tự động ứng dụng điều khiển Raspberry Pi.” Báo cáo trình bày chi tiết xử lý ảnh, công nghệ học sâu, mạng Neural Networks quy trình thiết kế gia cơng khí mơ hình máy bán hàng tự động Nhóm sinh viên xin gửi lời cảm ơn đến Thạc sỹ Lê Ngọc Duy hướng dẫn nhóm để nhóm hồn thành đề tài nghiên cứu Tuy nhiên trình nghiên cứu đề tài, kiến thức chuyên ngành cịn hạn chế nên nhóm vẫn cịn nhiều thiếu sót tìm hiểu, đánh giá trình bày đề tài Rất mong nhận sự quan tâm, góp ý thầy cô giảng viên môn để đề tài nhóm đầy đủ hồn chỉnh Xin chân thành cảm ơn! Hà Nội, ngày tháng năm 2022 Sinh viên thực hiện: Dương Viết Nguyên Nguyễn Tấn Ngọc Nguyễn Văn Sớm MỤC LỤC LỜI MỞ ĐẦU DANH MỤC HÌNH ẢNH DANH MỤC BẢNG BIỂU Chương 1: GIỚI THIỆU CHUNG 10 1.1 Tổng quan đề tài 10 1.2 Các vấn đề đặt với đề tài 10 1.3 Ý nghĩa khoa học thực tiễn đề tài 11 1.4 Phương pháp nghiên cứu 11 1.5 Giới hạn, phạm vi nghiên cứu 11 Chương 2: CƠ SỞ LÝ THUYẾT 13 2.1 Tổng quan máy bán hàng tự động 13 2.2 Tổng quan vi điều khiển camera 16 2.2.1 Raspberry Pi 16 2.2.2 Vi điều khiển Arduino 17 2.2.3 Phương thức giao tiếp Raspberry với Arduino 20 2.3 Phương pháp nhận dạng tiền giấy 20 2.3.1 Ngơn ngữ lập trình Python 20 2.3.2 Tổng quan xử lý ảnh 21 2.3.3 Deep Learning 32 2.3.4 Mạng CNN 36 2.3.5 Các cấu trúc mạng CNN phổ biến 45 Chương 3: TÍNH TỐN, THIẾT KẾ MÁY MÁY BÁN HÀNG TỰ ĐỘNG 54 3.1 Tính tốn thiết kế khí 54 3.1.1 Thiết kế module kẹp, phân loại tiền lưu trữ 54 3.1.2 Thiết kế module chứa trả sản phẩm 55 3.1.3 Khung máy bán hàng tự động 55 3.2 Tính tốn thiết kế hệ thống nhận dạng tiền 59 3.2.1 Phân tích tốn 59 3.2.2 Các bước thực hiện 60 3.3 Tính tốn thiết kế tích hợp hệ thống điện, hệ thống điều khiển vào máy bán hàng 66 Chương 4: KẾT LUẬN VÀ ĐỊNH HƯỚNG PHÁT TRIỂN 72 4.1 Kết đạt 72 4.2 Hạn chế 73 4.3 Định hướng phát triển 75 DANH MỤC VỀ TÀI LIỆU THAM KHẢO 76 PHỤ LỤC 76 Code Raspberry Pi 76 Tạo sở liệu 77 Train model 78 Test 82 Code Arduino 82 Bản vẽ khí 96 Sơ đồ đấu nối thiết bị 98 DANH MỤC HÌNH ẢNH Hình 2.1 Nhà phát minh Hero of Alexandria máy bán hàng tự động giới 13 Hình 2.2 Máy bán hàng tự động ngày 14 Hình 2.3 Máy bán hàng tự động hồ Gươm (Hà Nội) 15 Hình 2.4 Raspberry Pi 16 Hình 2.5 Thông số kỹ thuật Raspberry Pi 16 Hình 2.6 Các chân tín hiệu Raspberry Pi 17 Hình 2.7 Cấu tạo Arduino 18 Hình 2.8 Giao diện phần mềm IDE 19 Hình 2.9 Biểu tượng ngơn ngữ lập trình Python 21 Hình 2.10 Hệ màu RGB 22 Hình 2.11 Chọn màu hệ RGB 22 Hình 2.12 Mathematical bridge, Cambridge 23 Hình 2.13 Tách ma trận biểu diễn màu ma trận, ma trận lưu giá trị màu 25 Hình 2.14 Vector v kích thước n, ma trận W kích thước m*n 25 Hình 2.15 Hình hộp chữ nhật kích thước a*b*h 25 Hình 2.16 Biểu diễn ảnh màu 28x28x3 26 Hình 2.17 Ảnh xám mathematical bridge 27 Hình 2.18 Biểu diễn ảnh xám 27 Hình 2.19 OpenCV 28 Hình 2.20 OpenCV nhận diện chữ viết tay 29 Hình 2.21 OpenCV nhận diện khuôn mặt 30 Hình 2.22 Sự kết hợp OpenCV – Python 31 Hình 2.23 Deep learning 33 Hình 2.24 Mạng neural networks 34 Hình 2.25 Ứng dụng Deep learning 36 Hình 2.26 Mạng thần kinh 37 Hình 2.27 Convolutional layer 37 Hình 2.28 Lớp tích chập lấy cạnh 38 Hình 2.29 Lớp tích chập làm mờ 39 Hình 2.30 Cấu trúc mạng CNN 40 Hình 2.31 Trường tiếp cận cục 41 Hình 2.32 Cách tạo hidden layer 41 Hình 2.33 Cách tạo hidden layer 42 Hình 2.34 Các hidden layer với tensor 42 Hình 2.35 Bias and variance 43 Hình 2.36 Pooling layer 44 Hình 2.37 Pooling layer 44 Hình 2.38 Kết lớp Pooling 45 Hình 2.39 Cấu trúc mạng VGG16 46 Hình 2.40 Mơ hình Resnet 47 Hình 2.41 Mơ hình GoogLeNet 48 Hình 2.42 Ứng dụng cảu MobileNet 49 Hình 3.1 Module kẹp phân loại tiền 54 Hình 3.2 Hình mơ module 55 Hình 3.3 Hình mơ khung máy 56 Hình 3.4 Biểu diễn lực tác động lên khung 57 Hình 3.5 Biểu diễn ứng suất 58 Hình 3.6 Biểu diễn chuyển vị 58 Hình 3.7 Biểu diễn hệ số an tồn 59 Hình 3.8 DroidCam 60 Hình 3.9 Dữ liệu "00000" 61 Hình 3.10 Dữ liệu "10000" 61 Hình 3.11 Dữ liệu "20000" 61 Hình 3.12 Dữ liệu gán nhãn 62 Hình 3.13 Data augumentation 63 Code Arduino //Khai báo thư viện #include #include #include LiquidCrystal_I2C lcd(0x27,16,2); //Định nghĩa các chân tín hiệu khai báo biến #define ina #define inb int dc1 = 4; int dc2 = 5; int dc3 = 6; int dc4 = 7; #define nut1 A0 #define nut2 A1 #define nut3 A2 #define nut4 A3 int vitri; unsigned int tien; String d; void setup() { //Khai báo sơ cho biến Serial.begin(9600); pinMode(ina,OUTPUT); 84 pinMode(inb,OUTPUT); pinMode(dc1,OUTPUT); pinMode(dc2,OUTPUT); pinMode(dc3,OUTPUT); pinMode(dc4,OUTPUT); pinMode(nut1, INPUT_PULLUP); pinMode(nut2, INPUT_PULLUP); pinMode(nut3, INPUT_PULLUP); pinMode(nut4, INPUT_PULLUP); digitalWrite(dc1, HIGH); digitalWrite(dc2, HIGH); digitalWrite(dc3, HIGH); digitalWrite(dc4, HIGH); tien = 0; } void loop() { //Chương trình lcd.init(); lcd.backlight(); lcd.setCursor(2,0); lcd.print("Xin chao ban!"); delay(1000); lcd.clear(); lcd.print("So lan mua la "+String(tien)); 85 delay(3000); if (tien ==0) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Hay chon so"); lcd.setCursor(0, 1); lcd.print(" 1, 2, hay 4?"); while (true) { if (digitalRead(nut1) == LOW) { vitri = 1; Serial.print(1); break; } if (digitalRead(nut2) == LOW) { vitri = 2; Serial.print(1); break; } if (digitalRead(nut3) == LOW) { vitri = 3; Serial.print(1); break; } 86 if (digitalRead(nut4) == LOW) { vitri = 4; Serial.print(1); break; } } nhan: while(true){ if (Serial.available()>0) { d = Serial.readStringUntil('\r'); if (d == "10000") { tien = tien +1; digitalWrite(ina, HIGH); digitalWrite(inb, LOW); delay(2000); digitalWrite(ina, LOW); digitalWrite(inb, LOW); } else if (d == "20000") { tien = tien + 2; digitalWrite(ina, HIGH); digitalWrite(inb, LOW); 87 delay(2000); digitalWrite(ina, LOW); digitalWrite(inb, LOW); } else if (d == "50000") { tien = tien + 5; digitalWrite(ina, HIGH); digitalWrite(inb, LOW); delay(2000); digitalWrite(ina, LOW); digitalWrite(inb, LOW); } else if (d == "00000") { tien = tien +0; digitalWrite(inb, HIGH); digitalWrite(ina, LOW); delay(1000); digitalWrite(ina, LOW); digitalWrite(inb, LOW); } }} if (tien > 0) { 88 lcd.clear(); lcd.print("Dang lay "); switch(vitri) { case 1: digitalWrite(dc1, LOW); delay(3000); digitalWrite(dc1, HIGH); tien = tien -1; goto ketthuc; break; case 2: digitalWrite(dc2, LOW); delay(3000); digitalWrite(dc2, HIGH); tien = tien -1; goto ketthuc; break; case 3: digitalWrite(dc3, LOW); delay(3000); digitalWrite(dc3, HIGH); tien = tien -1; goto ketthuc; break; 89 case 4: digitalWrite(dc4, LOW); delay(3000); digitalWrite(dc4, HIGH); tien = tien -1; goto ketthuc; break; }} else { lcd.clear(); lcd.print("Vui long thu lai!"); goto nhan; } } else if (tien > 0) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Hay chon so"); lcd.setCursor(0, 1); lcd.print(" 1, 2, hay 4?"); while (true) { if (digitalRead(nut1) == LOW) { 90 vitri = 1; break; } if (digitalRead(nut2) == LOW) { vitri = 2; break; } if (digitalRead(nut3) == LOW) { vitri = 3; break; } if (digitalRead(nut4) == LOW) { vitri = 4; break; } } lcd.clear(); lcd.print("Dang lay "); switch(vitri) { case 1: digitalWrite(dc1, LOW); delay(3000); digitalWrite(dc1, HIGH); tien = tien -1; 91 break; case 2: digitalWrite(dc2, LOW); delay(3000); digitalWrite(dc2, HIGH); tien = tien -1; break; case 3: digitalWrite(dc3, LOW); delay(3000); digitalWrite(dc3, HIGH); tien = tien -1; break; case 4: digitalWrite(dc4, LOW); delay(3000); digitalWrite(dc4, HIGH); tien = tien -1; break; } ketthuc: lcd.clear(); lcd.setCursor(2,0); lcd.print("Hay lay do"); lcd.setCursor(0,1); 92 lcd.print("Cam on quy khach"); delay(2000); }} 93 94 95 Bản vẽ khí 96 97 4.3.1 Sơ đồ đấu nối thiết bị 98 ... động giảm, lợi nhuận tăng Từ lợi ích mơ hình máy bán hàng tự động ứng dụng Raspberry mang lại mà nhóm định lựa chọn đề tài ” Nghiên cứu, thiết kế máy bán hàng tự động ứng dụng điều khiển Raspberry. .. QUAN VỀ MÁY BÁN HÀNG TỰ ĐỘNG 2.1 Tổng quan máy bán hàng tự động 2.2 Tổng quan vi điều khiển camera 2.3 Phương pháp nhận dạng tiền giấy CHƯƠNG TÍNH TỐN, THIẾT KẾ MƠ HÌNH MÁY MÁY BÁN HÀNG TỰ ĐỘNG... cứu, thiết kế máy bán hàng tự động ứng dụng điều khiển Raspberry Pi. ” Báo cáo trình bày chi tiết xử lý ảnh, công nghệ học sâu, mạng Neural Networks quy trình thiết kế gia cơng khí mơ hình máy