#include <Servo.h> //подключение библиотеки
Servo myservo; // создание объекта
float cm;
long readUltrasonicDistance(int triggerPin, int echoPin)
{
pinMode(triggerPin, OUTPUT); // сброс Trig
digitalWrite(triggerPin, LOW);
delayMicroseconds(2);
digitalWrite(triggerPin, HIGH); // установка TRIG на 10 мкс
delayMicroseconds(10);
digitalWrite(triggerPin, LOW);
pinMode(echoPin, INPUT); // измерение длительности ECHO
return pulseIn(echoPin, HIGH);
}
void setup() {
myservo.attach(9); // привязка линии управления к выводу 9
}
void loop() {
cm = readUltrasonicDistance(3, 2)/58;
cm = map(cm, 0, 400, 0, 180);
myservo.write(180-cm); // устанвока новой позиции сервопривода
delay(10); // отладка
}