Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

DIY ультразвуковая сигнализация на Arduino: детектирование расстояния в реальном времени

Компоненты и материалы

Arduino UNO×1
Макетная плата×1
Ультразвуковой датчик HC-SR04×1
Пьезо-звукопищатель (buzzer)×1
Светодиоды (красный, желтый, зеленый)×3
Резистор 220 Ом×1
Перемычки (набор)×10

О проекте

Шаг 1: Подготовка материалов

DIY ультразвуковая сигнализация на Arduino: детектирование расстояния в реальном времени

Шаг 2: Схема подключения

DIY ультразвуковая сигнализация на Arduino: детектирование расстояния в реальном времени

Соедините красный провод от 5V Arduino к плюсовой шине макетной платы, черный — от GND к минусовой шине.

Аноды (длинные ножки) светодиодов к пинам Arduino, катоды (короткие) через резистор 220 Ом к минусовой шине.

Шаг 3: Сборка на макетке — питание

DIY ультразвуковая сигнализация на Arduino: детектирование расстояния в реальном времени

Подключите 5V и GND Arduino к шинам макетной платы: 5V — к плюсовой, GND — к минусовой.

Шаг 4: Ультразвуковой датчик HC-SR04

DIY ультразвуковая сигнализация на Arduino: детектирование расстояния в реальном времени

Рекомендую ставить датчик как можно правее на макетке, «глядя» наружу. GND датчика — к минусовой шине, Trig — к пину 2 Arduino, Echo — к пину 3, VCC — к плюсовой шине.

Шаг 5: Светодиоды

DIY ультразвуковая сигнализация на Arduino: детектирование расстояния в реальном времени

Подключение каждого светодиода: анод (длинная ножка) к соответствующему пину Arduino (зеленый→6, желтый→5, красный→4), катод (короткая) через резистор 220 Ом к минусовой шине. Резисторы желательны — защищают светодиоды и ограничивают ток.

Шаг 6: Звукопищатель

DIY ультразвуковая сигнализация на Arduino: детектирование расстояния в реальном времени

Длинная ножка buzzer'а — к пину 7 Arduino, короткая — через резистор 220 Ом к минусовой шине. Резистор настоятельно рекомендуется — сильно снижает громкость и продлевает жизнь пьезоэлементу.

Код

Ultrasonic Security System (Arduino)

#define trigPin 2
#define echoPin 3
#define LEDlampRed 4
#define LEDlampYellow 5
#define LEDlampGreen 6
#define soundbuzzer 7

int sound = 500;

void setup() {
  Serial.begin(9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(LEDlampRed, OUTPUT);
  pinMode(LEDlampYellow, OUTPUT);
  pinMode(LEDlampGreen, OUTPUT);
  pinMode(soundbuzzer, OUTPUT);
}

void loop() {
  long duration, distance;
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  duration = pulseIn(echoPin, HIGH);
  distance = (duration / 2) / 29.1;  // см

  if (distance < 50) digitalWrite(LEDlampGreen, HIGH); else digitalWrite(LEDlampGreen, LOW);
  if (distance < 20) digitalWrite(LEDlampYellow, HIGH); else digitalWrite(LEDlampYellow, LOW);
  if (distance < 5)  { digitalWrite(LEDlampRed, HIGH); sound = 1000; } else digitalWrite(LEDlampRed, LOW);

  if (distance > 5 || distance <= 0) {
    Serial.println("Outside the permissible range of distances");
    noTone(soundbuzzer);
  } else {
    Serial.print(distance);
    Serial.println(" cm");
    tone(soundbuzzer, sound);
  }
  delay(300);
}

Примечание: в оригинальном коде были опечатки в именах переменных (distanceincm vs distance, distanceinsm) — исправлены в листинге выше.

Схемы

DIY ультразвуковая сигнализация на Arduino: детектирование расстояния в реальном времени

Производственный процесс

  1. Камера охраны с детектором движения на ESP32-CAM и отправкой фото в Discord
  2. Цифровые кости на Arduino: генератор случайных чисел с LCD-дисплеем и кнопкой
  3. Создание рулетки на 37 светодиодов с Arduino Nano
  4. Мини-аркада на ATtiny85: Snake — ручная OLED-консоль своими руками
  5. Портативный дальномер на Arduino Nano: HC-SR04, питание 18650, 3D-корпус
  6. Умный дом и система безопасности на базе 1Sheeld
  7. Умная система автополива растений на Arduino Nano
  8. Медное гальваническое покрытие: умная система на Arduino UNO
  9. NeoPixel Matrix Pong на Arduino Nano: неоновая игра Pong на матрице 15×10
  10. Создание потрясающих световых последовательностей с Arduino и сдвиговым регистром