Guys I am a HUGE noob
This code I typed had no syntax errors from my compiler but the code doesn't work
This is what it is supposed to do:
If anyone of the three ultrasonic sensors go off, so should the piezo
If its the right side ultrasonic sensor the right piezo should go off
If its the left Ultrasonic sensor the Left piezo should go off
If its the middle Ultrasonic sensor both the Piezos should go off.
I know there are many mistakes but as I said I am a Huge noob.
Now you might be thinking,
How can a noob type this code
Its off of youtube. Well, most of it.
Please send the refined code if you may.
Thank you in advance.
Code:
#define RechoPin 9
#define RtrigPin 8
#define MechoPin 3
#define MtrigPin 4
#define LechoPin 10
#define LtrigPin 11
long duration;
int distance;
int RPiezo (6);
int LPiezo (5);
void setup() {
pinMode(RtrigPin, OUTPUT);
pinMode(RechoPin, INPUT);
pinMode(LtrigPin, OUTPUT);
pinMode(LechoPin, INPUT);
pinMode(MtrigPin, OUTPUT);
pinMode(MechoPin, INPUT);
Serial.begin(9600);
Serial.println("Ultrasonic Sensor HC-SR04 Test");
Serial.println("with Arduino UNO R3");
}
void loop() {
digitalWrite(RtrigPin, LOW);
delayMicroseconds(2);
digitalWrite(RtrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(RtrigPin, LOW);
digitalWrite(MtrigPin, LOW);
delayMicroseconds(2);
digitalWrite(MtrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(MtrigPin, LOW);
digitalWrite(LtrigPin, LOW);
delayMicroseconds(2);
digitalWrite(LtrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(LtrigPin, LOW);
duration = pulseIn(RechoPin, HIGH);
duration = pulseIn(MechoPin, HIGH);
duration = pulseIn(LechoPin, HIGH);
distance = duration * 0.034 / 2;
distance = duration * 0.034 / 2;
distance = duration * 0.034 / 2;
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
if
(distance < 50) {
digitalWrite(RPiezo, HIGH);
delayMicroseconds(2000000);
digitalWrite(RPiezo, LOW);
}
if
(distance < 50) {
digitalWrite(LPiezo, HIGH);
delayMicroseconds(2000000);
digitalWrite(LPiezo, LOW);
}
if
(distance < 50) {
digitalWrite(RPiezo, HIGH);
digitalWrite(LPiezo, HIGH);
delayMicroseconds(2000000);
digitalWrite(RPiezo, LOW);
digitalWrite(LPiezo, LOW);
}
}