Acendendo uma lâmpada com sensor de presença 83

Neste post vamos montar um sensor de presença com componentes fáceis de encontrar,  e que pode ser utilizado para acionar um portão, acender uma lâmpada, tocar uma campainha ou acionar qualquer outro dispositivo por meio de um relé.

Utilizaremos nesse projeto o eficiente módulo sensor de movimento PIR, um módulo compacto com sensor infravermelho e ajustes de sensibilidade e tempo de acionamento :

Sensor de presença

Este módulo permite o ajuste da sensibilidade do sensor, ou seja, à qual distância um objeto será detectado (3 à 7 metros) , e também o tempo de delay (tempo que a saída permanece acionada, em nível alto), de 5 a 200 segundos. Os ajustes são feitos nos 2 potenciômetros soldados à placa. Observando a foto, vemos que o da esquerda ajusta a sensibilidade, e o da direita ajusta o tempo :

Modulo PIR - Detalhe Potenciometros

O sensor aceita alimentação de 4,5 à 20V, e a conexão com o Arduino utiliza apenas um pino, que apresenta o estado HIGH (alto), ao detectar um movimento, e LOW (baixo) quando não há movimentação perto do sensor. Maiores informações sobre o funcionamento do módulo podem ser obtidas no datasheet do produto, nesse link.

Para utilização com um relé, precisaremos construir um circuito de proteção para evitar danos ao Arduino. Se você utilizar um módulo relé, o circuito de proteção não será necessário, pois ele já está embutido no módulo. Aproveite e confira um post usando este sensor de presença PIR para Acionar lâmpadas com módulo relé arduino.

Os componentes para o circuito do relé são os seguintes :

Neste circuito, estamos utilizando uma lâmpada ligada à rede elétrica (110 volts). Ao montar o circuito, confira com cuidado a ligação dos componentes para evitar choques.

IMPORTANTE: Alguns módulos tem a pinagem invertida, com o Vcc (5V) no lado esquerdo e o GND no lado direito, ao contrário da imagem mostrada abaixo. Confira a pinagem do seu módulo removendo a tampa superior e observando a ligação correta, evitando assim a queima do componente.

Circuito sensor de presenca

Lembre-se que dependendo do tipo de relé que você estiver utilizando, a disposição dos pinos pode variar. No circuito, NO corresponde ao pino Normal Open (Aberto), NC ao Normal Close (Fechado), e C ao comum. Siga a mesma ligação ao relé que você estiver usando.

O programa abaixo verifica se o pino 7 (entrada do sensor de movimento) foi acionado, ou seja, se está em estado alto (HIGH), e então aciona o pino 2 (saída para o relé), que por sua vez aciona o relé e acende a lâmpada.

Opcionalmente, você pode acrescentar um LDR (resistor sensível à luz) ao circuito para que a lâmpada seja acionada apenas durante a noite, evitando desperdício de energia.

Gostou ? Conte-nos sua experiência com este post e visite nossa loja FILIPEFLOP !

Posts Relacionados

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

