Tải bản đầy đủ (.doc) (21 trang)

đo khoảng cách bằng sóng siêu âm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (399.45 KB, 21 trang )

ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

LỜI MỞ ĐẦU
Siêu âm là sóng cơ học có tần số lớn hơn tần số âm nghe thấy ( trên
20Khz ). Thính giác của con người rất nhạy cảm với dải tần số từ âm
trầm ( vài chục Hz) đến các âm thanh rất cao( gần 20Khz). Một số
loại vật như dơi, ong có thể cảm nhận được sóng siêu âm.
Cảm biến siêu âm là thiết bị dùng để xác định vị trí các vật thong qua
phát sóng siêu âm.
Cảm biến siêu âm có thể phát hiện ra hầu hết các đối tượng là kim
loại hoặc không kim loại, chất lỏng hoặc chất rắn, vật trong hoặc mờ
đục( những vật có hệ số phản xạ sóng âm thanh dủ lớn)
Từ lâu, cảm biến siêu âm đã được ứng dụng trong thực tế như:
- siêu âm dùng để phát hiện các mục tiêu dưới nước như
thăm dò đáy biển, phát hiện tàu ngầm, đàn cá.
- Trong ngành y tế, siêu âm giúp các bác sĩ có thể nhìn rõ cấu
trúc nội tạn của cơ thể, chuẩn đoán chính xác khối u, thai nhi
- Siêu âm còn được ứng dụng rộng rãi trong kỹ thuật gia công
kim loại. Sóng siêu âm là song cơ đàn hồi mang năng
lượng, có thể làm sạch bề mặt các chi tiết trước khi gia công
như mạ, hàn.
- Trong kỹ thuật đo và kiểm tra công nghiệp, việc đo và phân
tích tiếng dội khi chum siêu âm được chiếu lên bề mặt kiểm
tra có thể giúp ta phát hiện được trạng thái bề mặt và các
khuyết tật bên trong cấu trúc.
- Ngoài ra cảm biến siêu âm dung để điều khiển mực chất
lỏng, đo khoảng cách độ cao hay vị trí vật, dung để phát
hiện ra người, phát hiện dây bị đứt, phát hiện xe....và nhiều
ứng dụng quan trọng khác trong cuộc sống.


Vì những ứng dụng phổ biến và quan trọng của cảm biến siêu âm,
nên nhóm chúng em quyết định chọn đề tài cảm biến siêu âm làm đồ
án môn học. với tên đế tài là đo khoảng cách bằng sóng siêu âm sử
dụng dòng cảm biến SRF của hãng Devantech. Đây là ứng dụng
thường dùng nhất của cảm biến.

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

-1-


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

SƠ ĐỒ NGUYÊN LÝ MẠCH ĐO KHOẢNG CÁCH.
CHẾ ĐỘ 1:

SRF05

U1
M a n g H in h L C D

LCD

ECHO OUTPUT

10

33p


C2

R
R
R
R
R
R
R
R

P IC 1 6 F 8 7 7 A

R B 0 /IN T
RB1
RB2
RB3
RB4
RB5
RB6
RB7
VDD
VDD
M C L R /V P P

RA0
RA1
RA2
RA3

R A 4 /T 0 C L K
R A 5 /S S
D
D
D
D
D
D
D
D

0 /P S P 0
1 /P S P 1
2 /P S P 2
3 /P S P 3
4 /P S P 4
5 /P S P 5
6 /P S P 6
7 /P S P 7

R E 0 /R D
R E 1 /W R
R E 2 /C S

O S C 1 /C L K
O S C 2 /C L K O U T

2
3
4

5
6
7

R4
B ie n T r o

19
20
21
22
27
28
29
30
8
9
10

GND

13
14

0 /T 1 O S I/T 1 C L K
1 /T 1 O S O
2 /C C P 1
3 /S C K /S C L
4 /S D I/S D A
5 /S D O

6
7

GND

R

C
C
C
C
C
C
C
C

31

33
34
35
36
37
38
39
40
32
11
1


R
R
R
R
R
R
R
R

12

VC C _5V

4M H z

R2

R3
10K
15
16
17
18
23
24
25
26

C1


VC C _5v

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

VCC

