KẾT LUẬNRobot tự hành là một sản phẩm có tính ứng dụng cao trong cuộc sống, nó đang không ngừng được nghiên cứu, hoàn thiện và sử dụng ngày càng rộng rãi trong đời sống và sản xuất. Hơn nữa, nghiên cứu chế tạo Robot tự hành còn là sân chơi bổ ích cho các bạn sinh viên đam mê Robot, thúc đẩy đam mê và sự sáng tạo của học sinh, sinh viên
MỤC LỤC LỜI MỞ ĐẦU CHƢƠNG ĐẶT VẤN ĐỀ 1.1 Tổng quan Robot tự hành 1.1.1 Sự đời Robot 1.1.2 Khái niệm Robot tự hành ứng dụng Robot tự hành 1.2 Giới thiệu Ơ tơ tự hành trạng Ơ tơ tự hành thực tế 1.2.1 Giới thiệu Ơ tơ tự hành 1.2.2 Thực trạng ô tô tự hành thực tế 1.3 Nhiệm vụ đề tài 12 CHƢƠNG THIẾT KẾ KỸ THUẬT 13 2.1 Robot bám đường theo vạch 13 2.1.1 Nhiệm vụ 13 2.1.2 Các phương pháp bám đường Robot 13 2.1.3 Nguyên tắc hoạt động Robot bám đường 16 2.2 Robot tránh va chạm 17 2.2.1 Nhiệm vụ 17 2.2.2 Các phương pháp phát chướng ngại vật 17 2.3 Thiết kế Robot 20 2.3.1 Cấu tạo Robot 20 2.3.2 Sơ đồ khối chức 22 CHƢƠNG SƠ ĐỒ MẠCH VÀ LẬP TRÌNH 40 3.1 Sơ đồ thuật toán 40 3.2 Sơ đồ nguyên lý 41 3.3 Sản phẩm thực tế 42 3.4 Chương trình lập trình 42 KẾT LUẬN 53 TÀI LIỆU THAM KHẢO 54 DANH MỤC HÌNH ẢNH Hình 1.1 Robot di chuyển chân Hình 1.2 Robot di chuyển bánh Hình 1.3 Robot di chuyển xích Hình 1.4 Robot y tế Hình 1.5 Robot phun thuốc trừ sâu nơng nghiệp Hình 1.6 Xe tự hành thực tế Hình 1.7 Robot tự hành thám hiểm vũ trụ 11 Hình 2.1 Chuyển động cuộn dây vạch từ 14 Hình 2.2 Robot bám đường theo vạch màu đen 15 Hình 2.3 Các hướng Robot 16 Hình 2.4 Xe tự hành nhận diện chướng ngại vật thực tế 17 Hình 2.5 Ảnh gốc ảnh sau tách biên 18 Hình 2.6 Phương pháp dò 18 Hình 2.7 Cảm biến siêu âm 19 Hình 2.8 Mơ hình Xe tự lái 20 Hình 2.9 Sơ đồ khối chức 23 Hình 2.10 Pin 3,7V 23 Hình 2.11 Cấu tạo Arduino 24 Hình 2.12 Led thu phát hồng ngoại cảm biến hồng ngoại 26 Hình 2.13 Led phát hồng ngoại 26 Hình 2.14 Led thu hồng ngoại 27 Hình 2.15 Hoạt động led hồng ngoại 27 Hình 2.16 Modul cảm biến hồng ngoại 28 Hình 2.17 Bốn Modul cảm biến hồng ngoại 29 Hình 2.18 Hình ảnh cảm biến siêu âm HY- SRF05 30 Hình 2.19 Nguyên lý hoạt động cảm biến siêu ấm SRF-05 31 Hình 2.20 Giản đồ xung chế độ 32 Hình 2.21 Giản đồ xung chế độ 33 Hình 2.22 Modul L298 34 Hình 2.23 Mạch cầu H 35 Hình 2.24 Cầu H điều khiển động quay thuận 36 Hình 2.25 Cầu H điều khiển động quay ngược 36 Hình 2.26 Xe pháo phòng khơng tự hành ZSU-57-2 dùng bánh xích 38 Hình 2.27 Màn hình LCD 16x2 38 Hình 3.1 Sơ đồ thuật toán 40 Hình 3.1 Sơ đồ khối Matlab Simulink 41 Hình 3.2 Sơ đồ nguyên lý 41 Hình 3.3 Sản phẩm thực tế Robot tự hành 42 DANH MỤC BẢNG Bảng Các linh kiện mạch 22 Bảng Mức lệch Robot 30 Bảng Chức chân SRF05 31 LỜI MỞ ĐẦU Cuộc cách mạng khoa học công nghệ diễn ngày làm thay đổi toàn diện sâu sắc sống trình sản xuất người Phép màu công nghệ giúp người làm nhiều việc phi thường mà trước có trí tưởng tượng Thế giới tiến ngày gần đến với kinh tế tri thức Xuất phát từ nhu cầu thực tiễn, Robot ứng dụng rộng rãi công nghiệp, thay người hoạt động môi trường nguy hiểm, độc hại Chính nhóm tác giả lựa chọn đề tài đồ án tốt nghiệp “ Thiết kế chế tạo Robot tự hành” cụ thể Ơ tơ tự lái Hiện giới có nhiều chuyên gia kỹ thuật hãng nghiên cứu chế tạo xe tự hành, phát minh đại đầy tiềm phát triển Nhận thấy đề tài hay, tính ứng dụng cao, chúng em tìm hiểu, nghiên cứu chế tạo Robot tự hành hướng dẫn Th.s Phạm Khánh Tùng Mục đích đề tài hướng đến tạo bước đầu cho sinh viên thử nghiệm ứng dụng vi điều khiển thực tiễn để từ tìm tòi, phát triển nhiều ứng dụng khác đời sống ngày cần đến Trong trình thực đề tài, kiến thức nhiều hạn chế nên gặp nhiều khó khăn khơng tránh khỏi sai sót, mong góp ý q báu thầy để chúng em hoàn thiện đề tài Chúng em xin chân thành cảm ơn! CHƢƠNG ĐẶT VẤN ĐỀ 1.1 Tổng quan Robot tự hành 1.1.1 Sự đời Robot Robot xuất sống từ lâu, phần thiếu sống đại Robot góp vào cơng lao động, Robot làm nên cách mạng lao động, khoa học cơng nghệ coi trợ thủ đắc lực cho ngành khoa học như: khoa học quân sự, khoa học giáo dục, y học, ngành giải trí,v.v…Vậy Robot gì? xuất từ nào? Nhà soạn kịch Karel Capek người Tiệp Khắc đưa lên sân khấu kịch có tiêu đề “ Romands Univesal Robot” vào năm 1921 Trong kịch này, Rossum trai ông ta chế tạo máy gần giống với người, để phục vụ cho người Theo tiếng Sec “ Robot” nghĩa “ Người tạp dịch” Có lẽ gợi ý ban đầu cho nhà sáng chế kỹ thuật cấu máy móc bắt chước hoạt động bắp người Đến trước chiến tranh giới lần thứ hai nhu cầu sử dụng máy móc để làm việc môi trường độc hại thay người trở nên vô cấp thiết Ban đầu cấu máy đơn giản tay máy người vận hành, gồm khớp, dây chằng Cho đến năm tiếp theo, qua nghiên cứu chuyên gia kỹ thuật hệ máy điều khiển từ xa có khả mềm dẻo tự động hóa cao đời, người ta gọi tên Robot 1.1.2 Khái niệm Robot tự hành ứng dụng Robot tự hành Robot loại máy thực cơng việc cách tự động điều khiển máy tính vi mạch điện tử lập trình Robot tác nhân khí, nhân tạo, chuyển động khiến người ta cảm giác giống chuyển động người Vậy Robot tự hành gì? Trước hết, “ Tự hành” khả thiết bị, máy móc thực nhiệm vụ mà khơng cần đến tác động người, kích hoạt tự thực số nhiệm vụ, có khả cảm nhận phản ứng với môi trường xung quanh Robot tự hành hiểu loại xe Robot có khả tự di chuyển, tự vận động Có thể chia Robot tự hành thành hai nhóm : chuyển động chân (legged) bánh (wheeled) Robot di chuyển bánh có ba loại: loại di chuyển bánh xe (loại phổ biến), loại di chuyển bánh xích loại hỗn hợp bánh xe bánh xích Hình 1.1 Robot di chuyển chân Hình 1.2 Robot di chuyển bánh Hình 1.3 Robot di chuyển xích Robot ngày sử dụng rộng rãi, ứng dụng rộng, rải khắp ngành nghề Trong ngành giải trí, có mơ hình robot đồ chơi cho trẻ em; nơng nghiệp có robot tưới cây, thu hoạch rau củ quả, phun thuốc trừ sâu,v.v…; quân sự, xe phòng khơng, dò mìn, xe tank, ; sống hàng ngày có máy hút bụi tự động; hay y học, vai trò Robot quan trọng, mổ nội soi ứng dụng robot bước đột phá Bệnh viện nhi trung ương bước đột phá ngành y học Việt Nam; Robot sống hàng ngày, Robot lễ tân nhóm sinh viên trường đại học Sư phạm Kỹ thuật T.P.Hồ Chí Minh chế tạo ứng dụng nhà khác An Bình có khả giao tiếp đáng ngạc nhiên; chí Robot ứng dụng ngành giáo dục, Robot ứng dụng dạy tiếng anh, hỗ trợ kiểm tra nghe, nói học viên thực hành tình giao tiếp; đặc biệt khơng thể khơng kể đến vai trò quan trọng Robot ngành công nghiệp, ứng dụng Robot để hàn, phun sơn, thay người làm việc môi trường độc hại, phóng xạ, nước sâu, lòng đất, hay làm việc nặng nhọc Hình 1.4 Robot y tế Hình 1.5 Robot phun thuốc trừ sâu nơng nghiệp Robot tự hành có tiềm ứng dụng lớn, kể đến vận chuyển nhiên liệu, hàng hóa tòa nhà, nhà máy, cửa hàng, sân bay, thư viện; Robot phục vụ quét dọn đường phố, khoang chân không; Robot kiểm tra môi trường nguy hiểm; Robot canh gác, thám; Robot khám phá không gian, di chuyển hành tinh; Robot hàn, sơn nhà máy; Robot xe lăn phục vụ người khuyết tật; Robot phục vụ sinh hoạt gia đình,v.v… Qua ứng dụng rộng rãi Robot tự hành, đề tài đồ án tốt nghiệp này, em thiết kế chế tạo Robot tự hành, cụ thể ô tô tự hành, ô tô tự động bám đường theo vạch tự động tránh va chạm loại Robot tự hành 1.2 Giới thiệu Ơ tơ tự hành trạng Ơ tơ tự hành thực tế 1.2.1 Giới thiệu Ơ tơ tự hành Trong vài năm trở lại đây, ô tô tự hành (hay gọi xe tự lái) phát triển cách nhanh chóng Hàng loạt nhà sản xuất ơtơ công ty công nghệ lớn tham gia nghiên cứu tính tự hành, với hàng chục tỷ USD tiền đầu tư Nhìn nhận từ lợi ích mà mang lại, nhiều người cho tương lai ngành tơ Đã có nhiều thảo luận loại xe này, có nhiều hãng tham gia phát triển Google có phòng thí nghiệm "bí mật" chun nghiên cứu cơng nghệ kiểu tơ tự lái Ngồi có nhiều hãng nghiên cứu ô tô tự hành như: Tesla, Uber, Toyota, Waymo, Apple, Ford, Daimler, PWM, Honda, v.v… Hình 1.6 Xe tự hành ngồi thực tế Ơ tơ tự hành tơ có khả hoạt động mà không cần đến can thiệp hay tác động người Ơ tơ tự di chuyển đường xử lý tình khó khăn mà khơng cần tới tài xế Nó có khả phát tránh chướng ngại vật xác định tuyến đường tốt cho hành trình 1.2.2 Thực trạng tơ tự hành thực tế Theo CNN, báo cáo sau thử nghiệm cho thấy, xe tự lái giảm tới 90% vụ tai nạn nay, cứu 30.000 người, giảm 2,12 triệu thương tích năm Xe tự lái chạy điện giúp tiết kiệm 134 tỷ gallon xăng/năm Còn khảo sát trang tin công nghệ Verge, 60% người trưởng thành Mỹ sử dụng xe tự lái, 32% sử dụng dịch vụ mà xe tự lái mang lại Với xu hướng phát triển công nghệ nay, chuyên gia dự đoán, khoảng 15 đến 20 năm nữa, xe tự lái áp đảo phương tiện thịnh hành Theo ông Elon Musk, Giám đốc điều hành hãng Tesla Motor, mẫu xe tự lái hãng thử nghiệm tự vận hành lên đến 90% thao tác mà không cần can thiệp người Bên cạnh đó, mẫu xe Cadillac thử nghiệm tự lái GM tự vận hành với vận tốc lên đến 70 dặm/giờ (khoảng 112 km/giờ) Cả Google Telsa dự đoán tới năm 2020 đôi tay người giải phóng hồn tồn lên xe Những ưu điểm xe tự lái: Hệ thống chống bó phanh tự động tốt ngưỡng phanh mà người lái thực thiết bị tiêu chuẩn, tương tự với việc kiểm soát lực bám kiểm soát ổn định Công nghệ tiên tiến giảm bớt gánh nặng đặt lên người điều khiển đường cao tốc hay tắc đường tất tự động hóa Từ phát điểm mù, cảnh báo đường khởi hành, quản lý gia nhập đường chí tự đậu xe, Với xe tự hành, khơng thể kỳ vọng mức độ giảm thiểu tai nạn 100% xe tự hành thay đổi đáng kể số chục ngàn trường hợp tử vong xảy năm nhiều quốc gia Từ trước đến nay, điều khiển xe dành cho người vượt qua kì thi lấy lái Những người trẻ già, người khuyết tật có triệu chứng tâm lý khơng thể có trải nghiệm Nhưng với xe tự hành, giao thông cá nhân mở tất phân khúc đơn lẻ xã hội Việc làm chủ thiết bị di chuyển đại nằm tầm tay tất người Về mặt thẩm mỹ, xe tự hành thay đổi cách nhìn nhận xế hộp, khía cạnh nội thất khác biệt Vô-lăng, nút bấm, bàn đạp phanh, ga, cần sang số, đồng hồ tốc độ nhiều cụm thiết bị khác trở nên thừa thãi Những nguyên tắc cứng nhắc ghế ngồi phải hướng phía trước khơng hiệu lực Nội thất Hình 3.1 Sơ đồ khối Matlab Simulink 3.2 Sơ đồ nguyên lý Hình 3.2 Sơ đồ nguyên lý 3.3 Sản phẩm thực tế Hình 3.3 Sản phẩm thực tế Robot tự hành 3.4 Chƣơng trình lập trình #include // thư viện cho phép liên lạc I2C với thiết bị khác #include LiquidCrystal_I2C lcd(0x27, 16, 2); #define inA1 //Định nghĩa chân in1 động A #define inA2 //Định nghĩa chân in2 động A #define inB1 //Định nghĩa chân in1 động B #define inB2 //Định nghĩa chân in2 động B #define linesens1 //Định nghĩa chân cảm biến line #define linesens2 //Định nghĩa chân cảm biến line #define linesens3 //Định nghĩa chân cảm biến line #define linesens4 //Định nghĩa chân cảm biến line #define ENA 10 //bam xung PWM #define ENB 11 //bam xung PWM #define trigPin 12 #define echoPin 13 long thoigian; int khoangcach; int i; void setup() { //Serial.begin(9600); lcd.begin(16,2); lcd.backlight(); lcd.display(); pinMode(inA1, OUTPUT);//Set chân in1 dc A output pinMode(inA2, OUTPUT);//Set chân in2 dc A output pinMode(inB1, OUTPUT);//Set chân in1 dc B output pinMode(inB2, OUTPUT);//Set chân in2 dc B output pinMode(linesens1, INPUT);//Set chân cảm biến input pinMode(linesens2, INPUT);//Set chân cảm biến input pinMode(linesens3, INPUT);//Set chân cảm biến input pinMode(linesens4, INPUT);//Set chân cảm biến input pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); analogWrite(ENA,180); analogWrite(ENB,180); } void loop() { cambienkhoangcach(); darkLineFollower (inA1, inA2, inB1, inB2, linesens1, linesens2, linesens3, linesens4); lcd1602(); } void darkLineFollower (byte inR1, byte inR2, byte inL1, byte inL2, byte sen1, byte sen2, byte sen3, byte sen4) { //Hàm điều khiển robot bám line màu tối //inR1, inR2 inL1, inL2 chân tín hiệu điều khiển động di chuyển bên phải trái //sen1,sen2, sen3,sen4 chân nhận tín hiệu từ cảm biến hồng ngoại switch (deviationDarkLine4Sensor (sen1, sen2, sen3, sen4)) { case -1: robotMover( inR1, inR2, inL1, inL2, 6);// rẽ phải break; case -2: robotMover( inR1, inR2, inL1, inL2, 6); break; case 1: robotMover( inR1, inR2, inL1, inL2, 5);// rẽ trái break; case 2: robotMover( inR1, inR2, inL1, inL2, 5); break; case 0: robotMover( inR1, inR2, inL1, inL2, 1);// tiến thẳng break; case 3: robotMover( inR1, inR2, inL1, inL2, 2);// lệch vạch lùi break; } } void cambienkhoangcach() { digitalWrite(trigPin, HIGH); delayMicroseconds(500); digitalWrite(trigPin, LOW); thoigian = pulseIn(echoPin, HIGH); khoangcach = 0.0344*(thoigian/2); if ( khoangcach < = 20 )// dung { analogWrite(ENA,0); analogWrite(ENB,0); } else if ( 20 < khoangcach 40)// nhanh { analogWrite(ENA,180); analogWrite(ENB,180); } } void lcd1602() { lcd.setCursor(0,0); lcd.print("KHOANG CACH LA:"); lcd.setCursor(0,1); lcd.print(khoangcach); lcd.print(" cm "); delay(10); } void robotMover (byte inR1, byte inR2, byte inL1, byte inL2, byte action) { /* inR1 inR2 chân tín hiệu động bên phải inL1 inL2 chân tín hiệu động bên trái action= đứng yên action =1 thẳng action =2 lùi lại action =3 quay trái action =4 quay phải action =5 rẽ trái action =6 rẽ phải */ switch (action) { case 0:// không di chuyển motorControlNoSpeed(inR1, inR2, 0); motorControlNoSpeed(inL1, inL2, 0); break; case 1://đi thẳng motorControlNoSpeed(inR1, inR2, 1); motorControlNoSpeed(inL1, inL2, 1); break; case 2:// lùi lại motorControlNoSpeed(inR1, inR2, 2); motorControlNoSpeed(inL1, inL2, 2); break; case 3:// quay trái motorControlNoSpeed(inR1, inR2, 2); motorControlNoSpeed(inL1, inL2, 1); break; case 4:// quay phải motorControlNoSpeed(inR1, inR2, 1); motorControlNoSpeed(inL1, inL2, 2); break; case 5:// rẽ trái motorControlNoSpeed(inR1, inR2, 1); motorControlNoSpeed(inL1, inL2, 0); break; case 6:// rẽ phải motorControlNoSpeed(inR1, inR2, 0); motorControlNoSpeed(inL1, inL2, 1); break; default: action = 0; } } void motorControlNoSpeed (byte in1, byte in2, byte direct) { // in1 in2 chân tín hiệu để điều khiển động // en is the enable pin // the defauspeed is the highest // direct includes: // 0:Stop // 1:Move on direct // 2:Move on another direct switch (direct) { case 0:// Dừng không quay digitalWrite(in1, LOW); digitalWrite(in2, LOW); break; case 1:// Quay chiều thứ digitalWrite(in1, HIGH); digitalWrite(in2, LOW); break; case 2:// Quay chiều thứ digitalWrite(in1, LOW); digitalWrite(in2, HIGH); break; //default: } } boolean IRSensor (byte PinNumb) { //0 sáng //1 tối return(digitalRead (PinNumb)); } int deviationDarkLine4Sensor (int PinNumb1, int PinNumb2, int PinNumb3, int PinNumb4) { int left = 0; //biến kiểm tra lệch trái int right = 0; // biến kiểm tra lệch phải left = IRSensor (PinNumb1)+IRSensor (PinNumb2); //kiểm tra cảm biến trái màu đen right= IRSensor (PinNumb3)+IRSensor (PinNumb4); //kiểm tra cảm biến phải màu đen Serial.print("left="); Serial.println(left); Serial.print("right="); Serial.println(right); if ((left!=0) || (right!=0))return left - right; else return 3; /* Kết trả là không lệch Âm lệch trái Dương lệch phải */ } Kết luận chương 3: Trong chương chương cuối này, nhóm tác giả trình bày lưu đồ thuật toán sơ đồ nguyên lý thiết kế Robot Đồng thời hình ảnh robot thực tế chế tạo, code lập trình điều khiển Robot Robot chế tạo đáp ứng yêu cầu đề ra, Robot bám đường tránh va chạm theo khoảng cách Robot vật cản, khoảng cách dừng, 20cm khoảng cách 20cm: Robot 40cm: Robot giảm tốc dần, khoảng cách > 40cm: Robot chạy tốc độ bình thường Vậy nhóm tác giả giải xong nhiệm vụ đồ án, chế tạo Robot tự hành mô lại Xe tự hành thực tế, Robot chế tạo chưa đẹp nhiều hạn chế, hoạt động xe tự lái thật KẾT LUẬN Robot tự hành sản phẩm có tính ứng dụng cao sống, khơng ngừng nghiên cứu, hoàn thiện sử dụng ngày rộng rãi đời sống sản xuất Hơn nữa, nghiên cứu chế tạo Robot tự hành sân chơi bổ ích cho bạn sinh viên đam mê Robot, thúc đẩy đam mê sáng tạo học sinh, sinh viên Qua trình thực đề tài “ Thiết kế chế tạo Robot tự hành” nhóm tác giả rút số kết luận sau: Tiến hành thiết kế chế tạo Robot có kích thước 18x15, sử dụng mạch cầu H để điều khiển động cơ, Arduino điều khiển Robot,v.v… Thiết kế mạch điều khiển Robot Robot bám vạch đường điều chỉnh trở lại vạch Robot bị lệch khỏi vạch đường Robot tránh vật cản theo yêu cầu khoảng cách Nếu khoảng cách 20cm: Robot dừng, 20cm khoảng cách 40cm: Robot giảm tốc dần, khoảng cách > 40cm: Robot chạy tốc độ bình thường Dưới giúp đỡ, bảo tận tình thầy thầy hướng dẫn, nhóm tác giả hồn thiện đề tài Robot tự hành chế tạo đáp ứng nhiệm vụ dò đường tránh vật cản Robot bám vạch đường tự động điều chỉnh trở lại vạch đường Robot bị lệch ngồi, đồng thời Robot dừng, chạy chậm, chạy nhanh mức khoảng cách khác nhau, Robot đáp ứng nhiệm vụ đặt Tuy trình thực đề tài nhiều thiếu sót hạn chế, nhóm tác giả có thêm nhiều kinh nghiệm nắm vững kiến thức Chúng em xin chân thành cảm ơn thầy giúp đỡ chúng em nhiều để hoàn thành đề tài! TÀI LIỆU THAM KHẢO [1] Adruino:://www.arduino.cc [2] Điện tử Việt Nam http://www.dientuvietnam.net/forums/ [3] Adruino:://www.arduino.vn [4].Trần Thế San, Cơ sở nghiên cứu sáng tạo Robot, NXB Thống kê 2005 [5] http://diendandien.com [6] http://vi.wikipedia.org ... dụng rộng rãi Robot tự hành, đề tài đồ án tốt nghiệp này, em thiết kế chế tạo Robot tự hành, cụ thể ô tô tự hành, ô tô tự động bám đường theo vạch tự động tránh va chạm loại Robot tự hành 1.2 Giới... học để tạo mô hình Robot tự hành hoạt động gần giống với xe tự hành thực tế 1.3 Nhiệm vụ đề tài Đề tài : “ Thiết kế chế tạo Robot tự hành với hai nhiệm vụ sau: - Nhiệm vụ thứ nhất: Robot tự động... ta gọi tên Robot 1.1.2 Khái niệm Robot tự hành ứng dụng Robot tự hành Robot loại máy thực công việc cách tự động điều khiển máy tính vi mạch điện tử lập trình Robot tác nhân khí, nhân tạo, chuyển