Đo khoảnh cách bằng Cảm biến siêu âm HC SR04/SRF05

05/10/2020 Đăng bởi: pham van hiep

Đo khoảng cách sử dụng Arduino

 Mạch này sẽ giúp bạn đo khoảng cách 1 cách dễ dàng bằng cảm biến siêu âm HC-SRF04 và Arduino.  Khoảng cách sẽ được hiển thị trên 3 led 7 đoạn. Với mạch này bạn có thể đo khoảng cách lên tới 200cm và sai số chỉ 1cm. Mạch này được ứng dụng rộng rãi trong đời sống chúng ta như Bãi xe thông minh, hệ thống cảnh báo chướng ngại vật, robot thăm dò địa hình, v.v…

Mô-đun cảm biến siêu âm HC-SRF04

HC-SRF04 là mô-đun siêu âm với độ chính xác 0,3cm. Phạm vi cảm biến của mô-đun này là từ 2cm đến 5m. Dòng điện làm việc của cảm biến này là 15mA và góc đo là 15°.

HC-SR04 gồm có bốn chân:

·Vcc: Đây là chân nguồn sử dụng điện áp 5V.

·Trigger: Kích một xung 10uS cho chân này để kích hoạt truyền. Khi nhận được xung kích hoạt hợp lệ, HY-SRF04 sẽ phát ra tám xung 40KHz. Khi các xung này phản xạ trở lại thì cảm biến sẽ đo thời gian và tính được khoảng cách.

·Echo: Tại chân này, HC-SR04 phát ra tín hiệu ở mức cao có thời gian tỷ lệ với khoảng cách đo được.

·GND: Đây là chân nối đất / 0V.

 

Sơ đồ mạch

 Chân Trigger của mô đun cảm biến siêu âm được nối với chân D0 của arduino. Chân Echo thì được nối với chân D13. Công tắc S1 sử dụng để chọn đơn vị đo được hiển thị trên Led 7 đoạn và được nối với chân D4 của arduino. Nếu chân D4 được giữ ở mức cao, khoảng cách sẽ được tính bằng cm và nếu được giữ ở mức thấp, khoảng cách sẽ được tính bằng inch. Các chân D1, D2, D3 có chức năng điều khiển 3 transistor Q1, Q2 và Q3. 8 chân của Led được giao tiếp với các chân D5 đến D12 của arduino. Board arduino có thể được cấp nguồn thông qua giắc cắm 9V. Các thiết bị sử dụng nguồn 5V sẽ được lấy từ Arduino thông qua chân 5V. Các điện trở R9, R10 và R11 có chức năng giới hạn dòng ở cực B của transistor. Điện trở 330 ohm từ R1 đến R8 giới hạn dòng điện qua các đoạn của Led 7 đoạn.

Chương trình / Code

Code tham khảo

Cảm biến siêu âm SRF04

Arduino Uno R3

Các vật dụng khác các bạn Seach trong website:https://linhkiendientutphcm.com/

Giải thích chương trình

 Đầu tiên chúng ta phải có thư viện để giao tiếp với HC-SR04. Công việc gửi xung kích 10uS, chờ phản xạ và đo độ rộng của xung phản xạ v.v… đều đã được viết và thực hiện bởi thư viện. Chỉ cần một dòng lệnh usec = sonar.ping() sẽ làm cho arduino thực hiện tất cả các công việc trên và độ rộng của xung Echo trong micro giây sẽ được lưu trữ trong biến usec. Chia độ rộng xung theo uS cho 58 sẽ cho khoảng cách tính bằng cm và chia độ rộng xung theo uS cho 148 sẽ cho khoảng cách tính bằng inch. Sử dụng vòng lặp if – else để chọn đơn vị theo vị trí của công tắc chọn (S1).

 

Đo Khoảng cách và hiển thị trên LCD

 

Chương trình / Code

Code tham khảo.

Gửi bình luận của bạn:

Bạn cần hỗ trợ? Nhấc máy lên và gọi ngay cho chúng tôi - 0963631012
hoặc

  Hỗ trợ trực tuyến
popup

Số lượng:

Tổng tiền: