Microsoft Word Finished Draft doc I TRƯỜNG ĐẠI HỌC LẠC HỐNG KHOA CƠ ĐIỆN ĐỀ TÀI NGHIỆN CỨU KHOA HỌC ROBOT BẮN PHÁO HOA Nhóm thực hiện Nguyễn Vũ Quỳnh Lê Phương Long Biên Hòa, 16/06/2010 I ROBOT BẮN PH[.]
I TRƯỜNG ĐẠI HỌC LẠC HỐNG KHOA CƠ ĐIỆN ĐỀ TÀI NGHIỆN CỨU KHOA HỌC ROBOT BẮN PHÁO HOA Nhóm thực hiện: Nguyễn Vũ Quỳnh Lê Phương Long Biên Hòa, 16/06/2010 I ROBOT BẮN PHÁO HOA Lời Nói Đầu Trong năm gần với tiến không ngừng khoa học công nghệ kỹ thuật, đặc biệt lĩnh vực robot, robot tự hành hầu hết thiết kế để làm việc mơi trường bình thường, số khác thiết kế để phục vụ công nghiệp, quân y học Xuất phát từ ý tưởng thiết kế robot phục vụ lĩnh vực giải trí Nhóm nghiên cứu thiết kế Robot Bắn Pháo Hoa để phục vụ cho lễ hội, hội nghị kiện quan trọng năm trường Đại Học Lạc Hồng Đề tài ‘Robot Bắn Pháo Hoa ‘ đề tài đặc trưng ngành Cơ – Điện Tử , chọn làm đề tài nghiên cứu khoa học Đề tài gồm phần : - Giới thiệu khái quát đề tài - Lý thuyết Tổng quan cầu thang Kiến trúc robot Hệ thống robot Thiết kế hệ thống bắn pháo hoa Bài tốn hình học động lực học Tính tốn hệ thống bánh theo chi tiết máy Khái quát động Khái quát nguồn điện chiều Giới thiệu phần tử điện mạch 10 Các cảm biến 11 Truyền dẫn liệu không dây II 12 Giới thiêu hệ thống điều khiển - Thi cơng Nhóm thực Nguyễn Vũ Quỳnh , Lê Phương Long Keywords: ĐH Lạc Hồng, Robot Bắn Pháo Hoa III Lời Cảm Ơn Trước tiên, tơi muốn nói lời cảm ơn tới thầy Trần Hành hiệu trưởng trường Đại Học Lạc Hồng, ông giúp đỡ động viên suốt trình làm đề tài Robot Bắn Pháo Hoa Cảm ơn chương trình Robocon Techshow 2010 hỗ trợ tạo điều kiện cho Robot Bắn Pháo Hoa trình diễn để chào đón tất đội Robocon Việt Nam 2010 Cảm ơn tất bạn sinh viên nhiệt tình giúp đỡ suốt trình diễn triển lãm cá lễ hội trường Đại Học Lạc Hồng IV Mục Lục Lời Nói Đầu I Lời Cảm Ơn III Mục Lục IV Hình Ảnh VII Bảng Biểu X Chương 1: Giới Thiệu Chương 2: Cầu Thang Chương 3: Khái Quát Động Cơ Điện Một Chiều 3.1 Giới Thiệu Động Cơ điện chiều tầm quan trọng nó: 3.2 Cấu tạo động điện chiều: 3.3 Nguyên lý làm việc động điện chiều 3.4 Đặc tính động chiều: 3.5 Nguyên tắc điều chỉnh động điện chiều 13 3.6 Khởi động động điện chiều 13 3.7 Điều chỉnh tốc độ động điện chiều 14 Chương 4: Cảm Biến 16 4.1 Cảm biến siêu âm : 16 4.2 Cảm biến Laser : 16 4.3 Cảm biến Camera : 17 4.4 Cảm biến Encoder : 17 4.5 Cảm biến La Bàn : 17 Chương 5: Hệ Thống Cơ Của Robot 18 5.1 Thiết Kế Thân Của Robot 18 V 5.2 Mô tả Hệ Thống Cơ : 20 5.3 Thiết Kế Hệ Thống Bắn Pháo Hoa: 22 Chương 6: Thiết Kế Bộ Răng Trụ Răng Thẳng 26 6.1 Định ứng suất tiếp xúc cho phép 26 6.2 Ứng suất uốn cho phép 26 6.3 Sơ chọn hệ số tải trọng k=1,3 27 6.4 Chọn hệ số chiều rộng bánh 27 6.5 Tính khoảng cách trục A 27 6.6 Định xác hệ số tải trọng k 27 6.7 Xác định mơ đun, số răng, góc nghiêng chiều rộng bánh 27 6.8 Kiểm nghiệm sức bền uốn : 28 6.9 Kiểm nghiệm sức bền uốn chịu tải đột ngột thời gian ngắn 28 6.10 Các thơng số hình học bánh [3] 29 Chương 7: Giới Thiệu Lý Thuyết Về Mạch Điều Khiển Từ Xa Của Thiết Bị 30 7.1 Tổng quan 30 7.2 Cấu trúc nhớ cổng vào 32 7.3 Cổng vào 36 7.4 Bộ định thời AT mega8 [1] 38 7.5 Cấu trúc ngắt ATmega8 44 7.6 Các phận ngoại vi khác 50 7.7 Bộ truyền liệu nối tiếp USART 53 7.8 Hệ thống xung CLOCK lập trình nhớ ON – CHIP 55 7.9 Ngôn Ngữ C cho AVR 56 7.10 Cấu trúc lựa chọn Switch 68 7.11 Phương pháp phần mềm nạp cho ATmega8 74 7.12 Phần mềm nạp 80 7.13 Thiết kế mạch điều khiển từ xa cho chip AVR ATMEGA8 84 VI Chương 8: Kết Quả 87 8.1 Kết nghiên cứu: 87 8.2 Hướng phát triển đề tài: 87 Tài Liệu Tham Khảo 88 Appendix 89 VII Hình Ảnh Hình 1-1 Robot dị tìm Hình 1-2 Robot điều khiển giao thơng .2 Hình 1-3 Robot bắn pháo hoa Hình 1-4 Robot bắn pháo hoa Hình 3-1 Cấu tạo động điện chiều Hình 3-2 Nguyên lý hoạt động động điện chiều Hình 5-1 Robot di chuyển chân 18 Hình 5-2 Robot di chuyển bánh xe .19 Hình 5-3 Robot di chuyển xích 19 Hình 5-4 Robot di chuyển bánh xích 20 Hình 5-5 Robot di chuyển bánh hành tinh 20 Hình 5-6 Hệ thống robot bắn pháo hoa 21 Hình 5-7 Nguyên lý ăn khớp 21 Hình 5-8 Ổ đỡ thân robot 22 Hình 5-9 Thân trụ robot 23 Hình 5-10 Cách lắp thân trụ động kéo 23 Hình 5-11 Ổ đỡ dẫn hướng 76*76 .24 Hình 5-12 Cách lắp thân trụ nâng hạ 50*50 24 Hình 5- 13 Cách lắp thân trụ nâng hạ 38*38 .25 Hình 5-14 Cách lắp bệ bắn pháo hoa 25 Hình 7-1 Hình ảnh loại AVR 31 Hình 7-2 Sơ đồ khối cấu trúc vi điêu khiển AVR 32 Hình 7-3 Tổng quan chế độ hoạt động boot loader 33 Hình 7-4 Thanh ghi EEAR 34 Hình 7-5 Thanh ghi EEDR 35 Hình 7-6 Thanh ghi EECR 35 Hình 7-7 Bản đồ nhớ Atmega128 36 Hình 7-8 Thanh ghi DDRA 37 Hình 7-9 Thanh ghi PORTA 38 VIII Hình 7-10 Thanh ghi PINA 38 Hình 7-11 Sơ đồ định thời .39 Hình 7-12 Sơ đồ ngõ khối 41 Hình 7-13 Sơ đồ khối định thời .42 Hình 7-14 Sơ đồ khối định thời 43 Hình 7-15 Các Ngắt Lồng Nhau 47 Hình 7-16 Thanh ghi EICRA 48 Hình 7-17 Thanh ghi EICRB 49 Hình 7-18 Thanh ghi EIMSK 49 Hình 7-19 Thanh ghi EIFR 49 Hình 7-20 Thanh ghi MCUCR .50 Hình 7-21 Sơ đồ giản lượt so sánh tương tự 50 Hình 7-22 Sơ đồ khối đơn giản ADC .52 Hình 7-23 Sơ đồ ngõ vào vi sai [5] 53 Hình 7-24 Sơ đồ khối USART 55 Hình 7-25 Sơ đồ hệ thống xung clock cho Atmega8 .56 Hình 7-26 Chương trình lập trình ATmega8 71 Hình 7-27 Giao diện lập trình phần mềm CodeVisionAVR 72 Hình 7-28 Các tạo project CodeVision .72 Hình 7-29 Các Bước Thực Hiện 72 Hình 7-30 Các bước thực 73 Hình 7-31 Cách chọn loại AVR 73 Hình 7-32 Các bước thực .74 Hình 7-33 Hiển thị nhận cắm mạch nạp 75 Hình 7-34 Các bước cài đặt 76 Hình 7-35 Các bước cài đặt 77 Hình 7-36 Các bước cài đặt 77 Hình 7-37 Thốt cài đặt 77 Hình 7-38 Cài đặt xong chương trình 78 Hình 7-39 Setup cổng COM 78 Hình 7-40 Cách setup cổng COM 79 Hình 7-41 Cách hiệu chỉnh port .79 Hình 7-42 Cách setup cổng COM .80 IX Hình 7-43 AVR program 81 Hình 7-44 Hiệu chỉnh bits 82 Hình 7-45 Lỗi nạp 82 Hình 7-46 Lỗi nạp 83 Hình 7-47 Sơ đồ mạch ATmega8 Capture (phần mềm Orcad) .84 Hình 7-48 Sơ đồ mạch in layout, Hình 7-49 Mạch thực tế 85 Hình 7-50 Bộ thu (phát) từ xa thiết bị 85 Hình 7-51 Sơ đồ mạch động lực 86 90 Appendix Thân Trụ Chính 91 Appendix Sơ mi dẫn hướng 76*50 92 Appendix Nâng Hạ Thân Chính 93 Appendix Nâng Hạ Thân Chính 38*38 94 Appendix Sơ mi dẫn hướng 50*38 Appendix Hệ Thống Bắn Pháo Giấy 95 Appendix bệ lắp pháo 96 Appendix Chương trình Board Phát #include // Standard Input/Output functions #include #define ADC_VREF_TYPE 0x20 int ADC0, ADC1, ADC2; // Read the most significant bits // of the AD conversion result unsigned char read_adc(unsigned char adc_input) { ADMUX=adc_input|ADC_VREF_TYPE; // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0); ADCSRA|=0x10; return ADCH; } // Declare your global variables here void main(void) { char j; j=0; // Declare your local variables here // Input/Output Ports initialization // Port B initialization // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTB=0xFF; DDRB=0x00; // Port C initialization // Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In // State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00; DDRC=0x00; // Port D initialization // Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=In // State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=T PORTD=0xff; 97 DDRD=0x02; // Timer/Counter initialization // Clock source: System Clock // Clock value: Timer Stopped TCCR0=0x00; TCNT0=0x00; // Timer/Counter initialization // Clock source: System Clock // Clock value: Timer Stopped // Mode: Normal top=FFFFh // OC1A output: Discon // OC1B output: Discon // Noise Canceler: Off // Input Capture on Falling Edge // Timer Overflow Interrupt: Off // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter initialization // Clock source: System Clock // Clock value: Timer Stopped // Mode: Normal top=FFh // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: Off // INT1: Off MCUCR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; 98 // USART initialization // Communication Parameters: Data, Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud rate: 9600 UCSRA=0x00; UCSRB=0x18; UCSRC=0x86; UBRRH=0x00; UBRRL=0x2F; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; // ADC initialization // ADC Clock frequency: 115.200 kHz // ADC Voltage Reference: AREF pin // Only the most significant bits of // the AD conversion result are used ADMUX=ADC_VREF_TYPE; ADCSRA=0x86; while (1) { ADC0= read_adc(0); ADC1= read_adc(1); ADC2= read_adc(2); //TOI THANG if(ADC0>=160&&ADC0=120&&ADC1180&&ADC1>=120&&ADC1=60&&ADC0=120&&ADC1=100&&ADC0=100&&ADC1=100&&ADC0=120&&ADC1=100&&ADC0