5V
TRIGGER OUTPUT

GROUND

MODE

VSS
VDD

VEE
RS
RW
E
D0
D1
D2
D3
D4
D5
D6
D7
A
K

VC C _5v

33p

CHẾ ĐỘ 2:

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

-2-


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG


SRF05

U1

M a n g H in h L C D

LCD

10

4M H z

C2

R
R
R
R
R
R
R
R

P IC 1 6 F 8 7 7 A

R B 0 /IN T
RB1
RB2
RB3
RB4

RB5
RB6
RB7
VDD
VDD
M C L R /V P P

RA0
RA1
RA2
RA3
R A 4 /T 0 C L K
R A 5 /S S
D
D
D
D
D
D
D
D

0 /P
1 /P
2 /P
3 /P
4 /P
5 /P
6 /P
7 /P


SP
SP
SP
SP
SP
SP
SP
SP

0
1
2
3
4
5
6
7

R E 0 /R D
R E 1 /W R
R E 2 /C S

O S C 1 /C L K
O S C 2 /C L K O U T

2
3
4
5

6
7

R4
B ie n T r o

19
20
21
22
27
28
29
30
8
9
10

GND

13
14

0 /T 1 O S I/T 1 C L K
1 /T 1 O S O
2 /C C P 1
3 /S C K /S C L
4 /S D I/S D A
5 /S D O
6

7

GND

R

C
C
C
C
C
C
C
C

31

33
34
35
36
37
38
39
40
32
11
1

R

R
R
R
R
R
R
R

12

VC C _5V

33p

R2

R3
10K
15
16
17
18
23
24
25
26

C1

VC C _5v


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

VCC

ECHO OUTPUT

MODE

5V
TRIGGER OUTPUT

GROUND

VSS

VDD
VEE
RS
RW
E
D0
D1
D2
D3
D4
D5
D6
D7
A
K

VC C _5v

33p

SƠ ĐỒ CHỨC NĂNG TỪNG KHỐI
1. KHỐI LCD.
LCD

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

-3-


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM


CÁC CHÂN CHỨC NĂNG.
Chân 1:
Chân 2
Chân 3(contrast)
Chân 4:RS(Register selection)
Chân 5:RW
Chân 6:EN(Enable)

Chân 7- Chân 10: bus data
Chân 11- Chân 14 : bus data
Chân 15,16 : led nền

GVHD:NGUYỄN NGỌC TÙNG

Vss
Vdd
Chỉnh độ tương phản( độ sáng
của màng hình trên lcd)
Chọn thanh ghi lẹnh (RS=0)
hoặc thanh ghi dữ liệu (RS=1)
R/W=1 đọc dữ liệu
R/W=0 ghi dữ liệu.
Cho phép đọc/ ghi dữ liệu.
EN tác động cạnh lên đọc dữ
liệu..
EN tác đỗng cạch xuống ghi dữ
liệu.
4 bit thấp của chế độ 8 bit.
Chế dộ 4 bit thì không có sử

dụng.
Chế độ 8 bit là 4 bit cao.
Chế độ 4 bít dùng cho truyển 4
bit cao và 4 bít thấp)
Chân anode và chân cathode
đèn nền của lcd.

Các lệnh thường dùng.
LỆNH
MÔ TẢ
01H
02H
04H
06H
05H
07H
08H
0AH
0CH
0EH
0FH
10H
14H

Xóa màn hình hiển thị
Trở về đầu dòng
Dịch con trỏ sang trái
Dịch con trỏ sang phải
Dịch màn hình sang phải
Dịch màng hình sang trái

Tắt con trỏ, tắt hiển thị
Tắt hiển thị, bật con trỏ
Bật hiển thị, tắt con trỏ
Bật hiển thị, nhấp nháy con trỏ
Tắt hiển thị, nhấp nháy con trỏ
Dịch vị trí con trỏ sang trái
Dịch vị trí con trỏ sang phải

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

-4-


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

18H
1CH
80H
C0H
38H

GVHD:NGUYỄN NGỌC TÙNG

Dịch toàn bộ màng hình sang trái
Dịch toàn bộ màng hình sang phải
Đưa con trỏ về đầu dòng 1
Đưa con trỏ về đầu dòng 2
Xác lập chế độ 2 dòng và độ phân giải chữ 5x7.

