Подключение дальномера HC-SR04 к Arduino

Дим M
Topic author, Администратор
Администратор
Avatar
Дим M
Topic author, Администратор
Администратор
Reputation: 74
Posts: 1201
Joined: 5 Apr 2013
With us: 6 years 2 months

#1by Дим » 25 Jun 2017, 12:45

Для начала рассмотрим некоторые особенности ультразвукового дальномера HC-SR04

Простота в использовании, 4-контактное подключение.
Диапазон измерения: от 2 см до 400 см.
Точность измерения: ± 1 см (при максимальной дальности ± 3 см).
Угол измерения: 15º.
Ультразвуковой диапазон работы на частоте 40 кГц.
Рабочее напряжение 4,8 В до 5,5 В (± 0.2В макс).
Диапазон рабочих температур: 0 ° С до 60 ° С (± 10%).

Подключаем по нижеприведенной схеме
подключение дальномера HC-SR04 к Arduino.jpg
Подключение дальномера HC-SR04 к Arduino
подключение дальномера HC-SR04 к Arduino.jpg (104.22 KiB) Viewed 247 times

Заливаем скетч и тестируем.

Code: Select all

//Тестировалось на Arduino UNO
#define Trig 9
#define Echo 8
#define ledPin 13

void setup() 
{  
  pinMode
(Trig, OUTPUT); //инициируем как выход 
  pinMode(Echo, INPUT); //инициируем как вход 
  pinMode(ledPin, OUTPUT); 
  Serial
.begin(9600); 
  
/* задаем скорость общения. В нашем случае с компьютером */
} 
unsigned int impulseTime
=0; 
unsigned int distance_sm
=0; 

void loop
() 
{  
  digitalWrite
(Trig, HIGH); 
  
/* Подаем импульс на вход trig дальномера */
  delayMicroseconds(10); // равный 10 микросекундам 
  digitalWrite(Trig, LOW); // Отключаем 
  impulseTime=pulseIn(Echo, HIGH); // Замеряем длину импульса 
  distance_sm=impulseTime/58; // Пересчитываем в сантиметры 
  Serial.println(distance_sm); // Выводим на порт 
  if (distance_sm<10) // Если расстояние менее 10 сантиметром 
  {     
    digitalWrite
(ledPin, HIGH); // Светодиод горит 
  }  
  else 
  
{   
    digitalWrite
(ledPin, LOW); // иначе не горит 
  }   
  delay
(100); 
  
/* ждем 0.1 секунды, Следующий импульс может быть излучён, только после исчезновения эха от предыдущего. 
   Это время называется периодом цикла (cycle period). 
   Рекомендованный период между импульсами должен быть не менее 50 мс.  */
}

phpBB [media]
i love you mxIni Mysql

! ! !


  • Similar Topics
    Replies
    Views
    Last post

Return to “Аппаратная часть”