const int LedRojo = 0;
const int LedAmarillo = 1;
const int LedVerde = 2;
const int trigPin1 = 4;
const int trigPin2 = 6;
const int echoPin1 = 5;
const int echoPin2 = 7;
const int BuzzerPin = 12;
void setup(){
pinMode(trigPin1, OUTPUT);
pinMode(trigPin2, OUTPUT);
pinMode(LedRojo, OUTPUT);
pinMode(LedAmarillo, OUTPUT);
pinMode(LedVerde, OUTPUT);
pinMode(echoPin1, INPUT);
pinMode(echoPin2, INPUT);
}
void loop() {
float cm1 = getDistance(trigPin1, echoPin1);
float cm2 = getDistance(trigPin2, echoPin2);
if (cm1 <= 30 && cm2 <= 40) {
digitalWrite(LedRojo, HIGH);
tone(BuzzerPin,1000);
} else {
digitalWrite(LedRojo, LOW);
noTone(BuzzerPin);
}
if (cm1 > 30 && cm2 <= 120) {
digitalWrite(LedAmarillo, HIGH);
tone(BuzzerPin,1000);
} else {
digitalWrite(LedAmarillo, LOW);
noTone(BuzzerPin);
}
if (cm1 > 120 && cm2 <= 200) {
digitalWrite(LedVerde, HIGH);
tone(BuzzerPin, 1000);
} else {
digitalWrite(LedVerde, LOW);
noTone(BuzzerPin);
}
// aaaa
if (cm2 <= 30) {
digitalWrite(LedRojo, HIGH);
tone(BuzzerPin,1000);
} else {
digitalWrite(LedRojo, LOW);
noTone(BuzzerPin);
}
if (cm2 > 30) {
digitalWrite(LedAmarillo, HIGH);
tone(BuzzerPin,1000);
} else {
digitalWrite(LedAmarillo, LOW);
noTone(BuzzerPin);
}
if (cm2 > 120) {
digitalWrite(LedVerde, HIGH);
tone(BuzzerPin, 1000);
} else {
digitalWrite(LedVerde, LOW);
noTone(BuzzerPin);
}
delay(100);
}
float getDistance(int trigPin, int echoPin) {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
float duration = pulseIn(echoPin, HIGH);
float distance = duration * 0.034 / 2;
return distance;
}