Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Este manual de instruções mostrará como controlar um LED usando o módulo NodeMCU ESP8266 WiFi por meio do aplicativo de smartphone Blynk. Se você é um iniciante, continue lendo. Se você for mais experiente, pode se interessar em pular para o final, onde falarei sobre as especificidades de como esse projeto funciona.
Suprimentos
NodeMCU -
Jumper Wires (genérico) - 2x
LED (qualquer cor)
Tábua de pão
Etapa 1: Configurando Conexões de Hardware
- Ânodo LED para pino digital 8 no NodeMCU usando um fio jumper
- Aterre o circuito conectando o cátodo LED a um resistor de 330Ω Ohm
- Conecte a outra extremidade do resistor ao GND na placa NodeMCU.
Etapa 2: Preferências
Antes de chegarmos ao código, devemos alterar algumas coisas nas preferências básicas em nosso IDE Arduino. (Esta etapa assume que você já possui o IDE Arduino instalado).
Vá para "URLs de gerenciador de placas adicionais" e copie e cole este link:
arduino.esp8266.com/stable/package_esp8266com_index.json
Esta configuração permite suporte a placas de terceiros, como o NodeMCU que usaremos.
Etapa 3: Instalação das bibliotecas + configuração adequada da placa
Haverá várias bibliotecas que usaremos nesta demonstração.
Em primeiro lugar, devemos instalar o pacote da placa ESP8266 em Ferramentas> Placa:> Gerenciador de placas> e digite "esp8266" na barra de pesquisa (veja a imagem à esquerda). Baixe a última versão do primeiro pacote que aparecer, "esp8266 da ESP8266 Community". Este pacote suporta placas NodeMCU, portanto, será viável para nós usarmos.
Agora temos que instalar a biblioteca Blynk. Vá para Ferramentas> Gerenciar Bibliotecas> e digite "Blynk" na barra de pesquisa (veja a imagem à direita). Baixe a última versão da biblioteca intitulada "Blynk por Volodymyr Shymanskyy". Como você provavelmente já pode dizer, esta biblioteca permitirá que uma conexão seja definida entre o aplicativo Blynk em nossos telefones e o NodeMCU.
Etapa 4: Ajustando as configurações
Vamos começar a mudar as preferências novamente, mas desta vez para o nosso conselho. Fazemos isso por várias razões, a mais importante das quais é que nosso NodeMCU seja reconhecido pelo IDE. Para acessar essas configurações, vá para Ferramentas, role para baixo e haverá listas de configurações e menus suspensos para ajustes a serem feitos.
- Defina "Board:" como "NodeMCU 1.0 (ESP-12E)" ou "NodeMCU 0.9 (ESP-12)", nem é preciso dizer que isso depende de qual NodeMCU você possui. Se você comprou o NodeMCU linkado acima, deve configurá-lo como "NodeMCU 1.0 (ESP-12E)", caso contrário, verifique com o fabricante para identificá-lo.
- Defina "Frequência da CPU:" para 80 MHz. Ajustamos a velocidade do clock em 80 MHz para combinar com a nossa placa (ou você pode definir para duas vezes mais rápido com 160 MHz).
- Defina "Velocidade de upload:" para 115200.
- Defina "Tamanho do Flash:" para 4 MB (FS: 2 MB OTA: ~ 1019 KB) ou, se o IDE não for a versão mais recente, defina-o para "4M: 3M SPIFFS".
Etapa 5: Utilizando o aplicativo Blynk
O aplicativo Blynk está disponível na App Store e no Google Play. Instale, crie uma conta (se ainda não o fez) e crie um novo projeto (ver imagem à esquerda). Depois de criar um novo projeto, clique na superfície pontilhada, que o levará ao widget caixa e clique no botão. Clique no botão novamente para acessar suas propriedades. Assim que estiver visualizando a tela de Configurações do Botão (veja a imagem à direita), mude a saída para o pino digital 8. Você notará que este é o mesmo pino que o LED está usando, portanto, esta será uma conexão direta.
Uma das coisas que precisamos do Blynk é o token do autenticador. Este token é um UID (identificador exclusivo) necessário para conectar o hardware específico ao telefone. Você pode obter este token de autenticador clicando no ícone de parafuso no canto superior direito ao lado do botão de reprodução e rolando para baixo até a seção do token de autenticação, onde você pode escolher que seja enviado por e-mail para você. Guarde esse token do autenticador, pois precisaremos dele na próxima etapa.
Etapa 6: O Código
Comece carregando o exemplo em Arquivo> Exemplos> Blynk> Boards_WiFi> NodeMCU. Você encontrará uma quantidade razoavelmente curta de código (ver imagem). Onde diz "char auth = ''" é onde você irá copiar e colar seu token de autenticador obtido na última etapa. Quanto ao ssid e pass, basta inserir o nome WiFi do seu ROTEADOR (não cometa o mesmo erro que cometi ao conectá-lo a um extensor de alcance), e a senha, respectivamente. É isso! (bem, não realmente) Tudo que você precisa saber é fazer o upload do código para o NodeMCU usando um cabo USB para Micro-B.
Etapa 7: os detalhes
Nesta etapa, discuto os detalhes, o micro, e o orientarei sobre o que está por dentro. O NodeMCU é executado no firmware ESP8266, o que significa que ele pode se conectar a wi-fi. O firmware ESP8266 se conecta a um WAP (ponto de acesso sem fio) que pode ser integrado a um roteador ou modem. Mas para se conectar ao roteador, ou a qualquer WAP imposto por senha, é necessário o SSID (identificador de conjunto de serviço) e a senha, que fornecemos no esboço. O roteador atua como um DHCP (Dynamic Host Configuration Protocol) e basicamente distribui endereços IP para dispositivos conectados que alugam esses endereços por um determinado período de tempo. O endereço IP atua como um identificador exclusivo para um dispositivo conectado por WiFi para que outros dispositivos possam reconhecê-lo. Agora, o ESP8266 pode ser um ponto de acesso (AP) em si, para que outras estações sem fio possam descobri-lo e se conectar a ele. Depois que o esboço é carregado usando as bibliotecas Blynk, o NodeMCU (ou qualquer dispositivo baseado em ESP8266) começa a procurar o servidor Blynk na nuvem. Uma vez que este sinal é captado pelo servidor de nuvem Blynk, uma conexão é configurada e este servidor pode ser acessado através do aplicativo de smartphone e pode ser especificado para seu projeto no aplicativo usando o token de autenticação fornecido. No aplicativo Blynk, atribuímos o botão para controlar o pino digital 8 no NodeMCU. Uma vez que o botão é pressionado, esses dados são encaminhados para o servidor de nuvem Blynk como um '1', e para o MCU integrado que realiza a tarefa de enviar alta tensão (3,3 V) para o pino digital 8, que liga o LED.