// // SHARP IR sensor testing // // аналоговый пин для подключения выхода Vo сенсора int IRpin = 15; void setup() { // старт последовательного порта Serial.begin(9600); // initialize digital pin 13 as an output. pinMode(13, OUTPUT); } void loop() { // // 5V/1024 = 0.0048828125 // считываем значение сенсора и переводим в напряжение float voltage = analogRead(IRpin) * 0.0048828125; // Расчитываем дистанцию //range (cm) = 306.439 + voltage * (-512.611 + voltage * (382.268 + voltage * (-129.893 + voltage * 16.2537))) float distance = 306.439 + voltage * (-512.611 + voltage * (382.268 + voltage * (-129.893 + voltage * 16.2537))); // выдаём в порт Serial.println (distance); // ждём delay(500); if (distance > 50) { // Если дистанция больше указанного значения то светодиод выключен digitalWrite(13, LOW); } else { // Если дистанция меньше указанного значения то светодиод включен digitalWrite(13, HIGH); } }