Servidor Web Arduino usando ESP8266

Servidor Web Arduino usando ESP8266

Este tutorial demonstra como criar um servidor web usando Arduino e ESP8266 que é atualizado com AT Firmware. Os módulos WiFi ESP8266 vêm com firmware de comando AT pré-instalado. Antes de continuar com este tutorial, você pode conhecer os fundamentos dos comandos ESP8266 e AT para configurá-lo como um servidor web nos artigos a seguir.

Introdução ao ESP8266 e servidor Web usando ESP8266.

Aqui iremos conectar o Arduino UNO ao ESP8266 usando comunicação serial e programação do Arduino para lidar com os comandos AT.

O código lida com a inicialização do ESP8266 na função setup , como

  • Reinicialize o módulo.

  • Configure-o como um ponto de acesso.

  • Imprime o endereço IP do módulo.

  • Configure-o como um servidor na porta 80 e para múltiplas conexões.

Piscando novamente com firmware AT:

Esta etapa pode ser ignorada se você for novo no ESP8266 e tiver comprado o módulo recentemente, já que os módulos ESP8266 vêm com firmware de comando AT pré-carregado. Se você já usou o ESP8266 com firmware NodeMCU e script LUA, você deve atualizar com o firmware de comando AT mais recente antes de continuar com o tutorial.

Esta parte deste tutorial lhe dará uma ideia sobre como atualizar o novo firmware AT para o módulo ESP. Você pode baixar o firmware AT aqui.

Você pode usar o conversor USB-TTL para atualizar o ESP8266 com este firmware.

Para obter instruções detalhadas sobre como atualizar o ESP8266, consulte este artigo. Nesse artigo você encontrará detalhes sobre como atualizar o ESP8266 com NodeMCU. Usaremos o mesmo software para fazer o flash com firmware AT.

Conexões para modo Flash:

Os detalhes normais da conexão são os seguintes:

Módulo Wi-Fi

USB-TTL

Vcc

3,3 V

Gnd

Gnd

Texas

RX

RX

Texas

CH_PD

Conectado a 3,3 V para ativar a inicialização do firmware do chip

Não se esqueça de puxar CH_PD HIGH, você não receberá resposta do módulo se isso não for feito.

Além das conexões acima. Para entrar no modo flash do firmware, precisamos fazer uma conexão adicional, o mais fácil é usar uma placa de ensaio para isso.

ESP-01 GPIO0 – Puxe para baixo conectando ao GND

Você pode seguir todas as etapas desse tutorial para atualizar o ESP8266, exceto que você deve escolher a guia Config e clicar no pequeno símbolo de engrenagem na primeira e navegar até o Firmware AT que você baixou.

Figura 1: Captura de tela do firmware AT

E clique no botão Flash para fazer o Flash. Você pode verificar o funcionamento enviando comandos AT.

Arduino para ESP8266 por comunicação serial:

Veja como configurar o Arduino para se comunicar com o ESP8266.

A fiação é muito semelhante à do FTDI.

Arduino 3.3V para ESP8266 VCC
Pino 3 do Arduino para ESP8266 RX
Pino 2 do Arduino para ESP8266 TX
Arduino GND para ESP8266 GND

Você pode usar um esboço simples de entrada e saída serial. Para verificar o funcionamento.

#include

SoftwareSerial ESPserial(2, 3); //RX Texas

configuração nula

{

Serial.begin(9600); //comunicação com o computador host

//enquanto (!Serial) { ; }

// Inicia a serial do software para comunicação com o ESP8266

ESPserial.begin(9600);

Serial.println(“”);

Serial.println(“Defina NL e CR no monitor serial.”);

Serial.println(“Pronto”);

Serial.println(“”);

}

loop vazio

{

// ouve a comunicação do ESP8266 e então a grava no monitor serial

if (ESSerial.available ) {Serial.write(ESSerial.read ); }

// escuta a entrada do usuário e envia para o ESP8266

if (Serial.available ) { ESPserial.write(Serial.read ); }

}

Depois que tudo estiver configurado, abra o monitor serial e defina a taxa de transmissão para 9600, você deverá receber a mensagem de boas-vindas.

Figura 2: Captura de tela do terminal serial Arduino

Servidor web Arduino:

O servidor web pode ser criado configurando o ESP8266 como um ponto de acesso e outros dispositivos podem se conectar. Consulte o artigo detalhado sobre o servidor Web aqui.

Nosso objetivo é enviar todos os comandos AT do Arduino na ordem correta para tornar o ESP8266 um AP e permitir que outros dispositivos o acessem e controlem.

Aqui estamos criando uma Função no código do Arduino para enviar os comandos AT e receber as respostas dos comandos.

String sendData (comando String, const int timeout, depuração booleana)

Comando String – carregará o comando a ser enviado.

Timeout – tempo máximo de espera pela resposta.

Depurar – para saber o status do ESP8266.

Quando há solicitação de dados, se a string +IPD estiver nos dados seriais, então as Respostas HTTP que são Códigos HTML são enviadas em tempo real para criar uma página com o texto “HelloWorld” e um Botão “LED1” que está programado para alternar o LED embutido do Arduino. Após fazer o upload do código, abra o monitor serial do Arduino IDE. Você pode ver as respostas do módulo ESP8266.

Conecte-se ao ponto de acesso do ESP8266.

Fig. 3: Captura de tela dos pontos de acesso Wi-Fi

Você pode ver uma página como esta ao navegar até o endereço IP impresso na porta serial.

Fig. 4: Captura de tela da página da Web hospedada pelo Arduino Web Server

Clique no botão “LED1” para alternar o LED embutido no Arduino UNO.

Você também pode adicionar botões e controlar qualquer número de pinos replicando o código.

Verifique isso vídeo

Bloga geri dön

Yorum bırakın

Yorumların yayınlanmadan önce onaylanması gerekmektedir.