Índice:
- Etapa 1: Instalação da Biblioteca
- Etapa 2: Código
- Etapa 3: Config MQTT Client (MQTTBOX)
- Etapa 4: Resultado da execução do programa
Vídeo: NodeMCU - Exemplo básico de MQTT: 4 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
Esta lição mostrará o uso do protocolo MQTT básico na placa NodeMCU. Usamos o MQTTBox como o cliente MQTT aqui e usaremos o NodeMCU para concluir as seguintes operações:
Publique "hello world" no tópico "outTopic" a cada dois segundos. Inscreva-se no tópico "inTopic" e imprima todas as mensagens recebidas. Assume que as cargas recebidas são strings e não binários. Se a mensagem assinada for "1", acenda o LED integrado. Desligue o LED integrado se a mensagem de inscrição for “0”.
Preparação: Osoyoo NodeMCU x1
Cabo USB x1
PC x1
IDE Arduino (Versin 1.6.4+)
Conecte o NodeMCU ao PC via cabo USB.
Etapa 1: Instalação da Biblioteca
Instale PubSubClientlibrary
Precisamos instalar a biblioteca de endpoint MQTT (PubSubClient) para nos comunicarmos com o broker MQTT, faça o download da biblioteca no seguinte link:
Descompacte o arquivo acima, mova a pasta descompactada para a pasta da biblioteca do Arduino IDE.
Abra o IED Arduino, você pode encontrar o “pubsubclient” na coluna “Exemplos”.
Instale o cliente MQTT:
usaremos o MQTTBox como o cliente MQTT. faça download de:
Etapa 2: Código
abra Arduino IDE–> Arquivo–> Exemplo–> pubsubclient–> mqtt esp8266, você obterá o código de amostra.
Edite o código para se ajustar às suas próprias configurações de WiFi e MQTT conforme as seguintes operações: 1) Hotspot Configration: Encontre a linha de código abaixo, coloque seu próprio SSID e senha lá.
const char * ssid = “your_hotspot_ssid”; const char * password = “your_hotspot_password”;
2) Configuração de endereço do servidor MQTT, aqui usamos o corretor MQTT gratuito "broker.mqtt-dashboard.com". Você pode usar sua própria URL do broker MQTT ou endereço IP para definir o valor mqtt_server acima. Você também pode usar algum servidor MQTT gratuito famoso para testar o projeto, como “broker.mqtt-dashboard.com”, “iot.eclipse.org” etc.
const char * mqtt_server = “broker.mqtt-dashboard.com”;
3) Configurações do cliente MQTT Se o seu corretor MQTT exigir autenticação de ID do cliente, nome de usuário e senha, você precisa
mudança
if (client.connect (clientId.c_str ()))
Para
if (client.connect (clientId, userName, passWord)) // coloque seu clientId / userName / passWord aqui
Caso contrário, apenas mantenha-os como padrão. Depois disso, escolha o tipo de placa e o tipo de porta correspondentes conforme abaixo e, em seguida, carregue o esboço para o NodeMCU.
- Placa:”NodeMCU 0.9 (Módulo ESP-12)”
- Frequência da CPU:”80 MHz” Tamanho do Flash:”4M (3M SPIFFS)”
- Velocidade de upload:”115200 ″
- Porta: Escolha sua própria porta serial para seu NodeMCU
Etapa 3: Config MQTT Client (MQTTBOX)
Nesta etapa, mostraremos como criar um cliente MQTT no MQTTBox.
Abra seu MQTTBox e clique no botão azul para incluir um novo cliente MQTT.
Configure as CONFIGURAÇÕES DO CLIENTE MQTT conforme abaixo:
- Nome do cliente MQTT - Escolha qualquer nome que desejar
- Protocolo - Escolha “mqtt / tcp”
- Host - digite seu “mqtt_server” nesta coluna, certifique-se de que é igual ao seu esboço. (Usamos “broker.mqtt-dashboard.com” aqui)
- Mantenha as outras configurações como padrão
- Clique para salvar suas mudanças.
Em seguida, você entrará automaticamente na nova página. Se toda a configuração acima estiver correta, “Não conectado” mudará para “Conectado”, o nome do cliente MQTT e o nome do host serão exibidos no topo desta página.
Configuração de tópico: certifique-se de que o tópico de publicação do cliente MQTT seja o mesmo que o tópico de assinatura de esboço do Arduino (inTopic aqui). Certifique-se de que o tópico de assinatura do cliente MQTT seja o mesmo que o tópico de publicação de esboço do Arduino (outTopic here).
Etapa 4: Resultado da execução do programa
Assim que o upload for concluído, se o nome do ponto de acesso wi-fi e a configuração de senha estiverem corretos e o broker MQTT estiver conectado, abra o Serial Monitor, você verá a mensagem de publicação “hello world” no monitor serial.
Em seguida, abra o cliente MQTT e publique a carga útil “1” no tópico, este NodeMCU receberá essas mensagens assinando o “inTopic” e o LED acenderá.
Publique a carga útil “0” neste tópico, o LED NodeMCU será desligado.
Recomendado:
Projeto de circuito de aquisição, amplificação e filtragem de um eletrocardiograma básico: 6 etapas
Aquisição, amplificação e projeto do circuito de filtragem de um eletrocardiograma básico: para concluir este instrutível, as únicas coisas necessárias são um computador, acesso à Internet e algum software de simulação. Para os fins deste projeto, todos os circuitos e simulações serão executados no LTspice XVII. Este software de simulação contém
Programa básico C ++: 11 etapas
Programa C ++ Basic: neste programa você aprenderá o básico de c ++ codificando um programa c ++ simples para criar vários usuários e exibir esses usuários, espero que gostem
Como fazer um site básico usando o bloco de notas: 4 etapas
Como fazer um site básico usando o bloco de notas: Alguém já se perguntou " como faço um site a partir de um programa básico de escrita? &Quot; Bem, obviamente, não especificamente … De qualquer forma, aqui vou mostrar como fazer um BASIC site usando apenas o notepad
Como construir um jogo ou computador básico (todos os componentes): 13 etapas
Como construir um jogo ou computador básico (todos os componentes): Então você quer saber como construir um computador? Nestes Instructables, vou ensiná-lo a construir um computador desktop básico. Aqui estão as peças necessárias: PC Case Placa-mãe (certifique-se de que é PGA se AMD e LGA se Intel) CPU Cooler Case Ventiladores Pow
Extender wi-fi básico Sonoff - Relé de contato seco MQTT - 5v DC de baixa tensão: 6 etapas
Sonoff Basic Wifi Extender - MQTT Dry Contact Relay - 5v DC Low Voltage: Ok, eu tinha alguns dispositivos Sonoff básicos de primeira geração e não quero usá-los com 220v porque eles ainda não eram seguros naquela versão. Eles estiveram deitados por um tempo esperando para fazer algo com eles. Então eu tropecei na martin-ger