Arduino & IoT Academy · Aula

Publique tópicos dos sensores

Envie leituras para tópicos nomeados.

Aula 3 de 413 etapas

Publique tópicos dos sensores é uma aula grátis de Arduino & IoT Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Arduino & IoT Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Arduino & IoT Academy inclui 4 aulas no total.

Enviar dados é publicar

Depois de conectado, compartilhar uma leitura exige apenas uma chamada. Você publica um valor em um tópico, e o intermediário o entrega aos assinantes.

Escolher um tópico claro

Escolha um caminho de tópico descritivo, como home/garden/soil. Bons nomes facilitam a leitura e o encaminhamento em um sistema que cresce.

home/garden/soil/moisture

A chamada publish

O formato básico recebe um tópico e uma mensagem. Ambos são strings simples, então o MQTT não se importa com o conteúdo do carga útil.

client.publish("home/garden/temp", "23.5");

Cargas úteis são apenas texto

Uma carga útil é uma string simples de bytes. Você decide o seu significado, seja um número, uma palavra ou dados estruturados.

É preciso converter números

As leituras de sensores geralmente são números de ponto flutuante. Transforme-as primeiro em uma string com dtostrf ou String() antes de publicar.

char buf[8];
dtostrf(temp, 4, 1, buf);
client.publish("home/temp", buf);

Enviar dados estruturados como JSON

Para reunir vários valores, formate a carga útil como JSON. Uma mensagem pode transportar temperatura e umidade juntas.

client.publish("home/dht", "{\"t\":23.5,\"h\":55}");

Não sobrecarregar o intermediário

Publicar milhares de vezes por segundo desperdiça energia e largura de banda. Adicione um intervalo adequado para que as mensagens continuem úteis.

Controlar o tempo com millis

Use millis() em vez de delay para publicar a cada poucos segundos. Seu dispositivo continua respondendo enquanto espera.

if (millis() - last > 5000) {
  last = millis();
  publishReading();
}

Reter a leitura mais recente

Adicione uma sinalização retain para que o intermediário armazene o valor mais recente. Assim, novos painéis mostrarão os dados no instante em que se conectarem.

client.publish("home/temp", buf, true);

Um tópico por grandeza

Dê a cada medição o seu próprio tópico, como .../temp e .../humidity. Uma separação clara mantém os assinantes simples.

Confirmar se funcionou

A chamada publish retorna true quando é bem-sucedida. Registre esse resultado ou observe com um cliente MQTT para computador, a fim de confirmar que os dados saíram da placa.

Verificação rápida

Você quer que um novo painel mostre imediatamente a última temperatura, antes mesmo de o sensor publicar novamente. O que ajuda?

Recapitulação

Você aprendeu a publicar dados de sensores: converter valores em strings, escolher tópicos claros, controlar os envios com millis e reter o valor mais recente. 🎉

Grátis para começar

Aprenda C++ com um tutor de IA — grátis

Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.

Cursos
30
Aulas
120

Perguntas Frequentes

A aula “Publique tópicos dos sensores” é grátis?

Sim — o texto completo de “Publique tópicos dos sensores” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Arduino & IoT Academy, atualize para CoddyKit PRO. O curso de Arduino & IoT Academy inclui 4 aulas no total.

O que vou aprender em “Publique tópicos dos sensores”?

Envie leituras para tópicos nomeados. Você pratica Arduino & IoT Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Arduino & IoT Academy?

Nenhuma experiência prévia é necessária. Arduino & IoT Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Publique tópicos dos sensores”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Arduino & IoT Academy?

Sim. Cada aula de Arduino & IoT Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Por que MQTT é adequado para IoT
  2. Conecte-se a um agente
  3. Publique tópicos dos sensores
  4. Assine e aja com base nos comandos
← Voltar para Arduino & IoT Academy