XE tự HÀNH dò LINE bám VẠCH DÙNG PIC (có code và layout)

25 2.3K 47
XE tự HÀNH dò LINE bám VẠCH DÙNG PIC (có code và layout)

Đ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

XE tự HÀNH dò LINE bám VẠCH DÙNG PIC (có code và layout) XE tự HÀNH dò LINE bám VẠCH DÙNG PIC (có code và layout) XE tự HÀNH dò LINE bám VẠCH DÙNG PIC (có code và layout) XE tự HÀNH dò LINE bám VẠCH DÙNG PIC (có code và layout) XE tự HÀNH dò LINE bám VẠCH DÙNG PIC (có code và layout) XE tự HÀNH dò LINE bám VẠCH DÙNG PIC (có code và layout)

ĐỒ ÁN XE TỰ HÀNH LINE - BÁM VẠCH DÙNG PIC i MỤC LỤC DANH MỤC CÁC HÌNH VẼ VI DANH MỤC CÁC TỪ VIẾT TẮT VII CHƯƠNG GIỚI THIỆU ĐỀ TÀI 1.1 GIỚI THIỆU 1.1.1 Tổng quan đề tài 1.1.2 Yêu cầu đề tài 1.1.3 Phương án thực 1.2 CÁC THÀNH PHẦN CHÍNH TRONG MẠCH 1.2.1 Vi điều khiển PIC16F877A 1.2.2 Cảm biến hồng ngoại 1.2.3 Module L298 1.2.4 Động DC bánh xe 2 CHƯƠNG THIẾT KẾ THI CÔNG 2.1 NGUYÊN LÝ HOẠT ĐỘNG CỦA MẠCH 2.2 SƠ ĐỒ KHỐI CỦA MẠCH 2.3 SƠ ĐỒ NGUYÊN LÝ 2.3.1 Sơ đồ nguyên lý mạch nguồn 2.3.2 Sơ đồ nguyên lý xe 2.3.3 Mạch in CHƯƠNG GIẢI THUẬT ĐIỀU KHIỂN 3.1 LƯU ĐỒ GIẢI THUẬT 10 3.2 TRÌNH BIÊN DỊCH MIKROC PRO 3.3 KẾT QUẢ MƠ HÌNH THỰC TẾ 11 11 CHƯƠNG NHẬN XÉT 12 4.1 NHẬN XÉT 12 ii 10 CHƯƠNG KẾT LUẬN 13 5.1 KẾT LUẬN 13 5.1.1 Ưu điểm 5.1.2 Nhược điểm 5.2 13 13 HƯỚNG PHÁT TRIỂN 13 TÀI LIỆU THAM KHẢO 14 PHỤ LỤC 15 iii DANH MỤC CÁC HÌNH VẼ Hình 1-1 Vi điều khiển PIC16F877A [3] .2 Hình 1-2 Sơ đồ chân Vi điều khiển PIC16F877A.[3] .3 Hình 1-3 Module Cảm biến hồng ngoại.[6] Hình 1-4 Sơ đồ nguyên lý Module Cảm biến hồng ngoại .5 Hình 1-5 Module điều khiển động L298N.[5] Hình 1-6 Động Cơ chiều (DC) bánh xe Hình 2-1 Sơ đồ khối hoạt động xe Hình 2-2 Sơ đồ nguyên lý mạch nguồn [1] Hình 2-3 Mạch in mạch nguồn .8 Hình 2-4 Sơ đồ nguyên lý hoạt động xe.[1] .9 Hình 2-5 Mạch in khối điều khiển xe Hình 3-1 Lưu đồ giải thuật 10 Hình 3-2 Giao diện trình biên dịch mikroC PRO 11 Hình 3-3 Mơ hình xe thực tế 11 iv DANH MỤC CÁC TỪ VIẾT TẮT CMOS Complementary Metal Oxide Semiconductor IC Integrated Circuit PWM Pulse Width Modulation RAM Random Access Memory ROM Read Only Memory v ĐỒ ÁN Trang 1/20 CHƯƠNG GIỚI THIỆU ĐỀ TÀI 1.1 Giới thiệu Với phát triển nhanh chóng cơng nghệ điện tử ứng dụng lĩnh vực khác nhau, Robot tự hành hướng phát triển lĩnh vực robotic mà trọng tâm nghiên cứu chuyển động robot không gian định Robot tự hành di chuyển mơi trường nguy hiểm, độc hại mà người không đặt chân lên được; vẽ lại đồ khu vực thuận tiện cho việc quan sát đưa kế hoạch để tránh nguy ngại cho người giảm tối đa sức lực người 1.1.1 Tổng quan đề tài Sử dụng cảm biến hồng ngoại kết nối với PIC16F877A điều khiển động chạy vào đường line người dùng tạo để tránh trường hợp có chướng ngại vật đường 1.1.2 Yêu cầu đề tài - Thiết kế mơ hình robot xe tự hành chạy theo line đen - Viết chương trình điều khiển robot xe hoạt động - Thiết kế mạch nguồn cấp cho xe hoạt động 1.1.3 Phương án thực - Khảo sát nhu cầu thị trường để biết người dùng cần thiết kế mạch theo hình dáng kích thước xe với cách vận hành xe - Bắt đầu lên ý tưởng thiết kế mạch, tìm hiểu linh kiện cần sử dụng - Phân tích, xử lý ý tưởng đến mơ hình xe cuối Xe tự hành line, bám vạch ĐỒ ÁN Trang 2/20 1.2 Các thành phần mạch 1.2.1 Vi điều khiển PIC16F877A Hình 1-1 Vi điều khiển PIC16F877A [3] PIC16F877A họ vi điều khiển có 40 chân, chân có chức khác Trong có số chân nhiều chức năng, chân có khả hoạt động đường xuất/nhập (I/O) độc lập chức đặc biệt dùng để giao tiếp với thiết bị ngoại vi 1.2.1.1 Cấu trúc chung - 8K Flash ROM - 238 bytes RAM - 256 bytes EEPROM - port xuất nhập (A, B, C, D, E) - định thời bit Timer 0, Timer - định thời 16 bit Timer - CCP, Capture /Compare/PWM (Bắt giữ/ So sánh/ Điều rộng xung) - biến đổi tương tự - số (ADC) 10 bit, ngõ vào Xe tự hành line, bám vạch ĐỒ ÁN Trang 3/20 - so sánh tương tự - định thời giám sát - cổng song song bit với tín hiệu điều khiển - cổng nối tiếp - 15 nguồn ngắt ( interrupt) - Nguồn dao động lập trình tạo công nghệ CMOS - Sử dụng tập lệnh RISC gồm 35 lệnh có độ dài 14 bit - Tần số hoạt động tối đa 20MHz 1.2.1.2 Chức chân sử dụng đề tài Hình 1-2 Sơ đồ chân Vi điều khiển PIC16F877A.[3] - RA1: Xuất nhấp số - bit thứ port A - RA2: Xuất nhập số - bit thứ port A - RE0: Xuất nhập số - RE1: Xuất nhập số - RE2: Xuất nhập số Xe tự hành line, bám vạch ĐỒ ÁN Trang 4/20 - RC1/CPP2: Xuất nhập số/ ngõ PWM2 - RC2/CPP1: Xuất nhập số/ ngõ PWM1 - RC4: Xuất nhấp số - bit thứ port C - RC5: Xuất nhấp số - bit thứ port C - RC6: Xuất nhấp số - bit thứ port C - RC7: Xuất nhấp số - bit thứ port C 1.2.2 Cảm biến hồng ngoại Hình 1-3 Module Cảm biến hồng ngoại.[6] - Module cảm biến hồng ngoại dùng để phát vật phạm vi hoạt động cảm biến Tia hồng ngoại phát tần số định, phát hướng truyền có vật cản (mặt phản xạ), phản xạ vào đèn thu hồng ngoại, sau so sánh, đèn màu xanh sáng lên, đồng thời cho tín hiệu số đầu - Khoảng cách làm việc hiệu từ đến 5cm - Điện áp làm việc từ 3.3V - 5V - Bộ so sánh LM358 làm việc ổn định - Độ nhạy sáng cảm biến điều chỉnh chiết áp Xe tự hành line, bám vạch ĐỒ ÁN Trang 5/20 Hình 1-4 Sơ đồ nguyên lý Module Cảm biến hồng ngoại 1.2.3 Module L298 Hình 1-5 Module điều khiển động L298N.[5] Mạch điều khiển động DC L298 điều khiển động DC Thông số kỹ thuật: - Điện áp hoạt động 5V đến 12V - Dòng cấp tối đa 2A - Điện áp tín hiệu điều khiển 5V đến 12V - Dòng tín hiệu điều khiển đến 36mA - Cơng suất phí: 20W - Nhiệt độ hoạt động từ -25 độ đến 130 độ Xe tự hành line, bám vạch ĐỒ ÁN Trang 6/20 Chức chân : Chân 12V, 5V : Cấp nguồn nuôi driver L298N Chân GND : Nối đất Chân ENA, ENB : Cấp xung cho động Chân IN1, IN2, IN3, IN4 : Điều khiển chiều quay động 1.2.4 Động DC bánh xe Hình 1-6 Động Cơ chiều (DC) bánh xe Động DC hoạt động cấp nguồn từ 3V đến 5V, đồng thời cấp nguồn ngược động quay ngược cấp nguồn thuận động quay thuận Xe tự hành line, bám vạch ĐỒ ÁN Trang 7/20 CHƯƠNG THIẾT KẾ THI CÔNG 2.1 Nguyên lý hoạt động mạch - Khi nhấn nút nguồn pin 12v chiều cấp vào để hạ từ 12v xuống 5v cấp cho mạch hoạt động - Khi cảm biến hồng ngoại nhận tín hiệu từ line đen có giá trị điện áp 5v khỏi line cảm biến hồng ngoại trả giá trị 0v vào vi điều khiển Khi vi điều khiển gửi tín hiệu tới chân người dùng lập trình sẵn để cấp tín hiệu cho module L298N hoạt động, đồng thời điều biến xung PWM cho động hoạt động - Trường hợp xe chạy lệch khỏi line đen bên trái hoặt bên phải vi điều khiển nhận tín hiệu từ cảm biến hồng ngoại điều khiển cho xe chạy lại vào line đen 2.2 Sơ đồ khối mạch Nguồn Vi điều khiển Thực Cảm biến Hình 2- Sơ đồ khối hoạt động xe - Khối nguồn 5V chiều: Cấp cho Vi điều khiển hoạt động - Khối vi điều khiển: Xử lý tín hiệu từ cảm biến trả để đưa yêu cầu điều khiển cho khối thực - Khối cảm biến : Sử dụng cảm biến hồng ngoại để nhận dạng tín hiệu từ gửi vi điều khiển để xử lý - Khối thực hiện: Có nhiệm vụ chấp hành yêu cầu khối vi điều khiển gửi xuống Xe tự hành line, bám vạch ĐỒ ÁN Trang 8/20 2.3 Sơ đồ nguyên lý 2.3.1 Sơ đồ nguyên lý mạch nguồn Hình 2- Sơ đồ nguyên lý mạch nguồn Hình 2- Mạch in mạch nguồn Xe tự hành line, bám vạch ĐỒ ÁN Trang 9/20 2.3.2 Sơ đồ nguyên lý xe Hình 2- Sơ đồ nguyên lý hoạt động xe.[1] 2.3.3 Mạch in Hình 2- Mạch in khối điều khiển xe Xe tự hành line, bám vạch ĐỒ ÁN Trang 10/20 CHƯƠNG GIẢI THUẬT ĐIỀU KHIỂN 3.1 Lưu đồ giải thuật Bắt đầu Động chạy Kiểm tra vạch đen Động xe chạy thẳng Kết thúc Hình 3- Lưu đồ giải thuật Xe tự hành line, bám vạch Động xe chạy ngược ĐỒ ÁN Trang 11/20 3.2 Trình biên dịch MikroC PRO Hình 3- Giao diện trình biên dịch mikroC PRO Với mikroC PRO có cơng cụ đầy đủ tính mạnh mẽ, đồng thời trực quan thuận tiện cho việc viết chương trình điều khiển PIC 3.3 Kết mơ hình thực tế Hình 3- Mơ hình xe thực tế Xe tự hành line, bám vạch ĐỒ ÁN Trang 12/20 CHƯƠNG NHẬN XÉT 4.1 Nhận xét - Mạch hoạt động với yêu cầu đặt - Hệ thống mơ hình xe line, bám vạch hoạt động ổn định xe chạy tốc độ tương đối cao né tránh vật cản - Độ xử lý xe tương đối mịn xác - Do thời gian nghiêm cứu hạn hẹp nên chưa khắc phục nhiễu dừng lại việc tự hành Xe tự hành line, bám vạch ĐỒ ÁN Trang 13/20 CHƯƠNG KẾT LUẬN 5.1 Kết luận 5.1.1 Ưu điểm - Thao tác vận hành xe đơn giản - Các linh kiện dễ dàng tìm kiếm chi phí khơng cao - Sử dụng nguồn 5V chiều nên đảm bảo an tồn 5.1.2 Nhược điểm - Mạch có nhiều thành phần nối dây với nên dây nối khơng ăn khớp - Các chân linh kiện bị nhiễu tác động bên - Cảm biến hồng ngồi có độ nhạy cao khó để điều chỉnh để có độ xác tuyệt đối 5.2 Hướng phát triển - Tối ưu kích thước mạch thực - Nâng cao khả giao tiếp với máy tính, smartphone với thiết bị khác - Có thể thêm cảm biến khác hay chức định vị cho xe Xe tự hành line, bám vạch ĐỒ ÁN Trang 14/20 TÀI LIỆU THAM KHẢO Giáo Trình : [1] Lê Tiến Thường (2008) , Mạch Điện Tử 1, Đại Học Quốc Gia Tp Hồ Chí Minh [2] TS Phạm Hữu Lộc – KS Phạm Quang Trí (2010) , Kỹ Thuật Vi Xử Lý, Nhà Xuất Đại Học Cơng Nghiệp Thành Phố Hồ Chí Minh Internet : [3] http://alldatasheet.com/ [4] http://www.dientuvietnam.net/ [5] http://arduino.vn/bai-viet/893-cach-dung-module-dieu-khien-dong-co-l298n- cau-h-de-dieu-khien-dong-co-dc [6] http://www.machdientu.com.vn/ Xe tự hành line, bám vạch ĐỒ ÁN Trang 15/20 PHỤ LỤC Chương trình điều khiển: void navetcan() { If (((PORTA.B2=0)&(PORTA.B1=0))//(PORTA.B2=0)//(PORTA.B1=0)) {[ int t = 0; while (t < 40 ) { t + +; PORTC.F7 = ; PORTC.F6 = ; PORTC.F5 = ; PORTC.F4 = ; PWM1_Set_Dulty(130) ; PWM2_Set_Dulty(130) ; delay_ms(10) ; ]} While ( t < 70) {[( t++; PORTC.F7 = ; PORTC.F6 = ; PORTC.F5 = ; PORTC.F4 = ; PWM1_Set_Durty(0); Xe tự hành line, bám vạch ĐỒ ÁN Trang 16/20 PWM2_Set_Durty(120); delay_ms(10); )} while( t < 150 ) { t++; PORTC.F7 =1 ; PORTC.F6 =0 ; PORTC.F5 =1 ; PORTC.F4 =0 ; PWM1_Set_Duaty(110) ; PWM2_Set_Duaty(110) ; delay_ms(10.0); } while( t < 180) {[ t + +; PORTC.F7=1; PORTC.F6=0; PORTC.F5=1; PORTC.F4=0; PWM1_Set_Duty(120); PWM2_Set_Duty(0); delay_ms(10); ]} while(PORTE.B0l=1) {[ PORTC.F7=1; PORTC.F6=0; Xe tự hành line, bám vạch ĐỒ ÁN Trang 17/20 PORTC.F5=1; PORTC.F4=0; PWM1_Set_Duty(110); PWM2_Set_Duty(90); delay_ms(10); ]} } } void dieukien() { if ( (PORTE.B0=1) & (PORTE.B1=0) & (PORTE.B2=1) ) {( PORTC.F7 = ; PORTC.F6 = ; PORTC.F5 = ; PORTC.F4 = ; PWM1_Set_Duty(115) ; PWM2_Set_Duty(115) ; ) } if ( (PORTE.B0= 0) & (PORTE.B1=0) & (PORTE.B2=0) ) { PWM2_Set_Duty(115); PWM1_Set_Duty(115); PORTC.F7 = ; PORTC.F6 = ; PORTC.F5 = ; PORTC.F4 = ; } Xe tự hành line, bám vạch ĐỒ ÁN Trang 18/20 if ( (PORTE.B0=0) &(PORTE.B1=0) &(PORTE.B2=1) ) { PORTC.F7 = ; PORTC.F6 = ; PORTC.F5 = ; PORTC.F4 = ; PWM1_Set_Duty(30); PWM2_Set_Duty(115); } if ( (PORTE.B0=0) & (PORTE.B1=1) & (PORTE.B2=1) ) { PORTC.F7 = ; PORTC.F6 = ; PORTC.F5 = ; PORTC.F4 = ; PWM1_Set_Duty 30); PWM2_Set_Duty (115); } if ( (PORTE.B0=1) & (PORTE.B1=0) & (PORTE.B2=0) ) {( PORTC.F7 = ; PORTC.F6 = ; PORTC.F5 = ; PORTC.F4 = ; PWM1_Set_Duty(115); PWM2_Set_Duty(30); )} if ( (PORTE.B0=1) &(PORTE.B1=1) & (PORTE.B2=0) ) Xe tự hành line, bám vạch ĐỒ ÁN Trang 19/20 { PORTC.F7 = ; PORTC.F6 = ; PORTC.F5 = ; PORTC.F4 = ; PWM1_Set_Duty(115) ; PWM2_Set_Duty(30) ; } if ( (PORTE.B0=1) && (PORTE.B1=1) && (PORTE.B2=1) ) ( PORTC.F7 = ; PORTC.F6 = ; PORTC.F5 = ; PORTC.F4 = ; PWM1_Set_Duty(115) ; PWM2_Set_Duty(115) ; ) } void main() { ADCON1 = 0x06; TRIRSA = 0xFF ; TRIRSE = 0xFF ; TRIRSC = 0x00 ; PWM1_Init(3000) ; PWM1_Start( ) ; PWM2_Init(3000) ; PWM2_Start( ) ; while(1) Xe tự hành line, bám vạch ĐỒ ÁN Trang 20/20 {( navetcan(); dieukien(); )} } Xe tự hành line, bám vạch ... nguồn Xe tự hành dò line, bám vạch ĐỒ ÁN Trang 9/20 2.3.2 Sơ đồ nguyên lý xe Hình 2- Sơ đồ nguyên lý hoạt động xe. [1] 2.3.3 Mạch in Hình 2- Mạch in khối điều khiển xe Xe tự hành dò line, bám vạch. .. ; PWM2_Init(3000) ; PWM2_Start( ) ; while(1) Xe tự hành dò line, bám vạch ĐỒ ÁN Trang 20/20 {( navetcan(); dieukien(); )} } Xe tự hành dò line, bám vạch ... khiển PIC 3.3 Kết mơ hình thực tế Hình 3- Mơ hình xe thực tế Xe tự hành dò line, bám vạch ĐỒ ÁN Trang 12/20 CHƯƠNG NHẬN XÉT 4.1 Nhận xét - Mạch hoạt động với yêu cầu đặt - Hệ thống mơ hình xe dò line,

