Arduino UNO R4 - Sensor de Porta
Este tutorial ensina como usar um Arduino UNO R4 e um sensor de porta para monitorar o estado aberto ou fechado da sua porta ou janela. Vamos aprender a instalar o sensor de porta e conectá-lo ao Arduino, e depois a programar o Arduino para ler o estado do sensor de porta.

Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables STEM V4 IoT Starter Kit (Arduino included) | |
| 1 | × | DIYables STEM V4B IoT Starter Kit (Arduino included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Sensor de Porta
Pinagem
O sensor de porta tem duas partes.
- Uma chave reed com dois conectores metálicos
- Um ímã

Como em uma chave ou botão comum, NÃO precisamos distinguir entre os dois pinos da chave reed.
Como Funciona
O ímã é fixado na porta ou na janela, que se move, e a chave reed é fixada no batente, que não se move. Quando a porta está fechada, essas duas partes ficam próximas uma da outra.
- Quando o ímã está perto da chave reed, o circuito da chave reed fecha.
- Quando o ímã está longe da chave reed, o circuito da chave reed abre.

※ Nota:
A chave reed NÃO envia sinais LOW ou HIGH diretamente. Ela só mostra os estados aberto ou fechado. A forma como a conectamos ao Arduino UNO R4 determina se o pino lê LOW, HIGH ou um valor flutuante (que é imprevisível). Para evitar esse valor flutuante, precisamos conectar um resistor pull-up ou pull-down ao pino do Arduino UNO R4.
Se conectarmos um pino da chave reed ao GND e o outro pino a um pino de entrada do Arduino UNO R4 com um resistor pull-up (interno ou adicionado separadamente):
- Quando o ímã está perto da chave reed, o pino de entrada do Arduino UNO R4 lê LOW.
- Quando o ímã está longe da chave reed, o pino de entrada do Arduino UNO R4 lê HIGH.
Assim:
- Para saber se a porta está aberta ou fechada, olhe o pino de entrada do Arduino UNO R4:
- Se o pino mostra LOW, a porta está fechada.
- Se o pino mostra HIGH, a porta está aberta.
- Para saber quando a porta abre ou fecha, observe as mudanças no estado do pino de entrada do Arduino UNO R4:
- Uma mudança de LOW para HIGH significa que a porta está abrindo.
- Uma mudança de HIGH para LOW significa que a porta está fechando.
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Veja A melhor forma de alimentar o Arduino Uno R4 e outros componentes.
Como Programar o Sensor de Porta
- O pino do Arduino UNO R4 é configurado no modo de entrada digital com a função pinMode(). Por exemplo, o pino 9.
- Lê o estado do pino do Arduino UNO R4 usando a função digitalRead().
Código Arduino UNO R4 - Verificar o Estado Aberto e Fechado da Porta
Passos Rápidos
Siga estas instruções passo a passo:
- Se esta é a sua primeira vez usando o Arduino Uno R4 WiFi/Minima, consulte o tutorial sobre como configurar o ambiente para o Arduino Uno R4 WiFi/Minima na Arduino IDE.
- Ligue os componentes conforme o diagrama fornecido.
- Conecte a placa Arduino Uno R4 ao seu computador usando um cabo USB.
- Abra a Arduino IDE no seu computador.
- Selecione a placa Arduino Uno R4 correta (por exemplo, Arduino Uno R4 WiFi) e a porta COM.
- Copie o código acima e abra-o na Arduino IDE.
- Clique no botão Upload na Arduino IDE para enviar o código ao Arduino UNO R4.
- Aproxime o ímã da chave reed e depois afaste-o.
- Confira os resultados no Serial Monitor.
Código Arduino UNO R4 - Detectar Eventos de Abertura e Fechamento da Porta
- Copie o código e abra-o na Arduino IDE.
- Clique no botão Upload na Arduino IDE para enviar o código ao seu Arduino UNO R4.
- Aproxime um ímã da chave reed e depois afaste-o.
- Confira os resultados no Serial Monitor.
Vídeo
O vídeo de demonstração abaixo usa o código abaixo: