// programa para 1 sensor #include #include #define servo1 11 #define red 3 #define green 5 #define blue 6 //Define os pinos para o trigger e echo Ultrasonic sensor1(8,7); Servo s1; long distanciaSensor1; int pos1; //posicao do servo void setup() { // put your setup code here, to run once: Serial.begin(9600); pinMode(red, OUTPUT); pinMode(blue, OUTPUT); pinMode(green, OUTPUT); s1.attach(servo1); s1.write(0); // Iniciar servo 1 na posição zero } void loop() { // put your main code here, to run repeatedly: int valor = 255; // para rgb anodo digitalWrite(red, valor-255); digitalWrite(green, valor - 0); digitalWrite(blue, valor - 0); distanciaSensor1 = sensor1.Ranging(CM); //retorna em CM delay(20); Serial.println(distanciaSensor1); while (distanciaSensor1 < 20) { for (pos1 = 0; pos1 < 90; pos1++) { s1.write(pos1); delay(40); } distanciaSensor1 = sensor1.Ranging(CM); while (distanciaSensor1 < 20 ) { digitalWrite(red, valor-0); digitalWrite(green, valor-255); digitalWrite(blue, valor-0); distanciaSensor1 = sensor1.Ranging(CM); } digitalWrite(red, valor-255); digitalWrite(green, valor - 0); digitalWrite(blue, valor - 0); for(pos1 = 90; pos1 > 0; pos1--) { s1.write(pos1); delay(40); } } }