83 Comentários

  1. Muito bom esse post vou tentar, valeu….

    Date: Mon, 30 Dec 2013 11:56:12 +0000 To: [email protected]

    1. Valeu Robson. Obrigado pela visita. Abraços.

      Adilson – Equipe FILIPEFLOP

  2. Muito bom esse post. Só uma dúvida: qual programa vc usou pra criar o circuito?

    1. Bom dia Renato,

      Obrigado pela visita. O programa que usamos para criar o post chama-se Fritzing, é gratuito e pode ser baixado nesse link :

      http://fritzing.org/download/

      Abraço !

      Adilson – Equipe FILIPEFLOP

      1. Oi Adilson. Obrigado pela dica. Já baixei e instalei, mas não consigo encontrar esse relé, nem o sensor de movimento que você utilizou no post. Você importou alguma biblioteca extra?

        1. Oi Renato,

          O relé você encontra no próprio Fritzing, faça uma procura por “relay” que o componente está lá. Quanto aos outros, alguns eu mesmo crio/desenho para poder usar nas postagens. Um lugar onde você pode encontrar vários componentes feitos pelos usuários do Fritzing é nesse fórum :

          https://code.google.com/p/fritzing/issues/detail?id=875

          Abraço !

          Adilson – Equipe FILIPEFLOP

  3. Muito bom esse post. Só uma dúvida: qual programa vc usou pra criar o circuito?

    1. Bom dia Renato,

      Obrigado pela visita. O programa que usamos para criar o post chama-se Fritzing, é gratuito e pode ser baixado nesse link :

      http://fritzing.org/download/

      Abraço !

      Adilson – Equipe FILIPEFLOP

      1. Oi Adilson. Obrigado pela dica. Já baixei e instalei, mas não consigo encontrar esse relé, nem o sensor de movimento que você utilizou no post. Você importou alguma biblioteca extra?

        1. Oi Renato,

          O relé você encontra no próprio Fritzing, faça uma procura por “relay” que o componente está lá. Quanto aos outros, alguns eu mesmo crio/desenho para poder usar nas postagens. Um lugar onde você pode encontrar vários componentes feitos pelos usuários do Fritzing é nesse fórum :

          https://code.google.com/p/fritzing/issues/detail?id=875

          Abraço !

          Adilson – Equipe FILIPEFLOP

  4. Boa tarde. Gostei muito do seu blog e gostaria de tirar uma dúvida quanto a esse projeto.
    Como eu crio um módulo ReléShield no Fritzing? Pois não quero usar componentes no projeto, somente os módulos.

    Grato

    1. Boa tarde Godoy,

      Você pode criar seus próprios módulos seguindo os tutoriais do Fritzing nesse link :

      http://fritzing.org/learning/tutorials/creating-custom-parts/

      Obrigado !

      Adilson – Equipe FILIPEFLOP

      1. Obrigado Adilson! ;D

  5. Parabéns a Filipeflop. comprei vários itens com vocês e sempre recebi tudo certinho e funcionando.
    o atendimento também é ótimo um dia precisei ligar pra tirar umas duvidas e fui muito bem atendido!

  6. Muito bacana esse projetos! Tentei por um LDR no circuito, mas não consegui programar. consegue dar uma força na programação?

    1. Boa noite Gustavo,

      O LDR funciona como se fosse um potenciômetro, a grosso modo. Você pode ligá-lo por exemplo à uma porta analógica e, dependendo da luminosidade, acionar determinada porta, ou executar algum outro processo, isso vai depender do seu projeto.

      Abraço.

      Adilson – Equipe FILIPEFLOP

  7. FILIPEFLOP, faltou o merchan, com o preço das peças pra galera compra, vc ja tem loja virtual ou ta só com o ML mesmo?

  8. Filipe Bom Dia…

    Estou precisando de ajuda para montar uma programação em um ARDUINO UNO, comprei um kit start de você pelo mercado livre e estou com dificuldade de montar a programação que preciso;
    *Necessito que o arduino receba um sinal de entrada(5v) e em quanto estiver recebendo esse sinal conte um tempo e se passar de 10 minutos acione uma saída e quando acionar essa saída mande também uma mensagem para um Display (mensagem de Falha no equipamento)… se a entrada(5v) sair antes de 10 minutos não aciona a saída.
    *Nessa mesma programação preciso que esteja também em rede…
    *nessa mesma programação também outra entrada(5v) que quando der um pulso ativar uma outra saída por um tempo de 1 minuto e depois só acionava a saída de novo se tivesse o pulso na entrada…
    Agradeceria se recebesse essa ajuda pois tenho pouco conhecimento em linguagem c, se fosse em LADDER eu ja teria feito.

    1. Boa noite Felix,

      Não temos nenhum projeto pronto nesse sentido, mas você pode utilizar as informações dos vários posts publicados aqui no blog para montar o seu projeto, e entrar em contato conosco para qualquer dúvida.

      Abraço.

      Adilson – Equipe FILIPEFLOP

  9. Excelente projeto!
    Mas… como poderia ser utilizado este projeto para, ao invés de acender a lâmpada, ligar um motor de passo ou servo-motor para, por exemplo, abrir uma persiana (ao amanhecer) ou abrir a tampa de uma lixeira (com a aproximação da mão, por exemplo)?
    Mais uma vez, muito obrigado e parabéns!

    1. Boa noite Daniel,

      Você pode utilizar esse circuito em conjunto com alguns outros exemplos que temos no nosso blog, onde falamos de motores de passo e servos.

      O princípio de funcionamento é o mesmo. Você só precisa ajustar as portas do Arduino de acordo com o módulo que vai utilizar.

      Abraços.

      Adilson – Equipe FILIPEFLOP

  10. Bom dia , desta forma funciona perfeito..

    estou ainda em aprendizado com arduino e faço algumas funções com php, html junto com um arduino mega e shield ethernet, gostaria de saber como faria para comunicar com este sensor através de socket..

    já tenho uma conexão feita para acionar rele e trazer status, mas queria um exemplo de como eu faria com o sensor.

  11. Olá, preciso fazer um projeto parecido com este, porém no meu projeto haverá um recipiente que será enchido com água. Quando a água chegar a determinado nível, um sensor que detecta que a água atingiu aquele nível aciona um servo motor, que rotacionará para um lado, e após determinado tempo, rotacionará de volta a posição original.

    O funcionamento é mais ou menos este: https://www.youtube.com/watch?v=2-ksDJmlcMs

    Só não sei se este tipo de sensor consegue detectar o nível d’água

    Gostaria de saber se eu comprasse os componentes deste projeto de vocês, e substituísse a lampada por um servo motor, se eu conseguiria fazer o que desejo? Se sim, qual servo motor vocês me indicariam?

    Muito obrigado.
    Juliano

    1. Boa noite Juliano,

      Esse sensor de presença funciona por infravermelho, provavelmente não serve para o seu projeto. Tente um sensor de nível de líquidos, que é uma bóia especialmente para esse fim.

      Grato.

      Adilson – Equipe FILIPEFLOP

    2. Você pode usar como um botão duas possibilidades que são parecidas, use um interruptor “final de curso”, colocando uma haste nele e uma bolinha de isopor na outra extremidade, ele vai funcionar como uma boia, que ao subir aciona um botão, ou você pode também comprar pronta uma boia eletrônica, o funcionamento da boia eletrônica é praticamente o mesmo, só que é mais cara.

      Edilson Maia Favero
  12. Ótimo post amigo, estou começando a mexer com Arduino, e é muito bacana ter alguns tutoriais assim para podermos aprender! 😀

    Eu tenho uma duvida, tenho um dispenser de sabão, e eu gostaria de detectar quantas vezes esse dispenser foi acionado, ja removi as baterias dele e fiz ele ligar na luz, e tenho a saida dele em energia, existe uma maneira para detectar que a corrente foi fechada automaticamente?

    1. sim, use um contactor e ligue no arduino como se fosse um botão, depois faça um código que conte quantas vezes o “botão foi acionado”. Aqui mesmo no site tem códigos para botões e contagem.

      Edilson Maia Favero
  13. Olá,

    É possível ligar vários sensores em paralelo? Preciso detectar movimento em um corredor, seriam cerca de 6 sensores.

    1. Boa noite Plinio,

      Se você for usar Arduino, talvez seja mais fácil colocar cada sensor em uma porta da placa.

      Abraço.

      Adilson – Equipe FILIPEFLOP

  14. Boa noite, queria saber de tem algum projeto que conte quantas vezes uma pessoa passou por uma porta e voltou???

    1. Boa noite Leonardo,

      Não temos esse projeto pronto, mas você pode montar algo utilizando, por exemplo, sensores infravermelhos, como deste post :

      http://blog.filipeflop.com/sensores/sensor-infravermelho.html

      Abraço.

      Adilson – Equipe FILIPEFLOP

  15. Qual a finalidade do transistor e o diodo nessa configuração?

    1. Boa noite Rodrigo,

      O transistor e o diodo funcionam como um circuito de proteção evitando danos ao Arduino.

      Abraço.

      Adilson – Equipe FILIPEFLOP

  16. ótimo post amigo, bom trabalho também no ato de esclarecer dúvidas!
    me foi muito útil.
    grato desde já.

    Marcos Vinicius Lopes
  17. opa peguei sua logica e adaptei usando dois sensores e dois reles, so que preciso colocar um delay pra cada sensor, e nao esta aceitando, se eu coloco um delay de 10s pro sensor 1, ele espera 10s pra funcionar o sensor 2, e nao qro assim, consegue me ajudar?

    1. Amigo,se vc colocar um delay ou qualquer outra função de tempo no arduino ele ficara”travado” até terminar o tempo o qual vc programou,somente depois ele passará a executar as outras tarefas.Ou vc coloca um arduino pra cada sensor e usa o delay ou vc coloca 2 timers externos (ex : Lm 555),Eu tive o mesmo problema.

      sidinei rheinheimer
  18. Olá, queria saber como faço ao invés de ligar a lampada ligar um ventilado?
    Obrigado

    NALYN CAROLINE CHICHORRO MONTORO PERES
    1. Bom dia,

      Você pode utilizar o mesmo esquema de ligação apresentado no circuito desse post, respeitando a amperagem máxima suportada pelo relé.

      Abraço.

      Adilson – Equipe FILIPEFLOP

  19. Olá amigo boa noite, uma pergunta muito interessante que ninguém vez e eu gostaria de saber,
    ” É possível fazer uma lâmpada acender com apena o censor, sem ter arduino? ou só é possível se tiver o arduino? Caso seja possível fazer o projeto sem arduino, quais seria os devidos componentes para isso?

  20. Gostaria de saber quais componentes usar no arduino para monta um sistema de captação de iluminação, para fazer o seguinte, fazer com que as lampada acenda se o ambiente estiver com menos de 5000k de iluminação?

    1. Boa tarde Bruno,

      Você precisa desse nível de precisão ? Uma alternativa para o Arduino é utilizar um módulo com LDR, como esse, onde você pode ajustar o nível de sensibilidade: https://www.filipeflop.com/pd-10fd75-sensor-de-luz.html?ct=&p=1&s=1

      Abraço.

      Adilson – Equipe FILIPEFLOP

  21. Esse sensor é equivalente ao hc sr501?

    1. Bom dia Paulo,

      Sim, o principio de funcionamento é o mesmo.

      Abraço.

      Adilson – Equipe FILIPEFLOP

  22. OLÁ,
    GOSTARIA DE SABER SE TEM COMO USANDO ESSE MESMO ESQUEMA,EMITIR UM SINAL SONORO OU SINAL DE CHAMADA PARA UM CELULAR.
    TIPO ASSIM:
    AO DETECTAR A PRESENÇA DE ALGUEM, O SISTEMA EMITIR UMA CHAMADA PARA UM NÚMERO DE CELULAR OU MAIS, AO MESMO TEMPO.
    SE TIVER COMO, QUAIS OUTROS EQUIPAMENTOS PODE-SE USAR, NESSE MESMO ESQUEMA???

    1. Boa tarde Adalberto,

      Para esse projeto, você vai precisar de um GSM Shield como esse: https://www.filipeflop.com/pd-77833-gsm-gprs-shield-para-arduino-efcom-sim900-antena.html

      Abraço

      Adilson – Equipe FILIPEFLOP

  23. ola gostaria de saber se consigo acender 4 leds somente com este sendor.

    1. Boa tarde Thiago,

      É possível sim.

      Abraço.

      Adilson – Equipe FILIPEFLOP

  24. O relé que eu tenho consome 80mA e o arduino só fornece 40mA, posso fazer essa mesma ligação sem nenhum problema ou vai queimar o arduino ?

    1. Bom dia Wilmar,

      Você tem só o relé ou o módulo relé ? Você vai precisar do circuito de proteção com transistor, diodo, etc, como fizemos no post.

      Abraço

      Adilson – Equipe FILIPEFLOP

      1. Estou utilizando só o relé e fiz o circuito acima, porém não está acionando o relé ( ele não está com defeito, pois testei com uma fonte própria…), acho q a corrente não é suficiente…

        E outra duvida, como posso diminuir a sensibilidade do sensor pir mais ainda, por exemplo, acionar algo quando se passar a mão em frente, mais ou menos em uns 20 cm…

        1. O relé já está funcionando… Mas mantenho minha dúvida sobre a sensibilidade do sensor… Valeu Filipeflop pela ajuda ! Vcs são 10 !

          1. Bom dia Wilmar,

            Infelizmente não temos essa informação. A regulagem máxima e mínima que conseguimos também foi feita apenas com a ajuda do potenciômetro do módulo. Uma opção para o seu projeto pode ser este sensor infravermelho, com sensibilidade de 3 à 80 cm: https://www.filipeflop.com/pd-6b910-sensor-infravermelho.html

            Abraço e obrigado !

            Adilson – Equipe FILIPEFLOP

  25. Vocês tem alguma sugestao de fazer montar um circuito para detectar a presença da tensão na rede e jogar essa informação no arduino, e quando a tensao na rede for 0, o circuito postado funcionar?

    1. Bem simples, use um contactor.

      Edilson Maia Favero
  26. Olá,

    Gostaria de saber como fazer para a lampada continuar acesa enquanto a pessoa estiver dentro do ambiente.

    1. Bom dia Pedro,

      Nesse módulo e na programação você consegue programar o tempo que a luz ficará acesa, mas para que ela continue acesa sempre, você terá que efetuar uma verificação de tempos em tempos utilizando o próprio sensor, ou um sensor externo para detectar movimentos da pessoa no ambiente.

      Abraço

      Adilson – Equipe FILIPEFLOP

  27. Boa tarde Amigos,

    Poderia me sanar algumas dúvidas?

    1 – Pelo código eu posso alterar o tempo de acionamento por exemplo para 10 minutos?
    2 – Posso ligar vários módulos PIR em paralelo? Por exemplo, uns 35 módulos?
    3 – Qual a maior distância que eu poderia deixar o módulo longe do Arduino? Uns 150 metros com cabo de rede funcionaria?

    É que estou querendo sensorizar uma garagem de condomínio e talvez esse esquema com arduino pudesse me atender satisfatoriamente e com um melhor custo benefício.

    Grato desde já.

  28. Boa noite, estou querendo fazer uma ponte levadiça que é acionada por sensores esse sensor se adaptaria ao projeeto?

  29. olá Filipe, eu precisaria de algo que captasse algo como um infravermelho, pra não pegar apenas movimento, mas a presença de algo “quente” no ambiente. existe algo que faça isso?
    havia lido em alguns outros posts por ai que esse pir funcionaria assim, mas ao que me parece ao montar, não foi assim.
    tem algo pra me indicar?

    1. Boa tarde Thiago,

      Que tipo de fonte de calor você precisa detectar ?

      Abraço

      Adilson – Equipe FILIPEFLOP

      1. calor do corpo humano, pensava em algo que nao precisasse de movimento para se manter o sistema funcionando, mas sim a simples presença no local..

  30. Se a pessoa estiver imóvel no ambiente a detecção é falsa?

  31. tem como ajustar esse sensor para detectar apenas pessoas? ou ele pega animais também?

    1. Bom dia Douglas,

      O sensor PIR funciona detectando variações de infravermelho, logo vai detectar pessoas e animais. Existem sensores no mercado que servem para detectar apenas pessoas, procure por “IRD 640” no Google.

      Abraço.

      Adilson – Equipe FILIPEFLOP

  32. Boa noite.
    Gostaria de saber qual as características que o sensor apresenta quando encontra-se “estragado”. Estou querendo desenvolver um sistema que verifique o estado dos sensores, para evitar a simulação manual para ver se o sensor esta em boa condições.
    Desde já, agradeço.

  33. ola boa noite!
    gostaria de saber se esse sensor poderia ser utilizado também em motores dc para abertura e fechamento de uma porta?
    e que tipo de programação deverei fazer?
    obrigado!

  34. Boa tarde. estou fazendo um projeto de curso técnico e queria saber quais os componentes usados nesse projeto ” acendendo uma lâmpada com sensor pir

    Marília Figueiredo
    1. Boa tarde Marilia,

      Usamos:
      – Arduino Uno
      – Sensor PIR
      – Diodo 1N4007 ou equivalente
      – Transistor BC548 ou equivalente NPN
      – Resistor de 10K
      – Protoboard
      – Lâmpada
      – Fios, conectores, etc.

      Abraço!

      Adilson – Equipe FILIPEFLOP

  35. Boa tarde. estou fazendo um projeto de curso técnico e queria saber quais os componentes usados nesse projeto ” acendendo uma lâmpada com sensor pir”

    Marília Figueiredo
  36. Felipe, no curso técnico estou fazendo um projeto que usa controle RF 433mh.
    E preciso colocar um sersor PIR como uma chave no encoder para acionar a saida do decoder, como faço esse projeto?

  37. Olá, estava precisando alterar o block time do sensor, mas achei poucas informações de como fazer, teria alguma dica ou link útil? Me ajudaria muito.

  38. Esse sensor quando ele detecta presença ele fica mandando sinal nivel logico alto o o tempo todo?

  39. foi um dos melhores post que vi em relação ao sensor PIR, me ajudou e muito!
    minha duvida seria como usar o resistor LDR nesse mesmo circuito? fico grato pelo resposta!

  40. Olá Filipe, boa tarde.
    O sensor que veio em meu kit MASTER não indica qual pino é 5V ou GND, qual setagem do jumper é HIGH/LOW, a descrição dos potenciomentros… e nem mesmo vem escrito na placa o modelo a que se refere. Acesso o datasheet do módulo e vejo que as posições também não batem. Como testá-lo sem queimá-lo?

    Obrigado! Abraços e parabéns pelos artigos.

    1. Adilson, bom dia.

      Recebi um kit MASTER e fiz um script como o acima, mas acendendo LEDs – coisa simples, só para testar a sensibilidade do sensor.

      Fiz um circuito simples, com um LED indicando estado LOW e outro indicando estado HIGH do sensor. Leio a porta digital dele e faço um IF ELSE.

      Em ambos os casos – VCC e GND trocando os pinos já que o módulo não tem nenhuma indicação de qual é VCC e qual é GND – os LEDS ficam piscando indefinidamente, e vejo pela saida Serial que o estado 0 e 1 ficam se alternando todo o tempo, em cada LOOP.

      Mesmo mexendo nos controles de tempo e sensibilidade, isso não se altera. Acho que o módulo veio com defeito… como fazer um RMA?

      Obrigado. Abs!

      1. Boa tarde David,

        Entre em contato pelo email [email protected] para receber orientações sobre o procedimento de troca.

        Abraço!

        Adilson – Equipe FILIPEFLOP

  41. Ola, sou leigo no assunto mas gostaria de montar uma armadilha fotografica apartir de uma web cam ou camera digital comum, dai cheguei ate este post do sensor de presença. teria como montar algo e compartilhar ?

  42. boa tarde Filipe, estou com uma duvida no projeto, se estou com um modulo relé, não preciso de utilizar o diodo, transistor ?

    Johann Klabund Rossmann
    1. Olá Johann.

      Isso mesmo.
      O Módulo relé já vem com todo o circuito de proteção e acionamento do relé na placa.
      Quando se usa apenas o relé, esse circuito de proteção e acionamento devem ser utilizados.
      Veja mais informações nos seguintes links:
      http://engenheirando.com/eletronica/reles/
      http://br-arduino.org/2014/12/controlando-um-rele-no-arduino-com-seguranca-blink-diodo-e-transistor.html
      Veja o seguinte circuito de um módulo relé básico.
      https://goo.gl/images/C2BZ1e
      Note que ele já possui todo o circuito necessário para acionamento do relé.

      Giovanni Bauermeister
  43. Boa tarde: peço e agradeço o seu contacto, pois preciso sua ajuda para instalar uma buzina c. a. de 220v, ou continua de 12v, comandada por um sensor de presença de cão e gato que assaltam meu quintal.

    Telefone 278 262 233. se me mandar o esquema de ligação, eu executo o trabalho. diga-me o custo do seu esquema para eu enviar seu trabalho, ou então a placa de ligações já feita e eu aqui é só ligar o sensor e a buzina. Obrigado.

Trackbacks and Pingbacks

  1. […] e confira um post também com este sensor ensinando Como acender uma lâmpada com Sensor de Presença e Arduino. Até a […]