Подключение HC-SR04 к Arduino
Мы рассматриваем сегодня подключение HC-SR04 к Arduino не случайно. Этот ультразвуковой датчик расстояния может понадобиться во многих проектах (особенно робототехнических). Его часто применяют для получения информации о размерах предметов, моделировании различных карт и передвижений по объезду препятствий, парковочных механизмов. Он легок в установке и настройке, бюджетен по цене, надежен в работе.
Любопытен тот факт, что этот модуль использует акустическое излучение при помощи инфракрасных лучей для вычисления расстояния (по принципу сонара). Делает он это быстро и точно, а диапазон измерений составляет от 2 до 400 см, что не мало. Сенсор не «боится» солнечных лучей и ультрафиолета, не зависит от электромагнитных шумов.
Традиционно поговорим о технических параметрах устройства:
Распиновка прибора показана ниже:
В дальнейшем можно видоизменить схему, усложнив ее – добавить светодиоды, резисторы и другие аппаратные компоненты – все зависит от ваших целей и возможностей. Экспериментируйте!
Ну а теперь можно переходить к программированию. Прописываем код:
Если нужно расширить возможности – придется найти и скачать специализированное ПО – библиотеку NewPing, например, по нашей ссылке: http://robocraft.ru/files/sensors/Ultrasonic/HC-SR04/ultrasonic-HC-SR04.zip
Меняем скетч:
Надеемся, с нашей помощью у вас все получится – удачных проектов и компиляций!
Любопытен тот факт, что этот модуль использует акустическое излучение при помощи инфракрасных лучей для вычисления расстояния (по принципу сонара). Делает он это быстро и точно, а диапазон измерений составляет от 2 до 400 см, что не мало. Сенсор не «боится» солнечных лучей и ультрафиолета, не зависит от электромагнитных шумов.
Традиционно поговорим о технических параметрах устройства:
- бесконтактный тип;
- напряжение: +5V;
- рабочая сила тока: 15мА;
- угол измерений: 30° (эффективный обзорный угол: < 15°);
- сенсорное разрешение и точность: 0,3 см;
- сила тока покоя: < 2 мА;
- габариты: 45 x 20 x 15 мм.
Распиновка прибора показана ниже:
Ультразвуковой дальномер HC-SR04 к Ардуино
Для реализации несложного проекта и схемы подключения нам понадобится следующее «железо»: микроконтроллер Ардуино Uno (можно Nano, Mega), модуль датчика, макетная плата, набор соединительных проводов.В дальнейшем можно видоизменить схему, усложнив ее – добавить светодиоды, резисторы и другие аппаратные компоненты – все зависит от ваших целей и возможностей. Экспериментируйте!
Ну а теперь можно переходить к программированию. Прописываем код:
/*Ультразвуковой датчик расстояния и Arduino – полный гайд
Распиновка ультразвукового датчика расстояния:
VCC: +5V
Trig : Триггер (INPUT) – 11 пин
Echo: Эхо (OUTPUT) – 12 пин
GND: GND
*/
int trigPin = 11; //Триггер – зеленый проводник
int echoPin = 12; //Эхо – желтый проводник
long duration, cm, inches;
void setup() {
//Serial Port begin
Serial.begin (9600);
//Инициализирум входы и выходы
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop()
{
// Датчик срабатывает и генерирует импульсы шириной 10 мкс или больше
// Генерируем короткий LOW импульс, чтобы обеспечить «чистый» импульс HIGH:
digitalWrite(trigPin, LOW);
delayMicroseconds(5);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Считываем данные с ультразвукового датчика: значение HIGH, которое
// зависит от длительности (в микросекундах) между отправкой
// акустической волны и ее обратном приеме на эхолокаторе.
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
// преобразование времени в расстояние
cm = (duration/2) / 29.1;
inches = (duration/2) / 74;
Serial.print(inches);
Serial.print("in, ");
Serial.print(cm);
Serial.print("cm");
Serial.println();
delay(250);
}
Если нужно расширить возможности – придется найти и скачать специализированное ПО – библиотеку NewPing, например, по нашей ссылке: http://robocraft.ru/files/sensors/Ultrasonic/HC-SR04/ultrasonic-HC-SR04.zip
Меняем скетч:
#include <NewPing.h>
#define TRIGGER_PIN 12
#define ECHO_PIN 11
#define MAX_DISTANCE 200
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // Настройка пинов и максимального расстояния.
void setup() {
Serial.begin(9600);
}
void loop() {
delay(50);
unsigned int uS = sonar.ping_cm();
Serial.print(uS);
Serial.println(“cm”);
}
Надеемся, с нашей помощью у вас все получится – удачных проектов и компиляций!
Похожие новости
Сегодня мы поговорим о том, как подключить ESP32 к Ардуино. Данная инструкция больше подходит для Windows девайсов (хотя и для других операционных систем типа...
Инструкция по установке скетчей в платы Arduino или аналоги....
Среда программирования Arduino IDE (Integrated Development Environment ) может функционировать не только на платформах Windows и Mac, но и на базе операционной...
Что делать в ситуации, когда плата Arduino Uno не появляется в диспетчере устройств на Windows и компьютер ее не видит? Эта проблема довольно распространенная,...
Подключаем сервопривод к Ардуино, скетчи, библиотеки и все что для этого нужно...