#define TRIG_PIN 10
#define ECHO_PIN 9
const int LED_R = 2;
const int LED_V = 3;
const int LED_B = 4;
void setup() {
pinMode(LED_R, OUTPUT);
pinMode(LED_V, OUTPUT);
pinMode(LED_B, OUTPUT);
Serial.begin(9600);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
digitalWrite(TRIG_PIN, LOW);
}
void loop() {
// start lettura sensore
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
// lettura della ripsposta del sensore
unsigned long tempo = pulseIn(ECHO_PIN, HIGH);
// calcolo della distanza in cm
float distanza = 0.03438 * tempo / 2;
Serial.println("distanza = " + String(distanza) + " cm");
delay(500);
if (distanza < 15){
digitalWrite(LED_R, HIGH);
digitalWrite(LED_V, LOW),
digitalWrite(LED_B, LOW);
}
else if(distanza > 15, distanza < 25 ) {
digitalWrite(LED_R, HIGH);
digitalWrite(LED_V, HIGH);
digitalWrite(LED_B, LOW);
}
else if (distanza > 25) {
digitalWrite(LED_R, LOW);
digitalWrite(LED_V, HIGH);
digitalWrite(LED_B, LOW);
}
else if(distanza < 6) {
digitalWrite(LED_R, LOW);
digitalWrite(LED_V, LOW);
digitalWrite(LED_B, LOW);
}
}