Оформи код соответствующим тэгом
На эскизе должно быть сделано так, чтобы: когда ультразвуковой датчик видит объект на расстоянии менее 50 сантиметров, он поворачивает сервопривод на 90 градусов, а через 3 секунды он возвращается к 0. Но код работает не так, как надо, сервопривод просто вращается, не обнаруживая объект или вообще неизвестно как. Пожалуйста, не могли бы вы помочь с этой проблемой?
Сам скетч:
#include <Servo.h>
Servo servo;
int trig=3;
int echo=2;
void setup() {
Serial.begin(9600);
servo.attach(5);
servo.write(0);
pinMode(trig,OUTPUT);
pinMode(echo,INPUT);
}
void loop()
{
digitalWrite(trig,LOW);
delayMicroseconds(5);
digitalWrite(trig,HIGH);
delayMicroseconds(10);
digitalWrite(trig,LOW);
int a =pulseIn(echo,HIGH);
int distance = a*0.0343/2;
Serial.println(distance);
if (distance <= 50)
{
servo.write(90);
delay(3000);
servo.write(0);
delay(500);
}
}
Сам скетч:
#include <Servo.h>
Servo servo;
int trig=3;
int echo=2;
void setup() {
Serial.begin(9600);
servo.attach(5);
servo.write(0);
pinMode(trig,OUTPUT);
pinMode(echo,INPUT);
}
void loop()
{
digitalWrite(trig,LOW);
delayMicroseconds(5);
digitalWrite(trig,HIGH);
delayMicroseconds(10);
digitalWrite(trig,LOW);
int a =pulseIn(echo,HIGH);
int distance = a*0.0343/2;
Serial.println(distance);
if (distance <= 50)
{
servo.write(90);
delay(3000);
servo.write(0);
delay(500);
}
}