Ir ao conteúdo
  • Cadastre-se
Maximino Borsatto

Sistema liga e desliga com sensor

Recommended Posts

Boa noite pessoal, estou tentando desenrolar um programa que ligue e desligue através de um sensor, o meu programa está praticamente escrito, o único problema é que não entendo muito de programação então estou tendo um problema com umas chaves que ficam dizendo que estão erradas, eu já as verifiquei mas ainda não conseguir encontrar o erro, se alguém poder dar uma dica fico agradecido, obrigado.

 

const int sensor = 8;     //Entrada sensor pino 8
  const int led = 13;       //Saida a rele no pino 13
  int acionamento;          //Variavel para guardar valor do sensor
  void setup()
 
{
 
  // Inicializa sensor como entrada
  pinMode(sensor,INPUT);   //Define entrada do sensor
  pinMode(led, OUTPUT);    //Inicializa rele como saída
  Serial.begin(9600);
 
}
 
  void loop()
 
{
 
  // A variável estado_sensor guarda o valor lido no pino 8
  int estado_sensor = digitalRead(sensor);
 //se o valor lido for 1 ou "HIGH"  
  if (estado_sensor == HIGH) 
 
{
 
delay (30000);             //Tempo de leitura antes de disparar
if (acionamento== LOW)    //Sem movimento, mantem rele desligado
 
{
 
digitalWrite(sensor, LOW);
Serial.println("Parado");
 
}
 
else //Caso seja detectado um movimento em 30 segundos, aciona o rele
 
{
 
void loop()
 
}
 
{
 
digitalWrite (led, HIGH);  //Ligar 
Serial.println("Movimento !!!");
delay (600000);            //Permanece ligado após o disparo
 
if                                   //Caso não seja mais detectado movimento
 
}
                                   //Sem movimento desligar
 
digitalWrite(led, LOW);
delay (120000);             //Permanece desligado para religar novamente
}
}
 

Compartilhar este post


Link para o post
Compartilhar em outros sites

No seu if-else tem um void loop() que não devia estar lá. Além disso esses ifs estão bem confusos. Faça uma revisão nessa parte e corrija os blocos (ao abir/fechar chaves).

if(..){}else{}

Compartilhar este post


Link para o post
Compartilhar em outros sites

a chamada de loop está sem ;

 

você deixou um { sobrando no código. Um deles depois do void loop sem ; e o outro antes do digitalWrite (led, HIGH);  //Ligar 

 

Tem um if no final sem condição.

 

Bem sinistro esse código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×