Boa tarde.
Pessoal estou com um problema para resolver meu projeto do curso, estou fazendo um sistema de envase conforme descrição abaixo a descrição do projeto:
_ motor de passo para rodar a mesa
_sensor 1 de presença para acionar a bomba de envase
_sensor 2 de presença para acionar o motor para fechamento da garrafa
1º - a mesa ira rodar por um "x" tempo e ira parar
(2º e 3º processo serão simultaneos)
2º - sensor 1 verifica se tem garrafa se tiver aciona a bomba, caso não tenha libera mesa
3º - sensor 2 verifica se tem garrafa se tiver funciona motor, caso não tenha libera mesa
4º - mesa volta a funcionar, fazendo este processo em looping
Estou com duvidas como programar a etapa 1, estava tentando com "delay" porem não deu certo
e a etapa 2 e 3 como fazer para funcionar simultaneamente?
Poderiam me ajudar?
Tags:
Sobre a Etapa 1 , usando millis():
Armazene o instante em que a mesa começa a rotacionar ("tempoAnterior ") e faça a rotação da mesa se a diferença entre o agora ("millis()") e o tempo anterior for inferior ao tempo que ela deve girar ("duracaoRotacao").
Exemplo:
if(millis() - tempoAnterior <= duracaoRotacao )
{
//função para rotacionar a mesa
}
else
{
//função para desativar a rotação da mesa
}
Sobre as demais etapas:
Da forma como está acima, seu código não fica preso (como ocorre num delay), então as demais etapas continuarão sendo avaliadas.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por