Índice:
- Etapa 1: peças e componentes
- Etapa 2: o sensor
- Etapa 3: Personalização do relógio em tempo real
- Etapa 4: Outros diversos a bordo
- Etapa 5: Esquemático
- Etapa 6: Software e lógica
Vídeo: Postino: o carteiro entregou alguma coisa ?: 6 etapas (com fotos)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:36
Não é uma ideia minha: um dia um amigo me pediu uma maneira de verificar remotamente se havia alguma correspondência em sua caixa de correio. A caixa de correio não está no caminho de acesso à sua porta, então, como ele é um menino preguiçoso, ele se perguntou se um gadget de tecnologia seria capaz de avisá-lo sobre qualquer carta na caixa de correio. Dei uma olhada no mercado e não consegui encontrar nenhum dispositivo pré-fabricado adequado às necessidades dele, então lancei um desafio para mim mesmo: por que não projetar e construir?
As restrições eram:
- alimentado por bateria com uma vida útil razoável entre as trocas de bateria;
- Comunicação WiFi;
- verificar apenas uma vez por dia se havia correspondência ou não;
A questão principal era: que tipo de sensor poderia atender às minhas necessidades? Um sensor de proximidade não funcionava, pois a verificação tinha que ser feita apenas uma vez por dia e não em tempo real; um sensor de peso também não, pois isso teria adicionado complexidade e problemas de sensibilidade (uma folha de papel pode ser muito leve). Minha escolha pousou em um sensor Time-of-Flight (um micro laser). Depois de calibrado para o tamanho da caixa de correio, qualquer coisa no meio teria acionado o sensor! Considerando as 3 restrições, decidi usar um ESP8266 (executando o software e vinculando ao WiFi), um sensor de tempo de voo VL6180 para a medição e um relógio em tempo real DS3231 para acionar todos os circuitos uma vez por dia: foi assim Postino nasceu!
Etapa 1: peças e componentes
- ESP8266-01 (ou ESP-12E NodeMCU)
- Sensor de tempo de voo VL6108
- Relógio em tempo real DS3231
- MosFET IRLZ44 N-channel
- Transistor BC547
- Resistores
- Bateria CR123
Etapa 2: o sensor
O coração do sistema é o sensor VL6180. Esta é uma tecnologia inovadora que permite que a distância absoluta seja medida independentemente da refletância do alvo. Em vez de estimar a distância medindo a quantidade de luz refletida de volta do objeto (que é significativamente influenciada pela cor e superfície), o VL6180X mede com precisão o tempo que a luz leva para viajar até o objeto mais próximo e refletir de volta para o sensor (Tempo -of-Flight). Combinando um emissor de infravermelho, um sensor de alcance e um sensor de luz ambiente em um pacote refluível três em um pronto para usar, o VL6180X é fácil de integrar e economiza para o fabricante do produto final longas e caras otimizações de design óptico e mecânico.
O módulo é projetado para operação de baixa energia. Eu usei a placa de breakout Pololu, que tem reguladores de tensão a bordo que permitem trabalhar em uma faixa de tensão de entrada de 2,7 V a 5,5 V.
O sensor permite 3 fatores de escala válidos que definem a faixa máxima de medição de 20 a 60 cm, com diferentes sensibilidades. Configurando um fator de escala de alcance, o alcance máximo potencial do sensor pode ser aumentado ao custo de uma resolução mais baixa. Definir o fator de escala para 2 fornece uma faixa de até 40 cm com resolução de 2 mm, enquanto um fator de escala de 3 fornece uma faixa de até 60 cm com resolução de 3 mm. Você tem que testar as 3 escalas com as dimensões da sua caixa de correio. Como o meu tinha 25 cm (H), usei fator de escala = 1.
Etapa 3: Personalização do relógio em tempo real
Para o RTC, usei uma placa de breakout DS3231 que inclui um EEPROM (inútil para o meu propósito) e uma bateria do tamanho de uma moeda. Como decidi alimentar o RTC por meio da bateria do dispositivo principal (um 3v CR123), removi a bateria tipo moeda; para economizar energia também removi a EEPROM (cortando cuidadosamente seus pinos) e o led integrado.
A bateria tipo moeda não foi útil para mim porque eu não precisava manter data / hora / minuto / segundo em tempo real, mas o RTC precisava apenas contar 24 horas e então acionar o alarme para ligar o dispositivo.
Etapa 4: Outros diversos a bordo
O acionamento do dispositivo é realizado por um transistor e circuito MosFET, acionado pelo alarme RTC. Assim que o alarme é reiniciado, o circuito corta a energia do dispositivo para outro ciclo de 24 horas. Quando o alarme é atingido, o DS3231 muda um pino de alto para baixo: em condições normais, o transistor está saturado e curto para a porta MosFET de aterramento. Uma vez que o alarme traz a base do transistor para o aterramento, ele abre e permite que o MosFET feche o circuito e forneça energia para o resto dos componentes.
Além disso, adicionei um jumper “test-1M”. O objetivo dessa opção é - se ativada - alterar o ciclo de uma vez por dia para uma vez por minuto, a fim de executar testes de implantação. Para alterar o intervalo de um dia para um minuto, primeiro você precisa fechar o jumper “Test-C” por cerca de 15 segundos, para ignorar o período de ativação do alarme do relógio e ligar o dispositivo. Quando os testes forem concluídos, abra os jumpers e reinicie o dispositivo (desligue e ligue).
Etapa 5: Esquemático
Etapa 6: Software e lógica
Durante os testes eu usei (por razões práticas) um controlador NodeMCU, então o software cuida disso configurando a variável CHIP para “NodeMCU” ou “esp8266”.
O esboço implementa a biblioteca WiFiManager para permitir que o dispositivo se conecte a um AP WiFi válido durante a primeira execução. Nesse caso, o dispositivo entra no modo AP, permitindo que você se conecte a ele e escolha a rede WiFi certa para se conectar. Em seguida, a configuração da rede é salva na EPROM para os ciclos subsequentes.
A variável REST_MSG contém a mensagem http a ser enviada quando o sensor encontra um objeto na caixa de correio. No meu caso, ele envia uma mensagem para um servidor REST domotic, mas você pode alterá-lo como preferir: uma mensagem BOT do Telegram, um evento IFTTT WebHook, etc.
O resto do esboço está todo na função setup (), já que o loop nunca é alcançado. Após as configurações necessárias para as várias bibliotecas, o software acerta a hora do relógio para 00:00:01 e o alarme para uma vez por dia (ou uma vez por minuto se o jumper “test-1M” estiver ativado). Em seguida, faz a medição, envia a notificação (se algum objeto for encontrado na caixa de correio) e zera o pino de alarme, desligando o aparelho. Ao final do ciclo, apenas o RTC está ligado, contando 24 horas. O jumper Test-1M é conectado ao pino RX do ESP8266, usado como GPIO-3 por meio da configuração: setMode (PIN, FUNCTION_3). Devido a isso, você não pode usar o monitor serial durante a execução do ESP8266: a linha “#define DEBUG” (que permite todas as impressões seriais no esboço) é usada apenas quando um NodeMCU é instalado no lugar de um ESP8266.
O ESP8266 lida com a comunicação I2C com o RTC e o sensor por meio de seus pinos GPIO-0 e GPIO-2, inicializados na biblioteca Wire.
O código completo pode ser baixado deste link.
Vice-campeão no Concurso de Tecnologia Assistiva
Recomendado:
Renegade-i (testador de IC programável que parece a coisa real): 3 etapas (com fotos)
Renegade-i (testador de IC programável que parece a coisa real): O SONHO DE MILHÕES DE DÓLARES. Você já sonhou em ter seu próprio testador de IC em casa? Não apenas um gadget que pode testar IC, mas uma máquina “programável” que parece ser um dos principais produtos dos maiores jogadores na indústria de teste de semicon, suc
Reaproveitando um LED RF remoto para controlar "qualquer coisa" !: 5 etapas
Reaproveitando um remoto LED RF para controlar "qualquer coisa" !: Neste projeto, vou mostrar como reaproveitar um controle remoto LED RF para controlar praticamente tudo o que você quiser com ele. Isso significa que veremos mais de perto o processo de transmissão do remoto RF, leremos os dados enviados com um Arduino µC
Coisa de distância social: 9 etapas (com fotos)
Coisa de distância social: Um projetor a laser de distanciamento social pessoal. Esta construção tem o objetivo de ser um projeto rápido e simples para ajudar a criar consciência sobre o distanciamento social. Quando o distanciamento social foi introduzido pela primeira vez, estava claro que nem todas as pessoas o praticavam corretamente o
MQ7-MONITORAMENTO DE POLUIÇÃO USANDO COISA FALAR E NODEMCU: 4 etapas
MQ7-MONITORAMENTO DE POLUIÇÃO USANDO COISA FALAR E NODEMCU: A poluição é o maior problema do nosso mundo de hoje. Mas como podemos monitorar nossa poluição por perto, agora é muito fácil. VAMOS COMEÇAR:
Alarme de celular para uma motocicleta, carro ou qualquer coisa que você quiser: 7 etapas (com fotos)
Alarme de celular para motocicleta, carro ou o que você quiser: Cansei de ouvir alarmes normais fazendo muito barulho e ninguém mais ligando para eles. Também não sei se alguém mexeu na minha bicicleta porque estava muito longe para ouvir o alarme. Então resolvi fazer esse alarme usando um celular antigo