THƯ VIÊN LCD DUNG TRONG CCS LÀ LCD_LIR_4BIT.C

Các lệnh cơ bản của thư viện LCD_LIR_4BIT.C khi sử dụng trong
ccs
Void LCD_Init(void) ;// Hàm khởi tạo LCD.
Void LCD_Setposition( unsigned int cx) ; //Thiết lập vị trí von trỏ.
Void LCD_putchar( unsigned int cx ) ;// Hàm viết kiểu 1 kí tự hoặc 1
chuỗi lên LCD.
Void LCD_putcmd(unsigned int cx ); // Hàm gửi lệnh lên LCD
Void LCD_PulseEnable(void); // Xung kích hoạt
Void LCD_SetData( unsigned int cx ); // Đặt dữ liệu lên chân Data
SƠ ĐỒ MẠCH LCD4bit CHẾ ĐỘ 1:
VC C _5v

U 1
J3

LCD

VC C _5v

V
V
V
R
R
E
D
D
D
D
D

D
D
D
A
K

E c h o - T r ig g e r

5
4
3
2
1

0
1
2
3
4
5
6
7

2
1

M a n g H in h L C D

SS
D D

EE
S
W

J4

C O N 5

1
2
3
4
5
6
7
8
9
1
1
1
1
1
1
1

0
1
2
3
4

5
6

VC C _5v

10

R 2

J2
2
1

R 3
10K

R 4
B ie n T r o

6
5
4
3
2
1

nguon 5v
J1
B it D u L ie u


SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

-5-


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

VẼ MẠCH TRÊN LAYOUT CHẾ ĐỘ 1

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

-6-


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

SƠ ĐỒ MẠCH 4BIT CHẾ ĐỘ 2:
VC C _5v
U 1
J3

LCD

VC C _5v

V

V
V
R
R
E
D
D
D
D
D
D
D
D
A
K

TR IG G E R

5
4
3
2
1

0
1
2
3
4
5

6
7

1

SS
D D
EE
S
W

J4

M a n g H in h L C D

C O N 5

1
2
3
4
5
6
7
8
9
1
1
1
1

1
1
1

0
1
2
3
4
5
6

VC C _5v

10

R 2

J2
2
1

R 3
10K

R 4
B ie n T r o

6
5

4
3
2
1

nguon 5v
J1
B it D u L ie u

2. KHỐI SRF05

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

-7-


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

Cảm biến SRF05 được tích hợp có thể làm việc ở 2 chế độ.
Cảm biến siêu âm SRF05 được hãng Devantech phát triển từ
SRF04, SRF05 có các đặc tính sau:
- nguồn cung cấp: 5v
- Tầm đo hoạt động: 3cm-4m
- Dòng làm việt: 30mA
- Dòng tối da: 50mA
- Tần số sóng siêu âm: 40Khz
- Góc mở: 45o khá rộng ( đây có thể là nhược điểm của cảm
biến)

- Chân trigger tối đa số lần đọc giá trị cảm biến trả về là 20 lần/s
Chế Độ 1:
SƠ ĐỒ CHÂN CẢM BIẾN:

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

-8-


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

- tương ứng với cảm biến SRF04 (Tách biệt kích hoạt và phản
hồi ). Chế độ này sử dụng riêng biệt chân kích hoạt và chân
phản hồi, và là chế độ đơn giản nhất để sử dụng. Tất cả các
chương trình điển hình cho SRF04 sẽ làm việt cho SRF05 ở
chế độ này. Để sử dụng chế độ này, chỉ cần chân chế độ không
kết nối. SRF05 có một nội trở tr6n chân này để nhận biết chế
độ.
Giản Đồ Xung:

Từ giản đồ ta nhận thấy:
Để cho SRF05 hoạt động thì cần cấp 1 xung mức cao có độ rộng
nhỏ hoặc bằng 10Us trên chân Trigger.
Sau khi nhận được xung từ chân trigger thì SRF05 sẽ tạo ra 8
xung để phát sóng siêu âm, sau khi hoàn thành việc phát 8 xung
này thì SRF05 sẽ kéo chân Echo lên mức 1, độ rộng của mức 1
trên chân Echo tương ứng với khoảng cách của vật cản với
SRF05, nếu không có vật cản thì nó sẽ được trả về mức 0 sau

