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

Thiết kế robot dò đường

19 2,7K 10
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Thiết kế robot dò đường
Tác giả Nguyễn Thế Trường, Vũ Việt Hoàng, Dương Đình Khánh, Doãn Văn Trường, Trần Dăng Chiến
Người hướng dẫn Nguyễn Đức Minh
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Kiến Trúc Máy Tính
Thể loại Bài tập lớn
Năm xuất bản 2011
Thành phố Hà Nội
Định dạng
Số trang 19
Dung lượng 1,02 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Thiết kế robot dò đường

Trang 1

Trường Đại Học Bách Khoa Hà Nội Khoa Điện Tử Viễn Thông

*************

BÀI TẬP LỚN

MÔN HỌC : KIẾN TRÚC MÁY TÍNH

Đề tài :

THIẾT KẾ ROBOT DÒ DƯỜNG

Giáo viên hướng dẫn: Nguyễn Đức Minh

Sinh viên thực hiện:

1 Nguyễn Thế Trường

Lớp : CĐĐT3

MSSV: C0920321

2 Vũ Việt Hoàng

Lớp: CĐĐT3

MSSV: C0920307

3 Dương Đình Khánh

Lớp : CĐĐT3

MSSV: C0920311

4 Doãn Văn Trường

Lớp: CĐĐT3

MSSV: C0920369

5 Trần Dăng Chiến

Lớp: CĐĐT3

MSSV: C0820102

Hà Nội 10-2011

Trang 2

MỤC LỤC

Lời nói đầu

………

………

……….

………

………

………

Trang 3

LỜI NÓI ĐẦU

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 suấ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ó khăn Ngoài ra robot còn dung 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à nghin cứu và xã hội Đặc biệt robot dò đường là vấn đề thiết yếu của robot di động

PHẦN I: GIỚI THIỆU ĐỀ TÀI

1 Mục đích và yêu cầu

Thiết kế robot dò đường đi theo một đường đen vẽ sẵn

Phần II: Cấu tạo

1 Vật liệu – linh kiện

2 x động cơ một chiều (DC motor )

. 4 x quang trở (3kOhm - 150kOhm)

Trang 4

4 x led trắng

. 4 x diode ( ở đây em thay bằng led )

. 1 x IC ATmega32

. 1 x IC LM324

. 1 x IC L293

. 12 x R10k

.

. 1 x thạch anh 12MHz

băng dính

giấy

. Nguồn 9Vol

Trang 5

2. Các đặc điểm của hệ vi xử lý ATmega32:

Vi điều khiển (VĐK) là một hệ vi xử lý được tổ chức trong một chíp Nó bao gồm:

+ Bộ vi xử lý

+Giao diện SPI đồng bộ

+ Có 40 chân

+ Có thể ghi xoá được 100,000 lần

+ Có 1024 Bytes EEPROM

+ Dải tần số hoạt động từ 0MHz đến 16Mhz

+ Có 4 port xuất nhập (I/O) 8 bit

+ Có 2 Kbyte SRAM

+ Điện áp sử dụng 4.5V-5.5V

Hình2.2.1 : Sơ đồ chân của ATmega32

Trang 6

Hình 2.2.2 : Sơ đồ khối của ATmega32

+ GND(chân 11 và chân 31): Chân nối với 0V.

+ VCC(chân 10): Chân nối với 5V

+ AVCC(chân 30) và AREF(chân 32): Chân điện thế so sánh nối với 5V + Port A ( chân 33- 40), PortB ( chân 1-8), PortC ( chân 22-29) và PortD (chân 14-21) : là các chân vào ra của vi xử lí

+ RST ( chân 9)

Trang 7

Ngõ vào reset Mức cao trên chân này trong hai chu kỳ máy trong khi bộ dao động đang hoạt động sẽ reset của ATmega32

+ XTAL1& XTAL2: Là hai ngõ vào ra của hai bộ khuyếch đại đảo của mạch dao động, được cấu hình để dùng như một bộ tạo dao động trên chip

Hình2.2.3: Bộ tạo dao động

3 Các đặc điểm của cảm biến

Phần phát sử dụng led siêu sáng như led trắng Led được nối tiếp với một điện trở hạn chế dòng 470 Ohm

Phần thu sử dụng quang trở ( hình dưới) Điện trở phụ thuộc vào ánh sáng chiếu vào Khi có ánh sáng mạnh là 150K Ohm còn khi không có ánh áng là 3K Ohm Tín hiệu ra của phần thu xác định tại nút kết nối giữa quang trở và điện trở

