
Cảm biến siêu âm HC-SR04 là linh kiện gần như bắt buộc phải có khi làm các dự án robot tránh vật cản, đo mực nước, cảnh báo khoảng cách. Bài viết hướng dẫn nguyên lý hoạt động, cách đấu nối và code mẫu đo khoảng cách với Arduino.
1. Thông số kỹ thuật
- Điện áp hoạt động: 5V DC
- Dòng tiêu thụ: khoảng 15mA
- Tần số sóng siêu âm: 40kHz
- Khoảng cách đo được: 2cm – 400cm
- Góc quét hiệu quả: khoảng 15 độ
- Độ chính xác: khoảng 0.3cm
- Giao tiếp: 2 chân Trig (phát) và Echo (nhận), tín hiệu digital
2. Nguyên lý hoạt động
Cảm biến hoạt động theo nguyên lý phát và nhận sóng siêu âm phản xạ, tương tự cách dơi định vị. Vi điều khiển phát một xung 10 microgiây (µs) vào chân Trig để kích hoạt cảm biến phát sóng siêu âm. Cảm biến sẽ tự phát 8 xung sóng 40kHz, sau đó chờ sóng phản xạ về. Chân Echo sẽ giữ mức cao trong khoảng thời gian đúng bằng thời gian sóng đi và về. Khoảng cách được tính theo công thức:
Khoảng cách (cm) = thời gian (µs) x 0.0343 / 2
Trong đó 0.0343 cm/µs là tốc độ âm thanh trong không khí, chia 2 vì thời gian đo được là thời gian sóng đi và quay về.
3. Sơ đồ đấu nối với Arduino
- VCC → chân 5V trên Arduino
- GND → chân GND trên Arduino
- Trig → một chân digital bất kỳ, ví dụ chân 9
- Echo → một chân digital bất kỳ, ví dụ chân 10
4. Code mẫu đo khoảng cách
#define TRIG_PIN 9
#define ECHO_PIN 10
void setup() {
Serial.begin(9600);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
}
void loop() {
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
long duration = pulseIn(ECHO_PIN, HIGH);
float distance = duration * 0.0343 / 2;
Serial.print("Khoang cach: ");
Serial.print(distance);
Serial.println(" cm");
delay(300);
}
5. Lưu ý khi sử dụng
- Vật liệu hấp thụ âm thanh tốt như vải, mút xốp, bông có thể làm sai kết quả đo hoặc không đo được.
- Bề mặt vật cản nghiêng quá nhiều so với mặt cảm biến sẽ khiến sóng phản xạ lệch hướng, không về đúng cảm biến.
- Nên đặt delay tối thiểu khoảng 60ms giữa các lần đo để tránh nhiễu sóng phản xạ từ lần đo trước.
- Nếu cần độ bền cao, hoạt động ngoài trời hoặc môi trường ẩm, nên chọn loại chống nước như AJ-SR04M thay vì HC-SR04 thường.
Cảm biến siêu âm là linh kiện nền tảng cho rất nhiều dự án robot, đo khoảng cách, cảnh báo. Bạn có thể tìm mua cảm biến siêu âm cùng các loại cảm biến khác tại danh mục Cảm biến của Linh Kiện Điện Tử Hưng Yên.
