// Problem with code or hardware?
// https://forum.arduino.cc/t/problem-with-code-or-hardware/1418238
const int echoPinR = 2; const int trigPinR = 3;
const int echoPinC = 6; const int trigPinC = 7;
const int echoPinL = 4; const int trigPinL = 5;
const int alertLedPinR = 8; const int alertLedPinL = 9;
const int alertLedPinC = 10;
const int buzzerR = 12; const int buzzerL = 11;
void setup() {
pinMode(trigPinR, OUTPUT);
pinMode(echoPinR, INPUT);
pinMode(alertLedPinR, OUTPUT);
pinMode(buzzerR, OUTPUT);
pinMode(trigPinL, OUTPUT);
pinMode(echoPinL, INPUT);
pinMode(alertLedPinL, OUTPUT);
pinMode(buzzerL, OUTPUT);
pinMode(trigPinC, OUTPUT);
pinMode(echoPinC, INPUT);
pinMode(alertLedPinC, OUTPUT);
Serial.begin(115200);
}
void loop() {
unsigned long durationR, durationC, durationL;
// unsigned long distanceR, distanceC, distanceL;
float distanceR, distanceC, distanceL;
digitalWrite(trigPinR, HIGH);
delayMicroseconds(10);
digitalWrite(trigPinR, LOW);
durationR = pulseIn(echoPinR, HIGH, 23000UL);
distanceR = durationR * 0.0343 / 2;
Serial.print("Distance Sensor 1: ");
Serial.print(distanceR);
Serial.println(" cm");
if (distanceR < 40) {
digitalWrite(alertLedPinR, HIGH);
tone(buzzerR, 1000);
}
else {
digitalWrite(alertLedPinR, LOW);
noTone(buzzerR);
}
Serial.flush();
digitalWrite(trigPinC, HIGH);
delayMicroseconds(10);
digitalWrite(trigPinC, LOW);
durationC = pulseIn(echoPinC, HIGH, 23000UL);
distanceC = durationC * 0.0343 / 2;
Serial.print("Distance Sensor 2: ");
Serial.print(distanceC);
Serial.println(" cm");
if (distanceC < 40) {
digitalWrite(alertLedPinC, HIGH);
}
else {
digitalWrite(alertLedPinC, LOW);
}
Serial.flush();
digitalWrite(trigPinL, HIGH);
delayMicroseconds(10);
digitalWrite(trigPinL, LOW);
durationL = pulseIn(echoPinL, HIGH, 23000UL);
distanceL = durationL * 0.0343 / 2;
Serial.print("Distance Sensor 3: ");
Serial.print(distanceL);
Serial.println(" cm");
if (distanceL < 40) {
digitalWrite(alertLedPinL, HIGH);
tone(buzzerL, 1000);
}
else {
digitalWrite(alertLedPinL, LOW);
noTone(buzzerL);
}
Serial.flush();
// delay(500);
}