Схема подключения указана на рисунке выше. Отметим, что ультразвуковой дальномер HC-SR04 имеет диапазон измерения от 2 см до 400 см, работает при температурах от 0° до 60° С. Точность измерения составляет ± 1 см, рабочее напряжение датчика до 5,5 В. Для начала мы используем простой скетч, без использования библиотеки Ultrasonic. После подключения к Arduino дальномера HC-SR04 загрузите следующий скетч:
Скетч для подключения датчика hc-sr04 к Arduino
================================================================
int trigPin = 9; // назначаем имя для Pin8
int echoPin = 8; // назначаем имя для Pin9
void setup() {
Serial.begin (9600); // подключаем монитор порта
pinMode(trigPin, OUTPUT); // назначаем trigPin (Pin8), как выход
pinMode(echoPin, INPUT); // назначаем echoPin (Pin9), как вход
}
void loop() {
int duration, cm; // назначаем переменную "cm" и "duration" для показаний датчика
digitalWrite(trigPin, LOW); // изначально датчик не посылает сигнал
delayMicroseconds(2); // ставим задержку в 2 ммикросекунд
digitalWrite(trigPin, HIGH); // посылаем сигнал
delayMicroseconds(10); // ставим задержку в 10 микросекунд
digitalWrite(trigPin, LOW); // выключаем сигнал
duration = pulseIn(echoPin, HIGH); // включаем прием сигнала
cm = duration / 58; // вычисляем расстояние в сантиметрах
Serial.print(cm); // выводим расстояние в сантиметрах
Serial.println(" cm");
delay(1000); // ставим паузу в 1 секунду
}
================================================================
Пояснения к коду:
Для подключения выходов Trig и Echo на датчике можно использовать любые цифровые входы на Ардуино;
Команда delayMicroseconds() останавливает выполнение программы на заданное количество микросекунд (в 1 секунде 1 000 000 микросекунд).
Чтобы получить значение датчика в миллиметрах следует использовать следующую формулу для расчета: cm = duration / 5,8;.
Библиотека Ultrasonic.h для УЗ датчика
Представленный скетч работает без библиотеки, поэтому в коде многовато строчек. Мы воспользуемся библиотекой для ультразвуковых дальномеров, что позволит нам значительно упростить скетч. Для начала установите библиотеку Ultrasonic (инструкция по установке библиотек в Arduino IDE) и загрузите следующую программу в Ардуино. Ссылка на скачивание архива со скетчами и библиотекой Ultrasonic.h — здесь.
Скетч с использованием библиотеки Ultrasonic.h
================================================================
#include <Ultrasonic.h>// подключаем библиотеку Ultrasonic
Ultrasonic ultrasonic(9,8); // назначаем выходы для Trig и Echo
void setup() {
Serial.begin(9600); // подключаем монитор порта
}
void loop {
Serial.print(ultrasonic.Ranging(CM)); // выводим расстояние в сантиметрах
Serial.println("cm"); // выводим надпись "cm"
delay(1000); // ставим паузу в 1 секунду
}
================================================================
Пояснения к коду:
Команда Ultrasonic ultrasonic(8,9); назначает имя для нашего датчика «ultrasonic» и назначаем выходы на Ардуино для Trig и Echo.
При необходимости получить второй дальномер к Arduino Nano можно ему задать любое имя, например, Ultrasonic ultrasonic2(11,12);.
#arduino #сенсор #ультрозвук
Нет комментариев