SVTH : NGUYỄN MAI ĐỨC VŨ MSSV : 0851030098 LỜI MỞ ĐẦU Sau 4 năm học tại đại trường ĐH Mở TP Hồ Chí Minh ,chúng em đã được các thầy ,cô truyền đạt cho những kiến thức cả lý thuyết và th
Trang 1SVTH : NGUYỄN MAI ĐỨC VŨ MSSV : 0851030098
LỜI MỞ ĐẦU
Sau 4 năm học tại đại trường ĐH Mở TP Hồ Chí Minh ,chúng em đã được các thầy ,cô truyền đạt cho những kiến thức cả lý thuyết và thực hành ,để chúng em áp dụng những kiến thức đó vào thực tế và làm quen công việc làm việc độc lập của người kỹ sư trong tương lai ,thông qua một công việc
cụ thể ,chính vì lý do đó mà em đã được nhận đề tài tốt nghiệp là :Thiết kế và chế tạo xe tự hành Trong quá trình thực hiện đồ án em đã nhận được sự hướng dẫn nhiệt tình của thầy giáo ,cô giáo khoa Xây Dựng và Điện nói chung và thầy TS.Trần Thanh Trang nói riêng ,là người đã giúp đỡ em trong suốt quá trình học tập ,thực tập và trong thời gian làm đồ án tôt nghiệp vừa qua
Tuy nhiên trong quá trình thực hiện đồ án em còn nhiều bỡ ngỡ do chưa có kinh nghiệm thực tiễn nên không tránh khỏi những sai sót Vì vậy,em rất mong nhận được sự góp ý của các thầy ,cô để em có thể hoàn thành tốt đồ
án tốt nghiệp và nhiệm vụ học tại trường
Trang 2SVTH : NGUYẾN MAI ĐỨC VŨ MSSV : 0851030098
LỜI CẢM ƠN
Để hoàn thành đồ án tốt nghiệp này, lời đầu tiên em xin chân thành cảm ơn các thầy giáo, cô giáo Khoa Xây Dựng và Điện , Trường Đại học Mở Tp Hồ Chí Minh , những người đã dạy dỗ, trang bị cho em những kiến thức bổ ích trong bốn năm học vừa qua
Em xin bày tỏ lòng biết ơn sâu sắc nhất tới thầy giáo TS.Trần Thanh Trang , người đã tận tình hướng dẫn, chỉ bảo em trong suốt thời gian thực tập và làm đồ án tốt nghiệp
Nhân dịp này em xin gửi lời cảm ơn chân thành tới gia đình, bạn bè, những người thân đã cổ vũ, động viên tiếp thêm cho em nghị lực để em hoàn thành tốt đồ án tốt nghiệp
Em xin chân thành cảm ơn !
Tp Hồ Chí Minh , tháng 02 năm 2013 Sinh viên
NGUYỄN MAI ĐỨC VŨ
Trang 3MỤC LỤC
CHƯƠNG 1: 2
1.1 LÝ DO CHỌN ĐỀ TÀI 2
1.2 GIỚI THIỆU ĐỀ TÀI 3
CHƯƠNG 2: 4
2.1 SƠ ĐỒ KHỐI : 4
2.2 CÁC CHỈ TIÊU CỦA SẢN PHẨM 5
2.2.1 MÔ TẢ CHI TIẾT ĐỀ TÀI 5
2.3 CÁC LINH KIỆN DÙNG TRONG MẠCH 16
2.3.1 Giới Thiệu Về PIC 16F877A: 16
2.3.2 Điện trở và tụ điện: 23
2.3.3 Tụ thạch anh : 24
2.3.4 Nút Reset : 25
2.3.5 IC 25
2.3.6 Led thu phát hồng ngoại 27
2.4 SƠ ĐỒ MẠCH HOÀN CHỈNH 29
CHƯƠNG 3: 30
3.1 LƯU ĐỒ GIẢI THUẬT 30
3.2 CHƯƠNG TRÌNH 32
CHƯƠNG 5: 43
KẾT LUẬN 43
5.1 TÍNH NĂNG CỦA XE : 43
5.2 CÔNG VIỆC THỰC HIỆN ĐƯỢC : 43
5.3 NHỮNG TỒN TẠI CỦA ĐỀ TÀI : 43
5.4 HƯỚNG PHÁT TRIỂN: 43
TÀI LIỆU THAM KHẢO : 43
Trang 4đã mô phỏng trên máy tính các robot cơ cấu điều kiện song song, robot di động “ (Trích báo điện tử Hà Nội Mới);
Robot có vai trò rất quan trọng trong đời sống hiện nay đặc biệt là những ứng dụng của nó trong sản xuất kinh tế, quốc phòng…Tuy nhiên công nghệ chế tạo robot là 1 nghành còn khá mới mẻ với Việt Nam nên việc phát triển nghành công nghiệp này để bắt kịp với các nước phát triển khác là 1 điều vô cùng quan trọng
Bên cạnh đó, vi điều khiển là một môn học còn khá xa lạ đối với sinh viên nên việc tìm hiểu lý thuyết kết hợp với thực hành là rất cần thiết và bổ ích.Họ vi điều khiển 16F877A là họ vi điều khiển cơ bản rất thích hợp cho mọi người mới bắt đầu làm quen với VDK Qua việc thực hiện giao tiếp giữa vi điều khiển với động cơ, cảm biến, phím bấm, LCD sẽ giúp chúng ta phần nào hiểu được cấu trúc cơ bản của vi điều khiển Những kiến thức cơ bản đó sẽ làm nền tảng giúp chúng ta có thể tìm hiểu về các loại vi điều khiển khác
Trang 51.2 GIỚI THIỆU ĐỀ TÀI
Sản phẩm là 1 chiếc xe tự động có chức năng tự di chuyển đế điểm mong muốn trên sân.Với các chế độ khác chiếc xe có thể thực hiện được đa dạng trong việc di chuyển và
có nhiều hướng phát triển thêm sau này
Đề tài của em là chế tạo sản phẩm xe tự động.Chức năng của sản phẩm là thực hiện việc
di chuyển từ điểm xuất phát đến 1 điểm bất kỳ trên sân, từ đó thực hiện các đường đi cụ thể trên sân.Vi điều khiển sử dụng trong đề tài là vi điều khiển họ 16F877A.Đây là họ vi điều khiển cơ bản thích hợp cho những người mới tìm hiểu về vi điều khiển Đề tài chủ yếu giúp sinh viên làm quen với các chức năng cơ bản của vi điều khiển thông qua các giao tiếp với cảm biến, động cơ, LCD, phím bấm…Hướng phát triển của đề tài là có thể cải tiến sản phẩm thành 1 chiếc xe đa năng thông minh, có thể thực hiện được mềm dẻo các nhiệm vụ
Trang 6CHƯƠNG 2:
THIẾT KẾ PHẦN CỨNG
2.1 SƠ ĐỒ KHỐI :
Hình 2.1: Sơ đồ khối xe tự hành
Trang 72.2 CÁC CHỈ TIÊU CỦA SẢN PHẨM
+Về chức năng:
- Hệ thống điều khiển trước hết phải có khả năng giao tiếp với người sử dụng , tức là cho phép thay đổi thiết lập hệ thống và hiển thị trạng thái hệ thống
- Hệ thống điều khiển phải có nguồn ổn định
- Hệ thống có thể nhận được tín hiệu báo nhận đường đi
-Hệ thống điều khiển các động cơ với các công suất khác nhau theo cả hai chiều
- Hệ thống cần có chức năng hiển thị , để ta biết chế độ hoạt động cũng như trạng thái của
hệ thống
- Hệ thống có nhiều chế độ hoạt động khác nhau
- Yêu cầu quan trọng nhất với một hệ thống là có đơn vị xử lý trung tâm để có thể phối hợp các hoạt động đồng thời và ổn định trong toàn bộ quá trình hoạt động
- Có hướng phát triển sau này như cải tiến thành 1 robot thông minh hơn nữa
+Về chất lượng sản phẩm:
- Chạy ổn định, có thể thích nghi với các mặt sân khác nhau
2.2.1 MÔ TẢ CHI TIẾT ĐỀ TÀI
* Tên sản phẩm:xe tự hành
Vi điều khiển sử dụng: 16F877A
* Chức năng: thực hiện việc di chuyển tự động đến điểm đã định sẵn và các đường di chuyển khác nhau
* Các khối cơ bản của sản phẩm:
Trang 82.2.1.1 Khối nguồn
Trong khối nguồn chúng ta sử dụng PIN 7V Mặc khác hệ thống diều khiển cần phải có nguồn 0V và 5V để cung cấp cho khối vi điều khiển và khối cảm biến.Nguồn 0V của hệ thống ta sẽ dung chung với nguồn 0V của khối điều khiển động cơ, và được lấy trực tiếp từ nguồn của pin.Còn để tạo nguồn 5 VDC chúng ta sử dụng IC ổn áp 7805, với đầu vào gồm đất chung của toàn hệ thống và nguồn 7 VDC lấy trực tiếp từ nguồn PIN
Hình 2.2: Sơ đồ mạch khối nguồn
Tại đầu vào cũng như tại đầu ra chúng ta đều dung các tụ lọc âm tần và cao tần
Trên mạch nguồn chúng ta cũng mắc thêm diot LED ở đầu ra và đầu vào để báo hiệu đã
có nguồn ra và nguồn vào
2.2.1.2 Khối vi điều khiển:
Khối điều khiển trung tâm có nhiệm vụ phối hợp toàn bộ hệ thống hoạt động một cách hợp lý và ổn định Khối này xử dụng vi điều khiển là IC 16F877A
Vi điều khiển trung tâm sẽ nhận tín hiệu từ khối cảm biến ,bao gồm các tín hiệu báo nhận về đường đi và tín hiệu kết thúc các quá trình ,sau đó sẽ xử lý dữ liệu nhận được để
Trang 9đưa ra quyết định điều khiển khối động cơ Đồng thời cho hiển thị trạng thái của hệ thống
Hình 2.3:Sơ đồ mạch khối vi điều khiển
Trang 10Hình 2.4: Mạch điện khối Vi Điều Khiển
Trang 112.2.1.3 Khối cảm biến:
Hình 2.5: Sơ đồ mạch điều khiển
Một đầu cảm biến phát ra bức xạ hồng ngoại đầu còn lại thu lấy bức xạ, lượng tín hiệu thu được phụ thuộc rất nhiều vào độ bóng, màu sắc của bề mặt phản xạ Độ bóng càng lớn, màu càng sang thì độ phản xạ càng nhiều, tín hiệu thu được càng lớn và ngược lại Tín hiệu thu được ở đầu ra cảm biến thu được chỉ là tín hiệu tương tự, để vi điều khiển có thể xử lý được tín hiệu này, thì tín hiệu thu được cần qua một mạch so sánh mức Ở đây ta sử dụng một mạch khuyếch đại thuật toán, được tích hợp trong IC LM324, với điện áp cung cấp là 5V, khi đó đầu ra của mạch khuyếch đại thuật toán sẽ là mức 0 hoặc 5V tương thích với tín hiệu đầu vào Để thay đổi mức điện áp so sánh ta di chuyển con chạy trên biến trở phân áp
Trang 12Trên mặt sân tại vạch đen ta thu được tín hiệu có điện áp ra là a V và tại nền ta thu được tín hiệu điện áp là b V thì ta điều chỉnh điện áp ngưỡng phù hợp sao cho hai mức điện áp
ra tương ứng là 0V và 5V để nhận biết được vạch đen
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ừ biến trở 10k Ohm 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)
Trang 13Hình 2.6: Mạch cảm biến
Trang 142.2.1.4 Khối động cơ:
Hình 2.7: sơ đồ mạch điều khiển động cơ
Trang 15Hình 2.8: Mạch điều khiển động cơ
Gồm 2 động cơ ghép nối với vi điều khiển thông qua L298.L298 là linh kiện có tác dụng đảo chiều động cơ Khối động cơ có tác dụng trực tiếp đến việc thực hiện các chức năng của sản phẩm nhờ việc nhận các tín hiệu điều khiển từ vi điều khiển
Do mạch cầu H dùng Rơle đáp ứng bằng tiếp giáp cơ điện nên độ trể lớn chính vì vậy ta phải mắc mạch cầu H dùng Tranzito.Trong mạch này ta ứng dụng dùng IC L298
đã tích hợp 2 mạch cầu bên trong và có sơ đồ khối dưới đây:
Trang 16Hình 2.9: sơ đồ khối IC L298
Mổi cầu H trong IC L298 được điều khiển bởi 3 tín hiệu IN1,IN2,EnA tương ứng với 3 tín hiệu lấy ra từ vi điều khiển SLAVE là Left Forwad ,Left Backward ,Left EN
Trang 17Ta có quan hệ giữa các tín hiệu như sau :
Hiển thị menu , thông tin trên đường đi câu lệnh kết quả sau khi dò đường xong
LCD 16x2 hoạt động ở chế độ 4bit có 2 port vào và 1 port ra
Trang 18Hình 2.10: Mạch điện khối hiển thị
2.3 CÁC LINH KIỆN DÙNG TRONG MẠCH
2.3.1 Giới Thiệu Về PIC 16F877A:
2.3.1.1 Một vài thông số về vi điều khiển PIC16F877A:
Đây là vi điều khiển thuộc họ PIC16Fxxx với tập lệnh gồm 35 lệnh có độ dài 14 bit Mỗi lệnh đều được thực thi trong một chu kì xung clock Tốc độ hoạt động tối
đa cho phép là 20 MHz với một chu kì lệnh là 200ns Bộ nhớ chương trình 8Kx14 bit, bộ nhớ dữ liệu 368x8byte RAM và bộ nhớ dữ liệu EEPROM với dung lượng 256x8 byte Số PORT I/O là 5 với 33 pin I/O
Các đặc tính ngoại vi bao gồm các khối chức năng sau:
Timer0: bộ đếm 8 bit với bộ chia tần số 8 bit
Trang 19 Timer1: bộ đếm 16 bit với bộ chia tần số, có thể thực hiện chức năng đếm dựa vào xung clock ngoại vi ngay khi vi điều khiển hoạt động ở chế độ sleep
Timer2: bộ đếm 8 bit với bộ chia tần số, bộ postcaler
Hai bộ Capture/so sánh/điều chế độ rông xung
Các chuẩn giao tiếp nối tiếp SSP (Synchronous Serial Port), SPI và I2C
Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ
Cổng giao tiếp song song PSP (Parallel Slave Port) với các chân điều khiển
RD, WR, CS ở bên ngoài
Các đặc tính Analog:
8 kênh chuyển đổi ADC 10 bit
Hai bộ so sánh
Bên cạnh đó là một vài đặc tính khác của vi điều khiển như:
Bộ nhớ flash với khả năng ghi xóa được 100.000 lần
Bộ nhớ EEPROM với khả năng ghi xóa được 1.000.000 lần
Dữ liệu bộ nhớ EEPROM có thể lưu trữ trên 40 năm
Khả năng tự nạp chương trình với sự điều khiển của phần mềm
Nạp được chương trình ngay trên mạch điện ICSP (In Circuit Serial Programming) thông qua 2 chân
Watchdog Timer với bộ dao động trong
Chức năng bảo mật mã chương trình
Chế độ Sleep
Có thể hoạt động với nhiều dạng Oscillator khác nhau
2.2.1.2 Sơ đồ chân:
Trang 20Hình 2.11: Sơ đồ chân vi điều khiển PIC16F877A
Trang 212.3.1.3 Sơ đồ khối vi điều khiển PIC16F877A:
Hình 2.12: Sơ đồ khối vi điều khiển PIC16F877A
Trang 222.3.1.4 Tổ chức bộ nhớ:
Cấu trúc bộ nhớ của vi điều khiển PIC16F877A bao gồm bộ nhớ chương trình (Program memory) và bộ nhớ dữ liệu (Data Memory)
- Bộ nhớ chương trình:
Bộ nhớ chương trình của vi điều khiển
PIC16F877A là bộ nhớ flash, dung
lượng bộ nhớ 8K word (1word = 14
bit) và được phân thành nhiều trang (từ
page 0 đến page 3) Như vậy bộ nhớ
chương trình có khả năng chứa được
8*1024 = 8192 lệnh
Để mã hóa được địa chỉ của 8K word
bộ nhớ chương trình, bộ đếm chương
trình có dung lượng 13 bit (PC<12:0>)
Khi vi điều khiển được reset, bộ đếm
Bộ nhớ chương trình không bao gồm:
bộ nhớ stack và không được địa chỉ
hóa bởi bộ đếm chương trình Bộ nhớ
stack sẽ được đề cập cụ thể trong phần
sau
Hìnhhì
nh 2.13: bộ nhớ chương trình
PIC16F877A
Trang 23- Bộ nhớ dữ liệu:
Bộ nhớ dữ liệu của PIC là bộ nhớ EEPROM được chia ra làm nhiều bank Đối với PIC16F877A bộ nhớ dữ liệu được chia ra làm 4 bank Mỗi bank có dung lượng 128 byte, bao gồm các thanh ghi có chức năng đặc biệt SFG (Special Function Register) nằm ở các vùng địa chỉ thấp
và các thanh ghi mục đích chung GPR (General Purpose Register) nằm
ở vùng địa chỉ còn lại trong bank Các thanh ghi SFR thường xuyên được sử dụng (ví dụ như thanh ghi STATUS) sẽ được đặt ở tất cà các bank của bộ nhớ dữ liệu giúp thuận tiện trong quá trình truy xuất và làm giảm bớt lệnh của chương trình Sơ đồ cụ thể của bộ nhớ dữ liệu PIC16F877A như sau:
Hình 2.14: Bộ nhớ dữ liệu PIC16F877A
Trang 242.3.1.5 Các cổng xuất nhập của PIC16F877A:
- PORT A
PORT A (RPA) bao gồm 6 I/O pin Đây là các chân “2 chiều” (bidirectional pin), nghĩa là có thể xuất và nhập được Chức năng I/O này được điều khiển bởi thanh ghi TRIS A
Muốn xác lập chức năng của một chân trong PORTA là input, ta “set” bit điều khiển tương ứng tương ứng với chân đó trong thanh ghi TRISA Thao tác này hoàn toàn tương tự với chân đó trong thanh ghi TRISA và ngược lại, muốn xác lập chức năng của một chân trong PORTA là output, ta “clear” bit điều khiển đối với các PORT và các thanh ghi điều khiển tương ứng TRIS (đối với PORTA là TRISA, đối với PORTB là TRISB, đối với PORTC là TRISC, đối với PORTD là TRISD vàđối với PORTE là TRISE)
Bên cạnh đó PORTA còn là ngõ ra của bộ ADC, bộ so sánh, ngõ vào analog ngõ vào xung clock của Timer0 và ngõ vào của bộ giao tiếp MSSP (Master Synchronous Serial Port)
Các thanh ghi SFR liên quan đến PORTA bao gồm:
PORTA : chứa giá trị các pin trong PORTA
TRISA : điều khiển xuất nhập
CMCON : thanh ghi điều khiển bộ so sánh
CVRCON : thanh ghi điều khiển bộ so sánh điện áp
ADCON1 : thanh ghi điều khiển bộ ADC
Các thanh ghi SFR liên quan đến PORTB bao gồm:
PORTB : chứa giá trị các pin trong PORTB
TRISB : điều khiển xuất nhập
OPTION_REG : điều khiển ngắt ngoại vi và bộ Timer0
- PORTC
PORTC (RPC) gồm 8 pin I/O Thanh ghi điều khiển xuất nhập tương ứng là TRISC Bên cạnh đó PORTC còn chứa các chân chức năng của bộ so sánh, bộ Timer1, bộ PWM và các chuẩn giao tiếp nối tiếp I2C, SPI, SSP, USART
Các thanh ghi điều khiển liên quan đến PORTC:
PORTC : chứa giá trị các pin trong PORTC
TRISC : điều khiển xuất nhập
Trang 25- PORTD
PORTD (RPD) gồm 8 chân I/O, thanh ghi điều khiển xuất nhập tương ứng là TRISD
PORTD còn là cổng xuất dữ liệu của chuẩn giao tiếp PSP (Parallel Slave Port)
Các thanh ghi liên quan đến PORTD bao gồm:
Thanh ghi PORT D : chứa giá trị các pin trong PORTD
Thanh ghi TRIS D : điều khiển xuất nhập
Thanh ghi TRIS E : điều khiển xuất nhập PORT E và chuẩn giao tiếp PSP
- PORT E
PORTE (RPE) gồm 3 chân I/O Thanh ghi điều khiển xuất nhập tương ứng là TRISE Các chân của PORTE có ngõ vào analog Bên cạnh đó PORTE còn là các chân điều khiển của chuẩn giao tiếp PSP
Các thanh ghi liên quan đến PORTE bao gồm:
PORT E : chứa giá trị các chân trong PORTE
TRIS E : điều khiển xuất nhập và xác lập các thông số cho chuẩn giao tiếp PSP
ADCON 1 : thanh ghi điều khiển khối ADC
ρ là điện trở suất của vật liệu
S là thiết diện của dây
ℓ là chiều dài của dây