Mạch đo khoảng cách có code chi tiết, sử dụng cảm biến siêu âm SRF05 và vi xử lí 8051, thích hợp cho các bạn muốn tìm hiểu thêm về vi xử lí, làm bài tập lớn cho môn vi xử lí hoặc đồ án 1. trong bài có code chi tiết viết cho vi xử lí, số lượng các linh kiện cần thiết để làm mạch thật, sơ đồ mạch in và hình ảnh mạch thật sau khi đã hoàn thành. Các bạn cần làm mạch thật có thể liên hệ với mình qua email nhé.
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
TRƯỜNG ĐIỆN – ĐIỆN TỬ
KHOA TỰ ĐỘNG HÓA
ĐỒ ÁN I
ĐỀ TÀI: THIẾT KẾ MẠCH ĐO KHOẢNG CÁCH DÙNG CẢM
BIẾN SIÊU ÂM VÀ VI XỬ LÍ 8051
Giảng viên hướng dẫn: ThS Đặng Văn Mỹ Sinh viên thực hiện: Nguyễn Minh Tuấn
Mã số sinh viên: 20192146
Lớp: Tự động hóa 03 - K64
Hà Nội, tháng 8 năm 2022
Trang 22
MỤC LỤC
LỜI MỞ ĐẦU 4
CHƯƠNG I: 5
CƠ SỞ LÍ THUYẾT 5
I Giới thiệu về vi điều khiển AT89S52 5
1 Sơ lược về vi điều khiển AT89S52 5
2 Khảo sát vi điều khiển AT89S52 của hãng Intell 5
II.CÁC PHƯƠNG PHÁP ĐO KHOẢNG CÁCH 14
1.Đo thủ công 14
2 Sử dụng Lase để đo khoảng cách 14
3 Phương pháp đo khoảng cách bằng sóng siêu âm bằng cảm biến SRF05 14
III Ứng dụng của ngôn ngữ lập trình Assembler, C điều khiển 20
1 Ngôn ngữ lập trình Assembler 20
2 Ngôn ngữ lập trình C 20
CHƯƠNG II: 22
THIẾT KẾ PHẦN CỨNG 22
I Các linh kiện trong đề tài 22
1 Điện trở 22
2 Biến trở 22
3 Tụ điện 23
4 LCD 1602 23
5 Trở băng 26
II Sơ đồ nguyên lí của mạch 27
CHƯƠNG III: 28
THIẾT KẾ PHẦN MỀM 28
CHƯƠNG IV: 32
MẠCH THẬT 32
Trang 33
I Chuẩn bị linh kiện 32
II Sơ đồ mạch in 33
III Hình ảnh thực tế 33
KẾT LUẬN 34
TÀI LIỆU THAM KHẢO 35
Trang 44
LỜI MỞ ĐẦU
Ngày nay kỹ thuật vi điều khiển đã trở nên quen thuộc trong các ngành kỹ thuật và trong dân dụng Các bộ vi điều khiển có khả năng xử lý nhiều hoạt động phức tạp mà chỉ cần một chip vi mạch nhỏ, nó đã thay thế các tủ điều khiển lớn và phức tạp bằng những mạch điện gọn nhẹ, dễ dàng thao tác sử dụng
Vi điều khiển không những góp phần vào kỹ thuật điều khiển mà còn góp phần to lớn vào việc phát triển thông tin Chính vì các lý do trên, việc tìm hiểu, khảo sát vi điều khiển là điều mà các sinh viên ngành điện mà đặc biệt là chuyên ngành tự động hóa phải hết sức quan tâm Đó chính là một nhu cầu cần thiết và cấp bách đối với mỗi sinh viên, đề tài này được thực hiện chính là đáp ứng nhu cầu đó
Các bộ điều khiển sử dụng vi điều khiển tuy đơn giản nhưng để vận hành và sử dụng đươc lại là một điều rất phức tạp Phần công việc xử lý chính vẫn phụ thuộc vào con người, đó chính là chương trình hay phần mềm Nếu không có sự tham gia của con người thì hệ thống
vi điều khiển cũng chỉ là một vật vô tri Do vậy khi nói đến vi điều khiển cũng giống như máy tính bao gồm 2 phần là phần cứng và phần mềm
Trên cơ sở những kiến thức đã học và sự hướng dẫn của thầy Đặng Văn Mỹ, em xin được trình bày đồ án I với đề tài: “Thiết kế mạch đo khoảng cách dùng cảm biến siêu âm và vi
xử lí 8051”
Vì là lần đầu thiết kế đồ án nên trong quá trình thiết kế em còn nhiều thiếu sót, kính mong thầy cô thông cảm Em rất mong nhận được những ý kiến đóng góp từ thầy cô để em trau dồi thêm nhiều kinh nghiệm và kiến thức
Em xin chân thành cảm ơn GVHD là ThS Đặng Văn Mỹ đã tận tình hướng dẫn để em có thể hoàn thiện đồ án này
Trang 55
CHƯƠNG I:
CƠ SỞ LÍ THUYẾT
I Giới thiệu về vi điều khiển AT89S52
1 Sơ lược về vi điều khiển AT89S52
- Là một vi điều khiển 8 bit, chế tạo theo công nghệ CMOS
- 4KB bộ nhớ, có thể lập trình lại nhanh, có khả năng ghi xóa tới 1000 chu kì
- Tần số hoạt động từ 0 Hz đến 24 MHz
- 3 mức khóa bộ nhớ lập trình
- 2 bộ Timer/Couter 16 bit
- 128byte RAM nội
- 4 Port xuất/nhập (I/O) 8 bit
- Giao tiếp nối tiếp
- 64 KB vùng nhớ mã ngoài
- 64 KB vùng nhớ dữ liệu ngoài
- Xử lí Boolean (hoạt động trên bit đơn)
- 210 vị trí nhớ có thể định vị bit
- 4µs cho hoạt động nhân hoặc chia
2 Khảo sát vi điều khiển AT89S52 của hãng Intell
2.1 Sơ đồ chân của vi điều khiển AT89S52
a) Sơ đồ chân
AT89S52 thuộc họ 8051 có 40 chân cho các chức năng khác nhau như vào ra I/O, đọc RD, ghi WR, địa chỉ, dữ liệu và ngắt
Trang 6Chân XTAL1 và XTAL2:
89S52 có một bộ giao động trên chip nhưng nó yêu cầu có một xung đồng hồ ngoài để chạy
nó Bộ giao động thạch anh thường xuyên nhất được nối tới các chân đầu vào XTAL1 (chân
Trang 7Chân EA:
Tín hiệu vào EA ở chân 31 thường được mắ 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):
Trang 88
Tín hiệu xuất ra từ vi điều khiển để điều khiển đọc bộ nhớ chương trình Nếu sử dụng bộ nhớ chương trình ngoài thì PSEN được nối với OE của ROM, nếu không sử dụng thì bỏ trống chân này
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ập hoặ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àm IO; 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 giao tiế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
▪ 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
2.2 Sơ đồ khối
a) Sơ đồ
Trang 9- 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 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
Trang 1010
- Bản đồ bộ nhớ Data trên chip như sau:
- Hai đặc tính cần chú ý là:
+ Các thanh ghi và các port xuất nhập đã được định vị (xác định) trong bộ nhớ và
có thể truy xuất trực tiếp giống như các địa chỉ bộ nhớ khác
+ Ngăn xếp bên trong RAM nội nhỏ hơn so với RAM ngoại như trong các bộ Microcontroller khác
- RAM bên trong 89S52 được phân chia như sau:
▪ Các bank thanh ghi có địa chỉ từ 00H đến 1FH
▪ RAM địa chỉ hóa từng bit có địa chỉ từ 20H đến 2FH
▪ RAM đa dụng từ 30H đến 7FH Từ hình vẽ cho thấy 80 byte đa dụng chiếm các địa chỉ
từ 30H đến 7FH, 32 byte dưới từ 00H đến 1FH cũng có thể dùng với mục đích tương tự (mặc dù các địa chỉ này đã có mục đích khác).Mọi địa chỉ trong vùng RAM đa dụng đều có thể truy xuất tự do dùng kiểu địa chỉ trực tiếp hoặc gián tiếp
▪ Các thanh ghi chức năng đặc biệt 80H đến FFH
+ Vùng RAM đa dụng:
Trang 11+ RAM có thể truy xuất từng bit:
AT89C51 chứa 256 bit được địa chỉ hóa, trong đó có 128 bit có chứa các byte chứa các địa chỉ từ 20H đến 2FH và các bit còn lại chứa trong nhóm thanh ghi có chức năng đặc biệt Ý tưởng truy xuất từng bit bằng phần mềm là các đặc tính mạnh của microcontroller
xử lý chung Các bit có thể được đặt, xóa, AND, OR… với 1 lệnh đơn Đa số các microcontroller xử lý đòi hỏi một chuỗi lệnh đọc - sửa - ghi để đạt được mục đích tương
tự Ngoài ra các port cũng có thể truy xuất được từng bit, 128 bit có chứa các byte có địa chỉ từ 00H -1FH cũng có thể truy xuất như các byte hoặc các bit phụ thuộc vào lệnh được dùng
+ Các bank thanh ghi: 32 byte thấp của bộ nhớ nội được dành cho các bank thanh
ghi Bộ lệnh 8951 hổ trợ 8 thanh ghi có tên là R0 - R7 và theo mặc định sau khi reset hệ thống, các thanh ghi này có các địa chỉ từ 00H - 07H
c) Các thanh ghi có chức năng đặc biệt
Các ô nhớ có địa chỉ 80H, 90H, A0h, B0h: Là các Port của 89S52 bao gồm port 0 có địa chỉ là 80H, Port 1 có địa chỉ 90H, Port 2 có địa chỉ A0H và Port 3 có địa chỉ B0H Tất cả các Port này có thể truy xuất từng bit nên rất thuận tiện trong điều khiển IO
● Ô nhớ có địa chỉ 81H: Là thanh ghi con trỏ ngăn xếp SP (stack pointer) - có chức năng quản lý địa chỉ của bộ nhớ ngăn xếp Bộ nhớ ngăn xếp dùng để lưu trữ dữ liệu tạm thời trong quá trình vi điều khiển thực hiện chương trình
● Ô nhớ có địa chỉ 82h và 83h: Là 2 thanh ghi dpl (byte thấp) có địa chỉ là 82H và dph (byte cao) có địa chỉ 83H Hai thanh ghi này có thể sử dụng độc lập nếu lưu trữ dữ liệu và
có thể kết hợp lại tạo thành 1 thanh ghi 16 bit có tên là dptr và gọi là con trỏ dữ liệu – được dùng để lưu địa chỉ 16 bit khi truy xuất dữ liệu bên ngoài
● Ô nhớ có địa chỉ 87H: Là thanh ghi pcon (power control) có chức năng điều khiển công xuất khi vi điều khiển làm việc hay ở chế độ chờ
● Các ô nhớ có địa chỉ từ 88H đến 8DH: Là các thanh ghi phục vụ cho 2 timer/ counter T1, T0 Thanh ghi TH0 và TL0 kết hợp lại tạo thành 1 thanh ghi 16 bit có chức năng lưu trữ
Trang 1212
xung đếm cho timer/counter T0 Tương tự cho 2 thanh ghi TH1 và TL1 kết hợp lại lưu trữ xung đếm cho timer/counter T1 Khả năng lưu trữ số lượng xung đếm là 65536 xung Việc khởi động timer được SET bởi Timer Mode (TMOD) ở địa chỉ 89H và thanh ghi điều khiển Timer (TCON) ở địa chỉ 88H Chỉ có TCON được địa chỉ hóa từng bit
● Các ô nhớ có chức năng 98H đến 99H: Là 2 thanh ghi scon và sbuf: scon (series control): thanh ghi điều khiển truyền dữ liều nối tiếp Sbuf (series buffer): thanh ghi đệm dữ liệu truyền nối tiếp
● Các ô nhớ có địa chỉ từ A8H đến B9H: Là 2 thanh ghi IE và IP – thanh ghi IE (interrupt enable): thanh ghi điều khiển cho phép / không cho phép ngắt IP (interrupt priority): thanh ghi điều khiển ưu tiên ngắt
● Thanh ghi trạng thái chương trình (PSW: Program Status Word): Thanh ghi trạng thái chương trình có địa chỉ D0H được tóm tắt như sau:
Chức năng từng bit trạng thái chương trình
- Cờ Carry CY (Carry Flag): Cờ nhớ có tác dụng kép Thông thường nó được dùng cho các lệnh toán học: C=1 nếu phép toán cộng có sự tràn hoặc phép trừ có mượn và ngược lại C=0 nếu phép toán cộng không tràn và phép trừ không có mượn
Trang 1313
- Cờ Carry phụ AC (Auxiliary Carry Flag): Khi cộng những giá trị BCD (Binary Code Decimal), cờ nhớ phụ AC được set nếu kết quả 4 bit thấp nằm trong phạm vi điều khiển 0AH - 0FH Ngược lại AC=0
- Cờ 0 (Flag 0): Cờ 0 (F0) là 1 bit cờ đa dụng dùng cho các ứng dụng của người dùng Những bit chọn bank thanh ghi truy xuất:
- RS1 và RS0 quyết định dãy thanh ghi tích cực Chúng được xóa sau khi reset hệ thống và được thay đổi bởi phần mềm khi cần thiết
Tùy theo RS1, RS0 = 00, 01, 10, 11 sẽ được chọn Bank tích cực tương ứng là Bank
0, Bank1, Bank2, Bank3
A chứa 10101101B thì bit P set lên 1 để tổng số bit 1 trong A và P tạo thành số chẵn Bit Parity thường được dùng trong sự kết hợp với những thủ tục của Port nối tiếp để tạo ra bit Parity trước khi phát đi hoặc kiểm tra bit Parity sau khi thu
● Thanh ghi B: Thanh ghi B có địa chỉ F0H được dùng cùng với thanh ghi A để thực hiện các phép toán nhân chia Lệnh MUL AB: sẽ nhận giá trị không dấu 8 bit với 8 bit trong hai thanh ghi A và B, rồi trả về kết quả 16 bit trong A (byte cao) và B(byte thấp) Lệnh DIV AB: lấy giá trị trong thanh ghi A chia cho giá trị trong thanh ghi B, kết quả nguyên lưu trong A, số dư lưu trong B
Trang 1414
● Con trỏ Ngăn xếp SP (Stack Pointer): Khi thực hiện các chương trình, các bộ vi xử lý và các bộ vi điều khiển luôn cần một vùng nhớ gọi là ngăn xếp dùng để cất các thông số của các chương trình chính khi làm việc với các chương trình con
Ngăn xếp là một cấu trúc một chiều, các phần tử được cất vào lấy ra theo nguyên tắc vào sau ra trước Phần tử cất vào ngăn xếp cuối cùng gọi là đỉnh ngăn xếp và sẽ được lấy ra đầu tiên
Thanh ghi SP luôn trỏ vào đỉnh ngăn xếp, nội dung của nó sẽ tự động thay đổi khi thực hiện các lệnh tác động đến ngăn xếp như: PUSH, POP, CALL…
Vùng ngăn xếp của 8051 được lưu giữ trong RAM nội và giá trị mặc định của SP (khi động
hệ thống) là 07h Điều này có nghĩa vùng ngăn xếp sẽ từ 08h – 7Fh vì SP sẽ được tăng lên một trước khi cất dữ liệu vào ngăn xếp Như vậy nếu ta không thay đổi giá trị khởi đầu của
SP thì các dãy thanh ghi 1,2 và 3 sẽ không được phép sử dụng Để khởi đầu cho SP đặt ngăn xếp tại địa chỉ bắt đầu 60h ta có thể dùng lệnh: MOV SP, #5FH
Lệnh trên sẽ đưa vào SP giá trị 5Fh, và do đó vùng ngăn xếp được giới hạn là 32Byte bắt đầu từ địa chỉ 60h – 7Fh
II.CÁC PHƯƠNG PHÁP ĐO KHOẢNG CÁCH
1.Đo thủ công
Đo thủ công bằng các loại thước đo đơn giản, độ chính xác khá cao nhưng phụ thuộc nhiều vào người đo
2 Sử dụng Lase để đo khoảng cách
Đo khoảng cách dựa trên nguyên lý điều biến pha
Nguyên lý chung của phương pháp điều biến pha là đo độ khác biệt giữa pha của ánh sáng phát ra với ánh sáng nhận được sau khi phản hồi từ vật Tuy nhiên không có một loại photodetector nào có thể đáp ứng được với sự thay đổi của tần số trực tiếp của ánh sáng lên đến 100THz Vì thế phương pháp điều biến pha sử dụng tần số trực tiếp của ánh sáng không thể nào tạo ra được Do đó để có thể dễ dàng đo được thì ta phải điều biến tần số ánh sáng theo một tần số thấp hơn mà các linh kiện thu quang học và mạch điện tử còn có thể đáp ứng được Vì thế dùng phương pháp điều biến sóng sin để điều khiển laser diot và sử dụng photodetector để thu ánh sáng laser phản hồi
3 Phương pháp đo khoảng cách bằng sóng siêu âm bằng cảm biến SRF05
Siêu âm là dạng sóng âm được ứng dụng rộng rãi trong việc đo khoảng cách và định vị vật thể Báo cáo giới thiệu một phương pháp đo khoảng cách và xác định vị trí vật thể bằng sóng siêu âm với sự kết hợp phương pháp xác suất Bayes trong xử lý tín hiệu Phương pháp
Trang 1515
sử dụng công thức xác suất toàn phần Bayes để đánh giá khả năng không gian bị chiếm bởi vật thể, và tỉ lệ chiếm giữa các ô lưới trên bản đồ nhằm xác định vị trí xác suất cao nhất có vật thể Sóng siêu âm được truyền đi trong không khí với vận tốc khoảng 343m/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
đã di 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 chướng ngoại vật, theo hướng phát của sóng siêu âm
3.1 Cảm biến SRF05
SRF05 là một bước phát triển từ SRF04, được thiết kế làm tăng tính linh hoạt, tăng phạm
vi, ngoài ra còn giảm bớt chi phí SRF05 là hoàn toàn tương thích với SRF04
Khoảng cách được tăng từ 3 – 4m
Cảm biến siêu âm SRF 05
SRF05 cho phép sử dụng một chân duy nhất cho cả kích hoạt và phản hồi, do đó tiết kiệm giá trị trên chân điều khiển Khi chân chế độ không kết nối, thì SRF05 hoạt động riêng biệt chân kích hoạt và chân hồi tiếp, như SRF04 SRF05 bao gồm một thời gian trễ trước khi xung phản hồi để mang lại điều khiển chậm hơn hẳn như bộ điều khiển thời gian cơ bản Stamps và Picaxe để thực hiện các xung lệnh
Cảm biến siêu âm SRF05 có 5 chân, bao gồm:
+ Chân cấp nguồn VCC: 5V
+ Chân Trigger: Chân kích hoạt sóng siêu âm
Trang 1616
+ Chân Echo: Sử dụng để nhận biết có sóng siêu âm phản hồi
+ Chân Out: Chân chọn chế độ
+ Chân GND: Cấp nguồn 0V
Cảm biến SRF05 thiết lập 2 mode hoạt động khác nhau thông qua các chân điều khiển MODE Nối hoặc không nối chân MODE xuống GND cho phép cảm biến thông qua giao tiếp dùng một chân hay 2 chân I/O Trong bài này ta sẽ sử dụng MODE 1
Cấu hình SRF05 mode 1
-Mode 1: Tách chân TRIGGER & ECHO dùng riêng:
Trong mode này SRF05 sử dụng cả hai chân TRIGGER và ECHO cho việc giao tiếp với CPU Để sử dụng mode này ta chỉ cần đẻ chống chân Mode (chân Out) của module, điện trở bên trong module sẽ kéo chân pin lên mức 1
Để điều khiển SRF05, ta chỉ cần cấp cho chân TRIGGER một xung điều khiển với độ rộng tối thiểu 10uS Sau đó một khoảng thời gian, đầu phát song siêu âm sẽ phát ra song siêu
âm, vi xử lý tích hợp trên module sẽ xác định thời điểm phát song siêu âm và thu song siêu
âm Vi xử lý tích hợp này sẽ đưa kết quả thu được ra chân ECHO Độ rộng xung vông tại chân ECHO tỉ lệ với khoảng cách từ cảm biến đến vật thể
-Mode 2: Tách chân TRIGGER & ECHO dùng chung (không dùng ở bài này)
3.2 Hoạt động phát và nhận phản hồi song âm cơ bản của SRF05
Nguyên tắc cơ bản của sonar: là tạo ra một xung âm thanh điện tử và sau đó lắng nghe tiếng vọng tạo ra khi các làn sóng âm thanh số truy cập một đối tượng và được phản xạ trở
Trang 1717
lại Để tính thời gian cho phản hồi trở về, một ước tính chính xác có thể được làm bằng khoảng cách tới đối tượng Xung âm thanh tạo ra bởi SRF05 là siêu âm, nghĩa là nó ở trên phạm vi nhận xét của con người Trong khi tần số thấp hơn có thể được sử dụng trong các loại ứng dụng, tần số cao hơn thực hiện tốt hơn cho phạm vi ngắn, nhu cầu độ chính xác cao
Phản xạ sóng – nguyên lí cơ bản của cảm biến siêu âm
- Một số đặc điểm khác của cảm biến siêu âm SRF05
Mức độ của sóng âm hồi tiếp phụ thuộc vào cấu tạo của đối tượng và góc phản xạ của nó
Phản xạ sóng với 1 số vật
Một đối tượng mềm có thể cho ra tín hiệu phản hồi yếu hoặc không có phản hồi Một đối tượng ở một góc cân đối thì mới có thể chuyển thành tín hiệu phản chiếu một chiều cho cảm biến nhận
- Vùng phát hiện của SRF05
Nếu ngưỡng để phát hiện đối tượng được đặt quá gần với cảm biến, các đối tượng trên một đường có thể bị va chạm tại một điểm mù Nếu ngưỡng này được đặt ở một khoảng cách quá lớn từ các cảm biến thì đối tượng sẽ được phát hiện mà không phải là trên một đường va chạm