Bạn đã bao giờ nghe về Cảm Biến Siêu âm HC-SR04 (Ultrasonic Sensor) chưa? Đây là một loại cảm biến rất phổ biến và được sử dụng rộng rãi để xác định khoảng cách. Đặc điểm nổi bật của cảm biến HC-SR04 là giá rẻ và độ chính xác cao. Cảm biến này sử dụng sóng siêu âm và có thể đo khoảng cách từ 2 đến 300cm, với độ chính xác phụ thuộc vào cách lập trình.

Nguyên lý hoạt động của Cảm Biến Siêu âm HC-SR04

Cảm biến siêu âm HC-SR04 sử dụng nguyên lý phản xạ sóng siêu âm. Nó gồm hai module: một module phát ra sóng siêu âm và một module thu sóng siêu âm phản xạ về. Ban đầu, cảm biến sẽ phát ra một sóng siêu âm với tần số 40kHz. Nếu có chướng ngại vật trên đường đi, sóng siêu âm sẽ được phản xạ lại và tác động lên module thu sóng. Bằng cách đo thời gian từ lúc phát đến lúc nhận sóng, ta có thể tính được khoảng cách từ cảm biến đến chướng ngại vật.

Công thức tính khoảng cách là:

Khoảng cách = (thời gian * vận tốc âm thanh (340 m/s)) / 2

Thông số kỹ thuật Cảm Biến Siêu âm HC-SR04

  • Điện áp: 5V DC
  • Dòng hoạt động: < 2mA
  • Mức cao: 5V
  • Mức thấp: 0V
  • Góc tối đa: 15 độ
  • Khoảng cách: 2cm – 450cm (4.5m)
  • Độ chính xác: 3mm

Điều khiển Cảm Biến Siêu âm HC-SR04 bằng Arduino

Để điều khiển Cảm Biến Siêu âm HC-SR04 bằng Arduino, bạn có thể sử dụng code sau:

/*
* Kết nối:
          HCSR04
          Arduino
          VCC                           5V
          GND                           GND
          TRIG                          8
          ECHO                          7
  Nạp code mở Serial Monitor chọn No line ending, baud 9600.
*/
const int trig = 8;    // chân trig của HC-SR04
const int echo = 7;    // chân echo của HC-SR04

void setup()
{
  Serial.begin(9600);   // giao tiếp Serial với baudrate 9600
  pinMode(trig,OUTPUT);  // chân trig sẽ phát tín hiệu
  pinMode(echo,INPUT);   // chân echo sẽ nhận tín hiệu
}

void loop()
{
  unsigned long duration; // biến đo thời gian
  int distance;           // biến lưu khoảng cách

  /* Phát xung từ chân trig */
  digitalWrite(trig,0);  // tắt chân trig
  delayMicroseconds(2);
  digitalWrite(trig,1);  // phát xung từ chân trig
  delayMicroseconds(5);  // xung có độ dài 5 microSeconds
  digitalWrite(trig,0);  // tắt chân trig

  /* Tính toán thời gian */
  // Đo độ rộng xung HIGH ở chân echo.
  duration = pulseIn(echo,HIGH);
  // Tính khoảng cách đến vật.
  distance = int(duration/2/29.412);

  /* In kết quả ra Serial Monitor */
  Serial.print(distance);
  Serial.println("cm");
  delay(200);
}  

Ảnh sản phẩm

Cảm Biến Siêu Âm HC-SR04

Trên tay Cảm Biến Siêu Âm HC-SR04

Cảm Biến Siêu Âm HC-SR04

Cảm Biến Siêu Âm HC-SR04

Cảm Biến Siêu Âm HC-SR04

By Admin