Advertisement
Jorge_moises

LDR libera acionamento do sensor PIR - Ok

Mar 20th, 2020
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.60 KB | None | 0 0
  1. // Constantes
  2. #define pinPIR 3                   // Pino do sensor PIR
  3. #define Led 7                      // Pino saida do led
  4.  
  5. #define VALOR_ESCURO 150           // valor para ligar rele
  6. #define VALOR_CLARO  250           // Valor para desligar rele
  7.  
  8. // Variavide PIR
  9. int valorPIR;                      // Variavel valorPIR para ler o estado do sensor PIR
  10.  
  11. // Variaveis do LDR
  12. int sensorPin = A1;                // Pino de entrada do LDR
  13. int val;                           // Variavel para guardar estado do LDR
  14.  
  15. void setup() {
  16.   pinMode(pinPIR, INPUT);          // Le como entrada o pino 3 do PIR
  17.   pinMode (Led, OUTPUT);           // Le como saiad para ligar o led
  18. //  Serial.begin(9600);            // Imprime no serial monitor
  19. }
  20.  
  21. void loop() {
  22.   valorPIR = digitalRead(pinPIR);  // Faz leitura A1 e guarda em valorPIR
  23.   val = analogRead (sensorPin);    // ler o valor do LDR
  24.  // Serial.println (val);          // Imprime no serial monitor
  25.  
  26.  if(val < VALOR_ESCURO){           // Se o LDR detectar escuro abaixo de 150
  27.    PIR_ON();                       // Chama a funçao PIR_ON
  28.    }
  29.  else{                             // Então faça isso
  30.   PIR_OFF();                       // Chama a função PIR_OFF
  31.  }
  32. }
  33. void PIR_ON(){
  34.     if (valorPIR == HIGH) {        // Se PIR detectar movimento
  35.     digitalWrite (Led,HIGH);       // Liga o led
  36.     }
  37.     PIR_OFF();                     // Chama a função PIR_OFF
  38. }
  39. void PIR_OFF(){
  40.     if (valorPIR == LOW){          // Se o valor LDR escuro maior que 250 mantem apagado o led
  41.     digitalWrite (Led, LOW);       // Apaga o led
  42.     }  
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement