- Material Necessário
- Diagrama de circuito
- Microcontrolador PIC:
- Código e Explicação
- Trabalho do sensor PIR com microcontrolador PIC:
PIR (infravermelho passivo) ou sensor de movimento é usado para detectar o movimento do corpo humano ou objetos em movimento. Sempre que alguém chega na faixa do sensor PIR, ele dá alta em seu pino de saída. Anteriormente, fizemos a interface do PIR com outros microcontroladores:
- Detector de movimento Arduino usando sensor PIR
- Sistema de segurança residencial Raspberry Pi baseado em IOT com alerta de e-mail
- Luz de escada automática com microcontrolador AVR
Hoje vamos fazer a interface do PIR com o microcontrolador PIC PIC16F877A. Neste circuito, se algum objeto em movimento estiver na faixa do sensor PIR, a campainha começará a apitar.
Material Necessário
- PicKit 3
- Sensor PIR.
- PIC16F877A IC
- 40 - Suporte de pino IC
- Quadro de desempenho
- 20 MHz Crystal OSC
- Alfinetes de Bergstick femininos e masculinos
- Capacitor 33pf - 2Nos, 100uf e 10uf cap.
- Resistor de 680 ohm, 10K e 560 ohm
- LED de qualquer cor
- 1 kit de solda
- IC 7805
- Adaptador 12V
- Buzzer
- Fios de conexão
- Tábua de pão
Sensor PIR:
O sensor PIR é barato, de baixo consumo de energia e fácil de usar Detecções de movimento Sesnor. O sensor PIR só recebe raios infravermelhos, não emite, por isso é chamado de passivo. O PIR detecta qualquer mudança no calor e, se houver uma mudança, ele dá HIGH em OUTPUT. Sensor PIR também conhecido como sensor de movimento Piroelétrico ou IR.
Todo objeto emite uma certa quantidade de infravermelho quando aquecido, da mesma forma que o corpo humano emite infravermelho devido ao calor do corpo. Infravermelho criado por cada objeto devido ao atrito entre o ar e o objeto. O principal componente do sensor PIR é o sensor piroelétrico. 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.
Saiba mais sobre o sensor PIR aqui. Você também pode ajustar a sensibilidade à distância e o tempo de duração para o qual o pino de saída ficará alto assim que o movimento for detectado. Possui dois botões de potenciômetro para ajustar esses dois parâmetros.
Diagrama de circuito
Microcontrolador PIC:
Para programar o microcontrolador PIC para fazer a interface PIR, precisaremos de um IDE (Integrated Development Environment), onde ocorre a programação. Um compilador, onde nosso programa é convertido em um formato legível MCU chamado de arquivos HEX. Um IPE (Integrated Programming Environment), que é usado para despejar nosso arquivo hex em nossos MCUs PIC.
IDE: MPLABX v3.35
IPE: MPLAB IPE v3.35
Compilador: XC8
A Microchip forneceu todos esses três softwares gratuitamente. Eles podem ser baixados diretamente de sua página oficial. Também forneci o link para sua conveniência. Depois de baixado, instale-os em seu computador. Se você tiver algum problema para fazer isso, você pode ver o Vídeo fornecido no final.
Para despejar ou carregar nosso código no PIC, precisaremos do PICkit 3. O programador / depurador PICkit 3 é um depurador no circuito simples e de baixo custo que é controlado por um PC executando o software MPLAB IDE (v8.20 ou superior) em uma plataforma Windows. O programador / depurador PICkit 3 é parte integrante do conjunto de ferramentas do engenheiro de desenvolvimento. Além disso, também precisaremos de outro hardware como placa de Perf, estação de solda, CIs PIC, osciladores de cristal, capacitores, etc. Mas vamos adicioná-los à nossa lista à medida que avançarmos em nossos tutoriais.
Estaremos programando nosso PIC16F877A usando a opção ICSP que está disponível em nosso MCU.
Para gravar o código, siga as etapas abaixo:
- Inicie o MPLAB IPE.
- Conecte uma extremidade do PicKit 3 ao PC e a outra extremidade aos pinos ICSP na placa de desempenho.
- Conecte-se ao seu dispositivo PIC clicando no botão conectar.
- Procure o arquivo Blink HEX e clique em Programa.
Se você é novo no microcontrolador PIC, primeiro siga os tutoriais abaixo para aprender como usar e programar o PIC:
- Introdução ao Microcontrolador PIC: Introdução ao PIC e MPLABX
- Escrevendo Seu Primeiro Programa com Microcontrolador PIC e Configurando Bits de Configuração
- LED piscando com microcontrolador PIC
Código e Explicação
Primeiro, precisamos definir os bits de configuração no microcontrolador pic e, em seguida, iniciar com a função void principal .
No código abaixo, 'XC.h' é o arquivo de cabeçalho que contém todos os nomes amigáveis para os pinos e periféricos. Também definimos a frequência do oscilador de cristal, a conexão dos pinos PIR e Buzzer no código abaixo.
#incluir
No void main (), ' TRISB = 0X00' é usado para instruir o MCU que os pinos PORTB são usados como OUTPUT, 'TRISC = 0Xff' é usado para instruir o MCU que os pinos PORTB são usados como INPUT. E 'PORTB = 0X00' é usado para instruir o MCU a fazer todas as SAÍDAS de RB3 baixas.
TRISB = 0X00; TRISC = 0Xff; PORTB = 0X00; // Tornar todas as saídas de RB3 LOW
Conforme o código abaixo, sempre que o PIR ficar ALTO, a campainha ficará ALTA ou permanecerá DESLIGADA.
while (1) // Entrar no loop Infinie While {if (PIR == 1) {Buzzer = 1; __delay_ms (1000); // Aguarde} else {Buzzer = 0; }}}
O código completo com um vídeo de demonstração é fornecido no final deste projeto.
Trabalho do sensor PIR com microcontrolador PIC:
Este projeto não tem nenhuma configuração de hardware complicada, estamos novamente usando a mesma placa de microcontrolador PIC (conforme mostrado abaixo) que criamos no tutorial de LED piscando. Simplesmente conecte o Módulo Sensor PIR com sua placa Microcontroladora PIC de acordo com o diagrama de conexão. Quando terminar de fazer as conexões, simplesmente despeje o código usando seu programador PicKit 3 conforme explicado no tutorial anterior e aproveite sua saída.
Depois de fazer o upload do programa, o sensor PIR está pronto para dar OUTPUT. Sempre que, um ser humano ou objeto que emita IR venha na faixa de PIR dá ALTO para SAÍDA. E, com base nessa saída, a campainha funcionará. Se a saída PIR for alta, a entrada da campainha ficará alta e vice-versa.
Você pode controlar a distância de detecção e o atraso de tempo usando dois potenciômetros fixos no módulo PIR. Para saber mais sobre o sensor PIR segue o link.