Índice:
- Etapa 1: Coisas que você precisa
- Etapa 2: Obtenha as bibliotecas DHT11
- Etapa 3: conexões
- Etapa 4: Código de Ponto de Acesso
- Etapa 5: Etapa final: teste
Vídeo: Ponto de acesso (AP) NodeMCU ESP8266 para servidor Web com sensor de temperatura DT11 e impressão de temperatura e umidade no navegador: 5 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
Olá pessoal, na maioria dos projetos usamos ESP8266 e na maioria dos projetos usamos ESP8266 como servidor web para que os dados possam ser acessados em qualquer dispositivo via wi-fi acessando o servidor web hospedado por ESP8266, mas o único problema é que precisamos de um roteador funcionando para isso e nosso dispositivo também precisa ser conectado ao roteador e precisamos colocar nossas credenciais de wi-fi no código, então se você alterar o wi-fi, então você precisa alterar as credenciais no código e precisa recarregá-lo. Portanto, basicamente, temos dois problemas aqui: 1- precisamos de uma conexão wi-fi para hospedar o servidor da web (roteador) 2- toda vez que se a conexão wi-fi precisar ser alterada, precisamos inserir as credenciais e recarregar o código. Para evitar todo esse problema, o que podemos fazer é, em vez de dar um acesso wi-fi podemos fazer com que o ESP8266 crie uma conexão wi-fi própria, então se nos conectarmos a essa conexão wi-fi podemos acessar o servidor web de ESP8266. Então, basicamente, estaremos hospedando um servidor web com ESP8266 com ponto de acesso. estará criando um servidor web usando Access Point com ESP8266 e vamos conectar um sensor DHT11 e imprimir temperatura e umidade na página do servidor web.
Etapa 1: Coisas que você precisa
1x ESP 8266 Nodemcu: 1x DHT11: 1x breadboard:.: Poucos jumpers:
Etapa 2: Obtenha as bibliotecas DHT11
Abra seu Arduino IDE e vá para Sketch> Incluir Biblioteca> Gerenciar Bibliotecas. O Library Manager deve abrir. Pesquise “DHT” na caixa de pesquisa e instale a biblioteca DHT de Adafruit. Depois de instalar a biblioteca DHT de Adafruit, digite “Adafruit Unified Sensor” na caixa de pesquisa. Role todo o caminho para baixo para encontrar a biblioteca e instale-a. Depois de instalar as bibliotecas, reinicie seu Arduino IDE.
Etapa 3: conexões
O circuito é muito fácil de conectar tudo conforme mostrado na esquemática
Etapa 4: Código de Ponto de Acesso
Dos meus instructables anteriores, irei modificar o código do servidor web deste instructables:
E transforme-o em código do servidor da web do ponto de acesso. Copie o código fornecido abaixo:
#include "Arduino.h" #include "ESP8266WiFi.h"
#include "Hash.h"
#include "ESPAsyncTCP.h"
#include "ESPAsyncWebServer.h"
#include "Adafruit_Sensor.h"
#include "DHT.h"
const char * ssid = "ESP8266"; const char * password = "senha"; # define DHTPIN 5 // Pino digital conectado ao sensor DHT // Descomente o tipo de sensor em uso: // # define DHTTYPE DHT11 // DHT 11 # define DHTTYPE DHT22 // DHT 22 (AM2302) // # define DHTTYPE DHT21 // DHT 21 (AM2301) DHT dht (DHTPIN, DHTTYPE); // temperatura e umidade atuais, atualizadas no loop () float t = 0,0; float h = 0.0; // Cria o objeto AsyncWebServer na porta 80AsyncWebServer server (80); // Geralmente, você deve usar "unsigned long" para variáveis que mantêm o tempo // O valor rapidamente se tornará muito grande para um int para armazenarunsigned long previousMillis = 0; // armazenará a última vez que o DHT foi atualizado // Atualiza as leituras do DHT a cada 10 segundosconst long interval = 10000; const char index_html PROGMEM = R "rawliteral (ESP8266 Servidor DHT
Temperatura% TEMPERATURE% ° C
Umidade% HUMIDITY%%) rawliteral "; // Substitui o marcador de posição pelo processador DHT valuesString (const String & var) {//Serial.println(var); if (var ==" TEMPERATURE ") {return String (t);} else if (var == "HUMIDADE") {return String (h);} return String ();} void setup () {// Porta serial para fins de depuração Serial.begin (115200); dht.begin (); Serial.print ("Configurando AP (Ponto de acesso)… "); // Remova o parâmetro de senha, se desejar que o AP (Ponto de acesso) seja aberto WiFi.softAP (ssid, senha); IPAddress IP = WiFi.softAPIP (); Serial.print (" Endereço IP do AP: "); Serial.println (IP); // Imprimir ESP8266 Endereço IP local Serial.println (WiFi.localIP ()); // Rotear para servidor raiz / página da web.on (" / ", HTTP_GET, (AsyncWebServerRequest * request) {request-> send_P (200, "text / html", index_html, processor);}); server.on ("/ temperature", HTTP_GET, (AsyncWebServerRequest * request) {request- > send_P (200, "text / plain", String (t).c_str ());}); server.on ("/ umidade", HTTP_GET, (AsyncWebServerRequest * request) {request-> send_P (200, "texto / simples", String (h).c_str ()); }); // Inicia o servidor server.begin ();} void loop () {unsigned long currentMillis = millis (); if (currentMillis - previousMillis> = interval) {// salvar a última vez que você atualizou os valores DHT previousMillis = currentMillis; // Lê a temperatura como Celsius (o padrão) float newT = dht.readTemperature (); // Lê a temperatura como Fahrenheit (isFahrenheit = true) // float newT = dht.readTemperature (true); // se a leitura da temperatura falhou, não altere o valor de t if (isnan (newT)) {Serial.println ("Falhou para ler do sensor DHT! "); } else {t = newT; Serial.println (t); } // Ler umidade float newH = dht.readHumidity (); // se a leitura de umidade falhou, não altere o valor de h if (isnan (newH)) {Serial.println ("Falha ao ler do sensor DHT!"); } else {h = newH; Serial.println (h); }}} Antes de enviar o código, certifique-se de colocar as seguintes coisas: const char * ssid = "ESP8266"; // qualquer SSID de wi-fi que você desejaconst char * password = "password"; // passa para conectar ao ssidSet acima O ESP8266 como um ponto de acesso: Para definir esp8266 como um ponto de acesso, usaremos o comando softAP conforme mostrado abaixo; para criar um ponto de acesso. WiFi.softAP (ssid, senha); Existem também outros parâmetros opcionais que você pode passar para o método softAP (). Aqui estão todos os parâmetros: Se você abrir o monitor serial, poderá ver o IP do ponto de acesso. O que é feito seguindo parte do código. IPAddress IP = WiFi.softAPIP (); Serial.print ("endereço IP do AP:"); Serial.println (IP); Por padrão, o endereço IP é: 192.168.4.1
Etapa 5: Etapa final: teste
Após fazer o upload do código, abra seu wi-fi móvel / pc e conecte-se ao wi-fi esp8266 (qualquer ssid e senha que você inseriu no código, use-o). Depois de conectar, basta abrir o IP em seu navegador que obtivemos do monitor serial (https://192.168.4.1.) e você poderá ver a temperatura e umidade em seu navegador como minhas. E não usamos nenhuma rede wi-fi para fazer isso, é assim que funciona o ponto de acesso do esp8266.
Recomendado:
ESP8266 e Visuino: Servidor Web de Temperatura e Umidade DHT11: 12 etapas
ESP8266 e Visuino: Servidor Web de Temperatura e Umidade DHT11: os módulos ESP8266 são excelentes controladores autônomos de baixo custo com Wi-Fi embutido, e eu já fiz uma série de instruções sobre eles. DTH11 / DTH21 / DTH22 e AM2301 são temperaturas combinadas muito populares e sensores de umidade Arduino, e fiz um num
Monitoramento de temperatura do Nodemcu ESP8266 usando DHT11 em um servidor da Web local - Obtenha a temperatura e umidade da sala no seu navegador: 6 etapas
Monitoramento de temperatura Nodemcu ESP8266 usando DHT11 em um servidor da Web local | Obtenha a temperatura e umidade da sala no seu navegador: Olá, pessoal, hoje vamos fazer um teste de umidade & sistema de monitoramento de temperatura usando ESP 8266 NODEMCU & Sensor de temperatura DHT11. A temperatura e a umidade serão obtidas no DHT11 Sensor & pode ser visto em um navegador cuja página da web será gerenciada
Crie um ponto de acesso WiFi e forneça um servidor da Web no NodeMCU V3: 4 etapas
Crie um ponto de acesso WiFi e forneça um servidor da Web no NodeMCU V3: no artigo anterior, já discuti sobre como usar o NodeMCU ESP8266. No artigo, explico como adicionar o NodeMCU ESP8266 ao Arduini IDE. Existem várias maneiras de se comunicar pela Internet usando o NodeMCU ESP8266. Fazendo NodeMCU como um
Como usar o sensor de temperatura DHT11 com Arduino e impressão de temperatura e umidade: 5 etapas
Como usar o sensor de temperatura DHT11 com Arduino e impressão de temperatura e umidade: O sensor DHT11 é usado para medir temperatura e umidade. Eles são amadores de eletrônicos muito populares. O sensor de umidade e temperatura DHT11 torna realmente fácil adicionar dados de umidade e temperatura aos seus projetos eletrônicos DIY. É por
Usando o sensor de impressão digital para comparecimento ao ponto em combinação com a solução XAMP: 6 etapas (com fotos)
Usando sensor de impressão digital para tempo de presença em combinação com XAMP Solução: para um projeto escolar, estávamos procurando uma solução sobre como rastrear a frequência dos alunos. Muitos de nossos alunos chegam atrasados. É um trabalho tedioso verificar sua presença. Por outro lado, há muita discussão porque os alunos costumam dizer