Cảm biến khoảng cách HC-SR04 – Cảm biến siêu âm

Cảm biến biến siêu âm làm việc như thế nào?

Cảm biến siêu âm sử dụng âm thanh để xác định khoảng cách giữa cảm biến và đối tượng gần nhất trong đường dẫn của nó. Làm thế nào để cảm biến siêu âm làm điều này? Cảm biến siêu âm cơ bản là cảm biến âm thanh, nhưng chúng hoạt động ở tần số trên thính giác của con người.

Cam bien sieu am lam viec nhu the nao.

Cảm biến sẽ phát ra sóng âm ở tần số cụ thể. Sau đó nó lắng nghe sóng âm cụ thể đó thoát ra khỏi vật thể và quay trở lại (Hình trên). Cảm biến theo dõi thời gian giữa việc gửi sóng âm và sóng âm thanh trở lại. Nếu bạn biết cái gì đó đi với vận tốc báo nhiều và thời gian đi thì bạn sẽ tính được khoảng cách với công thức: d = t/v

cam bien sieu am co dang hinh non

Các cảm biến siêu âm có dạng hình nón, góc của nón này thay đổi theo khoảng cách. Hình trên cho thấy mối quan hệ này. Khả năng phát hiện đối tượng của cảm biến cũng phụ thuộc vào hướng đối tượng đến cảm biến. Nếu một vật không có bề mặt phẳng với cảm biến thì có thể sóng âm thanh sẽ bật ra khỏi vật thể và không quay trở lại cảm biến.

Cảm biến khoảng cách HC-SR04

Cảm biến khoảng cách siêu âm HC-SR04 được sử dụng rất phổ biến để xác định khoảng cách vì RẺ và CHÍNH XÁC. Cảm biến sử dụng sóng siêu âm và có thể đo khoảng cách trong khoảng từ 2 -> 300 cm, với độ chính xác gần như chỉ phụ thuộc vào cách lập trình.

Sơ đồ chân HC-SR04

HC-SR04 gồm: VCC, Trig, Echo, GND. Trong đó:

VCC –> Nguồn cung cấp (thường +5V)

Trig –> chân digital (OUTPUT), đây là chân sẽ phát tín hiệu từ cảm biến.

Echo –> chân digital (INPUT), đây là chân sẽ nhận lại tín hiệu được phản xạ từ vật cản.

GND —> GND

Cách thức đo khoảng cách HC-SR04

Để đo khoảng cách, ta sẽ phát 1 xung rất ngắn (5 microSeconds – ú) từ chân Trig. Sau đó, cảm biến sẽ tạo ra 1 xung HIGH ở chân Echo đến khi nhận lại được 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. Tốc độ của âm thanh trong không khí trong điều kiện phòng là 330 m/s (hằng số vật lý), tương đương với 29,1 microSeconds/cm (106 / (330*100)). Khi đã tính được thời gian, ta sẽ chia cho 29,1 để nhận được khoảng cách.

Kết nối HC-SR04 với Arduino

Sơ đồ kết nối chân

HC-SR04Arduino
VCC5V
TrigD11
EchoD12
GNDGND

Sơ đồ dây vẽ trên Fritzing

Cảm biến khoảng cách HC-SR04

Chương trình Arduino 

Trong chương trình có dùng hàm pulseIn() để đo độ rộng của xung.

distance = t/v = int((duration/2)/29.1). Thời gian duration ta đo được là thời gian sóng đi từ HC-SR04 đến vật và từ vật về HC-SR04. Vì vậy, thời gian ta cần là duration/2.

Chương trình Arduino với thư viện NewPing

Các bạn đọc khoảng cách từ cảm biến khoảng cách HC-SR04 bằng 2 chương trình trên, rồi so sánh kết quả nhé.

Download file

Source code

HC-SR04
HC-SR04 with NewPing

Library + Datasheet

NewPing
Datasheet HC-SR04

Bài viết các bạn có thể tham khảo:

Viết một bình luận

This site uses Akismet to reduce spam. Learn how your comment data is processed.