Yêu cầu phần cứng : Về phần cứng em sẽ chuẩn bị nguồn từ bin điện thoại và được ổn áp qua 1mạch nguồn cho đầu ra 9v 1A cấp cho động cơ, 12v 1A cấp cho vi điều khiển, mộtmạch vi điều khiể
Trang 1LỜI NÓI ĐẦU
Hiện nay cuộc sống của con người ngày càng phát triển Tất cả các lĩnh vựcđều đi lên một hướng rất mạnh mẽ Đặc biệt là lĩnh vực điện tử, đây là lĩnh vực tiềmnăng của đất nước ta Nói về điện tử thì có rất nhiều sản phẩm khác nhau, mỗi sảnphẩm có mỗi công dụng cũng như chức năng khác nhau Vì thế nhiều thiết bị máymóc đã ra đời và thay thế con người làm việc, sản xuất Bắt kịp xu hướng này nhiềucông ty, xí nghiệp, nhà máy… đều làm theo xu hướng tự động hóa trong quá trình làmviệc, sản xuất để tăng năng suất, cũng như giảm bớt chi phí trong quá trình sản xuất.Những thiết bị máy móc làm việc thay thế con người nói trên chính là những chúROBOT rất thông minh, chúng hoạt động và làm việc dưới sự thiết lập sẵn của conngười
Là một sinh viên ngành cơ điện tử, thấy những chú ROBOT thông minh nhưthế thì em cũng rất tò mò Dựa vào các kiến thức đã học nên em quyết định làm mộtchú ROBOT dò đường để xem chúng hoạt động như thế nào và làm thế nào để điềukhiển được chúng
Trang 2MỤC LỤC
LỜI NÓI ĐẦU 1
MỤC LỤC 2
DANH MỤC CÁC BẢNG 4
CHƯƠNG 1: TỔNG QUAN 5
CHƯƠNG 2: PHƯƠNG PHÁP VÀ NỘI DUNG NGHIÊN CỨU 6
2.1 Phương pháp nghiên cứu : 6
2.2 Yêu cầu của hệ thống : 6
2.2.1 Yêu cầu phần cứng : 6
2.2.2.Yêu cầu phần mềm : 6
2.3.Phương án thiết kế : 6
2.3.1.phương pháp : 6
2.3.2 Ưu điểm: 7
2.3.3 Nhược điểm: 7
2.3.4 Kết luận: 7
2.4 Thiết kế, chế tạo phần cơ khí : 7
2.5 Thiết kế, chế tạo phần điều khiển: 7
2.5.1 Cơ sở lý thuyết : 7
2.5.1.1 AVR : 7
2.5.1.2 LM7805 : 15
2.5.1.3 LM324 : 16
2.5.1.4 IRF540 : 17
2.5.1.5 Tụ hóa : 18
2.5.1.6 Tụ pi : 18
2.5.1.7 Điện trở : 18
2.5.1.8 Biến trở : 19
2.5.1.9 Nút nhấn : 19
2.5.1.10 Thanh cắm đực : 20
2.5.1.11 Thạch anh : 20
2.5.1.12 LED 21
2.5.1.13 Quang trở : 21
2.5.1.14 LED 7 đoạn (anot chung) : 21
Trang 32.5.1.15 Transistor A1015 : 22
2.5.2 Thiết kế : 23
2.5.2.1 Mạch điều khiển : 23
2.5.2.2 Chương trình điều khiển : 30
CHƯƠNG 3: THỬ NGHIỆM VÀ PHÂN TÍCH KẾT QUẢ 42
3.1 Chuẩn bị 42
3.2 Thi công và lắp ráp 42
3.2.1 Vẽ mạch in 42
3.2.2 In mạch lên mạch đồng 42
3.3 Sản phẩm thực tế: 42
3.3.1 Hình ảnh các mạch: 42
3.3.2 Hệ thống mô hình hoạt động : 47
3.4 kiểm tra nguồn, mạch vi điều khiển và mạch công suất : 48
3.5 Chạy thử nghiệm kết quả: 49
CHƯƠNG 4: KẾT LUẬN VÀ ĐỀ XUẤT 50
4.1.Kết luận 50
4.1.1 Kết quả đạt được 50
4.2.Đề xuất 50
4.2.1 Đề xuất phần cứng 50
4.2.2 Đề xuất phần mềm 50
Tài liệu tham khảo qua internet 51
Trang 4DANH MỤC CÁC BẢNG
Bảng 1: Phương án thiết kế 6,7Bảng 2: kiểm tra nguồn, mạch vi điều khiển và mạch công suất 48,49
Trang 6CHƯƠNG 2: PHƯƠNG PHÁP VÀ NỘI DUNG NGHIÊN CỨU
2.1 Phương pháp nghiên cứu :
Em nghiên cứu làm xe dò đường bằng cách điều chế độ rộng xung điều chỉnh tốc độ động cơ trên họ AVR ( em đã được học ở môn Kỹ Thuật Ứng Dụng Vi Điều Khiển)
Và nghiên cứu lập trình LED 7 đoạn
2.2 Yêu cầu của hệ thống :
2.2.1 Yêu cầu phần cứng :
Về phần cứng em sẽ chuẩn bị nguồn từ bin điện thoại và được ổn áp qua 1mạch nguồn cho đầu ra 9v 1A (cấp cho động cơ), 12v 1A (cấp cho vi điều khiển), mộtmạch vi điều khiển xử dụng vi xử lý atmega8 , một mạch công suất xử dụng 2 mosfetIRF540 ( hoặc H1061) và được cách li quang bởi OPTO, một mạch mắt dò đườngdùng quang trở, một mạch so sánh (dùng IC LM324), 1 mạch LED 7 đoạn (anotchung) và một mạch nộp
2.2.2.Yêu cầu phần mềm :
Về phần mềm :
Đối với robot dò đường : em sẽ viết chương trình điều chế độ rộng xung (PWM) để
điều khiển tốc độ động cơ ( viết trên phần mềm codevision)
Đối với LED 7 đoạn : em sẽ viết chương trình đếm số từ 0-999999
2.3.Phương án thiết kế :
2.3.1.phương pháp :
CÁC
BƯỚC PHƯƠNG ÁN THỰC HIỆN CHÚ Ý
B2 Cố định tờ giấy với mạch in Gấp các mép giấy quanh mạch đồngB3 Cắm bàn là, để số 3/5 → Max Chờ bàn là nóng khoảng 3-4 phútB4 Ủi mạch in khoảng 3 → 7 phút Kiểm tra độ dính của mạch in
B5 Ngâm nước để lớp giấy bong ra Cẩn thận, lớp sơn có thể bị bong raB6 Dùng tay chà nhẹ lớp giấy Đặc biệt chỗ các đường mạch in gần
nhauB7 Dùng bút tô lại những chỗ bị đứt
mạch in
Cẩn thận khỏi bị tô dính các đường khác
B9 Sau khi ăn mòn hết, rửa lại với nước Rửa kỹ
Trang 7B10 Dùng xăng lau lớp sơn
B11 Quét lớp nhựa thông để bảo vệ mạch Lấy nhựa thông hòa với xăng
B12 Dùng bàn là hơ lại mạch hoặc phơi
B14 Kiểm tra mạch có bị chập không Đo những chân không nối, những
chângần nhau
Vcc_in & GND; Vcc_out & GND;B15 Lắp và hàn linh kiện Thấp hàn trước, cao hàn sau Chưa lắp
2.4 Thiết kế, chế tạo phần cơ khí :
Phần cơ khí của robot dò đường khá đơn giản : chọn 1 miếng mica làm khung
xe, khoan lỗ bắt vít 2 động cơ và bánh tự lượng vào sao cho cân đối và hợp lý Cácmạch điện được đặt lên xe sao cho hợp lí và cũng cố định bằng vít
2.5 Thiết kế, chế tạo phần điều khiển:
2.5.1 Cơ sở lý thuyết :
2.5.1.1 AVR :
AVR là một họ vi điều khiển do hãng Atmel sản xuất
AVR là chíp vi điều khiển 8 bits với cấu trúc tập lệnh đơn giản hóa RISC
So với các loại chíp điều khiển 8 bits khác, AVR có nhiều đặc tính hơn hẳn, hơn cảtrong tính ứng dụng và đặc biệt là về chức năng
Hầu hết các chíp AVR có những tính năng sau;
- Có thể sử dụng xung clock lên đến 16MHZ, hoặc sử dụng xung clock nội lênđến 8MHZ( sai số 3%)
- Bộ nhớ chương trình flash có thể lập trình lại rất nhiều lần và bộ nhớ lớn, cóSRAM (ram tĩnh) lớn, và đặc biệt có bộ nhớ lưu trữ được EEPROM
- Ngõ ra vào (I/O PORT) 2 hướng
- 8 bits, 16 bits timer/counter tích hợp PWM
Trang 8- Các bộ chuyển đổi Analog-digital phân giải 10 bits, nhiều kênh.
- Chức năng Anolog comparator
- Giao diện nối tiếp USART( tương thích chuẩn nối tiếp RS-232)
Một số chip AVR thông dụng;
Trang 9Và đây là hình ảnh chỉ rõ tính năng của từng chân
Mô tả chân:
VCC: Điện áp cung cấp.
GND: Nối đất.
PortB, PortC, PortD: Có thể được cấu hình như các cổng cổng I/O 8-bit hai
hướng thông thường hoặc cấu hình để sử dụng các chức năng đặc biệt khác Các chân của Port có thể được nối với các điện trở kéo lên bên trong (lựa chọncho từng bit)
Reset: Là đầu vào Khi đưa một mức điện áp thấp vào chân này có độ dài lớn
hơn một xung sẽ reset hệ thống
XTAL1, XTAL2: Các đầu vào dao động.
AVCC: Điện áp cấp cho các bộ ADC Thường được nối với VCC qua một bộ
lọc thông thấp
AREF: Điện áp tham chiếu cho các bộ biến đổi ADC.
Vi điều khiển Atmega8:
Là vi điều khiển 8-bit CMOS công suất tiêu thụ thấp dựa trên cấu trúc RISC AVR Bằng cách thực hiện các lệnh trong một chu kỳ đồng hồ Atmega8 đạt được tốc độ xấp xỉ 1MIPS trên 1MHz cho phép người thiết kế tối ưu công suất tiêu thụ với tốc độ sử lý
Các tính năng:
Cấu trúc RISC
Hỗ trợ 130 lệnh
32x8 thanh ghi dùng chung
Tốc độ 16 MIPS với thạch anh 16 MHz
Bộ nhớ
8K Byte bộ nhớ Flash
Trang 10 512 Byte EEPROM
1K Byte SRAM
Hỗ trợ lập trình ngay trên mạch với chương trình mồi
Có các bít khóa bảo mật
Giao diện JTAG
Khả năng quét biên theo chuẩn JTAG
Hỗ trợ gỡ lỗi trên chip
Lập trình bộ nhớ Flash, EEPROM, các bít khóa qua giao diện JTAG
6 kênh ADC 10 bit
Giao tiếp I2C, USART, SPI
Trang 11Đây là sơ đồ khối atemega 8
Trang 12Đây là lõi CPU AVR
Các cổng vào ra:
Các cổng vào ra và các thanh ghi dùng để điều khiển hướng của cổng được lậptrình giá trị tới từng bit Bộ đệm cổng có thể đủ mạnh để điều khiển hiển thịtrực tiếp LED sáng Tất cả các chân đều có các điện trở kéo lên bên trong
Sơ đồ nguyên lý tương đương cổng vào ra.
Trang 13 Mỗi cổng vào ra có thanh ghi dữ liệu PORTx (PORTB, PORTC, PORTD), thanh ghi hướng dữ liệu DDRx và thanh ghi dữ liệu vào PINx Khi bit thanh ghi hướng dữ liệu bằng “1” thì chân đó là chân ra, bằng “0” là chân vào.
Các ngắt:
Khi có ngắt xảy ra, vi điều khiển sẽ tự động lưu các tham số của chương trình
và nhảy đến chương trình con thực hiện ngắt
Giao tiếp SPI ( Serial Peripheral Interface)
Giao tiếp ngoại vi nối tiếp SPI cho phép trao đổi dữ liệu đồng bộ tốc độ cao giữa Atmega8 và các thiết bị ngoại vi hoặc giữa các thiết bị AVR với nhau
Giao diện ngoại vi nối tiếp (SPI) bao gồm các đặc điểm dưới đây
Truyền dữ liệu đồng bộ 3 dây (Three wire)
Chế độ hoạt động Master / Slave
Chuyển dữ liệu MSB First hoặc LSB First
7 tốc độ bit có thể lập trình
Cờ ngắt cuối phiên truyền
Cờ ngăn xung đột ghi
Đánh thức khỏi chế độ chờ Idle
Chế độ SPI Master tốc độ kép (CK/2 )
Các bộ nhớ:
Bộ nhớ Flash: 8K bytes được quản lý như 4K x 4.
Bộ nhớ Eeprom: 512K bytes Bộ nhớ Eeprom không bị mất dữ liệu khi mất
nguồn, có thể ghi đọc trong lúc chạy chương trình, dùng để lưu các tham số
Nguồn dao động:
Bên trong AVR đã có sẵn một bộ giao động có thể lựa chọn với tần số từ 1Mhz – 8 Mhz (mặc định 1Mhz)
Giao tiếp SPI
Thanh ghi điều khiển SPCR
Bit 7 – SPIE: Cho phép ngắt SPI
Bit 6 – SPE: Cho phép SPI
Bit 5 – DORD: Thứ tự dữ liệu DORD = 1 , LSB first, DORD = 0, MSB first
Bit 4 – MSTR: Chọn Master/Slave, 1 Master, 0 Slave
Bit 3 – CPOL: Chọn cực Clock, bằng 1 SCK ở mức cao khi rảnh, bằng 0 SCK ở mức thấp khi rảnh
Bit 2 – CPHA: Pha Clock
Bits 1, 0 – SPR1, SPR0: chọn tốc độ đồng hồ
Thanh ghi trạng thái SPSR
Trang 14 Bit 7 – SPIF: Cờ ngắt SPI
Bit 6 – WCOL: Cờ xung đột ghi
Bit 5 1 – Res: Bit dự trữ
Bit 0 – SPI2X: Bit nhân đôi tốc độ
Thanh ghi dữ liệu SPDR
Giao tiếp USART
USART: Universal Synchronous and Asynchronous serial Receiver and
Transmitter - Thu phát nối tiếp đồng bộ và không đồng bộ chung là giao tiếp nối tiếp có độ linh hoạt cao Giao tiếp tại các chân TXD, RXD, XCK của vi điều khiển Các tính năng chính:
Hoạt động song công
Hai chế độ đồng bộ và không đồng bộ
Hoạt động đồng bộ xung Master hay Slave
Máy phát tốc độ Baud độ chính xác cao
Hỗ trợ truyền các khung nối tiếp với 5 ,6 ,7, 8 hoặc 9 bit dữ liệu và 1 hoặc 2bit stop
Tạo toàn vẹn dữ liệu chẵn, lẻ và hỗ trợ kiểm tra tính chẵn lẻ bằng phần cứng
Dò tràn dữ liệu
Dò lỗi khung truyền
Bộ lọc nhiễu bao gồm dò tìm bit khởi động sai và bộ lọc số thông thấp
3 ngắt riêng biệt: Phát xong, trống thanh ghi dữ liệu TX , thu xong
Chế độ truyền thông nhiều bộ sử lý
Chế độ truyền thông không đồng bộ tốc độ kép
Sơ đồ khối:
Trang 15Sơ đồ khối bộ USART
2.5.1.2 LM7805 :
Đây là ic ổn
áp out 5V 1A
Công dụng
ổn áp out 5V
Mô tả chân: Chân 1: điện
Trang 16INPUT-Cụ thể ở Robot dò đường của em : tín hiệu so sánh OUTPUT từ IC LM324 đượcđưa vào vi điều khiển ATMEGA8 từ đó ta biết xe đang ở vị trí nào và điều chỉnhtốc độ động cơ cho phù hợp
2.5.1.4 IRF540 :
Trang 17Đây là mosfet IRF540
Công dụng của IRF540 nâng dòng từ mạch vi điều khiển sang mạch công
suất IRF540 cũng như 1 khóa điện tử vậy khi có 1 dòng điện nhỏ chạy vào chân G(cổng vào) ngay lập tức sẽ có 1 nguồn điện lớn hơn (ta cấp) sẽ chạy từ chân S( nguồn )xuống chân D (cổng ra) và cấp đến động cơ
2.5.1.5 Tụ hóa :
Công dụng
Trang 18Lọc điện áp xoay chiều sau khi đã được chỉnh lưu thành điện áp bằng phẳng
Khống chế dòng điện qua tải cho phù hợp
Mắc điện trở thành cầu phân áp để có một điện áp theo ý muốn từ một điện áp cho trước
2.5.1.8 Biến trở :
Trang 19 Công dụng
Biến trở cũng giống nhự điện trở là hạn dòng qua tải cho phù hợp
Nhưng khác ở đây là em có thể điều chỉnh được giá trị trở kháng từ đó cho ra các giá trị hạn dòng khác nhau
Trang 20Cho phép kết nối các linh kiện với nhau bằng cách cắm dây
Quang trở chính là điện trở mà nó có thể tự động thay đổi giá trị tùy thuộc vào cường
độ sáng của môi trường
2.5.1.14 LED 7 đoạn (anot chung) :
Trang 222.5.2 Thiết kế :
2.5.2.1 Mạch điều khiển :
a) Mạch vi điều khiển và mạch công suất (sử dụng atmega 8):
Trang 23Đây là sơ đồ nguyên lí mạch vi điều khiển + Công Suất
Trang 24đây là sơ đồ mạch in của mạch vi điều khiển + mạch công suất
Linh kiên gồm: 1 lm7805, 3 tụ hóa, 2 tụ pi 104, 2 tụ pi 18, 1 led , 1 nút nhấn,
3 diod 4007, jump cắm, 1 atmega8, 5 trở 1k, 3 trở 10k, 1 thạch anh 8 MHZ, 2opto, 2 mosfet irf 540
Công dụng linh kiện : công dụng của các linh kiện này em đã trình bày ở
trên ( từ trang 7 đến trang 22)
Nguyên lý hoạt động của vi điều khiển ATMEGA8 :
Khi cấp nguồn điện ( 12v) ngay lập tức tụ hóa 1000uf 25v được nộp đầy điện
và xem như là một bể chứa điện với nhiệm vụ lọc cho điện áp bằng phẳng vàchống nhiễu Tiếp đến điện nộp vào tụ pi 104 với nhiệm vụ chống nhiễu Sau đóđiện áp dương được đưa vào chân 1 LM7805, điện áp âm được đưa vào chân 2lm7805, và nhiệm vụ của LM7805 là ổn áp ra nguồn 5v Tiếp theo điện áp 5v lấpđầy tụ hóa 1000uf 25v và tụ pi 104 với nhiệm vụ như trên Đồng thời lúc này điện
áp +5v được cấp cho các chân : VCC, AVCC của atmega8, mass cấp cho chânGND, AGND, RESET của atmega8 Cùng lúc này điện áp +5v qua trở 1K (hạndòng) làm LED báo nguồn sáng Khi Atmega8 hoạt động đồng thời lúc này thạchanh 8MHZ cũng hoạt động kèm theo là hai tụ pi 18pf hoạt động với nhiệm vụchống nhiễu
Nói về cổng CON6 gồm các chân : VCC, MOSI, MISO,SCK, RESET, GND,các chân này được kết nôi với atmega8 Chương trình lập trình trên máy tính đượcđưa vào vi điều khiển atmega8 qua cổng CON6
Trang 25 Nguyên lý hoạt động của khối công suất :
Đầu tiên tín hiệu từ vi điều khiển được đưa vào opto (cách li quang) làm cho ledbên trong opto sáng ,làm thông hai cực của photo diod mở cho tín hiệu dòngđiện chạy qua Tín hiệu này được đưa vào chân G (cổng vào) của irf540, ngâylập tức chân S và chân D của irf540 được thông với nhau và một dòng điện vớitín hiệu lớn ( ta cấp vào chân nguồn của irf540 (chân S) ) chạy từ chân S xuốngchân D (cổng ra) và đi đến động cơ
b) Mạch so sánh (dùng IC LM324) :
Đây là sơ đồ nguyên lý mạch so sánh (dùng LM324).
Trang 26Đây là sơ đồ mạch in của mạch so sánh
+ Linh kiện gồm : 2 IC LM324, 6 biến trở tinh chỉnh 10k, 6 led, 6 trở 1k.
+ Công dụng linh kiện : công dụng của các linh kiện này em đã trình bày ở trên
( từ trang 7 đến trang 22)
Nguyên lý hoạt động của mạch so sánh (dùng LM324) :
Khi điện áp đầu vào INPUT+ và INPUT- được cấp vào lần lượt từ biến trở vàquang trở thì IC LM324 bắt đầu so sánh Nếu INPUT+ > INPUT- thì đầu ra bằng
1 (5V),
ngược lại nếu INPUT+ < INPUT-bằng 0 (0V) 6 con led có nhiệm vụ hiển thị để
ta biết đầu ra hiện giờ là 5V hay 0V
Từ trạng thái 0 hoặc 1 OUTPUT ra từ IC LM324 được đưa vào vi điều khiển đểthay đổi tốc độ động cơ sao cho phù hợp (ta đã lập trình vào vi điều khiển trước)
c) Mạch mắt dò đường (dùng quang trở) :
Trang 27Đây là sơ đồ nguyên lí mạch mắt dò đường
Đây là sơ đồ mạch in của mạch mắt dò đường
+ Linh kiện gồm : 8 quang trở, 8 led trắng trong, 8 điện trở 330, 8 điện trở 10k + Công dụng linh kiện : công dụng của các linh kiện này em đã trình bày ở trên
+ Khi ở trong nền đen (quang trở không nhận được ánh sáng) điện trở của quangtrở rất lớn, nên điện áp qua nó rất bé, khi đưa vào mạch so sánh điện áp quang trở(INPUT-) nhỏ hơn điện áp từ biến trở (INPUT+) thì đầu ra của IC LM324 sẽbằng 1 và led báo sáng và tín hiệu đưa vào vi điều khiển sẽ là 5V Ngược lại khi ởnền trắng(quang trở nhận được ánh sáng) điện trở của quang trở rất bé, nên điện
áp qua nó rất lớn, khi đưa vào mạch so sánh áp quang trở (INPUT-) lớn hơn điện
Trang 28áp từ biến trở (INPUT+) thì đầu ra của IC LM324 sẽ bằng 0 và led báo tắt và tínhiệu đưa vào vi điều khiển sẽ là 0V.
+ Gía trị OUTPUT từ IC LM324 được đưa vào vi điều khiển, vi điều khiển nhậnbiết được xe đang ở vị trí nào và điều khiển tốc độ động cơ phù hợp để xe chạyđúng đường
d) Mạch nguồn (ổn áp điện áp từ pin điện thoại) :
Đây là sơ đồ nguyên lí mạch nguồn (ổn áp 9v cấp cho động cơ và 12v cấp cho vi điều khiển từ pin điện thoại)
Đây là sơ đồ mạch in của mạch nguồn
+ Linh kiện gồm : 3 tụ hóa 1000uf/25, 3 tụ pi 104, 1 LM7809, 1 LM7812, 2 trở
4k7, 2 LED báo nguồn
+ Công dụng linh kiện : công dụng của các linh kiện này em đã trình bày ở trên ( từ
trang 7 đến trang 22)