Ngày đăng: 04/05/2018, 18:05

Từ khóa liên quan

Mục lục

  • DANH MỤC CÁC HÌNH VẼ

  • DANH MỤC CÁC TỪ VIẾT TẮT

  • CHƯƠNG 1. GIỚI THIỆU ĐỀ TÀI

    • 1.1 Giới thiệu

      • 1.1.1 Tổng quan về đề tài

      • 1.1.2 Yêu cầu đề tài

      • 1.1.3 Phương án thực hiện

      • 1.2 Các thành phần chính trong mạch

        • 1.2.1 Vi điều khiển PIC16F877A

          • 1.2.1.1 Cấu trúc chung

          • 1.2.1.2 Chức năng các chân sử dụng trong đề tài

          • 1.2.2 Cảm biến hồng ngoại

          • 1.2.3 Module L298

          • 1.2.4 Động cơ DC và bánh xe

          • CHƯƠNG 2. THIẾT KẾ THI CÔNG

            • 2.1 Nguyên lý hoạt động của mạch

            • 2.2 Sơ đồ khối của mạch

            • 2.3 Sơ đồ nguyên lý

              • 2.3.1 Sơ đồ nguyên lý mạch nguồn

              • 2.3.2 Sơ đồ nguyên lý xe

              • 2.3.3 Mạch in

              • CHƯƠNG 3. GIẢI THUẬT ĐIỀU KHIỂN

                • 3.1 Lưu đồ giải thuật

                • 3.2 Trình biên dịch MikroC PRO

                • 3.3 Kết quả mô hình thực tế

                • CHƯƠNG 4. NHẬN XÉT

                  • 4.1 Nhận xét

                  • CHƯƠNG 5. KẾT LUẬN

                    • 5.1 Kết luận

                      • 5.1.1 Ưu điểm

Tài liệu cùng người dùng

Tài liệu liên quan