Um guia definitivo para aprender NodeMCU com diversos exemplos práticos, incluindo aplicações de Internet das Coisas! Step-by-Step
O projeto busca apresentar um conteúdo prático, objetivo e de fácil consulta. Além disso as atividades desenvolvidas são acessíveis para qualquer pessoa, independente do nível de conhecimento em Automação. Este guia conterá projetos com diferentes níveis de complexidade que utilizam o NODEMCU: desde como acender um LED até um manual de como criar um servidor, integrá-lo com um bot e manter as informações do seu projeto físico de forma online.
- Atuadores (Ex: LED, motores etc)
- Fonte de energia (Ex: bateria)
- Jumpers
- Placa de desenvolvimento NodeMCU
- Protoboard
- Push Buttons
- Resistores
- Sensores (Ex: Potenciômetro, LDR etc)
Dividiremos o conteúdo em alguns módulos:
- 1) Noções básicas de programação e conhecimento do kit de desenvolvimento NodeMCU: Conceitos iniciais de lógica de programação e suas aplicações em circuitos básicos.
- 2) Noções de implementações de automação no mundo real: Estudos sobre alguns sensores e atuadores e suas interações com o mundo físico.
- 3) Noções sobre a criação de bots e uso de servidores: Competências relacionadas a conectividade e a integração de sensores e atuadores através da Internet.
- 4) Como levar a informação para o mundo virtual? Agora é hora de colocar nossas aplicações na nuvem!
Descrição: Apresenta-se conhecimentos sobre o kit NodeMCU e como programar uma placa para realizar leituras e escritas digitais e analógicas em circuitos básicos.
Conteúdo:
- Conhecendo a placa de desenvolvimento: o microcontrolador, as GPIOs, pinout, níveis de tensão, entre outros;
- Configurando a IDE do Arduino para programar o NodeMCU;
- Compilar um programa teste que acende e apaga um LED (Blinking).
-
Leitura de sinais digitais: Ler estado de um botão e exibir no computador via serial;
-
Escrita analógica: Mudar o brilho de uma lâmpada ao decorrer do tempo (Fading in e Fading out);
-
Leitura e escrita analógica: Acender um LED com brilho variável através de um potênciômetro com PWM.
Descrição: Apresentação de outras habilidades utilizando diversos sensores e atuadores, a partir de aplicações práticas.
- Sensor de presença PIR: Utilizar o estado atual do sensor de presença (HIGH ou LOW) para alterar o estado de uma saída
- Sensor de luminosidade LDR: Mudando o estado de uma saída de acordo com os níveis de luminosidade do ambiente
- Sensor de distância: Realizando medições com o sensor de distância
- Sensor de temperatura; (Em construção)
- Sensor de umidade; Aprendendo a utilizar o sensor de umidade e configurá-lo para realizar leitura digital ou analógica
- Sensor de infra vermelho. (Breve)
- Relé controlado por sensor: Compreendendo o funcionamento de um relé ativado por um sensor qualquer e o seu para controlar o estado de uma lâmpada residencial
- Buzzer controlado por botões ou potênciômetro: Aprendendo sobre o funcionamento de um buzzer e o controle desse atuador através de um sensor digital ou analógico.
- Servo motor controlado por um potenciômetro: Compreendendo o que é um servomotor e aprendendo como controlar o sentido de giro através de um sensor analógico
- Motor usando Ponte H e controle através de potenciômetro ou outro sensor; (Breve)
- Escrita em um display LCD com o protocolo I2C. (Breve)
Descrição: Serão apresentadas a criação de bots e a sua integração em projetos físicos os quais incluem os conhecimentos aprendidos nos módulos anteriores.
- Criação de um BOT no Telegram: Aprendendo a criar e configurar o seu próprio BOT através do Telegram
- Integração do Bot em um projeto físico: Aprendendo a controlar projetos físicos por meio do BOT no Telegram e através de um celular, computador ou notebook.
- Webserver com página estática: Aprendendo a criar o seu primeiro Webserver com página estática. Por meio desse projeto, você criará uma pequena página capaz de controlar e monitorar seu projeto físico.
- Webserver com página dinâmica, usando AJAX: Desenvolvendo um webserver dinâmico capaz de oferecer o controle e monitoramento em tempo real do seu projeto.
- Webserver com o uso da memória flash e ponto de acesso
- Acessar um Webserver através da Internet
Descrição:
EM BREVE!
Contribuições são o que tornam a comunidade de código aberto um lugar incrível para aprender, inspirar e criar. Todas as contribuições que você fizer são muito bem vindas!
Aqui está a estrutura de uma pasta, se você quiser contribuir com um tutorial completo ❤:
.
├── assets
│ ├── protoboard.png
│ └── pinoutv3.png
├── code
│ └── code.ino
├── fritzing
│ └── arquivo.fzz
└── README.md
E o modelo do arquivo README está aqui: MODELO.
Passos para enviar uma contribuição para nosso repositório:
- Crie um Fork do projeto
- Crie sua Branch (
git checkout -b feature/AmazingFeature
) - Dê um Commit nas suas mudanças com uma mensagem (
git commit -m 'Coloquei um recurso legal'
) - Push para esta Branch (
git push origin feature/AmazingFeature
) - Abra uma Pull Request e aguarde :D
Distribuído sob a licença MIT. Veja LICENSE para mais informações.
PET Elétrica - @peteletricaufba - [email protected]
Link do Projeto: github.com/PETEletricaUFBA/automacao-iot-nodemcu