Интернет-магазин «Неглупый Дом»
HC-SR04 постоянно измеряет расстояние до стены. Появилось препятствие ближе порога — включается сирена.
const int trigPin = 9;
const int echoPin = 10;
const int buzzerPin = 8;
const int thresholdCm = 80;
long getDistanceCm() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
long duration = pulseIn(echoPin, HIGH);
return duration / 58;
}
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(buzzerPin, OUTPUT);
}
void loop() {
long distance = getDistanceCm();
if (distance > 0 && distance < thresholdCm) {
tone(buzzerPin, 1500);
} else {
noTone(buzzerPin);
}
delay(100);
}
Порог `thresholdCm` калибруется под проём — измерьте штатное расстояние через Serial-монитор и возьмите значение чуть меньше.
Ещё модули для Arduino: Электронные модули.
🎁 Купить весь комплект со скидкой 10%
Все 2 товара сразу: 195 ₽ 176 ₽ (экономия 19 ₽)
Скидка применяется автоматически при оформлении заказа, если в корзине именно этот комплект.
Остались вопросы? Проконсультируйтесь с ИИ-инженером — он уже в курсе темы статьи и сразу ответит, ничего вводить не нужно.