ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU âm (có code và layout) ....................... ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU âm (có code và layout) ....................... ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU âm (có code và layout) ....................... ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU âm (có code và layout) ....................... ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU âm (có code và layout) .......................
Trang 1ĐO KHOẢNG CÁCH BẰNG
SÓNG SIÊU ÂM
Trang 21.1 Giới Thiệu 6
1.2 Nguyên Lý Hoạt Động 6
1.3 Nhiệm Vụ Đồ Án 6
CHƯƠNG 2 GIỚI THIỆU LINH KIỆN 7
2.1 Cảm biến siêu âm SRF05 7
2.2 Vi điều khiển PIC 16F877A 8
2.3 LCD 9
CHƯƠNG 3: THIẾT KẾ MẠCH 11
3.1 Sơ Đồ Khối 11
3.2 Lưu Đồ Giải Thuật 12
3.3 Sơ đồ Nguyên Lý 13
3.3.1 Khối tạo dao động 13
3.3.2 Khối cảm biến sóng siêu âm 14
3.3.3 Khối điều khiển 15
3.3.4 Khối hiển thị 16
CHƯƠNG 4: MÔ PHỎNG MẠCH 17
4.1 Công Thức Tính Khoảng Cách 17
4.2 Mô phỏng 17
CHƯƠNG 5: KẾT LUẬN 18
5.1 Ưu Điểm 18
5.2 Khuyết Điểm 18
5.3 So sánh thực tiễn 18
5.4 Hướng Phát Triển 18
TÀI LIỆU THAM KHẢO 19
Tiếng Việt 19
Trang 3Hình 2.1: Cảm biến SRF05 7
Hình 2.2: Vi điều khiển PIC 16F877A 8
Hình 2.3: LCD 16x2 9
Hình 3.1: Sơ đồ khối 11
Hình 3.2: Sơ đồ giải thuật 12
Hình 3.3: Sơ đồ nguyên lý 13
Hình 3.3.1: Khối tão dao động 13
Hinh 3.3.2: Khối cảm biến sóng siêu âm 14
Hình 3.3.3: Khối điều khiển 15
Hình 3.3.4 Khối hiển thị 16
Hình 4.2: Mô phỏng mạch bằng proteus 17
Trang 4CHƯƠNG 1: TỔNG QUAN
1.1 Giới Thiệu
Xã hội ngày càng hiện đại hoá, robot càng ngày càng được con người sử dụng nhiều hơn.Đối với robot khi hoạt động ở chế độ tự động thì nó cần phải lấy thông tin dữ liệu từ môitrường xung quanh như khoảng cách, nhiệt độ, độ ẩm và phân tích những dữ liệu đó để
có thể đưa ra quyết định xử lý phù hợp Ví dụ như robot dò đường nó phải xác định đượcphía trước có vật cản hay không để có thể đưa ra quyết định là đi thằng tiếp hay rẽ sanghướng khác
1.2 Nguyên Lý Hoạt Động
Mạch đo khoảng cách bằng sóng siêu âm sẽ hoạt động dựa trên nguyên lý của sóng siêu
âm Sóng siêu âm là một loại sóng cao tần mà con người không thể nghe thấy được Tuynhiên ta có thể nhìn thấy được sự hiện diện của sóng siêu âm ở khắp mọi nơi trong tựnhiên như là cá heo, dơi sử dụng sóng siêu âm để liên lạc với nhau, săn mồi hay là dủng
để định vị trong không gian Dựa trên quan sát hoạt động của chúng, ta có thể thấy đượcnguyên lý hoạt động như sau Đầu tiên vật chủ sẽ phát ra sóng âm, sóng âm sau khi đượcphát tán trong không gian nếu như gặp vật cản nó sẽ phản xạ lại, dựa trên thời gian sóngsiêu âm được phát ra và phản xạ lại mà ta có thể tính được khoáng cách giữa vật chủ vàvật cản
1.3 Nhiệm Vụ Đồ Án
- Tìm hiểu cảm biến siêu âm
- Tìm hiểu vi điều khiển PIC, LCD
- Tìm hiểu nguyên lý hoạt động của mạch
- Mô phỏng mạch
Trang 5CHƯƠNG 2 GIỚI THIỆU LINH KIỆN
2.1 Cảm biến siêu âm SRF05
SRF05 là tên của một loại cảm biến dùng sóng siêu âm đo khoảng cách với vật cản Tầm
đo của SRF05 là từ 3cm cho tới 4m, SRF05 sử dụng nguyên lý phản xạ sóng âm như đãnêu ở trên để đo khoảng cách với vật cản Nó được ứng dụng rộng rãi vào các mạchchống trộm, robot dò đường, đo mực nước
Hình 2.1: Cảm biến SRF05
Về sơ đồ chân thì SRF05 có 5 chân:
- Chân VCC: chân nối nguồn
- Chân GND: chân nối đất
- Chân Trig: là chân kích xung dùng để phát sóng âm đi
- Chân Echo: chân phát hiện ra có sóng phản xạ lại, bình thường sẽ ở mức 0v khithu được sóng phản xạ nó sẽ kích hoạt lên 5v, sau đó lại trở về 0v
- Chân OUT: là chân sẽ thông báo có vật cản ở phía trước
Trang 62.2 Vi điều khiển PIC 16F877A
Pic là viết tắt của “Programable Intelligent Computer” có nghĩa là “máy tính thông minhkhả trình” PIC 16F877A có độ dài lệnh là 14 bit và sử dụng bộ nhớ flash, mỗi lệnh đềuđược thực hiện trong chu kỳ cả xung clock Nó có 5 PORT xuất nhập với tổng cộng 33Pin I/O, dòng ra của các I/O Ports này là 25mA nếu dòng ra lớn hơn 25mA thì ta cần cóbiện pháp khắc phục Tần số hoạt động tối đa lên tới 20MHZ, điện áp để nó hoạt độngđược là từ 2.5v đến 5.5V Hỗ trợ 8k ROM FLASH, 250 bytes EEPROM memory, 368bytes RAM memory Có 8 kênh ADC 10bit, 2CCP (Cature, Compare, PWM), MSSP(UART, SPI, I2C ) Có ba bộ TIMER: Timer 0, Timer 1, Timer 2
Hình 2.2: Vi điều khiển PIC 16F877A
Trang 72.3 LCD
Hình 2.3: LCD 16x2
LCD là thiết bị hiển thị được ứng dụng rộng rãi trong các mạch vi điều khiển, LCD có rấtnhiều ưu điểm so với các dạng hiển thị khác: Nó có khả năng hiển thị kí tự đa dạng, trựcquan (chữ, số và kí tự đồ họa), dễ dàng đưa vào mạch ứng dụng theo nhiều giao thức giaotiếp khác nhau, tốn rất ít tài nguyên hệ thống và giá thành rẻ… LCD thông dụng thường
có 16 chân hay 14 chân, các chân này được đành số thự tự và đặt tên như hình trên
- Chân số 1, VSS: là chân nối đất của LCD
- Chân số 2, VDD: là chân nối nguồi của LCD
- Chân số 3, VEE: dùng để điều chỉnh độ tương phản của LCD
- Chân số 4, RS: là chân chọn thanh ghi (Register select) Nối chân RS với logic “0”(GND) hoặc logic “1” (VCC) để chọn thanh ghi Logic “0”, bus D0-D7 sẽ nối vớithanh ghi lệnh IR của LCD (ở chế độ “ghi” - write) hoặc nối với bộ đếm địa chỉcủa LCD (ở chế độ “đọc” - read) Logic “1”, bus D0-D7 sẽ nối với thanh ghi dữliệu DR bên trong LCD
- Chân số 5, R/W: là chân chọn chế độ đọc/ghi (Read/Write) Nối chân R/W vớilogic “0” để LCD hoạt động ở chế độ ghi, hoặc nối với logic “1” để LCD ở chế độđọc
Trang 8- Chân số 6, E: là chân cho phép (Enable) Sau khi các tín hiệu được đặt lên bus D7, các lệnh chỉ được chấp nhận khi có 1 xung cho phép của chân E Ở chế độ ghi,
D0-dữ liệu ở bus sẽ được LCD chấp nhận chuyển vào thanh ghi bên trong nó khi pháthiện một xung (high-to-low transition) của tín hiệu chân E Ở chế độ đọc, dữ liệu
sẽ được LCD xuất ra D0-D7 khi phát hiện cạnh lên (low-to-high transition) ở chân
E và được LCD giữ ở bus đến khi nào chân E xuống mức thấp
- Chân 7 đến 14, D0 đến D7: là tám đường BUS dữ liệu dùng để trao đổi thông tin
dữ liệu với MPU, có 2 chế độ để sử dụng đường BUS này Chế độ 8 bit, với bitMSB là bit D7 dữ liệu sẽ truyền trên cả tám đường Chế độ 4 bit, với bit MSB làbit D7 dữ liệu sẽ được truyền từ D4 đến D7
Trang 9CHƯƠNG 3: THIẾT KẾ MẠCH
3.1 Sơ Đồ Khối
Hình 3.1: Sơ đồ khối
Trang 103.2 Lưu Đồ Giải Thuật
Hình 3.2: Sơ đồ giải thuật
Trang 113.3 Sơ đồ Nguyên Lý
Hình 3.3: Sơ đồ nguyên lý
3.3.1 Khối tạo dao động
Hình 3.3.1: Khối tão dao động
Trang 123.3.2 Khối cảm biến sóng siêu âm
Hinh 3.3.2: Khối cảm biến sóng siêu âm
Trang 133.3.3 Khối điều khiển
Hình 3.3.3: Khối điều khiển
Trang 143.3.4 Khối hiển thị
Hình 3.3.4 Khối hiển thị
Trang 16CHƯƠNG 5: KẾT LUẬN
5.1 Ưu Điểm
- Mạch đơn giản, dễ tìm mua linh kiện
- Mạch nhỏ gọn cỏ thể mang theo bên mình được
- Mạch hoạt động có tính ổn định cao
5.2 Khuyết Điểm
- Tầm đo của mạch còn hạn chế (khoảng 2m)
- Tính thẩm mỹ của mạch không cao
- Cảm biến siêu âm yêu cầu đối tượng phải có một diện tích bề mặt tối thiểu
- Sóng phản hồi cảm biến nhận được có thể chịu ảnh hường cùa sóng âm thanh tạp âm
5.3 So sánh thực tiễn
Hiện nay công nghệ dùng sóng siêu âm để đo khoảng cách không còn xa lạ trên thế giới,con người ứng dụng nó vào làm hệ thống Sonar cho các tàu quân sự Đối với một chiếctàu chiến hệ thống Sonar giống như đôi mắt của nó, giúp nó phát hiện những đợt tấn côngdưới nước và vị trí của địch, nếu không có hệ thống Sonar chiếc tàu đó có thể dễ dàng bịtấn công và tiêu diệt Ứng dụng phổ biến thứ hai đó là hệ thống GPS, hệ thống này hoạtđộng dựa trên các vệ tinh bay quanh trái đất là máy phát còn các thiết bị di động sẽ làmáy thu, các máy thu sẽ dựa trên dữ liệu mà vệ tinh phát ra mà tính toán được chính xác
vị trí người dùng dựa trên phép tính lượng giác
5.4 Hướng Phát Triển
Trong tương lai nó có thể phát triển lên thành máy quét không gian ba chiều, không chỉ
đo được khoảng cách của vật thể mà có thể đo được chiều cao, bề ngang, bề rộng của vậtthể
Trang 17TÀI LIỆU THAM KHẢO
Trang 18sbit LCD_D7_Direction at TRISD7_bit;
sbit LCD_D6_Direction at TRISD6_bit;
sbit LCD_D5_Direction at TRISD5_bit;
sbit LCD_D4_Direction at TRISD4_bit;
sbit LCD_EN_Direction at TRISD3_bit;
sbit LCD_RS_Direction at TRISD2_bit;
// SRF05
sbit SRF05_Trigger at RD0_bit;
sbit SRF05_Echo at RD1_bit;
Trang 19unsigned int time = 0;
// Khoi tao ket noi voi SRF05
SRF05_Trigger_Direction = 0; // Chan Trigger la ngo ra
SRF05_Trigger = 0;
SRF05_Echo_Direction = 1; // Chan Echo la ngo vao
Lcd_Init(); // Khoi tao LCD
Lcd_Cmd(_LCD_CURSOR_OFF); // Ko hien thi con tro
Lcd_Out(1,1,"Distance: XXXcm");
Lcd_Out(2,1," DO AN 2 ");
// Khoi tao timer1
T1CON.TMR1CS = 0; // Dem xung noi
T1CON.T1CKPS1 = 0; // Ti le bo chia truoc la 1:2