Projetos de IoT com Blynk e NodeMCU Deixe um comentário

Há alguns anos, você imaginava que seria possível controlar as luzes do seu quarto utilizando o seu smartphone? Você imaginava conseguir abrir e fechar as suas cortinas desta mesma forma? Certamente não! Estes e inúmeros outros exemplos só são possíveis graças à Internet das Coisas (em Inglês, Internet of Things, ou IoT). Proposto inicialmente pelo engenheiro americano Kevin Ashton em 1999, este termo refere-se a uma revolução tecnológica que tem por objetivo conectar os itens utilizados no dia a dia, proporcionando o envio de informações através da internet e o controle remoto destes dispositivos.

É neste contexto que surge o app Blynk, um aplicativo personalizável que permite controlar remotamente hardwares programáveis, reportar dados de sensores e módulos, além de muitas outras funcionalidades. E detalhe: tudo isto sabendo o mínimo de programação!

Aplicativo Blynk
Aplicativo Blynk

 

De forma resumida, o app Blynk é composto por três partes: Blynk App, Blynk Server e Blynk Library.

  • Blynk App: permite criar interfaces de controle através de widgets de fácil configuração.
  • Blynk Server: é o responsável entre o aplicativo e o hardware do usuário. Você pode escolher entre utilizar o Blynk Cloud ou executar um servidor Blynk próprio.
  • Blynk Library: permite o uso das diversas plataformas de desenvolvimento, gerindo as conexões do hardware e as requisições de entrada e saída de dados.
Figura 2 - Funcionamento do aplicativo Blynk
Figura 2 – Funcionamento do aplicativo Blynk

Você deve estar se perguntando: mas tudo isso é de graça? A resposta é sim e não. O app pode ser baixado gratuitamente, porém cada widget custa uma determinada quantidade de “Energy”. Ao fazer a instalação do aplicativo, temos à disposição uma pequena quantidade que pode ser utilizada em projetos mais simples. Para projetos maiores, é possível comprar mais “Energy”.

Para verificarmos na prática como o app Blynk funciona, vamos propor um projeto no qual seremos capazes de acender e apagar um led remotamente via wifi utilizando o seu smartphone. Animado? Então, vamos lá!

 

Montagem do circuito

O circuito que utilizaremos neste nosso projeto é muito fácil de ser montado e não necessita de muitos componentes. Vamos precisar de:

  • Placa de desenvolvimento NodeMCU ESP8266
  • 1 resistor de 220Ω
  • 1 led
  • Jumpers

A montagem deve ser feita conforme mostra a figura a seguir.

Figura 3 - Montagem do circuito
Figura 3 – Montagem do circuito

Instalação do aplicativo Blynk

O app Blynk encontra-se disponível para download gratuitamente em Android e IOS. Para facilitar a sua vida, vamos deixar os links de download a seguir, basta clicar no link do seu sistema operacional do seu smartphone e fazer a instalação.

 

Criação de um novo projeto

Após o download e instalação do app Blynk, você irá se deparar com a tela a seguir. Se você ainda não possui uma conta, clique em “Create New Account” e realize seu cadastro. Se você já tiver uma conta, clique em “Log In”. Vale lembrar que você também pode fazer login utilizando a rede social Facebook.

Figura 4 - Tela de login do aplicativo Blynk
Figura 4 – Tela de login do aplicativo Blynk

Tudo certo até aqui? Ótimo! Vamos continuar então. Uma vez feito o login, você será direcionado para a tela abaixo, que contém as seguintes opções:

  • New Project: esta opção permite a criação de um novo projeto.
  • My Apps: permite que um projeto seja exportado e publicado nas lojas de aplicativos Google Play ou App Store.
  • Community: esta opção permite ao usuário acessar a comunidade Blynk, onde poderá interagir com outros usuários para esclarecer suas dúvidas e compartilhar seus projetos.
Figura 5 - Tela de opções
Figura 5 – Tela de opções

Nesta tela, clique em “New Project”. Se tudo estiver certo, você irá se deparar com a tela a seguir. 

Figura 6 - Criação de um novo projeto
Figura 6 – Criação de um novo projeto

No campo superior, digite o nome do seu projeto. No nosso caso, chamaremos de “Projeto”. Em seguida, devemos selecionar qual placa de desenvolvimento estamos utilizando. Para este projeto, a placa é a NodeMCU ESP8266. Por fim, selecione o tema que mais lhe agrada. Feito isto, clique em “Create”.

Uma vez criado o projeto, você receberá a seguinte mensagem. Ela informa que um token de segurança foi enviado para o e-mail cadastrado no momento da criação da conta. Guarde este token! Vamos precisar dele durante o desenvolvimento do código principal. Para sair desta tela, basta clicar em “OK”.

Figura 7 - Aviso sobre envio do token
Figura 7 – Aviso sobre envio do token

Tudo certo até aqui? Espero que sim! Em seguida, você será direcionado para a tela abaixo, que contém as seguintes opções:

  • A primeira opção permite acessar as configurações do projeto.
  • A segunda permite adicionar funcionalidades ao projeto.
  • A terceira opção é o botão de execução; uma vez pressionado, executa o projeto.
