Trong thời đại công nghiệp hiện nay, robot ngày càng được sử dụng phổ biến trong sản xuất cũng như trong cuộc sống con người. Robot đã có một vị trí quan trọng không thể thay thế được, nó giúp con người làm việc trong những điều kiện nguy hiểm khó khan. Ngoài ra robot còn dùng trong lĩnh vực thám hiểm không gian, quân sự, giải trí… lĩnh vực robot di động đang ngày càng được sự quan tâm của các nhà nghiên cứu và xã hội. Đặc biệt robot dò đường là vấn đề thiết yếu của robot di động
BỘ THÔNG TIN VÀ TRUYỀN THÔNG TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN HỮU NGHỊ VIỆT - HÀN KHOA CÔNG NGHỆ ĐIỆN TỬ- VIỄN THÔNG ============================ ĐỒ ÁN VI ĐIỀU KHIỂN ĐỀ TÀI THIẾT KẾ ROBOT DÒ ĐƯỜNG LỚP: CCVT07A SVTH: HỒ MINH PHƯƠNG GVHD: DƯƠNG TUẤN QUANG Đà Nẵng, 14 tháng 12 năm 2016 Đồ án vi điều khiển GVHD: Dương Tuấn Quang MỤC LỤC MỤC LỤC 2.2.2 Khối cảm biến: 2.2.3 Các đặc điểm hệ vi xử lý ATmega328: 2.2.4 đặc điểm phần động Module điều khiển động L298 .8 2.3 Bo mạch Arduino: .9 2.4 sơ đồ cấu trúc điều khiển: .11 CHƯƠNG III SƠ ĐỒ KHỐI VÀ SƠ ĐỒ NGUYÊN LÝ 12 CHƯƠNG IV CÁCH LÀM MẠCH VÀ NGUYÊN TẮC HOẠT ĐỘNG CỦA MẠCH 13 CHƯƠNG V KẾT LUẬN .18 1.Ưu – Nhược điểm: .18 Hướng phát triển đề tài: 18 Tài liệu tham khảo: 18 SVTH: Hồ Minh Phương_CCVT07A Đồ án vi điều khiển GVHD: Dương Tuấn Quang LỜI NÓI ĐẦU Trong thời đại công nghiệp nay, robot ngày sử dụng phổ biến sản xuất sống người Robot có vị trí quan trọng thay được, giúp người làm việc điều kiện nguy hiểm khó khan Ngoài robot dùng lĩnh vực thám hiểm không gian, quân sự, giải trí… lĩnh vực robot di động ngày quan tâm nhà nghiên cứu xã hội Đặc biệt robot dò đường vấn đề thiết yếu robot di động SVTH: Hồ Minh Phương_CCVT07A Đồ án vi điều khiển GVHD: Dương Tuấn Quang CHƯƠNG I: GIỚI THIỆU ĐỀ TÀI Robot tự hành thành phần có vai trò quan trọng ngành Robot học với phát triển mạnh mẽ hệ thống tự động hóa, robot tự hành ngày hoàn thiện cho thấy lợi ích công nghiệp sinh hoạt Một vấn đề quan tâm nghiên cứu robot tự hành làm để robot tự động theo quỹ đạo định Để điều khiển robot theo quỹ đão, người thiết kế lập trình xác định độ lệch tương ứng đối quỹ đạo robot quỹ đọa mong muốn, sau so sánh độ lệch thành mức điều khiển lái robot quay quỹ đạo hình Phương pháp có ưu điểm đơn giản robot chạy không ổn định, lúc nhanh, lúc lại chậm, tính ổn định phụ thuộc nhiều vào động kết cấu khí robot Trong nghiên cứu tập trung vào khắc phục nhược điểm cách áp dụng điều khiển PID điều khiển vị trí robot SVTH: Hồ Minh Phương_CCVT07A Đồ án vi điều khiển GVHD: Dương Tuấn Quang CHƯƠNG II: CẤU TẠO VÀ PHƯƠNG PHÁP ĐIỀU KHIỂN ROBOT THEO QUỸ ĐẠO 2.1 Vật liệu – linh kiện: • động chiều (DC motor) • IC atmega 328 • IC 7805 • Điện trở • Thạch anh 16 • Tụ điện • 3(cảm biến hồng ngoại) • Mạch cầu • Băng dính • Dây dẫn • Giấy bìa cứng • Nguồn 9V 2.2 Phương pháp điều khiển robot theo quỹ đạo với điều khiển PID 2.2.1 Cấu tạo robot SVTH: Hồ Minh Phương_CCVT07A Đồ án vi điều khiển GVHD: Dương Tuấn Quang B1, B2, B3: bánh xe robot, B3 bánh tự lựa hướng robot DC1: động gắn bánh xe bên trái B1 DC2: động gắn bánh xe bên phải B2 CB: khối cảm biến nhận biết quỹ đạo xe Arduino: điều khiển trung tâm robot Pin: Nguồn cấp cho robot hoạt động Hình Robot bám theo quỹ đạo 2.2.2 Khối cảm biến: khối cảm biến gồm cặp phát hồng ngoại led phát chiếu xuống sàn ( màu trắng) vạch ( màu đen) thị lượng ánh sáng hồng ngoại phản xạ lại led thu khác nên giá trị khác Hình 4: sơ đồ mạch cảm biến SVTH: Hồ Minh Phương_CCVT07A Đồ án vi điều khiển GVHD: Dương Tuấn Quang 2.2.3 Các đặc điểm hệ vi xử lý ATmega328: Vi điều khiển hệ vi xử lý tổ chức chip Các thong số vi điều khiển Atmega328 sau + Bộ vi xử lý + giao diện SPI đồng + kiến trúc: AVR 8bit + xung nhịp lớn nhất: 20Mhz + nhớ chương trình (FLASH): 32KB + Bộ nhớ EEPROM: 1KB + Điện áp hoạt động rộng: 1.8V – 5.5V +số timer: timer gồm timer 8-bit timer 16-bit +số kênh xung PWM: kênh (1timer kênh SVTH: Hồ Minh Phương_CCVT07A Đồ án vi điều khiển GVHD: Dương Tuấn Quang 2.2.4 đặc điểm phần động Module điều khiển động L298 a Phần động cơ: Moto DC hoạt động ta cấp điện áp DC vào motor dòng điện chiều chạy qua motor, motor quay theo chiều Nếu đổi chiều điện áp chiều motor quay lại ngược lại b Module điều khiển động l298 SVTH: Hồ Minh Phương_CCVT07A Đồ án vi điều khiển GVHD: Dương Tuấn Quang Chức chân L298 + Module L298 điều khiển động DC động bước, có lỗ nằm góc thuận tiện cho người sử dụng cố định vị trí module + có gắn tản nhiệt chống nóng cho IC, giúp IC điều khiển với dòng đỉnh đạt 2A + IC L298 gắn với ốt board giúp bảo vệ vi xử lý chống lại dòng điện cảm ứng từ việc khởi động /tắt động 2.3 Bo mạch Arduino: Các bo mạch Arduino thật bo mạch vi xử lý dùng để lập trình tương tác với thiết bị phần cứng cảm biến, động cơ, đèn thiết bị khác Đặc điểm bật Arduino môi trường phát triển ứng ứng dụng dễ sử dụng, với ngôn ngữ lập tình học cách nhanh chóng với người am hiểu điện tử lập trình Và điều làm nên tượng Arduino mức phần cứng tới phần mền Bo mạch ArduinoUNO bo mạch thông dụng ArduinoUno sử dụng chip Atmega328 Có 14 chân vào/ra số, chân vào tương tự, thạch anh dao động 16Mhz Một số thông số kỹ thuật sau: Vi điều khiển Điện áp hoạt động Nguồn cấp Số đầu vào/ra số Đầu vào tương tự SVTH: Hồ Minh Phương_CCVT07A Atmega328 5V 7-12V 14 (6PWM) Đồ án vi điều khiển GVHD: Dương Tuấn Quang Dòng vào tương tự Dòng điện vào/ra số SVTH: Hồ Minh Phương_CCVT07A 40 mA 32 KB 10 Đồ án vi điều khiển GVHD: Dương Tuấn Quang Sơ đồ chân Arduino: Hình 5: Bo mạch Arduino - USB (1): Arduino sử dụng cáp USB để giao tiếp với máy tính Thông qua cáp USB Upload chương trình cho Arduino hoạt động, USB nguồn cho Arduino - Nguồn cấp chiều cho Arduino 2.4 sơ đồ cấu trúc điều khiển: Nguyên tắc điều khiển robot theo quỹ đạo: khối cảm biến nhận biết robot theo hay lệch khỏi quỹ đạo gửi tín hiệu điều khiển trung tâm Arduino Arduino tính toán điều khiển tốc hai bánh xe robot để điều khiển hướng chuyển bobot Cụ thể, để rẽ trái tốc độ bánh xe bên phải robot nhanh bên trasim ngược lại để rẽ phải tốc độ bánh xe bên trái nhanh tốc độ bên phải, để thẳng tốc độ hai bánh xe Khi robot thẳng tốc độ di chuyển robot lớn nhất, robot lệch khỏi quỹ đạo tốc độ di chuyển robot chậm dần SVTH: Hồ Minh Phương_CCVT07A 11 Đồ án vi điều khiển GVHD: Dương Tuấn Quang CHƯƠNG III SƠ ĐỒ KHỐI VÀ SƠ ĐỒ NGUYÊN LÝ sơ đồ khối : sơ đồ nguyên lý SVTH: Hồ Minh Phương_CCVT07A 12 Đồ án vi điều khiển GVHD: Dương Tuấn Quang CHƯƠNG IV CÁCH LÀM MẠCH VÀ NGUYÊN TẮC HOẠT ĐỘNG CỦA MẠCH Mạch mắc theo sơ đồ Bộ phận cảm biến + khoảng cách module hồng ngoại 1cm khoảng cách bên phát thu khoảng cách lmm đặt thẳng hàng với Dùng keo nến để dáng vào + ánh sáng module hồng ngoại giảm ngược lại ta sử dụng module nguồn sáng nên gặp trắng, ánh sáng phản xạ lên module hồng ngoại làm điển trở giảm xuống gặp vạch đen ánh sáng khó phản xạ nên quang trở nhận ánh sáng làm điện trở tang Từ robot có phân biết vạch đen trắng ( hỗ trợ IC LM328) Bộ phận điều khiển động động DC có giảm tốc giúp robot dễ nhận vạch động lắp phía sau xe gắng chân phía trước SVTH: Hồ Minh Phương_CCVT07A 13 Đồ án vi điều khiển GVHD: Dương Tuấn Quang Bộ phận xử lý a Điều khiển: Vi xử lí nhận tín hiệu từ L298 để điều khiển động tiến hay lùi quay trái quay phải b Code vi điều khiển: Code lập trình trình Arduino sau: #define inA1 #define inA2 #define inB1 #define inB2 #define ENA 10 #define ENB 11 void setup() { pinMode(inA1, OUTPUT); pinMode(inA2, OUTPUT); pinMode(inB1, OUTPUT); pinMode(inB2, OUTPUT); pinMode(ENA, OUTPUT); pinMode(ENB, OUTPUT); Serial.begin(9600); //đi chậm cho khỏi trượt Line } void loop(){ int a= digitalRead(9); Serial.println(a); int b= digitalRead(7); Serial.println(b); int c= digitalRead(8); Serial.println(c); SVTH: Hồ Minh Phương_CCVT07A 14 Đồ án vi điều khiển GVHD: Dương Tuấn Quang int d=a+b+c; if(d2) {dung(); Serial.println("dung"); } else if(d0) { analogWrite(ENA, 110 ); analogWrite(ENB, 110); dithang(); Serial.println("di thang"); } SVTH: Hồ Minh Phương_CCVT07A 15 Đồ án vi điều khiển GVHD: Dương Tuấn Quang if (a>c) { analogWrite(ENA, 170 ); analogWrite(ENB, 170); quayphai(); Serial.println("quayphai"); } else if (c>a) { analogWrite(ENA, 170 ); analogWrite(ENB, 170); quaytrai(); Serial.println("quaytrai"); } } } void dithang(){ digitalWrite(inA1,HIGH); digitalWrite(inA2,LOW); digitalWrite(inB1,HIGH); digitalWrite(inB2,LOW); } void lui(){ digitalWrite(inA1,LOW); digitalWrite(inA2,HIGH); digitalWrite(inB1,LOW); SVTH: Hồ Minh Phương_CCVT07A 16 Đồ án vi điều khiển GVHD: Dương Tuấn Quang digitalWrite(inB2,HIGH); } void quaytrai(){ digitalWrite(inA1,HIGH); digitalWrite(inA2,LOW); digitalWrite(inB1,LOW); digitalWrite(inB2,LOW); } void quayphai(){ digitalWrite(inA1,LOW); digitalWrite(inA2,LOW); digitalWrite(inB1,HIGH); digitalWrite(inB2,LOW); } void dung(){ digitalWrite(inA1,LOW); digitalWrite(inA2,LOW); digitalWrite(inB1,LOW); digitalWrite(inB2,LOW); } SVTH: Hồ Minh Phương_CCVT07A 17 Đồ án vi điều khiển GVHD: Dương Tuấn Quang CHƯƠNG V KẾT LUẬN 1.Ưu – Nhược điểm: Đồ án hoàn thành yêu cầu thiết kế đạt yêu cầu kỹ thuật ứng dụng, robot dò đường đường cong Song bên cạnh đồ án em số hạn chế như: khả xác chưa cao, tốc độ xử lí robot chậm Do hạn chế thời gian kiến thức nên đò án em hạn chế thiếu sót Rất mong nhận đóng góp ý kiến bạn sinh viên, thầy cô gáo để đồ án em hoàn thiện Hướng phát triển đề tài: Từ ứng dụng điều khiển robot dò đường Ta ứng dụng nhiều mặt thám hiểm, vận chuyển hàng hóa nhà máy, xe không người lái Cụ thể lập trình cho robot thông minh có khả làm nhiều công việc khác di chuyển linh hoạt kĩ thuật dò đường vô quan trọng thi robocon tiếp tục phát triển để làm robot có tính ứng dụng cao Tài liệu tham khảo: [1] vi điều khiển , cấu trúc- lập trình ứng dụng ,TS Kiều Xuân Thực – nhà xuất Giáo Dục [2] Internet: www.dientuvietnam.net www.keil.com [3] tham khảo điện tử mạng internet SVTH: Hồ Minh Phương_CCVT07A 18 Đồ án vi điều khiển GVHD: Dương Tuấn Quang NHẬN XÉT CỦA GIẢNG VIÊN Đà Nẵng, ngày tháng GIẢNG VIÊN SVTH: Hồ Minh Phương_CCVT07A 19 năm 2016 ... 17 Đồ án vi điều khiển GVHD: Dương Tuấn Quang CHƯƠNG V KẾT LUẬN 1.Ưu – Nhược điểm: Đồ án hoàn thành yêu cầu thiết kế đạt yêu cầu kỹ thuật ứng dụng, robot dò đường đường cong Song bên cạnh đồ án. .. Cấu tạo robot SVTH: Hồ Minh Phương_CCVT07A Đồ án vi điều khiển GVHD: Dương Tuấn Quang B1, B2, B3: bánh xe robot, B3 bánh tự lựa hướng robot DC1: động gắn bánh xe bên trái B1 DC2: động gắn bánh xe... module nguồn sáng nên gặp trắng, ánh sáng phản xạ lên module hồng ngoại làm điển trở giảm xuống gặp vạch đen ánh sáng khó phản xạ nên quang trở nhận ánh sáng làm điện trở tang Từ robot có phân