26 de setembro de 2012

Sensor Laser


Sabe aqueles alarmes com lasers voando pra todo lado? O laser vai refletindo em espelhos até chegar em um sensor, que quando detecta um corte na luz , aciona a sirene, as luzes, e tudo mais!

Segue o esquema elétrico do circuito e o código fonte do microcontrolador.

/*-------------
 SENSOR LASER
 Fellipe Couto
 26/09/2012
 -------------*/
#define ledVermelho 2
#define ledAzul 3

int valorMaxLDR = 1000; //Valor com laser projetado.

void setup(){
  pinMode(ledVermelho, OUTPUT);
  pinMode(ledAzul, OUTPUT);
}

void loop(){
  int LDR = analogRead(0);
  if (LDR < valorMaxLDR - 50){
    Alarme();
  }
}

void Alarme(){
  int t = 400;
  for (int i=0; i<5; i++){
    digitalWrite(ledVermelho, HIGH);
    digitalWrite(ledAzul, LOW);
    delay(t);
    digitalWrite(ledVermelho, LOW);
    digitalWrite(ledAzul, HIGH);
    delay(t);
  }
  digitalWrite(ledVermelho, LOW);
  digitalWrite(ledAzul, LOW);
}

10 comentários:

  1. Vc só se esqueceu de dizer que quanto mais espelhos, maior é a perda do laser. Eu já tentei circundar a minha casa toda com o reflexo do laser nos espelhos, mas no 8º ou 9º espelho, o raio laser está tão fragmentado, que é inútil.

    ResponderExcluir
    Respostas
    1. É isso mesmo, Klaus! Quanto mais espelhos, maior potência precisará. No video usei um laser de 5mW, que é o normal desses chaveiros com laser. Já testei com um verde de 300mW e fica bem melhor. Abraços!

      Excluir
  2. Respostas
    1. Boa tarde, Eduardo!
      Não entendi bem...
      Abraços!

      Excluir
  3. OLÁ DE NOVO, kkk - Não entendi essa parte - int t = 400; é o valor do LDR?

    ResponderExcluir
    Respostas
    1. Boa tarde!
      t é a variável do tipo integer. Está sendo usada nos delays da função. Linhas 28 e 31.
      Abraços!

      Excluir
  4. Obrigado, estou sofrendo para apreender programação.

    ResponderExcluir
  5. Este comentário foi removido pelo autor.

    ResponderExcluir
  6. Oi amigo tem como mudar a programação para quando acionar o lazer o led ligar e permanecer ligado só desligar quando acionar o lazer novamente desde já eu agradeço muito obrigado.

    ResponderExcluir
    Respostas
    1. Oi! É possível sim. Pequnos ajustes na lógica de programação e consegue sim.

      Excluir