Índice:

Alert-using-ThingSpeak + ESP32-Wireless-Temp- Humidity-Sensor: 7 Passos
Alert-using-ThingSpeak + ESP32-Wireless-Temp- Humidity-Sensor: 7 Passos

Vídeo: Alert-using-ThingSpeak + ESP32-Wireless-Temp- Humidity-Sensor: 7 Passos

Vídeo: Alert-using-ThingSpeak + ESP32-Wireless-Temp- Humidity-Sensor: 7 Passos
Vídeo: ESP32 Tutorial - DHT11/DHT22 (Temperature and Humidity Sensor) 2024, Novembro
Anonim
Alert-using-ThingSpeak + ESP32-Wireless-Temp- Humidity-Sensor
Alert-using-ThingSpeak + ESP32-Wireless-Temp- Humidity-Sensor

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 criar um alerta temporário em seu e-mail com um determinado valor

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
  • IFTTT

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. Transmitting 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: SAÍDA

SAÍDA
SAÍDA

Etapa 5: criar um miniaplicativo IFTTT

Crie um miniaplicativo IFTTT
Crie um miniaplicativo IFTTT
Crie um miniaplicativo IFTTT
Crie um miniaplicativo IFTTT
Crie um miniaplicativo IFTTT
Crie um miniaplicativo IFTTT
  • Para enviar dados ao ThingSpeak, você pode visualizá-los neste link.
  • IFTTT é um serviço da web que permite criar miniaplicativos que atuam em resposta a outra ação. Você pode usar o serviço IFTTT Webhooks para criar solicitações da web para acionar uma ação. A ação de entrada é uma solicitação HTTP para o servidor da web e a ação de saída é uma mensagem de e-mail.
  • Primeiro, crie uma conta IFTTT.
  • Crie um miniaplicativo. Selecione Meus miniaplicativos.
  • Clique no botão Novo miniaplicativo.
  • Selecione a ação de entrada. Clique na palavra isto.
  • Clique no serviço Webhooks. Digite Webhooks no campo de pesquisa. Selecione os Webhooks.
  • Escolha um gatilho.
  • Preencha os campos do acionador. Depois de selecionar Webhooks como o acionador, clique na caixa Receber uma solicitação da web para continuar. Insira um nome para o evento.
  • Criar gatilho.
  • Agora o gatilho é criado, para a ação resultante, clique em Aquilo.
  • Digite o e-mail na barra de pesquisa e selecione a caixa E-mail.
  • Agora escolha a ação. Selecione a caixa Envie-me um e-mail e insira as informações da mensagem.
  • Recupere as informações de gatilho dos Webhooks. Selecione Meus miniaplicativos, Serviços e pesquise Webhooks. Clique no botão Webhooks e documentação. Você vê sua chave e o formato para enviar uma solicitação. Insira o nome do evento. O nome do evento para este exemplo é Vibration And TempData. Você pode testar o serviço usando o botão de teste ou colando o URL em seu navegador.

Etapa 6: Crie um controle de tempo para executar sua análise

Crie um controle de tempo para executar sua análise
Crie um controle de tempo para executar sua análise
Crie um controle de tempo para executar sua análise
Crie um controle de tempo para executar sua análise
Crie um controle de tempo para executar sua análise
Crie um controle de tempo para executar sua análise

Avalie os dados do canal ThingSpeak e acione outros eventos.

  • Clique em Aplicativos, TimeControl e, em seguida, clique em Novo TimeControl.
  • Salve seu TimeControl.

Recomendado: