#include <Servo.h>
#define TRIG_PIN_1 2
#define ECHO_PIN_1 3
#define SERVO_PIN_1 9
#define TRIG_PIN_2 4
#define ECHO_PIN_2 5
#define SERVO_PIN_2 10
#define TRIG_PIN_3 6
#define ECHO_PIN_3 7
#define SERVO_PIN_3 11
#define TRIG_PIN_4 8
#define ECHO_PIN_4 12
#define SERVO_PIN_4 13
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;
void setup() {
pinMode(TRIG_PIN_1, OUTPUT);
pinMode(ECHO_PIN_1, INPUT);
servo1.attach(SERVO_PIN_1);
pinMode(TRIG_PIN_2, OUTPUT);
pinMode(ECHO_PIN_2, INPUT);
servo2.attach(SERVO_PIN_2);
pinMode(TRIG_PIN_3, OUTPUT);
pinMode(ECHO_PIN_3, INPUT);
servo3.attach(SERVO_PIN_3);
pinMode(TRIG_PIN_4, OUTPUT);
pinMode(ECHO_PIN_4, INPUT);
servo4.attach(SERVO_PIN_4);
}
void loop() {
long duration1, distance1;
long duration2, distance2;
long duration3, distance3;
long duration4, distance4;
// Measure distance from sensor 1
digitalWrite(TRIG_PIN_1, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN_1, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN_1, LOW);
duration1 = pulseIn(ECHO_PIN_1, HIGH);
distance1 = duration1 * 0.034 / 2;
// Measure distance from sensor 2
digitalWrite(TRIG_PIN_2, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN_2, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN_2, LOW);
duration2 = pulseIn(ECHO_PIN_2, HIGH);
distance2 = duration2 * 0.034 / 2;
// Measure distance from sensor 3
digitalWrite(TRIG_PIN_3, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN_3, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN_3, LOW);
duration3 = pulseIn(ECHO_PIN_3, HIGH);
distance3 = duration3 * 0.034 / 2;
// Measure distance from sensor 4
digitalWrite(TRIG_PIN_4, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN_4, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN_4, LOW);
duration4 = pulseIn(ECHO_PIN_4, HIGH);
distance4 = duration4 * 0.034 / 2;
// Check and respond to distance for each sensor
if (distance1 < 20) {
servo1.write(90);
} else {
servo1.write(0);
}
if (distance2 < 20) {
servo2.write(90);
} else {
servo2.write(0);
}
if (distance3 < 20) {
servo3.write(90);
} else {
servo3.write(0);
}
if (distance4 < 20) {
servo4.write(90);
} else {
servo4.write(0);
}
delay(500); // Adjust delay as needed
}