Índice:

ThingSpeak, ESP32 e Temperatura e umidade sem fio de longo alcance: 5 etapas
ThingSpeak, ESP32 e Temperatura e umidade sem fio de longo alcance: 5 etapas

Vídeo: ThingSpeak, ESP32 e Temperatura e umidade sem fio de longo alcance: 5 etapas

Vídeo: ThingSpeak, ESP32 e Temperatura e umidade sem fio de longo alcance: 5 etapas
Vídeo: SUPER TECK WEEK - TRILHA 7 - IDEIAS INOVADORAS USANDO INTERNET DAS COISAS 2024, Julho
Anonim
ThingSpeak, ESP32 e Long Range Wireless Temp e Umidity
ThingSpeak, ESP32 e Long Range Wireless Temp e Umidity

Neste tutorial, mediremos diferentes dados de temperatura e umidade usando o sensor de temperatura e umidade. Você também aprenderá como enviar esses dados para ThingSpeak. Para que você possa analisá-lo de qualquer lugar para diferentes aplicações

Etapa 1: Hardware e software necessários

Hardware e software necessários
Hardware e software necessários
Hardware e software necessários
Hardware e software necessários

Hardware:

  • ESP-32: O ESP32 facilita o uso do IDE do Arduino e da linguagem Arduino Wire para aplicativos IoT. Este Módulo IoT ESp32 combina Wi-Fi, Bluetooth e Bluetooth BLE para uma variedade de aplicações diversas. Este módulo vem totalmente equipado com 2 núcleos de CPU que podem ser controlados e alimentados individualmente e com uma freqüência de clock ajustável de 80 MHz a 240 MHz. Este módulo ESP32 IoT WiFi BLE com USB integrado foi projetado para caber em todos os produtos IoT ncd.io. Monitore sensores e relés de controle, FETs, controladores PWM, solenóides, válvulas, motores e muito mais de qualquer lugar do mundo usando uma página da web ou um servidor dedicado. Fabricamos nossa própria versão do ESP32 para caber em dispositivos NCD IoT, oferecendo mais opções de expansão do que qualquer outro dispositivo no mundo! Uma porta USB integrada permite a programação fácil do ESP32. O Módulo ESP32 IoT WiFi BLE é uma plataforma incrível para o desenvolvimento de aplicativos IoT. Este módulo ESP32 IoT WiFi BLE pode ser programado usando o Arduino IDE.
  • Sensor de temperatura e umidade sem fio de longo alcance IoT: Sensor de umidade de temperatura sem fio industrial de longo alcance. Grade com uma resolução do sensor de ± 1,7% UR ± 0,5 ° C. Até 500.000 transmissões de 2 baterias AA. Mede -40 ° C a 125 ° C com baterias que sobrevivem a essas classificações. Alcance LOS superior de 2 milhas e 28 milhas com antenas de alto ganho. Interface para Raspberry Pi, Microsoft Azure, Arduino e muito mais.
  • Modem de malha sem fio de longo alcance com interface USB

Software Usado

  • IDE Arduino
  • ThingSpeak

Biblioteca usada

  • Biblioteca PubSubClient
  • Wire.h

Cliente Arduino para MQTT

Esta biblioteca fornece um cliente para fazer um sistema de mensagens de publicação / assinatura simples com um servidor que suporta MQTT

Para obter mais informações sobre MQTT, visite mqtt.org.

Download

A versão mais recente da biblioteca pode ser baixada do GitHub

Documentação

A biblioteca vem com vários esboços de exemplo. Consulte Arquivo> Exemplos> PubSubClient no aplicativo Arduino. Documentação completa da API.

Hardware Compatível

A biblioteca usa a API Arduino Ethernet Client para interagir com o hardware de rede subjacente. Isso significa que ele simplesmente funciona com um número crescente de placas e blindagens, incluindo:

  • Arduino Ethernet
  • Arduino Ethernet Shield
  • Arduino YUN - use o YunClient incluído no lugar do EthernetClient e certifique-se de fazer um Bridge.begin () primeiro
  • Arduino WiFi Shield - se você deseja enviar pacotes com mais de 90 bytes com este escudo, habilite a opção MQTT_MAX_TRANSFER_SIZE em PubSubClient.h.
  • SparkFun WiFly Shield - quando usado com esta biblioteca
  • Intel Galileo / Edison
  • ESP8266
  • ESP32A biblioteca não pode ser usada atualmente com hardware baseado no chip ENC28J60 - como Nanode ou Nuelectronics Ethernet Shield. Para aqueles, existe uma biblioteca alternativa disponível.

Wire Library

A biblioteca Wire permite que você se comunique com dispositivos I2C, muitas vezes também chamados de "2 fios" ou "TWI" (Interface de dois fios), pode ser baixada de Wire.h

Uso Básico

  • Wire.begin () Comece usando Wire no modo master, onde você iniciará e controlará as transferências de dados. Este é o uso mais comum na interface com a maioria dos chips periféricos I2C.
  • Wire.begin (endereço) Comece usando Wire no modo escravo, onde você responderá no "endereço" quando outros chips mestres I2C iniciarem a comunicação. Transmitindo
  • Wire.beginTransmission (address) Inicia uma nova transmissão para um dispositivo em "address". O modo Master é usado.
  • Wire.write (data) Envie dados. No modo mestre, beginTransmission deve ser chamado primeiro.
  • Wire.endTransmission () No modo master, termina a transmissão e faz com que todos os dados armazenados em buffer sejam enviados.

Recebendo

  • Wire.requestFrom (endereço, contagem) Lê bytes de "contagem" de um dispositivo em "endereço". O modo Master é usado.
  • Wire.available () Retorna o número de bytes disponíveis chamando receive.
  • Wire.read () Recebe 1 byte.

Etapa 2: upload do código para ESP32 usando o IDE do Arduino

  • Antes de enviar o código, você pode ver o funcionamento deste sensor em um determinado link.
  • Baixe e inclua a Biblioteca PubSubClient e a Biblioteca Wire.h.
  • Você deve atribuir sua chave API, SSID (nome WiFi) e senha da rede disponível.
  • Compile e carregue o código Temp-ThinSpeak.ino.
  • Para verificar a conectividade do dispositivo e os dados enviados, abra o monitor serial. Se nenhuma resposta for vista, tente desconectar o ESP32 e, em seguida, conecte-o novamente. Certifique-se de que a taxa de transmissão do monitor serial esteja definida como a mesma especificada em seu código 115200.

Etapa 3: Saída do monitor serial

Saída serial do monitor
Saída serial do monitor

Etapa 4: Fazendo ThingSpeak funcionar

Fazendo ThingSpeak funcionar
Fazendo ThingSpeak funcionar
Fazendo ThingSpeak funcionar
Fazendo ThingSpeak funcionar
Fazendo ThingSpeak funcionar
Fazendo ThingSpeak funcionar
  • Crie a conta no ThnigSpeak.
  • Crie um novo canal, clicando em Canais.
  • Clique em Meus canais.
  • Clique em Novo canal.
  • Em Novo canal, nomeie o canal.
  • Nomeie o campo dentro do canal, campo é a variável na qual os dados são publicados.
  • Agora salve o canal.
  • Agora você pode encontrar suas chaves de API no painel. Vá para o toque na página inicial e encontre sua 'Write Api Key', que deve ser atualizada antes de enviar o código para o ESP32.
  • Depois que o canal for criado, você poderá visualizar seus dados de temperatura e umidade em uma exibição privada com os campos que você criou dentro do canal.
  • Para traçar um gráfico entre os dados de temperatura e umidade, você pode usar o MATLAB Visualization.
  • Para isso vá para o aplicativo, clique em visualização do MATLAB.
  • Dentro dele seleciona Custom, neste, selecionamos a temperatura do gráfico e a velocidade do vento em dois eixos y 8 diferentes como exemplo. Agora clique em criar.
  • O código MATLAB será gerado automaticamente conforme você cria a visualização, mas você tem que editar o id do campo, ler o id do canal, pode verificar a figura a seguir.
  • Em seguida, salve e execute o código.
  • Você veria o enredo.

Recomendado: