Explorando o NodeMcu – Conheça o MQTT Dash

Fala galera, beleza? No post de hoje, vamos dar continuidade na exploração de plataformas IoT e o NodeMCU.  Hoje, falaremos sobre o MQTT Dash e como vamos utilizá-lo para leitura de um sensor, em nosso caso o LDR e, além disso, exibiremos o nível de luminosidade através do aplicativo. Antes de tudo, vamos entender mais sobre o MQTT Dash.

O MQTT Dash

O MQTT Dash é um aplicativo simples, disponível para Android, que permite a integração a servidores brokers MQTT, sendo uma aplicação gráfica para leitura de sensores e acionamento de atuadores.

Com uma interface gráfica bonita e simples configuração, este aplicativo ajuda bastante em prototipação rápida de uma ideia, envolvendo IoT.

A instalação do aplicativo é relativamente simples. Basta fazer o download, na loja de aplicativos na PlayStore.

Escolhendo o broker MQTT

ara este projeto, precisaremos de um broker MQTT, dentre as opções disponíveis utilizaremos o CloudMQTT que é gratuito, mas possui algumas limitações. No caso dele, o plano gratuito permite 10 conexões com velocidade de 10Kbps, uma opção viável para nossa aplicação.

O primeiro passo é criar sua conta. Para isso, você acessa a página de login e vai até a opção Create an account, onde é possível logar com a conta do GitHub ou do Google, com a opção (Authenticate through a third-party service). No meu caso, coloquei no e-mail e cliquei em Sign up.  

*Obs.: Atente-se ao e-mail que será utilizado para sua conta. Você deverá acessa-lo para confirmação e finalização do cadastro.

Com conta criada, logue no sistema e clique no botão  +Create New Instance. Preencha os dados , escolha o plano Free e, por fim, clique em Create a New Instance.

Feito isso, clique em cima da sua instância criada. Você observará as informações necessárias para conexão: Server, User, Password e Port. Sugiro que, copie e cole essas informações para um editor de texto, para facilitar as próximas etapas. Pois, utilizaremos estas informações no sketch e no aplicativo.

Configurando o MQTT Dash

Com o aplicativo já instalado em seu smartphone, acesse-o e clique no canto superior direito no botão de (+), para criar um novo projeto:

Feito isso, insira seus dados, conforme dados da instância criada no CloudMQTT:

  • Name: opte por um nome simples para o projeto;
  • Adress: equivale ao campo server do CloutMQTT;
  • Port: insira o valor da porta da instância do CloudMQTT;
  • User Name: insira o user name da instância criada no CloudMQTT;
  • User Password: insira sua senha da instância criada no CloutMQTT.

Por fim, clique no disquete no canto superior direito para salvar. Caso haja algum erro na conexão, será exibida uma mensagem. E, caso não haja nenhum, o mesmo será salvo.

Agora, clique em cima do seu projeto criado e, novamente, clique no canto superior direto para inserir um recurso de visualização gráfica. Em nosso caso, selecionaremos Range/progress.

Agora, vamos configurar os seguintes campos do widget selecionado:

  • Name: daremos um nome simples, vou optar por  Leitura Luminosidade;
  • Topic(sub): este valor é muito importante, pois utilizaremos o mesmo no sketch, escolha um nome simples;
  • Valor mínimo/máximo: configuraremos 0 valor mínimo e 1023 valor máximo;
  • Progress color: escolhe a cor que desejar.

As demais configurações, você pode deixar no padrão que está e, ao finalizar, clique no disquete no campo superior direito para salvar.

O widget criado será exibido. Por enquanto, não esta sendo exibido nenhum dado… Vamos ao sketch.

O que vamos precisar?

Para o projeto de hoje, que é relativamente simples, com objetivo de mostrar a ferramenta MQTT Dash, vamos precisar de:

1 – LDR;

1 – Resistor de 10kΩ;

Fios Jumpers;

Além da placa NodeMcu, é claro. A ligação do circuito é realizada, conforme imagem abaixo:

O esquemático para este projeto é relativamente simples. Agora, vamos ao código fonte.

Obs.:  É necessária instalação de blbioteca auxiliar PubSubClient

O sketch está devidamente comentado. Basicamente, você fornece seu SSID,  senha , as credenciais do CloudMQTT e o tópico a ser publicado no MQTT Dash.  O dado de luminosidade será transmitido a cada 30s. É importante deixar um intervalo entre as medições, para evitar gargalos. Este skecth pode ser, facilmente, adaptado para outros sensores…

Resultados obtidos

Como pode observar no MQTT Dash, o gráfico vai ser atualizado, conforme o dado é publicado:

Além disso, ao acessar o CloudMQTT, você poderá verificar os tópicos sendo publicados no broker, utilizando o recurso WebSocket:

Com isso, você já tem a leitura de um sensor via MQTT. Este aplicativo permite ainda coisas mais incríveis. Caso queira saber mais, recomendo a leitura dos artigos publicados no portal Embarcados:

Espero que tenham gostado desta aplicação envolvendo o protocolo MQTT, já explorado no artigo Explorando o NodeMcu – AdafruitIO e MQTT.

Gostou? Compartilhe e de seu feedback! Isso é fundamental para melhorarmos nosso conteúdo e produzir, ainda mais, artigos para ajudar mais e mais pessoas.

Muito obrigado e até a próxima!

Yhan Christian

0 Comentários

Deixe seu comentário.