Índice:
- Etapa 1: LEDs precisam de corrente para serem limitados
- Etapa 2: Faça uma lanterna
- Etapa 3: Internet das coisas com esta lanterna?
- Etapa 4: configurar o servidor MQTT
- Etapa 5: preparar um editor
Vídeo: Da lanterna ao sensor de movimento com ESP8266 e MQTT: 5 etapas (com imagens)
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
Nesta postagem, eu apresentaria os itens abaixo:
- LEDs precisam de um circuito de limitação de corrente
- como fazer uma lanterna
- fazer uma luz alimentada por bateria portátil, e escurecer os LEDs por ESP8266 via MQTT
O vídeo é uma recapitulação e uma breve explicação de como isso funciona,
Eu planejava incluir o sensor PIR, mas o tutorial fica um pouco longo para que o sensor PIR seja apresentado na segunda parte deste tópico
Então vamos começar.
Etapa 1: LEDs precisam de corrente para serem limitados
Para os iniciantes, isso é estranho considerando como normalmente acender uma lâmpada incandescente ou fluorescente. Não se preocupe, as lâmpadas LED na prateleira já vêm com um adaptador de energia AC-DC e uma limitação de corrente. Mas seria bom fazer algo do zero.
Uma chave para girar um LED é um circuito de limitação de corrente. Funciona como uma válvula de corrente para que, uma vez que a tensão aplicada ao LED tornando-o condutiva, a corrente que flui pelos LEDs não possa ser maior do que a regulada pelo circuito. As falhas de LEDs geralmente resultam de superaquecimento. Nenhum circuito limitador de corrente instalado é uma maneira segura de queimar os LEDs em alguns segundos. Aliás, fixar os chips de LED, aqueles que vêm na moldura de alumínio, em um dissipador de calor reduzem o chip de LED e geralmente recomendado.
Eu estava coçando muito minha cabeça quando aprendi isso por volta de 2015, e ainda coçando minha cabeça (por diferentes motivos). Aprendi com este tutorial e sua explicação clara me salvou alguns cratches.
O circuito está conectado. As linhas em negrito significam a rota de carga principal, e as mais finas indicam o mecanismo de controle para controlar a corrente da rota principal que é cerca de 150 mA. A Wikipedia tem um pequeno artigo e algumas referências anexadas. A limitação de corrente pode ser construída com um transistor substituindo o MOSFET por transistores de carga de corrente média, como BD135, BD139.
Etapa 2: Faça uma lanterna
Peças necessárias:
- um MOSFET de canal N (IRF540N $ 1,62 / 10pcs, 30N06, $.1,75 / 10pcs)
- um transistor NPN (como S8085)
- 3,9 ohm - resistor de 2W, a corrente limitada em torno de 0,6 / 3,9 = 153mA
- Resistor 100kR (1 / 4W)
- Um interruptor push-lock
- Há 0,5 W 8mm LED, $ 3,18 / 100pcs aqui
- Uma bateria de lítio 18660. Eu salvei alguns deles de um banco de energia. Bateria do laptop (4, 6, 8 células) feita de 18.650 células, mas cuidado com isso.
- 1 placa de reforço de até 12V, como esta, $ 0,56
- 1 carregador de lítio como este, $ 0,30
A principal diferença para o circuito acima é o uso de uma bateria de lítio (18660) com placa de reforço em vez de um adaptador de força de 5V mock-up.
A última foto mostra a lanterna final e ela estava carregando de qualquer fonte micro USB (> 1A).
Etapa 3: Internet das coisas com esta lanterna?
Eu divido essa parte em três etapas:
- Prepare um assinante (este)
- Configure o servidor MQTT (próxima etapa)
- e preparar um editor (o próximo)
Partes:
Primeiro, sim, usei aquele chavão, também conhecido como IOTs, mas este poderia fazer uma boa combinação de usar o circuito na Etapa 2 com um ESP8266 e, em seguida, controlar a intensidade da luz pelo método MQTT.
As peças do circuito são idênticas, exceto:
- Substitua 12V boost up por MT3608 boost up board, $ 1,92 / 5pcs, este pode aumentar a tensão de uma bateria 18650 (cerca de 3,7V) para 28 V, o suficiente para alimentar 8LEDs (em vez de 3).
- A posição un-push no switch está conectada ao GPIO 1 ou 2 no ESP8266 para o sinal PWM.
- ESP8266 01, $ 1,68 cada. Como este
- AMS1117 3,3 V, um regulador de tensão para ESP8266, alguns capacitores
- Um módulo USB para flash ESP8266, $ 0,78 / pcs como este
Por falar nisso. esses links são para sua conveniência.
Soldando e carregando:
- Soldar as peças e usar os esquemas acima. Alguns circuitos de tensão 3.3 pré-fabricados podem economizar algum tempo ($ 1,38 / 5 unidades como este). Fiquei confuso ao lembrar do pino ao inverter a placa PCB e acabei por satisfazer algum regulador de tensão AMS1117.
- Próximo. Faça uma pequena modificação como na terceira foto para manter o GPIO 0 pressionado para GND, toque rapidamente no pino RST com pino GND para colocar o ESP8266 no modo Flash.
- Baixe o código aqui do meu GitHub e envie o código para ESP 8266 usando o IDE do Arduino.
Eu destaquei a linha para mostrar o tópico que o assinante assinou. Qualquer mensagem postada neste tópico será repassada para outros clientes (assinantes) deste tópico. O EPS8266 neste circuito ouvirá a mensagem JSON postada no tópico e disparará se uma alteração foi feita no canal Três
* Era uma vez, pensei que poderia colocar um resistor pull-down (100k) para aterrar o Gate do MOSFET quando o ESP8266 não era apresentado. Isso funciona na ausência de um ESP8266, mas com ESP8266, o resistor também puxa para baixo o GPIO0 ou 2 para GND, tornando-os em um modo Flash ou não inicializa (quando GPIO2 está BAIXO)). Você verá um verde sólido se isso acontecer.
Etapa 4: configurar o servidor MQTT
MQTT (Message Queuing Telemetry Transport) é um protocolo de mensagens baseado no método publicar-assinar. O dispositivo que hospeda a mensagem MQTT de entrada e saída é chamado de intermediário. Como um corretor real, ele hospeda a troca entre editores (vendedores) e assinantes (compradores). Nenhum dinheiro muda de mãos. Existem muitos tutoriais para isso.
Aqui está a recapitulação. Raspberry Pi é o dispositivo mais popular para isso. Primeiro, instale o MQTT por:
sudo apt-get install mosquitto mosquitto-clients
teste se o servidor MQTT está funcionando, abrindo dois terminais no Raspberry, um digite a primeira linha e o outro para a próxima:
mosquitto_sub -h localhost -t "yourtopic"
mosquitto_pub -t "yourtopic" -h localost -m "diga algo"
Você deverá ver o "diga algo" aparecer no primeiro terminal. Walah! Funciona.
O "#" pode ser usado para ouvir qualquer tópico, substitua "seu tópico" por "#"
Agora que você não quer que alguém publique ou assine o seu servidor MQTT, você deve configurar uma senha, fazendo isso:
cd ~
mosquitto_passwrd -c pwfile mqtt_user
mqtt_user podem ser outros nomes de usuário de sua preferência, digite a senha duas vezes e atualize o arquivo.conf:
sudo nano /etc/mosquitto/mosquitto.conf
adiciona estas duas linhas:
allow_anonymous false
password_file / home / pi / pwfile
em seguida, reinicie o mosquito ao:
sudo systemctl restart mosquitto
faça um teste incluindo o nome com uma senha como:
mosquitto_sub -h localhost -t "yourtopic" -u "mqtt_user" -P "123456"
mosquitto_pub -h localhost -t "yourtopic" -u "mqtt_user" -P "123456" -m "isso é seguro?"
Além disso, se o MQTT recusar a conexão, tente fazer isso para colocar o serviço MQTT em segundo plano do sistema Linux:
mosquitto -d
Achei que essas referências são boas para se dar uma olhada. Aprendi algo com esses dois hoje.
- Adafruit:
- Stees-internet-guide.com
Etapa 5: preparar um editor
Para este, faço um painel simples para enviar a mensagem para o servidor MQTT. No modo de espera, o LCD mostra o relógio.
Partes:
- SSD1306 Tela, $ 2,41 cada
- EPS8266 WEMOS D1 Mini, $ 2,53 cada
- Um potenciômetro
- Um interruptor deslizante de 4 pinos.
- dois LEDs de 3 mm,
- alguns resistores
De solda:
Aqui está o esquema deste terminal:
Faça upload do código:
A marca WEMOS ESP8266 é agradável de trabalhar. Você só precisa de um micro USB, pressione o botão de upload no IDE do Arduino flash do chip. O código está aqui (GitHub):
Para publicar uma mensagem, pressione o interruptor para ligar o LED verde (e desligar o vermelho), em seguida, deslize o pino para cima e ajuste e, finalmente, pressione o botão novamente para enviar a mensagem para o servidor MQTT. O painel pode publicar uma mensagem JSON para 4 canais.
Dê uma olhada no destaque no código (captura de tela). Esse é o tópico para o qual o painel envia a mensagem, e nossos LEDs estão muito ansiosos para ver qualquer novidade da mensagem JSON
Isso é tudo. Espero que o tutorial seja útil.
Recomendado:
Lanterna Jack-O-Lanterna para usar: 5 etapas (com fotos)
Lanterna Jack-O-Lanterna para Vestir: Aqui está um ótimo projeto impresso em 3D a ser realizado antes do Halloween. Siga as etapas abaixo, para se tornar uma Jack-O-Lanterna Wearable Light Up 3D impressa, que você pode usar no pescoço ou colocar em sua mesa de trabalho para entrar no Hallowe
Sensor de movimento sob a iluminação da cama: 16 etapas (com imagens)
Sensor de movimento sob a iluminação da cama: Você já tentou sair da cama silenciosamente à noite apenas para tropeçar em alguma coisa e acordar toda a casa? Luzes noturnas com detecção de movimento instaladas discretamente sob sua cama fornecem luz de baixo nível brilhante o suficiente para guiá-lo em torno dos tijolos de LEGO perdidos
Campainha do sensor de movimento: 5 etapas (com imagens)
Campainha do sensor de movimento: quando contei ao meu filho Jayden sobre o desafio, ele imediatamente pensou em usar o conjunto LEGO WeDo. Ele joga Legos há anos, mas foi somente no início do ano letivo passado que ele teve a oportunidade de programar com WeDo 2.0
Sensor de movimento Openhab MQTT PIR: 7 etapas
Openhab MQTT PIR Motion Sensor: Olá, Neste instrutível, vou mostrar como você pode fazer seu próprio sensor de movimento para Openhab
Saída controlada por movimento - De uma luz com detecção de movimento: 6 etapas
Tomada controlada por movimento - a partir de uma luz com detecção de movimento: Imagine que você é um doce ou travessura indo para a casa mais assustadora do quarteirão. Depois de passar por todos os ghouls, fantasmas e cemitérios, você finalmente chega ao último caminho. Você pode ver o doce em uma tigela à sua frente! Mas de repente um gho