Sơ lược nội dung chính của đề tài bao gồm: Tính toán, thiết kế phần cơ của robot Tính toán thiết kế chế tạo phần khung. Tính toán chọn động cơ cho cơ cấu di chuyển. Tính toán, thiết kế bộ phận điều khiển robot nhện. Tính toán chọn mạch nguồn cần sử dụng. Viết chương trình giao tiếp giữa vi điều khiển và các module được sử dụng trong đề tài mạch cần cho robot di chuyển. Khảo nghiệm sơ bộ robot để đánh giá khả năng hoạt động của nó.
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC NÔNG LÂM THÀNH PHỐ HỒ CHÍ MINH Bùi Việt Nam Võ Hiền Quân THIẾT KẾ, CHẾ TẠO VÀ ĐIỀU KHIỂN ROBOT NHỆN Khóa luận đệ trình để đáp ứng u cầu để cấp Kỹ sư khí chuyên ngành Cơ Điện Tử Giáo viên hướng dẫn: Th.S Nguyễn Đăng Khoa Tháng 06/2016 LỜI CẢM ƠN Chúng em xin trân trọng cám ơn tất quý Thầy, Cô trường Đại học Nơng Lâm Tp Hồ Chí Minh q Thầy, Cơ khoa Cơ khí – Cơng Nghệ trang bị cho chúng em kiến thức quý báu trình học tập trường Chúng em xin chân thành cám ơn Thầy, Cô môn Cơ điện tử hướng dẫn, giúp đỡ chúng em tận tình trình chúng em làm đề tài Chúng em xin bày tỏ lòng biết ơn sâu sắc tới thầy ThS Nguyễn Đăng Khoa, người tận tâm hướng dẫn, bảo tạo điều kiện thuận lợi cho chúng em hoàn thành luận văn Đặc biệt, chúng em xin cảm ơn quý Thầy, Cô Hội đồng dành thời gian nhận xét, góp ý để luận văn chúng em hoàn thiện Cuối cùng, chúng em xin gửi lời cám ơn đến người thân bạn bè động viên, ủng hộ tạo cho điều kiện thuận lợi q trình hồn thành luận văn tốt nghiệp Mặc dù cố gắng thực đề tài cách hoàn chỉnh Nhưng chưa làm quen nhiều với công tác nghiên cứu khoa học, tiếp xúc thực tế với thiết bị, hạn chế kiến thức kinh nghiệm nên khơng thể tránh khỏi thiếu sót Chúng em mong nhận góp ý quý Thầy - Cơ bạn để khóa luận hồn chỉnh Chúng em xin chân thành cám ơn! Thành Phố Hồ Chí Minh, tháng 06 năm 2016 Sinh viên thực hiện: Bùi Việt Nam Võ Hiền Quân TÓM TẮT Đề tài “thiết kế, chế tạo điều khiển robot nhện” thực từ tháng 2/2016 đến tháng 5/2016 Trường Đại học Nơng Lâm Tp Hồ Chí Minh Mục đích thiết kế chế tạo loại robot di chuyển sáu chân cách linh hoạt, robot điều khiển vi điều khiển board mạch Arduino Uno R3 sử dụng 18 động RC servo để truyền động Các chân robot điều khiển hoạt động độc lập, chúng phối hợp với tạo chuyển động cho robot Robot chế tạo di chuyển tự động tránh vật cản nhờ cảm biến siêu âm SRF05, ta điều khiển thơng qua bluetooth điện thoại máy tính Robot nhện di chuyển dựa giải thuật chuyển động thẳng phương pháp cách tam giác thay đổi Robot lập trình để di chuyển tiến, tới, lùi, sang trái, sang phải, dừng Tiềm ứng dụng robot lớn nhiều lĩnh vực giải trí, dân dụng thám hiểm… Sơ lược nội dung đề tài bao gồm: Tính tốn, thiết kế phần robot Tính tốn thiết kế chế tạo phần khung Tính tốn chọn động cho cấu di chuyển Tính tốn, thiết kế phận điều khiển robot nhện Tính tốn chọn mạch nguồn cần sử dụng Viết chương trình giao tiếp vi điều khiển module sử dụng đề tài mạch cần cho robot di chuyển Khảo nghiệm sơ robot để đánh giá khả hoạt động MỤC LỤC LỜI CẢM ƠN .ii TÓM TẮT iii MỤC LỤC iv DANH SÁCH CÁC BẢNG vi DANH SÁCH CÁC HÌNH vii Chương 1: MỞ ĐẦU 1.1 Đặt vấn đề 1.2 Mục đích, yêu cầu .2 Chương 2: TỔNG QUAN 2.1 Giới thiệu tổng quan thiết bị robot nhện 2.2.1 Mạch vi điều khiển Arduino Uno R3 2.2.2 Cảm biến khoảng cách SRF-05 2.2.3 Module bluetooth HC-05 10 2.2.4 Board mạch điều khiển 16 RC-Servo: Module USC-16 .12 2.2.5 Động RC Servo .15 4.2.6 Chế độ điều khiển thông qua Bluetooth .17 Chương 3: NỘI DUNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU 19 3.1 Thời gian địa điểm .19 3.2 Nội dung nghiên cứu 19 3.2.1 Phương pháp thiết kế phần khung robot nhện 19 Chương 4: KẾT QUẢ VÀ THẢO LUẬN 20 4.1 Tính tốn, thiết kế, chế tạo phần khung robot nhện 21 4.1.1 Thiết kế chân robot .21 4.1.2 Thiết kế thân robot .24 4.1.3 Chọn động cho cấu chân robot 25 4.2 Tính tốn thiết kế mạch điều khiển robot nhện 26 4.2.1 Mạch nguồn 26 4.2.2 Sơ đồ nguyên lý mạch giao tiếp vi điều khiển cảm biến khoảng cách HC-05 28 4.2.3 Sơ đồ nguyên lí mạch giao tiếp vi điều khiển module bluetooth HC05 30 4.2.4 Sơ đồ mạch giao tiếp vi điều khiển mạch điều khiển động USC-16 .31 4.2.5 Sơ đồ mạch giao tiếp Arduino động RC Servo 32 4.2.6 Giao tiếp động servo với mạch điều khiển động USC-16 33 4.3 Sơ đồ điều khiển robot nhện .35 4.4 Lưu đồ giải thuật điều khiển robot nhện 36 4.4.1 Giải thuật di chuyển tiến lùi cho robot .39 4.4.2 Giải thuật di chuyển sang trái sang phải cho robot 40 4.4.3 Lưu đồ giải thuật điều khiển tay qua điện thoại thông minh 41 4.4.4 Lưu đồ giải thuật điều khiển tự động robot nhện 44 4.5 Khảo nghiệm sơ vận hành robot nhện 45 Chương KẾT LUẬN VÀ ĐỀ NGHỊ .46 5.1 Kết luận 46 5.2 Đề nghị .46 TÀI LIỆU THAM KHẢO 47 DANH SÁCH CÁC BẢNG Bảng 2.1 Thông số kỹ thuật Arduino Uno R3 Bảng 2.2 Cấu trúc lệnh điều khển servo board mạch USC-16 14 Bảng 4.1 Chức chân mạch nguồn .27 Bảng 4.2 Sơ đồ giao tiếp SRF05 vi điều khiển 29 Bảng 4.3 Chức chân HC05 30 Bảng 4.4 Bảng giao tiếp vi điều khiển USC-16 .32 Bảng 4.5 Giao tiếp động RC servo mạch điều khiển USC-16 34 DANH SÁCH CÁC HÌNH Hình 2.1 Robot nhện Hình 2.2 Sơ đồ chân Arduino Hình 2.3 Sơ đồ nguyên lý mạch Arduino Uno R3 .5 Hình 2.4 Cảm biến khoảng cách SRF-05 .8 Hình 2.5 Module bluetooth HC-05 10 Hình 2.6 Board mạch USC-16 12 Hình 2.7 Động Servo .15 Hình 2.8 Độ rộng xung quy định góc quay động RC Servo 17 Hình 2.9 Giao diện điều khiển qua phần mềm Torobot 17 Hình 2.10 Giao diện phần mềm bluetooth RC Controller điều khiển robot nhện 18 Hình 4.1 Sơ đồ cấu tạo robot nhện 20 Hình 4.2 Cơ cấu chân bậc tự 22 Hình 4.3 Cơ cấu chân bậc tự 23 Hình 4.4 Chân bậc tự 24 Hình 4.5 Thân dạng hình lục giác 24 Hình 4.6 Động RC Servo 25 Hình 4.7 Thiết kế chế tạo hoàn thiện phần khung robot nhện 26 Hình 4.8 Mạch nguồn cung cấp cho động RC servo .27 Hình 4.9 Sơ đồ mạch nguyên lý ổn áp nguồn 5V dùng IC 7805 28 Hình 4.10 Sơ đồ mạch nguyên lý khối nguồn 5V 28 Hình 4.11 Sơ đồ mạch nguyên lý giao tiếp vi điều khiển cảm biến khoảng cách SRF-05 29 Hình 4.12 Sơ đồ mạch nguyên lý module bluetooth HC-05 .30 Hình 4.13 Sơ đồ mạch nguyên lý giao tiếp module bluetooth HC-05 vi điều khiển 31 Hình 4.14 Sơ đồ ngun lí giao tiếp Arduino động RC servo 33 Hình 4.15 Giao tiếp module USC-16 động RC servo .34 Hình 4.16 Hồn thiện mạch điều khiển robot nhện 35 Hình 4.17 Sơ đồ mạch điều khiển robot nhện 35 Hình 4.18 Sơ đồ khối mạch điều khiển robot nhện .36 Hình 4.19 Cách tam giác thay đổi 38 Hình 4.20 Thứ tự chân để điều khiển chuyển động tiến phía trước 39 Hình 4.21 Thứ tự chân để diều khiển lùi phía sau 40 Hình 4.22 Giải thuật chuyển động sang phải .41 Hình 4.23 Lưu đồ giải thuật phần mềm điều khiển 42 Hình 4.24 Lưu đồ giải thuật vi điều khiển 43 Hình 4.25 Lưu đồ giải thuật điều khiển tự động 44 Hình 4.26 Robot nhện hồn thành 45 Chương MỞ ĐẦU 1.1 Đặt vấn đề Trong thời kì cơng nghiệp hóa, đại hóa đất nước, xu hướng hội nhập phát triển với phát triển mạnh mẽ toàn diện người mặt lĩnh vực Những phát minh sáng chế khoa học kỹ thuật nâng lên tầm cao mới, hệ thống điện tử đẩy mạnh sử dụng linh hoạt ngành Nhu cầu người ngày cao, tiềm ứng dụng robot thay ngày mở rộng Để đáp ứng nhu cầu người bắt kịp xu hướng phát triển khoa học, kỹ thuật giới Các trường đại học nhà nước đầu tư nhiều thiết bị dạy học để theo kịp khoa học, công nghệ tiên tiến Nhiều trường tạo điều kiện cho bạn sinh viên tiếp cận, trực tiếp tham nghiên cứu khoa học công nghệ nhiều lĩnh vực Ngay từ đời robot áp dụng rộng rãi để thay sức lực người việc bốc xếp, vận chuyển vật liệu… dây chuyền sản xuất tự động Nói ưu điểm robot di động lĩnh vực tiềm năng, nhiều ứng dụng thực tiễn Chẳng hạn thám hiểm nơi người đến: hang động, khu vực nhiễm phóng xạ Trong công tác kiểm tra bồn chứa công nghiệp Trong đời sống robot di động ứng dụng để tiếp cận thú để bắn thuốc gây mê Trong nghiên cứu robot đổ vùng núi đá hành tinh xa xôi… Cho đến nay, nhiều hệ robot di chuyển nghiên cứu phát triển ngày hoàn thiện Đặc biệt thập kỉ vừa qua, robot có cải tiến vượt bậc giống người Nên việc nghiên cứu chế tạo robot việc cần thiết lĩnh vực thiếu nghiên cứu khoa học để áp dụng rộng rãi thành tựu khoa học vào đời sống người Từ yếu tố tình hình thực tế Việt Nam chúng em chọn bắt tay vào nghiên cứu “Thiết kế, chế tạo điều khiển robot nhện” sáu chân 1.2 Mục đích, yêu cầu Mục đích chung Thiết kế, chế tạo điều khiển chuyển động robot điện thoại thông minh thông qua module bluetooth HC05 Giao tiếp vi điều khiển Arduino Uno R3, module USC-16 với động RC Servo, có dùng cảm biến siêu âm SRF05 Mục đích cụ thể Phần khí: Thiết kế, chế tạo phần khí bao gồm: thân robot nhện, cấu di chuyển bao gồm chân robot, chân có ba bậc tự Tiến hành ghép nối động thiết bị cần thiết mối ghép bu lông, đai ốc, để điều khiển robot Phần điều khiển: Nghiên cứu giao tiếp vi điều khiển Arduino với mạch điều khiển động USC-16 Nghiên cứu viết chương trình giao tiếp truyền nhận liệu Arduino module bluetooth HC05 Nghiên cứu viết chương trình giao tiếp truyền nhận liệu vi điều khiển cảm biến khoảng cách SRF05 Nghiên cứu viết chương trình giao tiếp vi điều khiển với động rc servo để điều khiển hoạt động robot nhện Điều khiển robot nhện thông qua phần mềm Torobot Điều khiển robot nhện thông qua điện thoại smartphone Điều khiển cho robot chạy tự động thơng qua kiểm sốt cảm biến khoảng cách SRF05 Yêu cầu: Vẽ gia công phần khí Nắm vững lập trình cho vi điều khiển Hiểu hoạt động mạch điều khiển động USC-16 Biết sử dụng phần mềm điều khiển điện thoại thơng minh Hồn thiện mạch điều khiển robot nhện Hình 4.16 Hồn thiện mạch điều khiển robot nhện 4.3 Sơ đồ điều khiển robot nhện Hình 4.17 Sơ đồ mạch điều khiển robot nhện Sơ đồ mạch điều khiển robot nhện thể Hình 4.17 cho ta cách điều khiển xác giá trị góc quay động hay giá trị xác bước robot Hệ thống gồm có khối điều khiển mạch Arduino Uno R3 kết nối với mạch điều khiển động servo USC-16 thông qua cổng giao tiếp RXD, TXD Ngồi ra, Arduino kết nối với cảm biến khoảng cách để di chuyển tránh vật cản Trên mạch điều khiển động có cổng giao tiếp RXD, TXD với module bluetooth để ta điều khiển robot nhện điện thoại smartphone máy tính Sau ta nối động RC Servo với mạch điều khiển động Sơ đồ khối điều khiển robot nhện Hình 4.18 Sơ đồ khối mạch điều khiển robot nhện 4.4 Lưu đồ giải thuật điều khiển robot nhện Các phương án di chuyển cho robot nhện Cách lặp lặp lại vị trí đặt chân robot di chuyển gọi cách di chuyển tuần hồn, cách lại cách khơng tuần hồn Với cách di chuyển khơng tuần hồn ứng dụng để di chuyển địa hình phức tạp như: leo, trèo qua chướng ngại vật Một cách biểu dạng có chu kỳ Bắt đầu với n chân tiếp xúc với khối lượng thân thay đổi đặt chân chạm đất, chân không chạm đất nâng lên di chuyển Cách chân tiếp xúc với chân nâng, khối lượng thân di chuyển lên phía trước chu kỳ Ở trạng thái cân tĩnh định robot ln ln có ba chân tiếp xúc với đất giữ trọng tâm thân nằm tam giác tạo ba điểm tiếp xúc chân với Còn cách cân động học ln có ba chân tiếp xúc với vài thời điểm chu kỳ, có trạng thái tất chân rời khỏi mặt đất khoảng thời gian ngắn Một chu kỳ cách gọi bước Trong phần bước chu kỳ di chuyển chân hoàn thành lặp lặp lại Có ba cách di chuyển áp dụng cho robot nhện là: cách tam giác thay đổi, cách gợn sóng cách dạng sóng Với cách ứng dụng để di chuyển địa hình khác nhau, với địa hình có cách di chuyển định mà Phương án 1: Cách tam giác thay đổi Cách sử dụng cho robot di chuyển mặt phẳng với tốc độ di chuyển nhanh Với cách chân robot chia làm hai pha: pha ban đầu nâng lên ba chân lên khỏi nền, sau ba chân chạm đất vẫy phía sau Sau ba chân chạm đất vẫy phía sau xong ba chân lại vẫy phía trước, thân robot di chuyển phía trước Sau đó, đến pha thứ hai chân nâng lên hạ xuống để nâng ba chân lại Và lặp lặp lại chu kì Với cách robot luôn cân thời điểm robot ln có ba chân tiếp xúc với Hình 4.19 Cách tam giác thay đổi Trong đó: ● Chân chạm đất ○ Chân không chạm đất Đây cách đơn giản ổn định robot nhện Quy luật cách tam giác thay đổi chia chân robot làm hai nhóm khác thực việc di chuyển giống chu kỳ Tuy nhiên, cách cách tối ưu dành cho robot tĩnh định sáu chân Phương án 2: Cách dạng gợn sóng Cách dạng sử dụng robot đòi hỏi ổn định nhiều so với cách tam giác thay đổi Cách đảm bảo luôn có bốn chân tiếp xúc với suốt thời điểm di chuyển Vì vậy, đảm bảo ổn dịnh chân cao Di chuyển chân phía sau bên thân, sau chân Các cặp chân hoạt động lệch pha 180º Với cách thân robot di chuyển chậm so với cách tam giác thay đổi lại có độ ổn định cao Phương án 3: Cách dạng sóng Cách có nhiều nguyên lý so với cách dạng gợn sóng Di chuyển chân cuối bên Khi chân di chuyển thứ tự chân bước lên phía trước lan sóng phía trước thân tiếp tục chân phía bên chân phía sau Điều có nghĩa robot ln có chân tiếp xúc với mặt đất thời điểm Cách chậm so với hai cách trình bày Nhưng có độ ổn định cao cách sử dụng để di chuyển dịa hình phức tạp, gồ ghề núi, địa hình đất đá… Nhóm chúng em chọn phương án 1(phương án cách tam giác thay đổi) để áp dụng cho robot nhện sáu chân Các cách di chuyển robot gồm có di chuyển thẳng tới lùi, di chuyển sang trái sang phải Trong hai di chuyển sang trái sang phải phải dựa tảng di chuyển thẳng Trong đó, đường cong quỹ đạo di chuyển chia nhỏ thành nhiều đoạn nhỏ, mà đoạn xem đoạn thẳng Và robot di chuyển đoạn thẳng Nhưng hoạt động chân khác giống di chuyển thẳng hoàn toàn Mà chân phối hợp với cho phù hợp với quỹ đạo cần di chuyển Độ xác đạt tùy thuộc vào số lượng đoạn chia nhỏ nhiều hay Đoạn chia nhỏ quỹ đạo di chuyển giống với quỹ đạo yêu cầu Tuy nhiên, đòi hỏi độ xác góc vẫy chân khối lượng tính toán xử lý nhiều lên Bộ vi xử lý cần phải có tốc độ tính tốn nhanh, dung lượng nhớ phải nhiều đáp ứng nhu cầu 4.4.1 Giải thuật di chuyển tiến lùi cho robot Gọi số thứ tự chân robot theo chiều kim đồng hồ bắt đầu chân số chân góc bên trái, thể Hình 4.21: Hình 4.20 Thứ tự chân để điều khiển chuyển động tiến phía trước Giải thuật chuyển động tiến robot gồm có hai pha chuyển động sau: Pha chân robot nhện chạm đất, sau chân 2, 4, nâng lên khỏi mặt đất, chân 1, 3, vẫy phía sau có tác dụng đẩy thân phía trước, chân 2, 4, tiếp tục vẫy phía trước chạm đất Ở pha tiếp theo, chân 1, 3, nâng lên, chân 2, 4, vẫy phía sau có tác dụng đẩy thân phía trước, chân 1, 3, vẫy phía trước chạm đất hồn thành chu kì chuyển động tiến robot Giải thuật chuyển động lùi ngược lại với giải thuật chuyển động tiến robot thể Hình 4.21 Hình 4.21 Thứ tự chân để diều khiển lùi phía sau 4.4.2 Giải thuật di chuyển sang trái sang phải cho robot Giải thuật chuyển động sang trái, sang phải Cách sang trái phải robot gồm có hai chuyển động chuyển động quay sang trái sang phải góc 90 chuyển động tiến Cách quay sang trái phải chia làm hai pha: pha thứ nâng lên ba chân khỏi nền, ba chân chạm đất vẫy góc 45o theo chiều kim đồng hồ (nếu quay sang trái) ngược lại vẫy góc 45o theo chiều ngược kim đồng hồ (nếu quay sang phải) Sau ba chân chạm đất vẫy góc 45o xong ba chân lại vẫy chiều ngược lại góc 45o, thân robot quay sang trái phải Sau đó, pha thứ hai chân nâng lên hạ xuống để nâng ba chân lại, ba chân chạm đất vẫy tiếp góc 45 o lại Như thân robot quay sang trái phải góc 90o Hình 4.22 Giải thuật chuyển động sang phải Trong đó: ● Chân chạm đất ○ Chân không chạm đất Dựa vào sở phân tích nghiên cứu giải thuật chuyển động thẳng để lập trình cho robot chuyển động sang phải sang trái theo phương án cách tam giác thay đổi 4.4.3 Lưu đồ giải thuật điều khiển tay qua điện thoại thông minh Lưu đồ giải thuật phần mềm Bluetooth RC Controller Bắt đầu Khởi tạo giao diện S Thông báo yêu cầu bật bluetooth Bật Bluetooth Đ S Tìm kiếm HC05 Đ S Chuyển sang giao diện điềuĐ khiển Tiến Trái Lùi Đ Truyền kí tự F Đ Truyền kí tự B Đ Đ Truyền kí tự L Kết thúc Dừng Phải Truyền kí tự R Đ Truyền kí tự S Hình 4.23 Lưu đồ giải thuật điều khiển cưỡng tay Lưu đồ giải thuật phần mềm điều khiển Bluetooth RC controller thể Hình 4.23 Để truyền liệu đến Arduino thơng qua bluetooth cần sử dụng phần mềm Bluetooth RC controller điện thoại thông minh chạy hệ điều hành android Đầu tiên mở điện thoại chọn phần mềm Bluetooth RC controller, hình xuất giao diện yêu cầu bật bluetooth điện thoại Sau bật bluetooth điện thoại xong ta kết nối với module blueooth HC05 với mật mặc định module bluetooth “1234” Sau kết nối thành công chuyển sang giao diện điều khiển đợi kiện từ người điều khiển Người điều khiển gửi liệu cách bấm chọn nút lệnh giao diện phần mềm Bluetooth RC controller Nếu người dùng bấm nút lên phần mềm rc controller truyền ký tự “F” sang HC05 Các nút lùi, sang trái, sang phải, dừng truyền tương tự khác ký tự truyền “B, L, R, S” Truyền xong tín hiệu chương trình kết thúc Lưu đồ giải thuật vi điều khiển Arduino Uno R3: Bắt đầu Khởi tạo USART PWM IO S Nhận liệu Đ S S S Nhận ký tự F Đ Thực lệnh tiến Nhận ký tự B Đ Thực lệnh lùi S Nhận ký tự L Đ Thực lệnh qua trái S Nhận ký tự R Đ Thực lệnh qua phải Nhận ký tự S Đ Dừng chương trình Kết thúc Hình 4.24 Lưu đồ giải thuật vi điều khiển Lưu đồ giải thuật Arduino thể hình 4.24 Tín hiệu truyền đến Arduino thực lệnh để di chuyển thông qua module bluetooth HC05 Trước hết, ta cấp nguồn, khởi động nạp code cho Arduino, khởi tạo UART, thiết lập tốc độ truyền… Tín hiệu truyền xuống thơng qua bluetooth ký tự: “F, B, L, R, S” tương ứng với chương trình viết sẵn nạp Arduino là: “tiến, lùi, trái, phải, dừng” 4.4.4 Lưu đồ giải thuật điều khiển tự động robot nhện Chế độ điều khiển tự động robot nhện Bắt đầu Khởi tạo USART PWM IO Gọi x giá trị khoảng cách nhận từ SRF-05 S x