30ms( ở đây nhiều bạn hiểu sai là khi có vật cản thì SRF05 mới
trả về 1 xung mức 1 xung múc cao có độ rộng từ 100Us > 30ms
tương ứng với khoảng cách).

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

-9-


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

Đặc biệt là SRF05 chỉ có thể nhận xung trên chân trigger tối đa là
20Hz, cho nên việc kích xung trên chân trigeer phải phù hợp thì
SRF05 mới hoạt động chính xác.
Chế Độ 2:Dùng 1 chân cho cả kích hoạt và phản hồi.
SƠ ĐỒ CHÂN CẢM BIẾN

Giản đồ xung:

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 10 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG


- chế độ này sử dụng 1 chân duy nhất cho cả 2 tín hiệu kích hoạt
và hồi tiếp, và được thiết kế để lưu các giá trị trên chân này lên
bộ điều khiển. Để sử dụng chế độ này, chân chế độ(mode) kết
nối vào chân mát. Tín hiệu hồi tiếp sẽ xuất hiện trên cùng 1
chân với tín hiệu kích hoạt. SRF05 sẽ không tăng dòng phản
hồi cho đế 700us sau khi kết thúc các tín hiệu kích hoạt. Bạn
đã có thời gian để kích hoạt chân nhận xung làm cho nó trở
thánh một đầu vào.
Tính toán khoảng cách:
Giản đồ định thời SRF05 thể hiện trên đây cho mỗi chế độ. Bạn chỉ
cần cung cấp 1 đoạn xung ngắn 10us kích hoạt đầu vào để bắt đầu
đo khoảng cách. Các SRF05 sẽ gửi cho ra chu kỳ 8 burst của siêu
âm ờ 40khz và tăng cao dòng phản hồi của nó. Sau đó chờ phản hồi,
ngay khi phát hiện nó giảm các dòng phản hồi lại. Dòng phản hồi là 1
xung có chiều rộng là tỷ lệ với khoảng cách đến đối tượng. Bằng
cách đo xung, ta hoán toán có thể tính toán khoảng cách theo cm
hoặc khoảng chác khác. nếu không phát hiện gì cả SRF05 giảm thấp
hơn dòng phản hồi của nó sau khoảng 30ms.
SRF05 cung cấp 1 xung phản hồi tỷ lệ với khoảng cách. Sau đó chia
cho 58 sẽ cho khoảng cách theo cm. Hoặc chia cho 148 sẽ cho
khoảng cách theo inch. (us/58=cm hay us/148=inch).
Sóng siêu âm được truyền đi trong không khí với vận tốc 343 m/s.
nếu một cảm biến phát ra sóng siêu âm và thu về các sóng phản xạ
đồng thời, đo được khoảng thời gian từ lúc phát đi tới lúc thu về, thì
máy tính có thể xác định được quãng đường mà sóng đã duy chuyển
trong không gian. Quãng đường di chuyển của sóng sẽ bằng 2 lần
khoảng cách từ cảm biến tới vật, theo hướng phát của sóng siêu âm.
D=V.T/2

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN


- 11 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

