Если вам необходимо измерять большие расстояния, то дальномер US-015 идеально подойдет для этих целей. Принцип его работы основан на генерации звуковых импульсов и обработке отраженного сигнала. По времени прохождения волны от дальномера до препятствия и обратно можно точно определить расстояние до объекта.
В отличие от инфракрасного дальномера, на показания ультразвукового дальномера не влияет засветка от солнца или цвет объекта. Однако он не лишен недостатков. С помощью ультразвукового дальномера практически невозможно определить расстояние до очень тонких или пушистых объектов.
Подключение дальномера осуществляется с помощью стандартных проводов. Для начала измерения необходимо подать на цифровой вход логическую единицу на 10мкс. После завершения измерения, на выход будет подана логическая единица на время, пропорциональное расстоянию до объекта.
Распиновка выводов следующая: VCC - питание TRIG - цифровой вход ECHO - цифровой выход GND - земля
В примере рассматривается измерение расстояния с помощью датчика и вывод расстояния в монитор Serial-порта. Для тестирования примера использовался контроллер Smart UNO.
Что нужно | Кол-во, шт |
---|---|
Контроллер Smart UNO | 1 |
Ультразвуковой дальномер US-015 | 1 |
Провода папа-мама | 4 |
Схема подключения:
Скетч для загрузки:
#include <NewPing.h> //подключение библиотеки
#define TRIGGER_PIN 8 //пин подключения контакта Trig
#define ECHO_PIN 9 //Пин подключения контакта Echo
#define MAX_DISTANCE 700 //максимально-измеряемое расстояние
//создание объекта дальномера
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
void setup() {
Serial.begin(9600); //инициализация Serial - порта
}
void loop() {
delay(500); //задержка 500 мс
int uS = sonar.ping(); //получение отклика датчика в микросекундах
Serial.print("Ping: "); //Вывод сообщения
Serial.print(sonar.convert_cm(uS)); //перевести микросекунды в сантиметры
Serial.println("cm");
}