Primeiros Passos com NodeMcu – Utilizando Lua com ESPlorer

Olá meus querido caiçaras, tudo bem? No post de hoje, vamos continuar explorando o NodeMcu e, caso você não conheça essa placa, veja o post anterior. Nele, eu falo um pouco sobre a placa e como integrar com a IDE do Arduino. Prosseguindo, hoje vamos mostrar que é possível programar essa placa, com outras plataformas e outras linguagens. Na verdade, ele é desenvolvido para ser programado em Lua, que é a linguagem que vamos explorar a seguir…

Conhece a linguagem Lua?

Essa linguagem de programação foi desenvolvida aqui no Brasil, por Roberto Ierusalimschy, Luiz Henrique de Figueiredo e Waldemar Celes, pesquisadores da PUC- Rio (Pontifícia Universidade Católica do Rio de Janeiro).

Lua é uma linguagem de script multiparadigma, extremamente leve, podendo ser aplicada nas mais diversas aplicações, devido a sua flexibilidade.  Uma prova disto é a possibilidade de utilizar a linguagem em sistemas embarcados, com e-Lua.

E, para quem pensa que ela não tem muita aplicação, está redondamente enganado! Jogos, como World of Warcraft, Angry Birds, Ragnarock Online, entre outros, foram desenvolvidos com tal linguagem. Levando o título de linguagem de script, ela é mais utilizada no desenvolvimento de jogos. Saiba mais sobre suas possibilidades e história da linguagem no site oficial.

Você vai precisar do ESPlorer

Para programar em Lua com o NodeMcu, você vai precisar de um ambiente que o permita programar. A ESPlorer será perfeita para isso! Ela é uma IDE – (Integrated Development Environment ) multiplataforma, ou seja, funciona no Windows, no Linux e MAC OS sem problemas. Apenas tenha certeza de ter o Java (SE versão 7 ou superior) instalado no computador e tudo certo.

Para fazer o download desta IDE, acesse o site: https://esp8266.ru/esplorer/

O ESPlorer possui algumas características, que auxiliam no momento de escrever o código. A maioria das IDEs as possuem, mas vale informar:

  • Sintax highlighting para códigos em Lua e Python;
  • Autocomplete (Ctrl + Space);
  • Temas: default, dark, Eclipse, IDE, Visual Studio;
  • E mais algumas características, que você pode ler com calma no site.

Além de permitir em programar em Lua, ela permite programar em Python. Explorarei, em uma próxima postagem, o uso de Micropython. Por enquanto, vamos baixar a IDE para prosseguir com nosso exemplo.

Após finalizar o download, descompacte o arquivo, acesse o diretório e clique para abrir o arquivo com a extensão .jar. Provavelmente, ele terá o seguinte nome (ESPlorer.jar).

Vamos ao primeiro teste…

Primeiramente, conecte o NodeMcu ao seu computador e abra  a IDE. Você deve se deparar com uma interface, como a seguinte:

Perceba que, no canto superior direito, aparecerá a COM atribuída a placa. Caso não tenha aparecido, clique no dropdown e verifique se aparece alguma opção. Se não aparecer, reinicie a IDE e certifique-se que o NodeMcu está conectado a uma porta USB de seu computador.

Feito isso, perceba que há um botão escrito Open. Isso é para abrir a comunicação entre o NodeMcu e o software. Ao lado, há um dropdown com as opções de velocidade de baud-rate, deixaremos em 9600. Feito isso, clique em Open. Será exibida uma mensagem confirmando a conexão e, acima do texto verde, perceberá um circulo verde, confirmando a comunicação.

Feito isso, já podemos começar a trabalhar com o NodeMcu, enviando comandos e lendo através do terminal serial o log de respostas. Ao lado esquerdo, está a interface onde será digitado o código. E, vamos para um exemplo como o do post passado. Criaremos um simples WebServer com a linguagem Lua.

Vamos colocar a mão na massa…

Para montar nosso exemplo, vamos para a seguinte lista de componentes:

Para montar o circuito você precisará de:

1 – Protoboard;

1 – Resistor de 330Ω;

1 – LED Vermelho 5mm ou a cor que desejar;

Fios Jumpers.

A montagem na matriz de contatos ficará, conforme imagem a seguir:

Após finalizar montagem, plugue o USB no Nodemcu e no computador novamente. Abra o ESPlorer e faça o processo para comunicação do Nodemcu com o software, conforme explicado acima. Feito isso, no lado esquerdo, copie o seguinte script.

Após digitar e ou copiar o código, clique em Send to ESP. Você perceberá, ao lado direito da tela, as mensagens de log do monitor serial.

Obs.: Caso tenha problemas para enviar o script ao ESP, ou surgir mensagens de erro por falha de comunicação, pressione o botão de reset do NodeMcu. Ele está localizado próximo ao conector usb, identificado como RST. Feito isso, clique novamente em Send to ESP ou reinicie o ESPlorer e faça o processo, novamente, de comunicação com a placa.

Agora, teremos que identificar qual IP foi atribuído ao NodeMcu. Para isso, na parte inferior, clique nas opções e selecione a opção =wifi.sta.getip().

Será exibido o número do IP atribuído ao ESP, a máscara de subrede e o gateway. Identificando IP, abra o navegador de sua preferência. Em geral, recomendo o uso do Mozilla Firefox. Ao acessar a página, a interface será parecida com a seguir:

O funcionamento é o mesmo do experimento passado. A página está ainda mais simples e contém um botão para LIGAR o led e outro para DESLIGAR o led. Faça os testes, clicando no botão, e perceberá a mudança de estado do led.

Para finalizar…

Novamente, ressalto que nosso objetivo é fazer a introdução às possibilidades com o NodeMcu. E, no post de hoje, mostramos um pouco sobre a linguagem Lua e a ferramenta ESPlorer, uma IDE, leve, simples e intuitiva que facilita e muito você. Além disso, ela contém algumas funções que permitem já realizar configurações, enviar comandos AT ao ESP, sem precisar escrever código, sendo bem útil.

Bom galera, eu espero que tenham gostado. Se você tem qualquer dúvida e ou sugestão, deixe seu comentário! Terei o prazer de responder. Além disso, não deixe de compartilhar este artigo, pois sua dúvida pode ser a de outras pessoas.

Gostou? Compartilhe e de seu feedback! Isso é fundamental para melhorarmos nosso conteúdo e produzir, ainda mais, artigos para ajudar mais e mais pessoas.

Muito obrigado e até a próxima!

Yhan Christian

0 Comentários

Deixe seu comentário.