Trang 8

4 Đặc điểm bộ Opamp LM324

LM324 có khả năg khuếch đại tín hiệu từ ngõ ra phần thu ( ở đây là quang trở )

Trang 9

Ngõ vào bộ Opamp gồm cực (+) và (-), tín hiệu vào cực (+) lấy từ ngõ ra của phần thu cảm biến, tín hiệu vào cực (-) lấy từ nút kết nối giữa 2 điện trở 10K Ohm mắc nối tiếp ( Cầu phân áp ) Khi đó :

+ nếu V+ > V- thì ngõ ra của Opamp là ~ 5V ( mức logic 1)

+ nếu V+ < V- thì ngõ ra của Opamp là ~ 0V ( mức logic 0)

5 Đặc điểm phần động cơ và IC L293B

a Động cơ DC

Motor DC hoạt động khi ta cấp 1 điện áp DC vào motor và 1 dòng điện 1 chiều chạy qua motor, motor sẽ quay theo chiều đó

Nếu chúng ta đổi chiều điện áp 1 chiều này thì motor sẽ quay ngược lại

Trang 10

b IC L293B

Để điều khiển motor DC ta dùng IC L293b (vì ta dùng động cơ loại nhỏ)

Vs là điện áp đặt vào motor và có thể lên đến 36Vol ( ở đây ta dùng 5Vol ) Vss là điện áp so sánh ở đây ta cho bằng 5Vol Dòng lớn nhất của L293B là 1.2A mỗi kênh Một IC L293B có thể dùng điều khiển được 2 motor Đầu 2 và

7 điều khiển motor 1 Đầu 10 và 15 điều khiển động cơ 2 Diode D1 và D8 tạo 1 mạch cặp

PHẦN III: SƠ ĐỒ KHỐI VÀ SƠ ĐỒ NGUYÊN LÍ

Trang 11

KHỐI ĐIỀU KHIỂN ĐỘNG CƠ

KHỐI XỬ LÝ TRUNG TÂM

(ATmega32)

KHỐI

CẢM

BIẾN

KHỐI

NGUỒN

2 SƠ ĐỒ NGUYÊN LÍ

Trang 12

IV CÁCH LÀM MẠCH VÀ NGUYÊN TẮC HOẠT ĐỘNG CỦA MẠCH Mạch được mắc theo sơ đồ trên.

Trang 13

Khoảng cách giữa 2 led là 1cm và khoảng cách giữa led và quang trở là 1cm

4 cặp led và quang trở được đặt thẳng hang với nhau Dùng băng dính đen quấn quanh để chống nhiễu

Khi có ánh sáng thì điện trở quang sẽ giảm và ngược lại Ta sử dụng led làm nguồn sáng nên khi gặp nền trắng, ánh sang sẽ phản xạ lên quang trở làm điện trở nó giảm xuống và khi gặp vạch đen thì ánh sang sẽ khó phản xạ nên quang trở nhận ít ánh sáng làm điện trở tăng Từ đó robot có thể phân biệt được vạch đen trên nền trắng ( dưới sự hỗ trợ của IC LM324)

Ở IC LM324 thì khi điện trở ở quang trở giảm khi gặp nền trắng thì cổng (+) cổng 3, 5, 10, 12 sẽ có điện áp cao hơn cổng (-) cổng 2, 6, 9, 13 ( cổng 2, 6, 9,

13 ta phân áp cố địnhcho nó là 2,5Vol) =>Cổng 1, 7, 8, 14 sẽ ở mức 1 = 5 Vol Còn khi quang trở gặp vạch đen thì ngược lại cổng 1, 7, 8, 14 sẽ ở mức 0âm = 0 Vol Các mức 0 hoặc 1 này sẽ đưa vào ATmega32

2 Bộ phận điều khiển động cơ

2 động cơ DC có bộ giảm tốc giúp robot dễ nhận vạch hơn 2 động cơ được lắp

ở phía sau xe và gắn 1 chân ở phía trước

2 động cơ được điều khiển bởi IC L293B

3 Bộ phận xử lí

a Các chân PORT

Vi xử lí nhận tín hiệu từ IC LM324 ở các PORTB.0, PORTB.1, PORTB.2, PORTB.3 và xuất ra các PORTA.0, PORTA.1, PORTA.2, PORTA.3 để điều khiển động cơ tiến hay lùi

Trang 14

b Code

#include <mega32.h>

#include <delay.h>

// Declare your global variables here

void main(void)

{

// Declare your local variables here

// Input/Output Ports initialization

// Port A initialization

// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out

// State7=0 State6=0 State5=0 State4=0 State3=0 State2=0 State1=0 State0=0

PORTA=0x00;

DDRA=0xFF;

// 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=0x00;

DDRB=0x00;

// Port C 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

PORTC=0x00;

DDRC=0x00;

// Port D 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

PORTD=0x00;

DDRD=0x00;

Trang 15

// Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped // Mode: Normal top=FFh

// OC0 output: Disconnected

TCCR0=0x00;

TCNT0=0x00;

OCR0=0x00;

// Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer 1 Stopped // Mode: Normal top=FFFFh

// OC1A output: Discon

// OC1B output: Discon

// Noise Canceler: Off

// Input Capture on Falling Edge // Timer 1 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 2 initialization // Clock source: System Clock // Clock value: Timer 2 Stopped // Mode: Normal top=FFh

// OC2 output: Disconnected

ASSR=0x00;

TCCR2=0x00;

TCNT2=0x00;

OCR2=0x00;

// External Interrupt(s) initialization

Trang 16

// INT0: Off

// INT1: Off

// INT2: Off

MCUCR=0x00;

MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization

TIMSK=0x00;

// Analog Comparator initialization

// Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off

ACSR=0x80;

SFIOR=0x00;

while (1)

{

while (PINB.0==1&&PINB.1==0&&PINB.2==0&&PINB.3==1) // khong lech

{

Trang 17

PORTA=0b00001001; // di thang

delay_ms(10);

}

while

(PINB.0==0&&PINB.0==0&&PINB.2==1&&PINB.3==1) //lech trai 1

{

PORTA=0b00001011;

delay_ms(10); // trai tien , phai dung

}

while

(PINB.0==0&&PINB.1==0&&PINB.2==0&&PINB.3==1) // lech trai 2

{

PORTA=0b00001010; // trai tien, phai lui

delay_ms(10);

}

while (PINB.0==1&&PINB.1==1&&PINB.2==0&&PINB.3==0) // lech phai 1

{

PORTA=0b00001101; // trai dung, phai tien

delay_ms(10);

}

while (PINB.0==1&&PINB.1==0&&PINB.2==0&&PINB.3==0) // lech phai 2

{

PORTA=0b00000101; // trái tiến , phải lùi

delay_ms(10);

}

while (PINB.0==1&&PINB.1==1&&PINB.2==1&&PINB.3==1) // het duong

PORTA=0b00000101; // quay đầu

delay_ms(10);

}

Trang 18

}

Phần V: Tổng kết

Sau khi hoàn thành mạch này, em đã nắm được một số kĩ thuật cơ bản của phương pháp thiết kế mạch điện tử bằng phần proteus và giúp chúng em hiểu sâu và rõ hơn cấu tạo của vi xử lý ATmega32 cũng như cách xử lý các câu lệnh của AVR Giúp chúng em có nhiều kinh nghiệm thực tế thú vị Nhờ sự hướng dẫn của thầy giáo bọn em cũng có những kết quả nhất định về thiết kế và cách làm robot đơn giản và nạp code cho vi xử lý

Với sự cố gắng của cả nhóm cùng với sự giúp đỡ nhiệt tình của thầy Nguyễn Đức Minh, chúng em đã hoàn thành đề tài đáp ứng đủ yêu cầu và đúng thời hạn Tuy nhiên không tránh khỏi một vài thiếu sót chúng em mong nhận được sự bổ xung góp ý từ thầy cô cùng các bạn để đề tài này được hoàn thiện thêm Em xin chân thành cảm ơn

TÀI LIỆU THAM KHẢO

Trang 19

1 Các trang web datasheetcatalogue.com, diendandientu.com, hocavr.com, google.com

2 Tài liệu hướng dẫn làm bài tập lớn của khoa

Ngày đăng: 23/04/2013, 15:35

HÌNH ẢNH LIÊN QUAN

Hình 2.2.2 : Sơ đồ khối của ATmega32 - Thiết kế robot dò đường
Hình 2.2.2 Sơ đồ khối của ATmega32 (Trang 6)
1. SƠ ĐỒ KHỐI - Thiết kế robot dò đường
1. SƠ ĐỒ KHỐI (Trang 11)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w