Trong đó:
D là khoảng cách cần đo.
V là vận tốc sóng siêu âm trong môi trường truyền sóng.
T là thời gian từ lúc sóng được phát đi đến lúc sóng được ghi nhận
lại.
Thông tin của nhà sản xuất:
Khoảng cách= thời gian(us)/58 (cm)
ở đây:
thời gian(us)= (chu kỳ timer1. get_timer1());
chu kỳ timer1 là 1us.( vì timer1 tần số thạch anh /4).
d(cm)= (4* (chia tần)* (get_timer1() – 0)/ ( click(Mhz)*58):
d(cm)= (get_timer1-0)/58.
MỘT SỐ VẤN ĐỀ KHÁC CỦA CẢM BIẾN SIÊU ÂM SRF05.
Sai số lập
Sai số lập là sai số luôn xảy ra với tất cả các thiết bị đo lường,
trong đó có cảm biến siêu âm. Sai số lập ở cảm biến siêu âm thường
rất nhỏ không đáng kể nên ta không xét dến nhiều sai số này
Hiện tượng forecasting:
Hiện tượng forecasting là hiện tượng phản xạ góc sai lẹch của
cảm biến. để có khoảng cách đúng, cảm biến siêu âm phải hướng
vuông góc với bề mặt chướng ngại vật đó. Tuy nhiên, các chướng
ngại vật không bao giờ là phẳng, mịn, nên tia phản xạ có thể không

tương ứng với góc tới. các chùm tia phản xạ này có năng lượng thấp
hơn. Tuy vậy, ở một khoảng cách nào đó, cảm biến siêu âm vẫn có
thể ghi nhận được những tín hiệu phản xạ này. Kết quả, thông số đọ
về của cảm biến siêu âm bị lệch do góc mở của cảm biến siêu âm
lớn.
Hiện tượng crosstalk:
Hiện tượng đọc chéo (crosstalk) là hiện tượng mà cảm biến siêu
âm này ghi nhận tín hiệu phản xạ hoặc trực tiếp từ cảm biến siêu âm
khác, hoặc sau quá trình sóng siêu âm truyền đi và phản xạ qua các
bề mặt quay lại cảm biến một cách không mong muốn.

3. KHỐI PIC16F877A:
SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 12 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

CÁC CHỀ ĐỘ SỬ DỤNG TRONG PIC16F877A
Hàm quản lý ccp chế độ capture;
SETUP_CCP1(mode); // Hàm nay được dủng để khởi động CCP. Bộ
đếm CCP có thể được thực hiện thông qua việc sử dụng CCP_1.
CCP hoạt động ở 3 mode.
+ capture mode : CCP copy giá trị đếm timer 1 vào CCP_x khi
cổng vào nhận xung.
+ compare mode: CCP thực hiện 1 tác vụ chỉ định trước khi
timer1 và CCP_x bằng nhau

+ PWM mode : CCP tạo xung vuông.
Ở đây ta chỉ xét chế độ capture:
Đặt CCP ở chế độ capture
CCP_CAPTURE_FE ; //Nhận cạch xuống của xung.
CCP_CAPTURE_RE ; // Nhận cạch lên của xung.
CCP_CAPTURE_DIV_4 ; // Nhận xung sau 4 xung vào
CCP_CAPTURE_DIV_16; // Nhận xung sau 16 xung vào.
#INT_CCP1 // sử dụng ngắt ccp1
ENABLE_INTERRUPTS( ); Hàm này dùng để khởi tạo ngắt.
DISABLE_INTERRUPTS( ): Hàm này dùng để tắt ngắt.
SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 13 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

Các hàm phục vụ cổng vào và ra số:
Output_high(pin_x);
Output_low(pin_x);
Input(pin_x);
Get_timer1();
Hàm này được dùng để trả về giá trị biến đếm của real time clock/
counter. Khi giá trị timer vượt quá 65535, value được đặt trở lại 0 và
đếm tiếp tục.
+ Cú pháp:
value= get_timer1()
+

START
Tham
số:
không
HIỂN THỊ LCD
+
Trị
trả
về:
16
bit
0~
TẠO XUNG KÍCH (10US) TRÊN
CHÂN TRIGGER
65535
DÒ CẠCH LÊN
+
Yêu
cầu:
không
CÓ CẠCH LÊN TRÊN
CHÂN ECHO

LƯU
ĐỒ GIẢI
THUẬT:

SET TIMER1 VỀ 0
DÒ XUNG CẠCH XUỐNG


CÓ XUNG CẠCH
XUỐNG TRÊN CHÂN
ECHO

ĐỌC GIÁ TRỊ TIMER1
HIỂN THỊ KHOẢNG CÁCH LÊN LCD

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 14 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

Chế độ 1
#INCLUDE <16F877A.H>
SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 15 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

#FUSES HS
#USE DELAY(CLOCK=4000000)
#INCLUDE <C:\Program Files\PICC\Drivers\lcd_lib_4bit.c>

FLOAT KHOANGXUNG;
int16 KETQUA;
INT8 CHUC,DV,NGAN,TRAM;
VOID MAIN()
{
lcd_init();
setup_timer_1(T1_INTERNAL | T1_DIV_BY_1);
DELAY_MS(1500);
LCD_PUTCHAR("C D D T V T 0 9 B");
LCD_PUTCMD (0XC3);
LCD_PUTCHAR ("PHUONG_QUAN");
DELAY_MS(1000);
LCD_PUTCMD (0X01);
LCD_PUTCHAR("DO_KHOANG_CACH");
LCD_PUTCMD (0XC3);
LCD_PUTCHAR("TO START!");
DELAY_MS (1000);
WHILE(1)
{
output_high(pin_c2);
delay_us(10);
output_low(pin_c2);
while ( !input(pin_c1) );
{ set_timer1(0); }
while ( input(pin_c1) );{
khoangxung = get_timer1();
if (khoangxung > 25000)
{
khoangxung = 0x0000;//bang 0
}

else {
ketqua = khoangxung/58;
}}

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 16 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

ngan= ketqua/1000;
tram=(ketqua%10)/10;
chuc=(ketqua%100)/10;
dv=ketqua%10;
ngan=ngan+48;
tram=tram+48;
chuc=chuc+48;
dv=dv+48;
LCD_PUTCMD (0X01);
LCD_PUTCHAR("KHOANG_CACH_LA");
LCD_PUTCMD(0XC0);
LCD_PUTCHAR("M=");
LCD_PUTCMD(0XC5);
LCD_PUTCHAR(ngan);
LCD_PUTCMD(0XC6);
LCD_PUTCHAR(tram);
LCD_PUTCMD(0XC7);

LCD_PUTCHAR(chuc);
LCD_PUTCMD(0XC8);
LCD_PUTCHAR(dv);
LCD_PUTCMD(0XCC);
LCD_PUTCHAR("CM");
DELAY_MS(100);
}}

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 17 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

Chế độ 2
#INCLUDE <16F877A.H>
#FUSES HS
#USE DELAY(CLOCK=4000000)
#INCLUDE <C:\Program Files\PICC\Drivers\lcd_lib_4bit.c>
FLOAT KHOANGXUNG;
int16 KETQUA;
INT8 CHUC,DV,NGAN,TRAM;
#INT_CCP1
VOID CCP1_ISR()
{
while ( !input(pin_c2) );
{ set_timer1(0); }

while ( input(pin_c2) );
{
khoangxung = get_timer1();
if (khoangxung > 25000)
{
khoangxung = 0x0000;//bang 0
}
else {
ketqua = (khoangxung)/58;
}
disable_interrupts(global);
}
}
VOID THIET_LAP()
{
lcd_init();
SETUP_TIMER_1(T1_INTERNAL);
}
VOID MAIN()
SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 18 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

{
THIET_LAP();

DELAY_MS(1500);
LCD_PUTCHAR("C D D T V T 0 9 B");
LCD_PUTCMD (0XC3);
LCD_PUTCHAR ("PHUONG_QUAN");
DELAY_MS(1000);
LCD_PUTCMD (0X01);
LCD_PUTCHAR("DO_KHOANG_CACH");
LCD_PUTCMD (0XC3);
LCD_PUTCHAR("TO START!");
DELAY_MS (1000);
WHILE(1)
{

ngan= ketqua/1000;
tram=(ketqua%10)/10;
chuc=(ketqua%100)/10;
dv=ketqua%10;
ngan=ngan+48;
tram=tram+48;
chuc=chuc+48;
dv=dv+48;
LCD_PUTCMD (0X01);
LCD_PUTCHAR("KHOANG_CACH_LA");
LCD_PUTCMD(0XC0);
LCD_PUTCHAR("M=");
LCD_PUTCMD(0XC5);
LCD_PUTCHAR(ngan);
LCD_PUTCMD(0XC6);
LCD_PUTCHAR(tram);
LCD_PUTCMD(0XC7);

LCD_PUTCHAR(chuc);
LCD_PUTCMD(0XC8);
LCD_PUTCHAR(dv);
SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 19 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

LCD_PUTCMD(0XCC);
LCD_PUTCHAR("CM");
DELAY_MS (100);
output_high(pin_c2);
delay_us(10);
output_low(pin_c2);
SETUP_CCP1(CCP_CAPTURE_RE);
ENABLE_INTERRUPTS(INT_CCP1);
ENABLE_INTERRUPTS(GLOBAL);
}}
KẾT BÀI:
Công nghệ siêu âm: bộ truyền siêu âm hoạt động dựa trên việt gửi 1
sóng âm, được phát ra từ bộ biến năng áp điện, đến bề mặt của 1
vật liệu cần đo. Bộ truyền âm đo thời gian từ lúc gửi tín hiệu cho tới
khi nhậ được tín hiệu phản hồi. thành công cho phép đo phụ thuộc
vào sóng, độ phản xạ từ vật cần đo. Những yếu tố như bụi, hơi
nước( chất lỏng) dày đặc, độ cản trở bình chứa, nhiễu loạn gây bởi
bề mặt, những chất bột và thậm chí là độ gồ ghề hoặc góc tạo bởi

chum sóng với bề mặt cần đo đều góp phần tạo những thông tin
không mong muốn ở tín hiệu phản hồi. điều cần thiết là người sử
dụng cần phải cân nhắc điều kiện hoạt động sẽ ảnh hưởng thế nào
tới sóng âm khi phát ra.
Những yếu tố quan trọng khác cần chú ý khi dùng bộ truyền âm gồm:
• Sóng âm điều kiện tiên quyết của phép đo là sóng âm phải đi
qua chất cần đo. Thông thường là không khí, nếu môi trướng là
chân không lại không phù hợp do trong chân không, không có
đủ số phân tử khí làm giảm khả năng truyền sóng
• Điều kiện bề mặt bột và những hạt bụi bẩn bám trên bề mặt
của chất lỏng có thể hấp thụ sóng âm và làm cản trở sóng phản
hồi về đầu phát
• Góc tới và góc phản xạ sóng âm cần được phát và nhận theo
đường thẳng, mặt phản xạ cần là mặt phẳng.
• Nhiệt độ hoạt động những phần mà siêu âm được đến để đo
thường làm bằng nhựa với nhiệt độ cao nhất cỡ 60°C . dĩ
nhiên, việt thay đổi nhiệt độ sẽ làm phép đo mức kém ching1
xác

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 20 -


ĐO KHOẢNG CÁCH BẰNG SÓNG SIÊU ÂM

GVHD:NGUYỄN NGỌC TÙNG

• Áp suất làm việc các thiết bị siêu âm thường không tiếp xúc với
áp suất quá cao, giá trị lớn nhất loại cảm biến này có thể chịu

được là 30psi( ~2 bar).
• Điều kiện môi trường hơi nước( chất lỏng), môi trường đọng
nước, và tạp chất có thể làm thay đổi tốc độ của sóng âm qua
môi trường không khí và ảnh hưởng rất lớn đến độ chính xác
của tín hiệu hồi đáp. Để tránh sai số do môi trường gây ra cần
gắn cảm biến vào những vị trí và môi trường có thể dự đoán
trước.
Lợi ích lớn nhất cùa công nghệ đo mức thong qua môi trường khí
như siêu âm,rada và laze là những thiết bị đo không tiếp xúc với
vật cần đo. Chỉ có một vài điểm tín hiệu cần tiếp xúc với bề mặt
chất cần đo nhầm tạo ra những tín hiệu phản hồi về cảm biến.
điều này giải thích tại sao chất lượng không khí giữa bề mặt chất
lỏng với cảm biến luôn là vấn đề và tại sao chất lượng của bề mặt
chất lỏng( hoặc bình chứa) cần luôn được tính đến khi sản xuất và
lắp đặt cảm biến vì mọi nhiễu loạn về tín hiệu sẽ góp phần vào sai
số của phép đo
như vậy, cảm biến đo mức dùng siêu âm là một giải pháp phù hợp
cho những đối tượng với những yêu cầu về hỉnh dạng, môi trường
ổ định và có thể biết trước. khi lắp đặt chúng ta không được quên
rằng bộ phát sóng siêu âm chỉ có hiệu quả khi cảm biến đón nhận
được tín hiệu phản hồi.

SVTH: ĐÌNH PHƯỚNG- MINH QUÂN

- 21 -



×