có sơ đồ nguyên lý, sơ đồ khối và lưu đồ giải thuật, mạch in và code đầy đủ cho mạch ĐO KHOẢNG CÁCH và XUẤT LCD dùng 89c51 ...............................................................................................................................................................
Trang 1ĐO KHOẢNG CÁCH VÀ XUẤT LCD
MỤC LỤC
Trang 5CHƯƠNG 1
GIỚI THIỆU MẠCH ĐO KHOẢNG CÁCH DÙNG CẢM BIẾN1.1.Tính quan trọng của sản phẩm
− Đo khoảng cách nhanh hơn
− Tiết kiệm được sức người, tăng năng suất lao động
1.2.Phương pháp nghiên cứu:
− Tìm hiểu cấu tạo,nguyên lý hoạt động của các linh kiện: 89C51, LM25,
SRF05…
− Tìm hiểu,nghiên cứu cách viết chương trình bằng Assemly
− Thiết kế mạch
1.3.Kết quả nghiên cứu:
Xây dựng được một mạch đo khoảng cách dùng cảm biến hoạt động tốt đúng với yêu cầu đặt ra
Trang 62.1.2.Chức năng của từng khối:
− Khối nguồn: Sử dụng nguồn 5V cung cấp điện áp cho các linh kiện trong mạch hoạt động
− Khối cảm biến: Sử dụng IC SRF05 phát xung tới vị trí cần đo, sau đó nó tự tạo
ra 1 xung ở chân ECHO, độ rộng xung này tỉ lệ với khoảng cách cần đo
− Khối xử lý: Sử dụng vi điều khiển AT89S52 để kích xung điều khiển SRF05 hoạt động và đo độ rộng xung ở chân ECHO của SRF05 Sau khi đo xong vi điều khiển sẽ tính toán và đưa tới LCD hiển thị
− Khối hiển thị: Sử dụng LCD 16x2 để hiển thị khoảng cách đo được
Khối nguồn
Khối cảm biến Khối xử lý Khối hiển thị
Trang 72.2.Giới thiệu các linh kiện sử dụng trong mạch:
− Chân Reset: Chân số 9 là chân tái lập reset Nó là một đầu vào tích cực mức
Trang 8phải có tối thiểu 2 chu kì máy, hay nói cách khác, xung cao phải kéo dài 2 chu kì máy trước khi nó xuống thấp.Trong 8051 một chu kì máy bằng 12 chu kì dao
động
− Chân EA: Tín hiệu vào EAở chân 31 thường được mất lên mức 1 hoặc mức 0.
Nếu ở mức 1, 89S52 thi hành chương trình từ bộ nhớ nội
Nếu ở mức 0, 89S52 sẽ thi hành chương trình từ bộ nhớ ngoại
− Chân PSEN (program store enable): Tín hiệu xuất ra từ vi điều khiển để điều
khiển đọc bộ nhớ chương trình
− Chân ALE ( address latch enable): Cho phép chốt địa chỉ Tín hiệu ALE sẽ
được nối với chân LE của IC chốt
Các PORT:
− Port 0 (chân 32 – 39): là port có hai chức năng Trong các thiết kế cỡ nhỏ
không dùng bộ nhớ mở rộng, nó có chức năng như các đường IO Đối với các thiết kế
cỡ lớn có bộ nhớ mở rộng, nó được kết hợp giữa bus địa chỉ và bus dữ liệu
− Port 1 (chân 1 – 8): là port IO, các chân P1.0, P1.1, P1.2, có thể dùng cho
giao tiếp với các thiết bị ngoài nếu cần Ngoài ra chân P1.0 cũng là ngõ vào của timer
2, chân P1.1 là ngõ vào ngắt ngoài timer 2 của 8952
− Port 2 (chân 21 – 28): là 1 port đa năng được dùng như các đường xuất nhậphoặc là byte cao của bus địa chỉ đối với các thiết bị dùng bộ nhớ mở rộng
− Port 3 (chân 10 – 17): là port đa năng nếu không sử dụng thì port 3 dùng làmIO; nếu có sử dụng thì có các chức năng đặc biệt sau :
• P3.0 - RxD: dùng để nhận dữ liệu nối tiếp trong khi giao tiếp UART hay giaotiếp máy tính
• P3.1 - TxD: dùng để truyền dữ liệu nối tiếp trong khi giao tiếp UART hay giao tiếp máy tính
• P3.2 - INT0: tín hiệu ngắt ngoài thứ 0
• P3.3 - INT1: tín hiệu ngắt ngoài thứ 1
• P3.4 - T0: ngõ vào nhận xung ngoại cho timer / counter 0
Trang 9• P3.5 - T1: ngõ vào nhận xung ngoại cho timer / counter 1.
• P3.6 - WR: điều khiển ghi dữ liệu
• P3.7 - RD: điều khiển đọc dữ liệu
Vi điều khiển 89S52 có bộ nhớ nội bên trong và có khả năng giao tiếp với bộ nhớ bên ngoài nếu bộ nhớ bên trong không có đủ khả năng lưu trữ chương trình Bộ nhớ bên trong gồm có 2 loại bộ nhớ: bộ nhớ dữ liệu và bộ nhớ chương trình Bộ nhớ dữ liệu
có 256 byte, bộ nhớ chương trình có dung lượng 8 kbyte Bộ nhớ mở rộng bên ngoài cũng gồm có 2 loại: bộ nhớ dữ liệu và bộ nhớ chương trình Khả năng giao tiếp là 64kbyte cho mỗi loại
Bộ nhớ mở rộng bên ngoài và bộ nhớ chương trình bên trong không có gì đặc biệt – chỉ có chức năng lưu trữ dữ liệu và mã chương trình nên không cần phải khảo sát
Bộ nhớ chương trình bên trong của vi điều khiển thuộc loại bộ nhớ FLASH ROM cho phép xoá bằng xung điện và lập trình lại
Bộ nhớ RAM nội bên trong là một bộ nhớ đặc biệt người sử dụng vi điều khiển cần phải nắm rõ cách tổ chức và các chức năng đặc biệt của bộ nhớ này
2.2.2.Cảm biến SRF05:
Trang 10Hình 2.3 : Cảm biến siêu âm SRF05[2]
Sóng siêu âm(sonar) là một loại sóng mà con người không thể nghe thấy
được.Tuy nhiên ta có thể thấy sự hiện diện của sóng siêu âm ở khắp mọi nơi trong tự nhiên.Ta biết những loài động vật như dơi,cá heo…dùng sóng siêu âm để liên lạc với đồng loại,để săn mồi hay định vị trong không gian
Nguyên tắc các loài vật dùng sóng siêu âm có thể tóm gọn trong 3 bước:
1.Vật chủ phát ra sóng âm
2.Sóng âm này va chạm vơi môi trường xung quanh và bị bức xạ lại
3.Dựa vào thời gian phát/thu,khoảng cách giữa vật chủ và môi trường âm thanh được tính ra
Việc tính toán khoảng cách cũng phụ thuộc rất lớn vào môi trường truyền dẫn,
ví dụ sóng âm truyền trong môi trường nước hay kim loại sẽ nhanh hơn rất nhiều khi truyền trong môi trường không khí Đặc biệt sóng âm không truyền được trong môi trường chân không
Theo nguyên tắc này dựa trên sự tiến bộ của khoa học công nghệ hiện đại ta thấy được ứng dụng của sóng âm rất nhiều có thể kể đến như thiết bị định vị dưới biển của tàu ngầm, thiết bị radar, các thiết bị đo khoảng cách môi trường như đo độ sâu của đại dương
Cảm biến siêu âm SRF05 là bước phát triển từ SRF04 và được thiết kế để nâng cao độ linh hoạt,tầm đo và giảm giá thành.Cảm biến siêu âm SRF05 cũng hoạt động theo như nguyên tắc ở trên, thiết bị gồm có 2 loa - thu và phát - cùng với 5 chân để kết nối với Arduino
Chức năng của các chân như sau:
1. Vcc: cấp nguồn cho cảm biến.
Trang 112. Trigger: chân này là chân phát xung để kích hoạt cho cảm biến hoạt động Quá
trình kích hoạt khi một chu kì điện cao / thấp diễn ra
3. Echo: chân trả tín hiệu xung khi sóng siêu âm phản xạ lại, bình thường sẽ ở
trạng thái 0V, được kích hoạt lên 5V ngay khi có tín hiệu trả về, sau đó trở về 0V
4. Gnd: nối với cực âm của mạch
5. OUT: không sử dụng.
Nguyên lý hoạt động: để đo được khoảng cách ta sẽ phát xung rất ngắn(5us) từ
chân Trigger.Sau đó cảm biến sẽ tạo ra một xung “High” ở chân Echo cho đến khi nhân lại sóng phản xạ ở pin này.Chiều rộng của xung sẽ bằng với thời gian sóng siêu âm được phát từ cảm biến và quay trở lại
- Độ rộng xung là sóng truyền từ cảm biến tới vật và từ vật trở về cảm biến
- Thời gian là sóng truyền từ cảm biến tới vật
- Tốc độ âm thanh của không khí là một hằng số vật lý bằng 340m/s tương đương
Trang 12Chân Tên Chức năng
1 Vss Chân nối đất cho LCD,khi vẽ mạch nối chân này với
GND của mạch điều khiển
2 Vdd Chân cấp nguồn của LCD,khi thiết kế mạch chân này
nối với Vcc=5V
3 Chân này dùng để điều chỉnh độ tương phản của LCD
4 RS Chân chọn thanh ghi(Register select).Nối chân này
với mức “0” hoặc mức “1” để chọn thanh ghi -Mức “0”:Bus DB0-DB7 sẽ nối với thanh ghi lệnh IR của LCD hoặc với bộ đếm địa chỉ.
-Mức “1” :Bus DB0-DB7 sẽ nối với thanh ghi dữ liệu
DR bên trong LCD
5 R/W Chân chọn chế độ đọc/ghi.Nối chân này với mức “0”
để LCD ghi,mức “1” để LCD đọc
6 E Chân cho phép(enable).Sau khi các tín hiệu đặt lên
bus DB0-DB7 các lệnh chỉ chấp nhận khi có 1 xung cho phép của chân E
-Ở chế độ ghi:Dữ liệu ở bus sẽ được chuyển vào thanh ghi bên trong LCD khi phát hiện 1 xung cho phép của chân E
-Ở chế độ đọc:Dữ liệu LCD sẽ xuất ra Db0-DB7 khi phát hiện cạnh lên của chân E và được giữ ở bus cho đến khi chân E xuống mức thấp
7 DB0-DB7 8 đường của bus dữ liệu dùng để trao đổi thông tin
Trang 13Bảng 2.1 Chức năng các chân của LCD
2.3 : Sơ đồ nguyên lí mạch:
Hình 2.5 : Sơ đồ nguyên lí
2.4 : Nguyên lí hoạt động:
Khoảng cách mà cảm biến đo được sẽ được đưa qua vi điều khiển xử lí, tính toán Sau khi vi điều khiển xử lí xong sẽ đưa dữ liệu qua LCD để hiển thị khoảng cách mà ta đã đo được
Trang 15KHỞI TẠO NGẮT TIMER
Trang 17Hình 3.2 : Lưu đồ giải thuật
3.3 Mạch thực tế :
Hình 3.3 : Mạch thực tế
BCDTOASCII
HIỂN THỊ KẾT QUẢ
Trang 18CHƯƠNG 4
KẾT LUẬN CHUNG4.1 Ưu điểm:
Mạch điện tử đơn giản, dễ xử lí
Sóng phản hồi không phụ thuộc vào màu sắc, bề mặt của vật thể hay tính chất phản xạ ánh sáng của đối tượng
4.2 Khuyết điểm:
Sóng phản hồi của sóng siêu âm chịu ảnh hưởng của sóng âm thanh tạp âm
Cảm biến siêu âm yêu cầu cần có một khoảng thời gian sau mỗi lần sóng phát đi để nhận lại sóng phản hồi nên nhìn chung chậm hơn các cảm biến khác
Cảm biến siêu âm có giới hạn khoảng cách phát hiện
4.3 Hướng phát triển:
Nghiên cứu, tìm hiểu thêm để giảm thiểu sai số đến giá trị nhỏ nhất, khắc phục những khuyết điểm nêu trên
Trang 19TÀI LIỆU THAM KHẢO
[1] Tống Văn On Họ vi điều khiển 8051 Tp.HCM, NXB Lao động xã hội, 2001.
https://www.google.com/search?
q=89s52&biw=1366&bih=623&tbm=isch&tbo=u&source=univ&sa=X&sqi=2& ved=0ahUKEwiy95Kxvu_LAhWHEpQKHQcnB2UQsAQIGw#imgrc=KbPz0tK oswi6wM%3A
[2] https://www.google.com/search?
q=datasheet+srf05&biw=1366&bih=623&source=lnms&tbm=isch&sa=X&ved= 0ahUKEwjBw_vYvu_LAhWMkpQKHXfgBVsQ_AUIBigB#imgrc=Vfq-
t34nUovG4M%3A
[3] https://www.google.com/search?
q=lcd&biw=1366&bih=623&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiZ vabvvu_LAhXCFZQKHY7kDl0Q_AUIBigB#tbm=isch&q=lcd+16x2&imgrc= mH8O72tVtshKDM%3A
Trang 32MOV LCD_DATA,#'M'
CALL GHI_DATA
RET
;E/ MỘT SỐ CHƯƠNG TRÌNH CON KHÁC
;// CHƯƠNG TRÌNH CON HIỂN THỊ HÀNG THỨ 1 TRÊN LCD
Trang 36DATAHANG2: DB "THONGBAOSO2"
END
0.96%