eu ja tenho um programa feito
só que ta apresentando alguns problemas q eu n to conseguindo ajeitar.
to fazendo um servo motor abrir uma portinha quando um sensor ultrasonico detecta algo

só q eu tenho q por a mão muito perto e na hr de fechar ele só fecha quando detecta algo a mais ou menos 60 cm
e eu gostaria q abrisse ao passar alguem a qualquer distancia e fechasse quando n detectasse movimento
como sou novato e peguei esse programa já pronto eu tentei ler e entender a programação, mas meu conhecimento é limitado

PROGRAMA:::

#include <Servo.h>
Servo motor;
#define echo 2
#define trigger 3
int aberto = 180;
int fechado = 0;
int aberto_ = 0;

long duration, distance;
void setup() {
motor.attach(A0);
Serial.begin (9600);
pinMode(trigger, OUTPUT);
pinMode(echo, INPUT);
}
void loop() {
digitalWrite(trigger, HIGH);
delayMicroseconds(10);
digitalWrite(trigger, LOW);
duration = pulseIn(echo, HIGH);
distance = duration / 58;
if ((distance >= 150) || (distance <= 2))
distance = -1;
Serial.println(distance);
delay(150);
if (distance < 25 and distance > -1 and aberto_ == 0 ) {
aberto_ = 1;
for (int i = fechado; i < aberto; i++) {
motor.write(i);
delay(5);
}
delay(3000);
}
if (distance > 25 and aberto_ == 1 ) {
aberto_ = 0;
for (int i = aberto; i > fechado; i--) {
motor.write(i);
delay(10);
}
}
}

Exibições: 231

Anexos

Responder esta

Respostas a este tópico

Boa tarde JPCM.

Me parece que vc se inscreveu recentemente aqui no LdG.

Seja bem vindo, mas inicie  pelo Inicio.  Leia os tópicos que existem no Tab "Inicio".  Em: Participe.

RV

é pq isso é um projeto pra um curso, ai gostaria de uma ajuda

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço