Вернулся к фену...Дуй не дуй (горячим и холодным, перпендикулярно и параллельно), в работе светодиода ничего не меняется. Добавил в скетч переключение на пять режимов с шагом дистанции в 10 см. Ограничил время ожидания отклика от преграды до 4 миллисекунд.Попробую упростить конструкцию - собрать всё в одной банке-подставке и управлять проще - приближая, удаляя ладонь.
Код:
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// Arduino UNO
//
////////////////////////
//
//программа для ультразвукового датчика - включатель светодиода RGB //
const int echoPin=9;
const int trigPin=8;
unsigned int x,x1;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(echoPin, INPUT);
digitalWrite(trigPin, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
}
void loop() {
digitalWrite(trigPin, HIGH);
delayMicroseconds(15);
digitalWrite(trigPin, LOW);
x = pulseIn(echoPin, HIGH,4000);
x1 = x / 58;
if(x1<=55&x1>=45){digitalWrite(10, HIGH);digitalWrite(11, HIGH);digitalWrite(12, HIGH);}//условие включения всех кристаллов светодиода
if(x1<=45&x1>=35){digitalWrite(10, LOW);digitalWrite(11, LOW);digitalWrite(12, LOW);}//условие выключения светодиода
if(x1<=15&x1>=5){digitalWrite(10,HIGH);digitalWrite(11, LOW);digitalWrite(12, LOW);}//условие включения красного кристалла
if(x1<=25&x1>=15){digitalWrite(11,HIGH);digitalWrite(10, LOW);digitalWrite(12, LOW);}//условие включения зелёного кристалла
if(x1<=35&x1>=25){digitalWrite(12,HIGH);digitalWrite(10, LOW);digitalWrite(11, LOW);}//условие включения синего кристалла
delay(100);// временная задержка
}
//
// Конец /
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////