Все для Arduino в одном месте
Адрес: Павлодар
Телефон: +7 705 336-36-03

whatsapp +7 705 336-36-03

Сравнение ультразвуковых датчиков HC-SR04 и HY-SRF05

На первый взгляд, между этими двумя датчиками есть только небольшие технические различия (см. таблицу):

 

  HC-SR04 HY-SRF05
Рабочее напряжение 5 В постоянного тока 5 В постоянного тока
Ток покоя < 2мА <2 мА
Выходной сигнал: высокий уровень 5В, низкий уровень 0В высокий уровень 5В, низкий уровень 0В
Угол распространения (эффективный угол) < 15 градусов < 15 градусов
Диапазон измеряемого расстояния 2см-450см 2см-450см
Разрешающая способность (точность) ~3 мм ~2 мм
Входной сигнал запуска:  10мс TTL импульс 10мс TTL импульс
Эхосигнал выходной сигнал TTL PWL выходной сигнал TTL PWL
Pins
  1. VCC > плюс питания (+ 5 В)
  2. trig(T) > вход сигнала триггерного управления
  3. echo(R) > выход эхо-сигнала
  4. GND > минус питания
  1. VCC > плюс питания (+ 5 В)
  2. trig(T) > вход сигнала триггерного управления
  3. echo(R) > выход эхо-сигнала
  4. OUT > цифровой выход есть/нет
  5. GND > минус питания

На первый взгляд, как видно из таблицы, разница не такая уж и большая.

Теперь сравним возможные схемы подключения:

HC-SR04 HY-SRF05
 Схема подключения HC-SR04  Схема подключения HY-SRF05

Код для работы с датчиками HC-SR04 и HY-SRF05

#define PIN_TRIG 5
#define PIN_ECHO 4

long duration, cm;

void setup() {

  // Инициализируем взаимодействие по последовательному порту
  Serial.begin (9600);
  //Определяем вводы и выводы
  pinMode(PIN_TRIG, OUTPUT);
  pinMode(PIN_ECHO, INPUT);
}

void loop() {

  // Сначала генерируем короткий импульс длительностью 2-5 микросекунд.

  digitalWrite(PIN_TRIG, LOW);
  delayMicroseconds(5);
  digitalWrite(PIN_TRIG, HIGH);

  // Выставив высокий уровень сигнала, ждем около 10 микросекунд. 
//В этот момент датчик будет посылать сигналы с частотой 40 КГц. delayMicroseconds(10); digitalWrite(PIN_TRIG, LOW); // Время задержки акустического сигнала на эхолокаторе. duration = pulseIn(PIN_ECHO, HIGH); // Теперь осталось преобразовать время в расстояние cm = (duration / 2) / 29.1; Serial.print("Расстояние до объекта: "); Serial.print(cm); Serial.println(" см."); // Задержка между измерениями для корректной работы скеча delay(250); }

 

  • Сравнение ультразвуковых датчиков HC-SR04 и HY-SRF05