Figura 8 - Desenvolvimento de projetos
Figura 8 – Desenvolvimento de projetos

 

Agora, clique na segunda opção e selecione o objeto “Button”. 

Agora, clique na segunda opção e selecione o objeto “Button”.
Figura 9 – Objeto “Button”

Em seguida, clique no botão e acesse suas configurações, você irá se deparar com a tela a seguir.

Figura 10 - Configurações do objeto “Button”
Figura 10 – Configurações do objeto “Button”

No campo superior, você pode alterar o nome do seu objeto. Por padrão, o nome sempre será “Button”. No campo “OUTPUT”, digite o pino responsável por acionar o led na placa de desenvolvimento. Para este projeto, o pino será o D0. O campo “MODE” permite escolher entre os modos “PUSH” ou “SWITCH”. Neste momento, selecione o modo “SWITCH”. Os demais campos servem para formatar o texto que aparece no botão. Edite da forma que quiser!

 

Desenvolvimento do código principal

Para o desenvolvimento do código principal, utilizaremos a Arduino IDE. Antes de qualquer outra coisa, precisamos instalar a Biblioteca Blynk. O passo a passo para instalação de bibliotecas pode ser encontrado em outros artigos neste blog. Para te ajudar, deixaremos o link para download da biblioteca a seguir: https://github.com/blynkkk/blynk-library/releases/tag/v0.5.2

Após fazer a instalação, clique em File → Examples → Blynk → Boards_Wifi → ESP8266_Standalone.

Figura 11 - Caminho File → Examples → Blynk → Boards_Wifi → ESP8266_Standalone
Figura 11 – Caminho File → Examples → Blynk → Boards_Wifi → ESP8266_Standalone

Se tudo estiver certo, você verá este código na sua tela:

 

#define BLYNK_PRINT Serial
#include 
#include
// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "YourAuthToken";

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";

void setup()
{
// Debug console
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
// You can also specify server:
//Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80);
//Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8080);
}

void loop()
{
Blynk.run();
}

Calma que ainda não está pronto! Na linha de código abaixo, altere o texto “YourAuthToken” pelo token enviado no seu e-mail.

char auth[] = "YourAuthToken";

Para finalizar, nas linhas de código a seguir, altere os textos “YourNetworkName” e “YourPassword” pelo nome e senha da sua rede wifi, respectivamente.

char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";

Agora sim! Compile o código desenvolvido e carregue na sua placa de desenvolvimento para vermos o que acontece.

 

Teste do projeto

Chegou a hora de testar o que fizemos! Faremos dois testes diferentes: o primeiro com o botão operando no modo switch e o segundo operando no modo push. 

Para o primeiro teste, como o botão já está configurado no modo “SWITCH”, execute o projeto no app Blynk, clique no botão e veja o que acontece. Em seguida, clique novamente e repare na mudança. Você deve ter visto que o led acendeu ao pressionarmos o botão pela primeira vez e apagou ao pressionarmos pela segunda vez. Desta forma, no modo “SWITCH”, o botão funciona da mesma forma que uma chave retentiva.

Figura 12 - Botão indicando que o led está ligado
Figura 12 – Botão indicando que o led está ligado

 

Figura 13 - Led Ligado
Figura 13 – Led Ligado

 

Para o segundo teste, acesse as configurações do botão e altere o campo “MODE” para “PUSH”. Em seguida, execute novamente o projeto, clique no botão e veja o que acontece. Percebeu a diferença? Você deve ter reparado que o led permanece aceso apenas enquanto o botão está pressionado. Assim, no modo “PUSH”, o botão funciona como um push botton.

 

Considerações finais

Se você chegou até aqui:  seja bem-vindo ao mundo da internet das coisas! Viu só como o app Blynk facilita a nossa vida? Com ele, somos capazes de desenvolver nossos primeiros projetos de IoT com muito mais facilidade. Neste projeto, realizamos apenas o acionamento de um led, mas não se limite a isto! Explore os outros recursos disponíveis e desenvolva projetos cada vez mais sofisticados. Siga o Cheetah E-Racing nas redes sociais e fique ligado para nossos novos posts! Até a próxima!

 

Referências

[1] TechTudo. O que é Internet das Coisas? Veja como funciona a IoT e exemplos de uso. Disponível em: <https://www.techtudo.com.br/noticias/2022/10/o-que-e-internet-das-coisas-veja-como-funciona-a-iot-e-exemplos-de-uso.ghtml>. Acesso em: 20 nov 2022.

 

[2] Embarcados. Introdução ao Blynk App. Disponível em: <https://embarcados.com.br/introducao-ao-blynk-app/>. Acesso em: 20 nov 2022.

 

[3] AutoCore Robótica. Como utilizar o aplicativo Blynk com NodeMCU. Disponível em: <https://autocorerobotica.blog.br/como-usar-o-aplicativo-blynk-com-nodemcu/>. Acesso em: 20 nov 2022.


Esse conteúdo é resultado da parceria da MakerHero com a Cheetah E-Racing. Curtiu o conteúdo? Então deixe seu comentário abaixo! E não esqueça de acompanhar a Cheetah E-Racing nas redes sociais.

Faça seu comentário

Acesse sua conta e participe