Tags:
bem legal o LDR para não acender de dia...
só fiquei com uma dúvida, como você fez para o LDR não acionar com o acendimento da lampada pelo PIR?
Olá Millencolinhc
Para isso ocorrer é basicamente 2 condição
Se(Movimento =true E LDR <1){
LigaLampada
}else{
DesligaLampada
}
Aqui em cima fiz em Português.
Ou seja se o LDR estiver enviando dados acima de 1 ele não ligará. Só atende o comando se as 2 condições forem verdadeiras
A descrição do projeto eu deixei em
essa parte de só acender com movimento eu peguei,
o que não entendi é que
se (Movimento = true E LDR <1) ele acende a luz de um local,
ao acender a luz do local, o LDR vai captar luminosidade da lampada que foi acesa, logo LDR = 1
desta forma a segunda condição do if não será atendida, e ele desligará a a própria lampada que acabou de ser acesa pela condição acima.
como vc impediu este retorno?
eu vejo 3 opções mas todas com ressalvas,
1) diferenciando pela intensidade da luminosidade captada (isto seria bem pratico para ambientes externos, mas internos complicaria, pois as vezes a iluminação natural mesmo de dia é menor do que a forçada.
2) criar um timer, onde o tempo de acendimento desativa a rotina ( neste caso a lampada teria que apagar para poder ser acesa novamente)
3) desativar a leitura do LDR quando a lampada for acesa pelo arduino. desta forma somente apagaria em função da falta de movimento (ou seja tendo movimento continuo a lampada não apagaria nunca!) achei esta a melhor, pois dificilmente um local tem movimentação full-time!
Olá Milencolinhc!
É verdade a lâmpada deveria apagar com a intensidade do abajur.
eu fiz com um pequeno ajuste procurando o melhor resistor que atende-se a condição, por mais que a lâmpada esteja acesa o LDR não passa de 1 (neste caso) a lâmpada do abajur ainda é fraca pra o LDR passar de 1 (o LRD estava variando de 0 a 15 nos meus teste com varias intensidades).
Mas se a lampada do abajur fosse forte eu teria que fazer outro tipo de algoritmo, ou até mesmo evitar que o ldr leia a intensidade da lâmpada do abajur, somente do ambiente.
Em alguns casos é possível fazer ajustes com um potenciômetro no lugar do resistor.
Valeu!
Oi, ótimo projeto. estou tentando fazer só que troquei a lâmpada por um LED. Mas da o seguinte erro nesta linha:
while((millis) – (millisAtual < 20000)&& (valorSensorPIR ==0)&&(valorSensorLDR <=1)){
LDR___PIR_contru__o:57: error: stray '\' in program
LDR___PIR_contru__o:58: error: stray '\' in program
LDR___PIR_contru__o:64: error: stray '\' in program
LDR___PIR_contru__o:64: error: stray '\' in program
LDR___PIR_contru__o.ino: In function 'void verificaMovimentoEscuro()':
LDR___PIR_contru__o:57: error: expected `)' before 'u2013'
LDR___PIR_contru__o:57: error: 'u2013' was not declared in this scope
LDR___PIR_contru__o:57: error: expected `;' before ')' token
LDR___PIR_contru__o:66: error: expected `}' at end of input
Alguma sugestão?
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por