Здравствуйте, уважаемые читатели! В прошлой статье я рассказывал как выводить измеренное ультразвуковым датчиком HC-SR04 расстояние на светодиодный дисплеем TM1637. В данной статье проведем эксперимент на природе и определим точность измерения датчика HC-SR04 на различных расстояниях, при использовании двух самых популярных для работы с датчиком библиотек: Ultrasonic и NewPing . Узнаем, какая из двух библиотек более точная. А так же определим максимальную дальность действия датчика HC-SR04.
Подготавливаем площадку для испытания. В качестве препятствия будет глухой металлический забор. А расстояние будем замерять с помощью размотанной рулетки.
Хотя максимально возможная дальность обнаружения препятствия для данного датчика составляет 5 метром, размотаем рулетку на 6 метров.
Тест датчика HC-SR04 с библиотекой Ultrasonic
В начале протестируем библиотеку Ultrasonic , воспользовавшись скетчем из прошлой статьи. Все ссылки на скетчи будут в конце этой статьи.
Установим макетную плату на дистанции в 1 метр. Т.к. у нас тест на природе, питать Arduino UNO и, следовательно, всю схему, я буду от повербанка. Дисплей показывает расстояние в 102 см.
На самом деле, тут может быть не только погрешность измерения датчика и используемой библиотеки, но и то, что датчик располагается не строго перпендикулярно забору.
Отступаем от забора на 2 метра, и датчик показывает уже 210 см.
При отступе на 3 метра, датчик показывает 319 см.
А вот после 357 см, что в реальности составляет около 335 см, датчик уже перестает измерять расстояние и на светодиодном индикаторе застывает цифра 357 см, на какое бы расстояние мы не отходили.
Таким образом, максимальное значение, определяемое датчиком при использовании библиотеки Ultrasonic составляет 357 см. Или в реальности 330-340 см.
Тест датчика HC-SR04 с библиотекой NewPing
Теперь испытаем на дальность библиотеку NewPing. Скетч для ее работы с дисплеем TM1637 будет выглядеть следующим образом:
Значение MAX_DISTANCE установлено на максимум - 500 см.
При дистанции в 1 метр, дисплей показывает 99 см.
При дистанции в 2 метра на дисплее 203 см.
На дистанции в 3 метра, датчик намерял 313 см.
На расстоянии в 4 метра, получаем показания в 425 см. Напоминаю, что при использовании библиотеки Ultrasonic максимальные показания датчика составляли 357 см.
Максимальное значение, которое можно получить, используя датчик HC-SR04 совместно с библиотекой NewPing, составляет 500 см. На фото ниже 498 см, т.к. на такой дистанции показания не стабильны и меняются в обе стороны. Что в реальности составляет около 470 см.
При дальнейшем удалении число на дисплее не застывает на каком-то значении, как в случае использования библиотеки Ultrasonic, а сбрасывается на 0.
Таким образом, мы установили, что при использовании с датчиком HC-SR04 библиотеки Ultrasonic максимальное измеряемое расстояние составляет 357 см . Или в реальности 330-340 см. А при использовании библиотеки NewPing максимальное измеряемое расстояние составляет 500 см . Или в реальности около 470 см .
Точность измерения расстояния при использовании библиотеки NewPing немного выше, чем при использовании библиотеки Ultrasonic.
Ссылка на скетч с библиотекой Ultrasonic - https://yadi.sk/d/h5FbKMSWEattDw.
Ссылка на скетч с библиотекой NewPing - https://yadi.sk/d/ncOW8RjxWXUr5Q.
Ссылка на библиотеку Ultrasonic - https://github.com/ErickSimoes/ Ultrasonic.
Ссылка на библиотеку NewPing - https://playground.arduino.cc/Code/ NewPing/.
_________________________________________________________
Спасибо, что дочитали до конца! Если статья понравилась, нажмите, пожалуйста, соответствующую кнопку. Если интересна тематика электроники и различных электронных самоделок, подписывайтесь на канал. До встречи в новых статьях!