setup() runs only once while loop() is the repeating piece of
code. There are 2 HC-SR sensors connected with 2 relays which are
based on the measurement of motion between the sensor and the surroundings.
Контекст: в настоящее время контакты 12,10 предназначены для ввода, а контакты 13,11,9,8 - выходные выводы.Когда тригпин измеряет расстояние менее 5 см, он меняет состояние реле на Высокое, что затем приводит в движение двигатель в зависимости от оператора if else
#include <math.h>
int trig1= 13;
int echo1= 12;
int trig2= 11;
int echo2= 10;
int motor1= 9;
int motor2= 8;
void setup() {
pinMode(9, OUTPUT);
pinMode(8, OUTPUT);
pinMode(13, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, INPUT);
pinMode(10, INPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(trig1, LOW);
digitalWrite(trig2, LOW);
delayMicroseconds(2);
digitalWrite(trig1, HIGH);
digitalWrite(trig2, HIGH);
delayMicroseconds(10);
digitalWrite(trig1, LOW);
digitalWrite(trig2, LOW);
long duration1 = pulseIn(echo1, HIGH);
long duration2 = pulseIn(echo2, HIGH);
long distance1= duration1*0.034/2;
long distance2= duration2*0.034/2;
if(distance1 < 5)
{
digitalWrite(motor1, HIGH);
delay (15000);
}
else if(distance2 < 5)
{
digitalWrite(motor2, HIGH);
delay (15000);
}
else
{
loop();
}
}