1. Trang chủ
  2. » Luận Văn - Báo Cáo

Hcmute thiết kế chế tạo robot tự động dò line

84 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH CƠNG TRÌNH NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG THIẾT KẾ, CHẾ TẠO ROBOT TỰ ÐỘNG DÒ LINE S K C 0 9 MÃ SỐ: T2012-09 S KC 0 Tp Hồ Chí Minh, 10/2012 Luan van BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM  ĐỀ TÀI NCKH SINH VIÊN THIẾT KẾ, CHẾ TẠO ROBOT TỰ ĐỘNG DỊ LINE MÃ SỐ: T2012-09 THUỘC NHÓM NGÀNH : KHOA HỌC KỸ THUẬT NGƯỜI CHỦ TRÌ : Võ Văn Triều ĐƠN VỊ : KHOA ĐIỆN-ĐIỆN TỬ TP HỒ CHÍ MINH – 10/2012 Luan van MỤC LỤC Phần I : ĐẶT VẤN ĐỀ I Đố i tươ ̣ng nghiên cứu II Tin ̀ h hin ̀ h nghiên cứu và ngoài nước III Những vấ n đề tồ n ta ̣i Phần II : GIẢI QUYẾT VẤN ĐỀ I Mu ̣c đić h Đề Tài II Phương pháp nghiên cứu III Giới ̣n Đề Tài IV Nô ̣i dung Chương I: Cấu trúc vùng thi đấu tiêu chuẩn Chương II: Các lý thuyế t liên quan 17 Chương III: Thiế t kế Và Thi công 43 Chương trin ̀ h 47 Phấ n III: KẾT LUẬN I Kế t luâ ̣n Đề tài 81 II Hướng phát triể n Đề tài 81 Tài liê ̣u tham khảo 82 Luan van PHẦN I: ĐẶT VẤN ĐỀ PHẦN I ĐẶT VẤN ĐỀ I Đớ i tươ ̣ng nghiên cứu: Hiện thời đại khoa học kỹ thuật phát triển, nhà máy xí nghiệp sản xuất sản phẩm băng chuyền đại, sản phẩm xuất nhanh nhiều, đờ ng thời các cơng viê ̣c ở những nơi nguy hiể m(ở những nơi có khí đô ̣c,ở những nơi quá cao hoă ̣c quá sâu) mà người không thể làm viê ̣c trực tiế p Vì mà Robot đời để thay mơ ̣t số vi ̣trí của người Có nhiề u cách để điề u khiể n Robot dùng PLC, các dòng VĐK… Nhưng dùng PLC điề u khiể n Robot thì chi phí rấ t cao so với các dòng VĐK Chính những lý mà Nhóm thực đề tài chọn đề tài: THIẾT KẾ, CHẾ TẠO ROBOT TỰ ĐỘNG DÒ LINE II.Tin ̀ h hin ̀ h nghiên cứu và ngoài nước: Tình hình nước Robot di chuyển theo hành trin ̣ trước sinh viên trường đại học ̀ h đinh nghiên cứu chế tạo, nhiên mức độ nghiên cứu dừng lại phạm vi lý thuyết hay mơ hình mang tính giản đơn Các Robot hoạt động theo nguyên lí Robot tự ̣ng Nhưng kết cịn nhiều thiếu sót Ví dụ Robot chưa thể hồn thành cơng việc giao, việc di chuyển Robot đến tọa độ cịn chưa xác Một số ngun nhân dẫn đến kết trên: - Công nghệ chế tạo mang tính truyền thống, phận di chuyển Robot cịn chưa có kiểm sốt chương trình điều khiển Vẫn sử dụng phương pháp điều khiển mang nặng cảm tính - Kinh phí đầu tư cho cơng trình nghiên cứa cịn chưa cao Nên dẫn đến việc đầu tư cho cơng nghệ q trình chế tạo Robot cịn thơ sơ - Bên cạnh có số đề nghiên cứu lĩnh vực này, có nghững thành cơng bước đầu Ví dụ đề tài chế tạo Robot OMINO ĐH Bách Khoa TP.HCM nghiên cứu chế tạo, hay robocar ĐH Bách Khoa Hà Nội chế tạo ứng dụng chống phóng xạ dịch bệnh.Tuy nhiên cịn dạng mơ hình kinh phí cao Tình hình ngồi nước -1- Luan van PHẦN I: ĐẶT VẤN ĐỀ Robot tự hành phát triển mạnh sử dụng phổ biến trong tấc lĩnh vực y tế (NHẬT BẢN), vũ trụ (RÔBÔT thám hiểm hỏa NASA), ASIMO HONDA, quân (các xe tăng chiến đấu không người lái quân đội Mỹ)… III Những vầ n đề còn tồ n ta ̣i: Robot tự ̣ng có khả di chuyển đến nơi đâu theo tọa độ định trước để hoàn thành nhiệm vụ Tuy nhiên Robot có khả di chuyển địa hình phẳng, Robot khơng có khả tự tránh vật cản cố định hay di chuyển Để hoàn thành nhiêm vụ người sử dụng phải cho Robot cách di chuyển để tránh vật cản qúa trình đến đích -2- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ PHẦN GIẢI QUYẾT VẤN ĐỀ I Mu ̣c đích đề tài: Đề tài“Thiết kế, chế tạo robot tự động dò line” nhằm mục đích làm cho robot tự động thực công việc sau:  Khi Thẻ đặt vào Hộp đựng thẻ hoàn toàn, robot tự động dị line bắt đầu di chuyển cách tự kích hoạt hay cách nhấn nút sau có tín hiệu từ trọng tài robot tự động dị line lấy Giỏ từ vùng chung đặt nơi vùng dành cho Robot tay Hoặc robot tự động dị line xuất phát trễ tùy thuộc vào chiến thuật đội Nhiệm vụ đặt Giỏ vào vùng Robot tay xem hoàn thành Giỏ đặt vùng Robot tay tự đứng đế nó; điều có nghĩa khơng có tiếp xúc Giỏ với robot tự động dò line Robot tay  robot tự động dò line mang Robot thu thập băng qua Cầu hướng phía Vùng trung chuyển Vùng trung chuyển (Loading Area3)  robot tự động dò line phải thả Robot thu thập Vùng trung chuyển (Loading Area 2) hay Vùng trung chuyển Robot thu thập khôngđược chạm vào sân thi đấu trước thả xuống Vùng trung chuyển Vùng trung chuyển II Phương pháp nghiên cứu Hai phương pháp Nhóm thực đề tài sử dụng để nghiên cứu đề tài này: Phương pháp tham khảo tài liệu Phương pháp thực nghiệm - Tham khảo tài liệu Hướng nghiên cứu đề tài nảy sinh từ việc thu thập tài liệu xử lí tài liệu thu thập Các tài liệu tham khảo chủ yếu từ giáo trình vi xử lý, đề tài nghiên cứu khoa học có liên quan, tài liệu ATMEGA32, CCS,Codevision… - Thực nghiệm Nhóm thực hiê ̣n đề tài phải thiế t kế và thi công Robot, viế t chương triǹ h và huấ n luyê ̣n luyê ̣n Robot Hai phương pháp áp dụng thường xuyên, đan xen bổ trợ suốt trình thực đề tài III Giới ̣n đề tài Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -3- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ Hiê ̣n có rấ t nhiề u dòng VĐK(Amel,Avr,Pic, ) vâ ̣y mà đề Tài ứng du ̣ng VĐK và ENCODER để điề u khiể n Robot đề Tài rộng, có nhiều hướng mở Do quỹ thời gian có hạn mà đề tài đươ ̣c thực giới hạn là: Ứng du ̣ng dòng VĐK ATMEGA32 kế t hơ ̣p với ENCODER để điề u khiể n Robot IV Nô ̣i dung Chương I: Các Lý Thuyế t Liên Quan Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -4- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ I Cấu trúc vùng thi đấu tiêu chuẩn Sân thi đấu có kích thước 13x13m bao quanh hàng rào gỗ cao 100mm dày 50mm Các hàng rào bắt chặt xuống sân ốc Sân thi đấu chia cho hai đội ngăn cách hàng rào gỗ cao 100mm, dày 50mm Hai đội thi đấu có hai màu Xanh Đỏ Sân thi đấu bao gồm vùng cho Manual Robot, Automatic Robot Starting Points, Restarting Points, Loading Areas, Common Zone Island Các kí hiệu tương ứng cho vùng theo thứ tự A, C, M, L1, L2, L3, S1 S2 Và kí tự không cần phải vẽ sân thi đấu thực tế Hình 1.1: Hình dạng vùng thi đấu Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -5- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ Hình 1.2: Kích thước vùng thi đấu Vùng Robot tay vùng Robot tự động Các đường màu trắng có bề rộng 30mm dán phần vùng Robot tự động Mỗi cạnh ô vuông nằm đường màu trắng có kích thước 470mm Hàng rào gỗ cao 100mm dày 50mm dùng để ngăn cách vùng robot tay với vùng robot tự động Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -6- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ Hình 1.3 Kích thước vùng thi đấu (mặt bên)      Các khu vực xuất phát (Starting points) Robot tay phải xuất phát khu vực xuất phát cho Robot tay (M) Robot thu thập phải đặt khu vực xuất phát cho Robot thu thập nâng lên Robot tay (C) Robot tự động phải xuất phát khu vực xuất phát cho Robot tự động (A) Vùng chung (common zone) Vùng chung hình hộp chữ nhật có chiều cao 100mm, rộng 500mm dài 1985mm sơn màu vàng Hai lỗ hình trịn dày 12mm đường kính 452mm kht bề mặt vùng chung Hai giỏ đặt vào hai lỗ trịn trước trận đấu bắt đầu Mỗi đội lấy giỏ từ vùng chung Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -7- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ // // // // // // // pos: - Lay ro - Lay ro an toan - Lay ro nhanh courtyard: - san xanh - san /*************************************************************************** */ char ct_left; char ct_right; char state; switch(pos) { case 1: // Lay ro ChayThangDemLine(6,200,20); ChayThangDemLine(1,150,15); // Cap lay ro state = 100; while(state) { ct_left = ReadCT(0x01); ct_right = ReadCT(0x10); if(ct_left | ct_right) { if(ct_left & ct_right) { SetMotor(0,0); state ; } else { if(ct_left) { SetMotor(-100,100); state = 100; } else { SetMotor(100,-100); state = 100; } } } else { SetMotor(150,150); } } Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -67- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ break; case 2: // Lay ro an toan ChayThangDemLine(5,200,20); ChayThangDemLine(1,100,15); switch (courtyard) { case 1: // san xanh CuaTrai(100,10); ChayThangDemLine(2,100,15); CuaPhai(100,20); ChayThangDemLine(1,100,15); ChayThangTheoEncoder(1000,100,15); break; case 2: // san CuaPhai(100,10); ChayThangDemLine(2,100,15); CuaTrai(100,20); ChayThangDemLine(2,100,15); break; } // Cap lay ro SetMotor(150,150); state = 100; while(state) { ct_left = ReadCT(0x01); ct_right = ReadCT(0x10); if(ct_left | ct_right) { if(ct_left & ct_right) { SetMotor(0,0); state ; } else { if(ct_left) { SetMotor(-100,100); state = 100; } else { SetMotor(100,-100); state = 100; } } } else { Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -68- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ SetMotor(150,150); } } break; case 3: // Lay ro nhanh // Cap lay ro state = 100; while(state) { ct_left = ReadCT(0x01); ct_right = ReadCT(0x10); if(ct_left | ct_right) { if(ct_left & ct_right) { SetMotor(0,0); state ; } else { if(ct_left) { SetMotor(-100,100); state = 100; } else { SetMotor(100,-100); state = 100; } } } else { SetMotor(150,150); } } break; } PORTD.6 = 0; } /*************************************************************************** *****/ void ChayDenBoRo(char pos, char courtyard) { /*************************************************************************** */ // pos: // - Bo ro Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -69- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ // // // // - Bo ro courtyard: - san xanh - san /*************************************************************************** */ char ct_left; char ct_right; char state; switch (pos) { case 1: SetMotor(-200,-200); pulse_encoder = 0; while(4000 > pulse_encoder); //ChayThangDemLine(1,150,15); switch (courtyard) { case 1: SetMotor(-200, 0); pulse_encoder = 0; while(pulse_encoder < 1000); break; case 2: SetMotor(0, -200); pulse_encoder = 0; while(pulse_encoder < 1000); break; } SetMotor(-200, -200); pulse_encoder = 40; while(pulse_encoder > 30) { pulse_encoder = 0; delay_ms(100); } // Bo ro state = 100; while(state) { ct_left = ReadCT(0x01); ct_right = ReadCT(0x10); if(ct_left | ct_right) { if(ct_left & ct_right) { SetMotor(0,0); state ; Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -70- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ } else { if(ct_left) { SetMotor(-100,100); state = 100; } else { SetMotor(100,-100); state = 100; } } } else { SetMotor(150,150); } } break; case 2: switch (courtyard) { case 1: SetMotor(-200,0); pulse_encoder = 0; while(sensor1|sensor2|sensor3|sensor4|sensor5|sensor6|sensor7|sensor8); while(pulse_encoder < 400); break; case 2: SetMotor(0,-200); pulse_encoder = 0; while(sensor1|sensor2|sensor3|sensor4|sensor5|sensor6|sensor7|sensor8); while(pulse_encoder < 400) break; } SetMotor(-200,-200); pulse_encoder = 40; while(pulse_encoder > 30) { pulse_encoder = 0; delay_ms(100); } // Bo ro state = 100; while(state) { ct_left = ReadCT(0x01); ct_right = ReadCT(0x10); Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -71- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ if(ct_left | ct_right) { if(ct_left & ct_right) { SetMotor(0,0); state ; } else { if(ct_left) { SetMotor(-100,100); state = 100; } else { SetMotor(100,-100); state = 100; } } } else { SetMotor(150,150); } } break; } PORTD.6 = 1; } extern void InitButon (void); extern char ReadButon(char id); extern char ReadCT(char id); // CodeVisionAVR C Compiler // (C) 1998-2000 Pavel Haiduc, HP InfoTech S.R.L #ifndef _DELAY_INCLUDED_ #define _DELAY_INCLUDED_ #pragma used+ void delay_us(unsigned int n); void delay_ms(unsigned int n); #pragma used#endif /*************************************************************************** *****/ extern void InitLcd(void); Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -72- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ extern void ClearLcd(void); extern void WriteStringToLcd(char* string, char row, char col); /*************************************************************************** *****/ // CodeVisionAVR C Compiler // (C) 1998-2004 Pavel Haiduc, HP InfoTech S.R.L // I/O registers definitions for the ATmega32 #ifndef _MEGA32_INCLUDED_ #define _MEGA32_INCLUDED_ #pragma used+ sfrb TWBR=0; sfrb TWSR=1; sfrb TWAR=2; sfrb TWDR=3; sfrb ADCL=4; sfrb ADCH=5; sfrw ADCW=4; // 16 bit access sfrb ADCSRA=6; sfrb ADCSR=6; // for compatibility with older code sfrb ADMUX=7; sfrb ACSR=8; sfrb UBRRL=9; sfrb UCSRB=0xa; sfrb UCSRA=0xb; sfrb UDR=0xc; sfrb SPCR=0xd; sfrb SPSR=0xe; sfrb SPDR=0xf; sfrb PIND=0x10; sfrb DDRD=0x11; sfrb PORTD=0x12; sfrb PINC=0x13; sfrb DDRC=0x14; sfrb PORTC=0x15; sfrb PINB=0x16; sfrb DDRB=0x17; sfrb PORTB=0x18; sfrb PINA=0x19; sfrb DDRA=0x1a; sfrb PORTA=0x1b; sfrb EECR=0x1c; sfrb EEDR=0x1d; sfrb EEARL=0x1e; sfrb EEARH=0x1f; sfrw EEAR=0x1e; // 16 bit access sfrb UBRRH=0x20; sfrb UCSRC=0X20; Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -73- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ sfrb WDTCR=0x21; sfrb ASSR=0x22; sfrb OCR2=0x23; sfrb TCNT2=0x24; sfrb TCCR2=0x25; sfrb ICR1L=0x26; sfrb ICR1H=0x27; sfrb OCR1BL=0x28; sfrb OCR1BH=0x29; sfrw OCR1B=0x28; // 16 bit access sfrb OCR1AL=0x2a; sfrb OCR1AH=0x2b; sfrw OCR1A=0x2a; // 16 bit access sfrb TCNT1L=0x2c; sfrb TCNT1H=0x2d; sfrw TCNT1=0x2c; // 16 bit access sfrb TCCR1B=0x2e; sfrb TCCR1A=0x2f; sfrb SFIOR=0x30; sfrb OSCCAL=0x31; sfrb TCNT0=0x32; sfrb TCCR0=0x33; sfrb MCUCSR=0x34; sfrb MCUCR=0x35; sfrb TWCR=0x36; sfrb SPMCR=0x37; sfrb TIFR=0x38; sfrb TIMSK=0x39; sfrb GIFR=0x3a; sfrb GICR=0x3b; sfrb OCR0=0X3c; sfrb SPL=0x3d; sfrb SPH=0x3e; sfrb SREG=0x3f; #pragma used// Interrupt vectors definitions #define EXT_INT0 #define EXT_INT1 #define EXT_INT2 #define TIM2_COMP #define TIM2_OVF #define TIM1_CAPT #define TIM1_COMPA #define TIM1_COMPB #define TIM1_OVF 10 #define TIM0_COMP 11 #define TIM0_OVF 12 #define SPI_STC 13 Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -74- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ #define USART_RXC 14 #define USART_DRE 15 #define USART_TXC 16 #define ADC_INT 17 #define EE_RDY 18 #define ANA_COMP 19 #define TWI 20 #define SPM_RDY 21 // Needed by the power management functions (sleep.h) #define SLEEP_SUPPORTED #define POWERDOWN_SUPPORTED #define POWERSAVE_SUPPORTED #define STANDBY_SUPPORTED #define EXTENDED_STANDBY_SUPPORTED #asm #ifndef SLEEP_DEFINED #define SLEEP_DEFINED EQU se_bit=0x80 EQU sm_mask=0x70 EQU sm_powerdown=0x20 EQU sm_powersave=0x30 EQU sm_standby=0x60 EQU sm_ext_standby=0x70 EQU sm_adc_noise_red=0x10 SET power_ctrl_reg=mcucr #endif #endasm #endif extern void StopRobot(void); extern void ChayThangTheoEncoder(signed int num_encoder, signed int speed, signed char offset); extern void ChayThangTheoLine(signed int speed, signed char offset); extern void ChayThangDemLine(unsigned char line, signed int speed, signed char offset); extern void CuaTrai(signed int speed, signed char offset); extern void CuaPhai(signed int speed, signed char offset); extern void ChayDenDao(char courtyard); extern void ChayDenLayRo(char pos, char courtyard); extern void ChayDenBoRo(char pos, char courtyard); // CodeVisionAVR V2.0 C Compiler // (C) 1998-2008 Pavel Haiduc, HP InfoTech S.R.L // Prototypes for standard I/O functions #ifndef _STDIO_INCLUDED_ #define _STDIO_INCLUDED_ #include Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -75- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ #ifndef NULL #define NULL #endif #ifndef EOF #define EOF -1 #endif #pragma used+ char getchar(void); void putchar(char c); void puts(char *str); void putsf(char flash *str); #ifdef _MODEL_TINY_ char *gets(char *str,unsigned char len); #else char *gets(char *str,unsigned int len); #endif void printf(char flash *fmtstr, ); void sprintf(char *str, char flash *fmtstr, ); #ifdef _MODEL_TINY_ void snprintf(char *str, unsigned char size, char flash *fmtstr, ); #else void snprintf(char *str, unsigned int size, char flash *fmtstr, ); #endif void vprintf (char flash * fmtstr, va_list argptr); void vsprintf (char *str, char flash * fmtstr, va_list argptr); #ifdef _MODEL_TINY_ void vsnprintf (char *str, unsigned char size, char flash * fmtstr, va_list argptr); #else void vsnprintf (char *str, unsigned int size, char flash * fmtstr, va_list argptr); #endif signed char scanf(char flash *fmtstr, ); signed char sscanf(char *str, char flash *fmtstr, ); // USARTC0 will be used as default USART for the ATxmega chips #if defined _CHIP_ATXMEGA128A1_ | defined _CHIP_ATXMEGA192A1_ | \ defined _CHIP_ATXMEGA256A1_ | defined _CHIP_ATXMEGA324A1_ | \ defined _CHIP_ATXMEGA64A1_ #ifndef _ATXMEGA_USART_ #define _ATXMEGA_USART_ USARTC0 #endif #endif #ifdef _DEBUG_TERMINAL_IO_ Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -76- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ // Used for AVR Studio V3.56 Terminal I/O // DON'T CHANGE! #ifndef _DEBUG_TERMINAL_IO_FN_DEFINED_ #define _DEBUG_TERMINAL_IO_FN_DEFINED_ #pragma warnvoid _c_getchar(void) {} char getchar(void) { #asm push r16 push r17 getchar0: #endasm _c_getchar(); #asm cpi r17,0xff breq getchar0 mov r30,r16 pop r17 pop r16 #endasm } void _c_putchar(void) {} void putchar(char c) { #asm mov r30,r16 ld r16,y #endasm _c_putchar(); #asm mov r16,r30 #endasm } #ifdef _WARNINGS_ON_ #pragma warn+ #endif #endif #endif #pragma used#pragma library stdio.lib Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -77- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN II GIẢI QUYẾT VẤN ĐỀ #endif // CodeVisionAVR C Compiler V2.0 // (C) 1998-2007 Pavel Haiduc, HP InfoTech S.R.L // Variable length argument list macros #ifndef _STDARG_INCLUDED_ #define _STDARG_INCLUDED_ #ifndef NULL #define NULL #endif typedef char *va_list; #define va_start(ap,v) ap=(va_list) &v-sizeof(long) #define va_arg(ap,t) (ap-=sizeof(long), (t) ((long *) ap)[1]) #define va_end(ap) #endif End Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn -78- Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN III: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN PHẦN PHẦN KẾT LUẬN I Kế t luâ ̣n - Điề u kiê ̣n thử nghiê ̣m Robot: Mă ̣t sàn phải bằ ng phẳ ng, có đô ̣ bán dính tố t Năng lươ ̣ng Ăquy phải đươ ̣c na ̣p đầ y Với những điề u kiê ̣n đươ ̣c đảm bảo robot thử nghiê ̣m cho ta mô ̣t số kế t quả sau - Trong điề u kiê ̣n bình thường Robot hoa ̣t đô ̣ng ổ n đinh ̣ Các board ma ̣ch hoa ̣t đô ̣ng ổ n đinh, ̣ phầ n cứng khí đáp ứng tố t Di chuyể n chin ́ h xác theo lô ̣ trin ̀ h đã đươ ̣c lâ ̣p trin ̀ h sẳ n trước đó, Encoder Đo đươ ̣c đoa ̣n đường di chuyể n chính xác Tuy nhiên quá trình thử nghiê ̣n robot vẩ n còn mô ̣t số ̣n chế : - Mă ̣t dù mă ̣t sàn có đô ̣ bám din ́ h Robot di chuyể n vẩ n xảy hiê ̣n tươ ̣ng trươ ̣t bánh đô ̣ng không quay →Encoder làm viê ̣c không chin ́ h xác Robot di chuyể n chưa đươ ̣c linh hoa ̣t đố i với các điạ hình phức ta ̣p - khắ c phu ̣c tin ̀ h tra ̣ng cầ n phải tăng cường đô ̣ ma sát giữa bánh xe và sàn Chương trin ̀ h cầ n viế t theo mô ̣t giải thuâ ̣t chuẩ n I Hướng phát triể n của đề tài Tuy robot đươ ̣c chế ta ̣o thành công để robot vâ ̣n hành linh hoa ̣t, mang tính công nghê ̣ thì cầ n phải áp du ̣ng những công nghê ̣ mới vào điề u kiể n robot - Ứng du ̣ng ma ̣ng thầ n kinh Noron, và các phương pháp huấ n luyê ̣n ma ̣ng để thiế t kế và huấ n luyê ̣n Robot - Dùng các cảm biế n công nghê ̣ cao cảm biế n siêu âm, la bàn số , camera điề u khiể n Robot TÀI LIỆU THAM KHẢO Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn - 81 - Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an PHẦN III: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN [1] Nguyễn Đình Phú Giáo trình vi xử lý Trường Đại học Sư phạm Kỹ thuật Tp.HCM [2] Sách vi xử lý ứng dụng : Tác giả Tống Văn On [3] Datasheet ATMEGAxx.pdf [4] Codevision CReferenceManual.pdf [5] www.Embest.com [6] Hocdelam.org [7] Dientuvietnam.net Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn - 82 - Luan van C.vT.Bg.Jy.Lj.Tai lieu Luan vT.Bg.Jy.Lj van Luan an.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj Do an.Tai lieu Luan van Luan an Do an.Tai lieu Luan van Luan an Do an Stt.010.Mssv.BKD002ac.email.ninhd.vT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.LjvT.Bg.Jy.Lj.dtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn.Stt.010.Mssv.BKD002ac.email.ninhddtt@edu.gmail.com.vn.bkc19134.hmu.edu.vn

Ngày đăng: 24/07/2023, 00:16

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w