Show Posts
Pages: [1]
1  International / Portugues / Projecto com arduino on: September 28, 2011, 11:16:20 am
Boas pessoal.
Queria pedir uma ajuda.
Eu mais um colega meu estamos a fazer um projecto com o arduino.
Que consiste em fazer um programa para um portão que irá ser automático, e estamos com algumas dificuldades, pois não dominamos muito isto. Já temos um pedaço de código desenvolvido, mas agora não estamos a conseguir avançar mais porque nos deparamos com um problema na questão do delay().

Codigo:

int motor_abre = 12;
int motor_fecha = 13;
int chave_a = 11;
int chave_f = 8;
int fotoc = 7;
int fc_f = 9;
int fc_a = 10;
int botao=6;

int aberto = 0;
int fechado = 0;
int ordem = 0;
int abrir_c=0;
int fechar_c=0;
int sensor=0;

void setup() {
 
  pinMode(motor_abre, OUTPUT); 
  pinMode(motor_fecha, OUTPUT);
  pinMode(chave_a, INPUT);
  pinMode(chave_f, INPUT);
  pinMode(fc_f, INPUT);
  pinMode(fc_a, INPUT);
  pinMode(fotoc, INPUT);
  pinMode(botao, INPUT);
}



void loop(){
   
  aberto=digitalRead(fc_a);           
  fechado=digitalRead(fc_f);   
  ordem=digitalRead(botao);
  sensor=digitalRead(fotoc);
 
    if(fechado==0 & ordem==1){
        digitalWrite(motor_abre, HIGH); 
      }
      else{
        if(aberto==0){
          digitalWrite(motor_abre, LOW);
         delay (5000);}
        }
    }
   
   
    if(aberto==0 ){
     
        digitalWrite(motor_fecha, HIGH); 
      }
      else{
        if(fechado==0){
          digitalWrite(motor_fecha, LOW);
    }
    }
  }

No delay que temos no programa, ele está a funcionar, o portão abre, activa o fim de curso "fc_a" e faz o delay de 5s, passados esses 5 segundos começa a fechar, mas se manualmente carregarmos no fim de curso "fc_f" o portão não vai parar, só pára passados outros 5s, e não estamos a perceber porque, pois não estamos a mandar fazer isso.

Se alguém poder ajudar, agradecia-mos.
Obrigado
Pages: [1]