- Componentes necessários
- Diagrama de circuito para detector de movimento baseado em sensor Raspberry Pi e PIR
- Código Python para Raspberry Pi:
Os sistemas de segurança desempenham um papel importante no nosso dia a dia e aí podemos encontrar muitos tipos diferentes de sistemas de segurança com diferentes tipos de tecnologias e com diferentes faixas de preço. Sendo um entusiasta da eletrônica, você pode fazer um sistema de segurança simples, gastando alguns dólares e algum tempo livre. Aqui neste artigo, estou compartilhando um guia faça você mesmo para fazer um alarme simples de detector de movimento baseado em sensor PIR e Raspberry pi que ligará a campainha quando o sensor PIR detectar qualquer movimento humano na área. Também cobrimos um circuito detector de movimento baseado em sensor PIR simples em um de nossos artigos anteriores, onde cobrimos o funcionamento do sensor PIR em detalhes.
Componentes necessários
- Raspberry Pi 3 (qualquer modelo)
- Sensor PIR
- Buzzer
- Tábua de pão
- Fios de conexão
Funcionamento do sensor PIR
O sensor infravermelho passivo (PIR) é chamado de passivo porque recebe infravermelho, não emite. Basicamente, ele detecta qualquer mudança no calor e, sempre que detecta alguma mudança, seu PIN de saída torna-se ALTO. Eles também são chamados de sensores de movimento piroelétricos ou infravermelhos.
Aqui, devemos observar que todo objeto emite alguma quantidade de infravermelho quando aquecido. O ser humano também emite infravermelho por causa do calor do corpo. Os sensores PIR podem detectar pequenas variações no infravermelho. Sempre que um objeto passa pelo alcance do sensor, ele produz infravermelho devido ao atrito entre o ar e o objeto e é capturado pelo PIR.
O principal componente do sensor PIR é o sensor piroelétrico mostrado na figura (cristal retangular atrás da tampa de plástico). Junto com isso, BISS0001 ("Micro Power PIR Motion Detector IC"), alguns resistores, capacitores e outros componentes usados para construir o sensor PIR. BISS0001 IC pega a entrada do sensor e faz o processamento para tornar o pino de saída HIGH ou LOW de acordo.
O sensor piroelétrico se divide em duas metades, quando não há movimento, as duas metades permanecem no mesmo estado, significa que os dois detectam o mesmo nível de infravermelho. Assim que alguém entra na primeira metade, o nível infravermelho de uma metade torna-se maior do que o outro, e isso faz com que os PIRs reajam e torna o pino de saída alto.
O sensor piroelétrico é coberto por uma tampa de plástico, que contém várias lentes Fresnel. Essas lentes são curvas de tal maneira que o sensor pode cobrir uma ampla faixa.
Diagrama de circuito para detector de movimento baseado em sensor Raspberry Pi e PIR
Conforme mostrado no diagrama esquemático acima para Raspberry Pi e detector de movimento baseado em sensor PIR, o pino positivo do sensor PIR é conectado com o pino 4 (5v) e o pino de aterramento do sensor PIR é conectado com o pino 6 (aterramento) do Raspberry Pi (Você pode encontrar aqui o Diagrama de Pin do Raspberry Pi). O pino de saída do sensor PIR é conectado ao GPIO 23 do Raspberry pi, que é usado para fornecer entrada ao Raspberry Pi. O pino 24 do GPIO que é declarado aqui para saída está conectado com o positivo da campainha e o aterramento da campainha é conectado com o aterramento (pino 6) do raspberry pi.
Código Python para Raspberry Pi:
O código Python para este detector de movimento baseado em sensores raspberry pi e PIR é bastante simples e pode ser facilmente compreendido com os comentários embutidos na seção de código abaixo. Eu declarei os pinos 23 e 24 do GPIO como pinos de entrada e saída.
enquanto True: if GPIO.input (23): #Se houver um movimento, o sensor PIR dá entrada para GPIO23 GPIO.output (24, True) #Output dado ao Buzzer por GPIO24 time.sleep (1) #Buzzer liga para 1 segundo GPIO.output (24, False)
Um loop ' while ' é usado como 'True' para que o conteúdo dentro do loop sempre seja executado. if GPIO.input (23): a instrução detecta se o pino 23 do GPIO é alto e, se o mesmo for verdadeiro, torna o PIN de saída 24 alto. A função time.sleep (secs) é usada para pausar o programa em python por um tempo específico, onde 'secs' é o tempo em segundos. Então aqui costumávamos pausar por 1 segundo. Na próxima linha, tornamos a saída em 24 como falsa para que a campainha pare até que o loop comece a próxima iteração, já que o loop While está sempre definido como verdadeiro sem qualquer pré-condição.