Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 34 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
34
Dung lượng
1,28 MB
Nội dung
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG - - BÁO CÁO ĐỒ ÁN I Đề tài: THIẾT KẾ ROBOT LAU NHÀ DÙNG CẢM BIẾN SIÊU ÂM Giảng viên hướng dẫn: TS Nguyễn Thu Nga Nhóm sinh viên thực hiện: Nguyễn Văn Duy Nguyễn Hoàng Tiến Bách MSSV: 20140736 - ĐTTT07 K59 MSSV: 20155108 - CN – ĐT 01 K60 Hà nội, Tháng 11 năm 2017 MỤC LỤC DANH MỤC HÌNH ẢNH LỜI NÓI ĐẦU .4 CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN ĐỀ TÀI 1.1 Giới thiệu chương 1.2 Tổng quan Robot lau nhà .5 1.3 Yêu cầu hệ thống 1.3.1 Yêu cầu chức .8 1.3.2 Yêu cầu phi chức 1.4 Mơ hình Robot lau nhà 1.5 Sơ đồ khối tổng quan hệ thống 1.6 Kết luận chương 10 CHƯƠNG 2: THIẾT KẾ PHẦN CỨNG HỆ THỐNG 11 2.1 Kit RF thu phát Wifi ESP8266 NoteMCU Lua 11 2.2 Vi điều khiển ATmega32L 8PU 13 2.3 Mạch cầu H 14 2.4 Modul L298 16 2.5 Cảm biến siêu âm SRF05 .19 2.6 Động DC motor 21 2.7 Ghép nối Modul 22 2.7.1 Ghép nối L298 Kit ATmega32L 8PU 22 2.7.2 Ghép nối cảm biến siêu âm SRF05 Kit ATmega32L 8PU 22 CHƯƠNG 3: THIẾT KẾ PHẦN MỀM HỆ THỐNG 24 3.1 Thuật tốn lập trình phần cứng 24 3.2 Thiết kế phần mềm 27 CHƯƠNG 4: KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN 28 4.1 Kết đạt 28 4.2 Hướng phát triển 29 PHỤ LỤC 29 TÀI LIỆU THAM KHẢO 32 DANH MỤC HÌNH ẢNH Hình 1-1: Robot hút bụi Ilife A4s……………………………………………… Hình 1-2: Robot lau nhà iRobot Braava 380t……………………………… .7 Hình 1-3: Mơ hình Robot lau nhà………………………………………………8 Hình 1-4: Sơ đồ tổng quan hệ thống……………………………………………9 Hình 2-1: Kit RF thu phát Wifi ESP8266 NoteMCU Lua…………………….11 Hình 2-2: Vi điều khiển ATmega32L 8PU…………………………………….13 Hình 2-3: Mạch cầu H…………………………………………………………14 Hình 2-4: Nguyễn lý hoạt động mạch cầu H………………………… 15 Hình 2-5: Modul L298…………………………………………………………17 Hình 2-6: Cảm biến siêu âm SRF05……………………………………… 19 Hình 2-7: Nguyên lý hoạt động cảm biến siêu âm SRF05………………20 Hình 2-8: Động giản tốc………………………………………………… 21 Hình 3-1: Lưu đồ thuật tốn tổng quan hệ thống………………………25 Hình 3-2: Lưu đồ thuật tốn q trình đo khoảng cách………………… 26 Hình 4-1: Robot sau hồn thiện…………………………………………28 LỜI NĨI ĐẦU Trong xã hội đại ngày nay, khoa học kỹ thuật phát triển mạnh mẻ với phát triển sản phẩm ứng dụng vào thực tế nhiều lĩnh vực như: y tế, giáo dục, nông nghiệp, sản phẩm dân dụng… Do đó, với mong muốn áp dụng kiến thức học giảng đường vào thực tế, em định làm sản phẩm đơn giản ứng dụng vào đời sống thực tiễn Sản phẩm robot lau nhà thơng minh Trong sống đại Robot lau nhà dần trở nên thân quen với gia đình, đem lại trợ giúp khơng nhỏ với người nội trợ việc làm nhà cửa giúp có nhiều thời gian dành cho gia đình Em xin gửi lời cảm ơn chân thành đến Cơ - TS Nguyễn Thu Nga tận tình bảo, hướng dẫn giúp đỡ em suốt thời gian thực đề tài Nhóm sinh viên thực hiện: Nguyễn Văn Duy Nguyễn Hoàng Tiến Bách CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN ĐỀ TÀI 1.1 Giới thiệu chương Trong chương này, em giới thiệu sơ robot lau nhà thơng minh, nội dung trình bày bao gồm: mơ hình, sơ đồ khối nguyên lý hoạt động robot 1.2 Tổng quan Robot lau nhà Hiện nay, robot lau nhà thông minh dần trở thành xu mới, thay loại máy hút bụi truyền thống để hỗ trợ người việc dọn dẹp nhà cửa Tại Việt Nam, dòng sản phẩm vừa có mặt thị trường hứa hẹn trở thành sản phẩm hot thời gian tới Robot lau nhà tự động xem “người” giúp việc vô thông minh hiệu cho gia đình, đặc biệt người nữ nội trợ phải làm suốt ngày, khơng có thời gian chăm sóc nhà cửa Robot thiết kế thơng minh, tự động thực công việc hút bụi, lau dọn nhà mà khơng cần có hướng dẫn người Kích thước robot hút bụi tự động nhỏ gọn, đến tất ngóc ngách như: gầm bàn, gầm giường, ghế sofa,góc tường… để làm tồn diện Hơn nữa, robot thơng minh sử dụng nhiều loài sàn nhà như: gỗ, thảm, sàn gạch, gạch ceramic… Trên thị trường có loại robot làm sàn nhà sản phẩm Robot lau nhà Robot hút bụi, với loại Robot lau nhà hay robot hút bui có ưu điểm nhược điểm riêng để tăng hiệu làm cách tối đa nhà sản xuất kết hợp hai loại Robot lau nhà hút bụi lại thành loại Robot vừa có khả lau nhà vừa có khả hút bụi Tuy nhiên xét phổ biến thì robot hút bụi đươc sử dụng nhiều có giá thành hợp lý giữ nhiều ưu điểm lớn làm nhiều bề mặt sàn khác nhau, làm nhiều loại bụi bẩn Dưới Hình 1.1 sản phẩm Robot lau nhà Ilife V4s, sản phẩm có thiết kế dạng khối trụ trơng Hình 1-1: Robot hút bụi Ilife A4s Mặc dù Robot hút bụi có nhiều ưu điểm vượt trội sử dụng rộng rãi phủ nhận điểm tích cực Robot lau nhà chiếm lòng tin nhiều người dùng Mặc dù không hoạt động tốt nhiều mặt hiệu làm Robot lau nhà có phần vượt trội so với Robot hút bụi, Robot lau nhà làm vết bẩn ướt, dính với bề mặt sàn Bên cạnh Robot lau nhà hoạt động không gây nhiều tiếng ồn Robot hút bụi, gây ảnh hưởng đến người sử dụng vào buổi đêm Hình 1.2 Robot lau nhà Irobot Braava 380t, robot có dạng hình vng, cải thiện diện tích tiếp xúc rẻ lau gắn đáy robot với mặt sàn giúp tăng hiệu làm Hình 1-2: Robot lau nhà iRobot Braava 380t Ngoài hai loại Robot kể nhà sản xuất tích hợp hai loại Robot vào sản phẩm vừa có khả lau nhà, vừa có khả hút bụi nhiên giá thành chúng cao, rào cản lớn với người dùng muốn sở hữu chúng Trong học phần đồ án em thiết kế Robot lau nhà đơn giản với chi phí thấp Sản phẩm gồm tính tăng sau: Lau sàn nhà khô ướt Robot di chuyển tự động theo hình ziczac giúp tăng tối đa khả làm Có khả tránh vật cản trực diện 1.3 1.3.1 1.3.2 1.4 Yêu cầu hệ thống Yêu cầu chức Robot có khả tự động di chuyển theo đường ziczac Robot tránh vật cản diện di chuyển Yêu cầu phi chức Robot hoạt động ổn định nhiều điều kiện khác Dễ dàng tháo lắp, thay miếng rẻ lau Dễ dàng thao lắp thay modul xảy vấn đề hỏng hóc Mơ hình Robot lau nhà Bánh Xe Bánh Xe Vi Điều Khiển ATmega 32 Modul L298 (Mạch cầu H) Miếng lau sàn nhà Cảm Biến Siêu Âm SRF 05 Hình 1-3: Mơ hình Robot lau nhà Trên Hình 1.3 mơ hình Robot lau nhà, Robot gồm thành phần VĐK ATmega 32 não điều khiển hoạt động hệ thống, phát vật cản phía trước nhờ cảm biến siêu âm SRF05, VĐK ATmega 32 đưa tín hiệu PWM phù hợp điều khiển động giúp Robot tránh vật cản modul L298 mạch cầu H nhận tín hiệu điều khiển từ VĐK ATmega 32 điều khiển tốc độ hai bánh xe chính, việc điều khiển tốc độ hai bánh xe đồng thời điều khiển hướng di chuyển Robot Cảm biến siêu âm SRF05 đo khoảng cách từ Robot tới vật cản phía trước nhờ điều khiển thay đổi hướng di chuyển xe tránh vật cản Cuối miếng lau sàn gắn phía khung xe 1.5 Sơ đồ khối tổng quan hệ thống PIN MODUL L298 Vi Điều Khiển (Mạch Cầu H) ATmega 32 Cảm biến Siêu Âm SR05 Hình 1-4: Sơ đồ tổng quan hệ thống Hệ thống chia làm bốn khối trình bày Hình 1.4 Pin nguồn cung cấp lượng cho hệ thống, điện từ pin qua modul L298, từ modul L298 nguồn chia tới thành phần hệ thống Nguồn DC-5V ổn định nuôi MCU (kit AVR Atmega32) cảm biến siêu âm SRF05, nguồn 6-9V ni hai motor, dòng điện tối đa mà modul L298 cung cấp cho cho motor tối đa lên đến 2A Trên Hình 1.4 đường lượng thể mũi tên màu da cam MCU (kit AVR Atmega32) đóng vai trò xử lý trung tâm, đọc tín hiệu từ cảm biến siêu âm SRF05 tính tốn khoảng cách với vật cản phía trước đưa tín hiệu PWM điều khiển tốc độ hướng di chuyển Robot thông qua mạch cầu H cách hợp lý Các đường tín hiệu hệ thống thể mũi tên màu xanh, Modul mạch cầu H L298 nhận tín hiệu từ MCU nên thể mũi tên chiều Khi muốn đo khoảng cách MCU phát tín hiệu đến cảm biến SRF05 đọc tín hiệu từ cảm biến gửi 10 Hình 2-6: Cảm biến siêu âm SRF05 Trên Hình 2.6 cảm biến siêu âm SRF05, cảm biến gồm phận phát sóng siêu âm (Trig) phía bên trái thu sóng phản xạ phía bên phải Cảm biến SRF05 cho khoảng cách đo tối đa lên tới 3-4m giao tiếp với vi điều khiển qua chân: Vcc: Ta cần cấp nguồn 5V vào chân để cảm biến hoạt động Trig: Khi muốn cảm biến phát sóng siêu âm ta cấp tín hiệu vào chân Echo: Chân phát sóng phản xạ OUT: Không sử dụng GND: Nối mát 20 Hình 2-7: Nguyên lý hoạt động cảm biến siêu âm SRF05 Nguyên lý để đo khoảng cách đến vật dùng nguồn phát sóng siêu âm (TRIG) thu sóng siêu âm (ECHO), TRIG phát sóng đến nơi có vật cản đập vào vật tạo luồng sóng trở , ECHO nhận Sau dựa vào thời gian phát thu mà tính khoảng cách đến vật Vì cảm biến siêu âm SRF05 gồm nguồn phát (TRIG), thu (ECHO) chân tín hiệu để giao tiếp với vi điều khiển Khi muốn bắt đầu đo khoảng cách ta cấp xung dương có thời gian tối thiểu 10µs vào chân Trig Khi có xung 10µs chân Trig cảm biến bắt đầu phát xung sóng siêu âm qua phát Sau xung sóng siêu âm phát chân Echo tự động kéo lên mức cao, sóng siêu âm gặp vật cản phàn xạ trở lại, thu cảm biến nhận sóng phản xạ kéo chân Echo xuống mức thấp Việc xác định khoảng khời gian chân Echo mức cao giúp vi điều khiển tính tốn khoảng cách đến vật cản 21 Nếu khoảng thời gian chân Echo mức cao khoảng từ 100µs tới 20ms ta tính khoảng cách từ cảm biến tới vật cản dựa vào tốc độ truyền sóng siêu âm khơng khí nhiệt độ 21°C 343,2m/s Nếu khoảng thời gian chân Echo mức cao lớn 30ms tức khoảng cách 4m từ cảm biến khơng có vật cản 2.6 Động DC motor Do đặc điểm Robot lau nhà di chuyển với tốc độ chậm để tăng hiệu lau nhà nên đồ án em lựa chọn sử dụng động DC giảm tốc Động hoạt động với dải điện áp rộng từ 3-9V nhiên hoạt động ổn định với công suất tốt khoảng từ 6-9V Tốc độ tối đa điện áp 3V khơng có tải 125 vòng/phút Nếu sử dụng bánh đường kính 66mm động di chuyển quãng đường 26m/phút Hình 2-8: Động giản tốc Với điện áp 5V khơng có tải động quay với tốc độ tối đa 208 vòng/phút Nếu sử dụng bánh đường kính 66mm động di chuyển quãng đường 44m/phút 22 2.7 Ghép nối Modul 2.7.1 Ghép nối L298 Kit ATmega32L 8PU Modul L298 cung cấp nguồn DC 5V từ pin tới nuôi MCU, để điều khiển tốc độ động quay thuận ta phải cấp tín hiệu xung PWM vào hai chân INA INC đồng thời giữ hai chân INB IND mức cách kết nối với vi điều khiển sau: INA – PB0 INC – PB2 INB – PB1 IND – PB3 Việc chọn nối mức logic INA INC thay đổi để phù hợp với kiểu robot Hai chân lại INB IND cần giữ mức cần nối với hai chân có chức GPIO bình thường vi điều khiển, trường hợp em sử dụng hai chân PB0 PB1 2.7.2 Ghép nối cảm biến siêu âm SRF05 Kit ATmega32L 8PU Vcc – 5V Echo – PA1 Trig – PA0 Out, GND – GND Để vi điều khiển giao tiếp với cảm biến siêu âm SRF05 tính tốn khoảng cách tới vật cản ta nối chân Trig cảm biến với chân PA0 vi điều khiển cấu hình chức GPIO mode output làm nhiệm vụ kích trân Trig lên mức tối thiểu 10µs Tương tự chân Echo nối với chân PA1 cấu hình chức GPIO hoạt động với chức input nhằm đọc trạng thái chân Echo Đồng thời cấu hình time vi điều khiển để đo khoảng thời gian chân Echo mức Quá trình đo khoảng cách diễn sau: Khi bắt đầu đo khoảng cách chân PA0 xuất tín hiệu mức khoảng thời gian 20µs sau chân vi điều khiển đọc tính hiệu chân PA1 nối với chân Echo, phát tín hiệu lên mức vi điều khiển sét đến timer tiếp tục theo dõi trạng thái chân PA1 thấy trạng thái chuyển từ mức 23 mức đọc giá trị timer Giá trịn time lúc khoảng thời gian chân Echo mức từ ta tính khoảng cách tới vật cản theo cơng thức: D = (m) Trong đó: D: Khoảng cách đến vật cản (m) t: Thời gian chân Echo mức (s) 24 CHƯƠNG 3: THIẾT KẾ PHẦN MỀM HỆ THỐNG 3.1 Thuật tốn lập trình phần cứng Mạch phần cứng sử dụng ATmega32L 8PU để điều khiển khối chức mạch Đây vi điều khiển giá thành rẻ, hiệu ổn định, phù hợp với nghiên cứu nhỏ vừa Công cụ sử dụng để code debug hệ thống Atmel Studio 7.0, công cụ đa giúp xây dựng biên dịch chương trình cho dòng vi điều khiển AVR phổ biến cho phép debug, kiểm sốt chương trình theo dõi liệu thực tế trình thực code Chương trình điều khiển Robot viết ngôn ngữ C truyền thống, ngoại vi liệu thiết lập tầng thấp q trình code mà khơng thông qua tầng framework nhằm đảm bảo khai thác hiệu hiệu vi điều khiển, kiểm soát nhớ độ ổn định trình hoạt động Trên Hình 3.1 trình bày lưu đồ thuật toán tổng quan hệ thống Do trình điều khiển hoạt động Robot vòng lặp nhiều trình bên trình bao gồm nhiều hàm xử lý phức tạp nên thuật toán điều khiển chia nhỏ thành nhiều chức nhỏ nhằm đem đến nhìn trực quan nguyên tắc điều khiển hệ thống Đầu tiên khởi động hệ thống vi điều khiển khởi tạo biến toàn cục, khai báo hàm chức thiết lập ngoại vi cho hệ thống Sau thực q trình đọc liệu từ khối cảm biến, vào xử lý tính tốn khoảng cách đến vật cản có điều khiển động với trạng thái tương ứng 25 Hình 3-1: Lưu đồ thuật toán tổng quan hệ thống Quá trình lặp lặp lại Robot làm tồn diện tích mặt sàn Q trình tính tốn khoảng cách đến vật cản lặp lai theo chu kỳ giây lần sử dụng System Tick vi điều khiển, hoạt động độc lập với chương trình điều khiển Trên Hình 3.2 trình bày trình đo khoảng cách cảm biến SRF05, vi điều khiển cấp tín hiệu mức vào chân Trig khoảng thời gian 15µs sau theo dõi trạng thái chân Echo Mặc định chân Echo mức chân Trig kéo lên mức cao 15µs cảm biến phát sóng siêu âm đồng thời chân Echo kéo lên mức cao, vi điều khiển phát chân Echo lên mức cao lấy giá trị timer thời điểm tiếp tục theo dõi trạng thái chân Echo Khi phát trạng thái chân Echo xuống lại mức vi điều khiển tiếp tục lấy giá trị timer Hiệu giá trị timer hai 26 lần lấy khoảng thời gian chân Echo mức cao Nếu khoảng thời gian lớn 25ms nghĩa phía trước cảm biến khơng có vật cản ngược lại ta dễ dàng tính khoảng cách từ cảm biến tới vật cản dựa vào thời gian lan truyền vận tốc sóng siêu âm Hình 3-2: Lưu đồ thuật tốn q trình đo khoảng cách Sau cấu hình chức PWM timer, khởi tạo biến cần thiết, phát phía trước có vật cản (để thuận tiện cho việc xử lý trình bày lưu đồ thuật tốn em coi trường hợp vật cản phía trước cách xa 50cm khơng có vật cản) vi điều khiển phát tín hiệu PWM điều khiển Robot chuyển hướng sang phải quay phía sau 180° tiếp tục thẳng Sau vi điều khiển tiếp tục kiểm tra xem có vật cản khơng có tiếp tục điều khiển Robot rẽ phải quay sau 180°, khơng có vật cản tiếp tục di chuyển theo đường thẳng vòng 10s rẽ trái quay phía sau 180° để Robot di chuyển theo hình ziczac Trong trình di chuyển vi điều khiển kiểm tra vật cản phía trước giây lần, phát có vật cản chuyển hướng di chuyển Robot 180° 27 28 3.2 Thiết kế phần mềm Mục tiêu em thiết kế ứng dụng di động tương tác trực tiếp với Robot qua giao tiếp wifi thông qua giao tiếp I2C với kit ESP Node MCU, cấu hình chức cho Robot thu thập liệu từ Robot để điều khiển tốt Tuy nhiên học phần đồ án giới hạn thời gian khả em chưa hoàn thành phần 29 CHƯƠNG 4: KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN 4.1 Kết đạt Hình 4-1: Robot sau hồn thiện 30 4.2 Hướng phát triển Trong thời gian tới em cố gắng hoàn thiện cảm biến siêu âm để hệ thống hoạt động ổn định Đồng thời phát triển thêm phần ứng dụng giao tiếp với người sử dụng để dễ dàng thiết lập robot PHỤ LỤC Souce code cấu hình phần cứng: #ifndef F_CPU #define F_CPU 8000000UL #endif #include #include #include void startTimer(unsigned int time) 31 { OCR1A = time; TIFR = 0x10; TCNT1 = 0x00; TCCR1B = 0X0A; // // // // Time set to count to Clear timer campare match flag Clear timer to zero Start timer running 1:8 prescaler } void waitForTimer(void) { while(!(TIFR&0x10)); // wait for timer to set compare match flag TCCR1B = 0X08; // Stop the timer } unsigned char uart_recieve (void) { while((UCSRA&(1