SlideShare uma empresa Scribd logo
1 de 72
Arduino
NodeMCU
Micro:bit
01 Quem sou
Índice
02 Introdução
03 Arduino
04 NodeMCU
05 Micro:bit
Quem sou?
01
(IA)
Quem sou?
(+) Ricardo da Silva Ogliari
(+) Graduação em Ciência da Computação (UPF)
(+) Pós em Web: Estratégias de Inovação e Tecnologia (Senac)
(+) MBA em Aplicativos e Jogos Móveis (FIAP)
(+) Professor Graduação na Atitus (UPF e FIAP)
(+) Tech Lead no Digio
(+) Autor e Co-autor de livros sobre Android e IoT
(+) Palestrante
Introdução
02
(IA)
Introdução
(+) Presença forte do Arduino
(+) Em cursos, mini-cursos, workshops, graduação,
especialização, etc
(+) Arduino é uma porta de entrada excelente
(+) Porém, existem outras placas microcontroladas: como
NodeMCU e Micro:bit
Arduino
03
(IA)
Arduino
(+) “Arduino é uma plataforma eletrônica open-source e open-
hardware de prototipagem baseada em hardware e sotware
flexíveis e fáceis de usar.”
(+) A placa do Arduino foi projetada por designers italianos em
2005 com objetivo de ser utilizada por qualquer pessoa com muito
ou um pouquíssimo conhecimento nas áreas de eletrônica e
programação.
Arduino
Arduino - Como funciona?
(+) Padrão geralmente seguido;
(+) Código é igual;
(+) C, C++, C+-, Programação Wiring;
Arduino - Como funciona?
(+) (1) e (2): Entradas de energia;
(+) (1) entrada do computador;
(+) (2) carregador (12v)
Arduino - Como funciona?
(+) (3), (4) GND (Ground) - Terra
(+) 5V - 5 Volts
(+) 3.3v - 3.3 Volts
(+) Vin: Voltage Input
Arduino - Como funciona?
(+) (6) Portas analógicas
(+) Conversor A/D 10 bits
(+) 0 a 1023
(+) Portas analógicas podem ser
usadas como portas digitais
Ex: sensor de luz
Arduino - Como funciona?
(+) (7), (8): Portas digitais (0 ou 1)
(+) LED, Rele
(+) PWM Pulse With Modulation:
pulso modulado
(+) (9): GND (terra). AREF
(Referência de tensão)
Arduino - Como funciona?
Arduino - PWM
NodeMCU
04
(IA)
NodeMCU
NodeMCU
(+) Arduino IDE
(+) Lua
(+) MicroPython
(+) Espressif SDk
NodeMCU
NodeMCU
NodeMCU
NodeMCU
NodeMCU - Hello World
NodeMCU - Hello World
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
NodeMCU - Hello World
NodeMCU - Lista Redes
/* Pesquisa de Redes WIFI usando o NodeMCU-ESP12
Arduino IDE 1.8.5 - ESP8266
Gustavo Murta 07/mar/2018
baseado em
https://arduino-esp8266.readthedocs.io/en/2.4.0/esp8266wifi/scan-
class.html
Blog Eletrogate https://blog.eletrogate.com/nodemcu-esp12-usando-arduino-
ide-2/
*/
#include "ESP8266WiFi.h"
O Módulo ESP8266 é um chip microcontrolador
desenvolvido pela empresa chinesa Espressif.
Possui Wi-Fi integrado, está presente no NodeMCU
e pode ser usado separadamente em conjunto com
o Arduino.
NodeMCU - Lista Redes
void setup()
{
Serial.begin(115200); // configura monitor serial 115200 Bps
Serial.println(); // imprime uma linha
WiFi.mode(WIFI_STA); // configura rede no modo estacao
WiFi.disconnect(); // desconecta rede WIFI
delay(100); // atraso de 100 milisegundos
}
NodeMCU - Lista Redes
void prinScanResult(int networksFound)
{
Serial.printf("%d redes encontradasn", networksFound);
for (int i = 0; i < networksFound; i++) {
Serial.printf("%d: %s, Ch:%d (%ddBm) %sn", i + 1, WiFi.SSID(i).c_str(), WiFi.channel(i),
WiFi.RSSI(i), WiFi.encryptionType(i) == ENC_TYPE_NONE ? "aberta" : "");
}
}
void loop()
{
WiFi.scanNetworksAsync(prinScanResult);
delay(500);
}
NodeMCU - Modos de Uso
https://arduino-esp8266.readthedocs.io/en/latest/esp8266wifi/readme.html
NodeMCU - Modos de Uso
https://arduino-esp8266.readthedocs.io/en/latest/esp8266wifi/readme.html
NodeMCU - Web Server
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
const char *ssid = "RK_TELECOM-RICARDO";
const char *password = "senhadarede";
ESP8266WebServer server(80);
String page = "";
NodeMCU - Web Server
void setup(void)
{
page = "<h1>Simple NodeMCU Web Server</h1><p><a
href="LEDOn"><button>ON</button></a>&nbsp;<a
href="LEDOff"><button>OFF</button></a></p>";
pinMode(LED_BUILTIN, OUTPUT);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
Serial.begin(9600);
WiFi.begin(ssid, password);
Serial.println("");
NodeMCU - Web Server
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.print("Ligado a: ");
Serial.println(ssid);
Serial.print("Endereço IP: ");
Serial.println(WiFi.localIP());
server.on("/", []() { … });
server.on("/LEDOn", []() { … });
server.on("/LEDOff", []() { … });
server.begin();
Serial.println("Web server Inicializado!");
}
NodeMCU - Web Server
void loop(void)
{
server.handleClient();
}
NodeMCU - Web Server
server.on("/", []() {
server.send(200, "text/html", page);
});
server.on("/LEDOn", []() {
server.send(200, "text/html", page);
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
});
server.on("/LEDOff", []() {
server.send(200, "text/html", page);
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
});
NodeMCU - Web Server
● 0 : WL_IDLE_STATUS when Wi-Fi is in process of changing between statuses
● 1 : WL_NO_SSID_AVAIL in case configured SSID cannot be reached
● 3 : WL_CONNECTED after successful connection is established
● 4 : WL_CONNECT_FAILED if connection failed
● 6 : WL_CONNECT_WRONG_PASSWORD if password is incorrect
● 7 : WL_DISCONNECTED if module is not configured in station mode
NodeMCU - Bot IoT com Telegram
https://blog.eletrogate.com/nodemcu-esp12-alarme-residencial-iot-3/
NodeMCU - botfather
https://blog.eletrogate.com/nodemcu-esp12-alarme-residencial-iot-3/
NodeMCU - Comandos disponíveis
https://blog.eletrogate.com/nodemcu-esp12-alarme-residencial-iot-3/
(+) /newbot – para criar um novo BOT
(+) /mybots – para editar seus BOTs
(+) /setcommands – criar e alterar os comandos
(+) /deletebot – para apagar um BOT
NodeMCU - Fluxo de criação
https://blog.eletrogate.com/nodemcu-esp12-alarme-residencial-iot-3/
NodeMCU - Bibliotecas
https://blog.eletrogate.com/nodemcu-esp12-alarme-residencial-iot-3/
NodeMCU - Bibliotecas
https://blog.eletrogate.com/nodemcu-esp12-alarme-residencial-iot-3/
NodeMCU - Código
https://blog.eletrogate.com/nodemcu-esp12-alarme-residencial-iot-3/
(+)https://blog.eletrogate.com/nodemcu-esp12-alarme-
residencial-iot-3/
void setup() {
…
while (WiFi.status() != WL_CONNECTED)
{
…
}
client.setInsecure();
NodeMCU - Bibliotecas
https://blog.eletrogate.com/nodemcu-esp12-alarme-residencial-iot-3/
NodeMCU - Bibliotecas
https://wokwi.com/projects/new/esp32
NodeMCU - Firebase e DHT11
https://www.hackster.io/samueladesola/how-to-send-dht-data-from-esp8266-to-google-firebase-57880b
NodeMCU - Usuário no Authentication
https://www.hackster.io/samueladesola/how-to-send-dht-data-from-esp8266-to-google-firebase-57880b
NodeMCU - Realtime Database
https://www.hackster.io/samueladesola/how-to-send-dht-data-from-esp8266-to-google-firebase-57880b
NodeMCU - Codificação
https://www.hackster.io/samueladesola/how-to-send-dht-data-from-
esp8266-to-google-firebase-57880b
NodeMCU - Arduino - NodeRED
NodeMCU - Arduino - NodeRED
NodeMCU - Configuração do Nó
node-red-contrib-firebase-data
https://flows.nodered.org/node/node-red-contrib-firebase-data
NodeMCU - Arduino - NodeRED
NodeMCU - Arduino - NodeRED
NodeMCU - Arduino - NodeRED
NodeMCU - Arduino - NodeRED
NodeMCU - Arduino - NodeRED
NodeMCU - Arduino - NodeRED
NodeMCU - Arduino - NodeRED
Micro:bit
https://microbit.org/get-started/what-is-the-microbit/
Micro:bit
Micro:bit
https://python.microbit.org/v/3/reference
Micro:bit
https://makecode.microbit.org/#editor
Micro:bit
https://makecode.microbit.org/#editor
Micro:bit - Bússola
Micro:bit - Level Sound
Micro:bit - Detect Sound
Micro:bit - Temperatura
Micro:bit - Radio
CRÉDITOS: Este modelo de apresentação foi criado pelo
Slidesgo, e inclui ícones da Flaticon, infográficos e imagens da
Freepik e conteúdo de Eliana Delacour
Obrigado
Você tem alguma pergunta?
rogliariping@gmail.com
+54 98121 2042
Por favor, mantenha este slide para atribuição
IoT além do Arduino

Mais conteúdo relacionado

Semelhante a IoT além do Arduino

OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)Ricardo Rufino
 
Introdução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduinoIntrodução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduinoJuan Manoel
 
Azure IoT Edge executando ML no NVIDIA Jetson Nano
Azure IoT Edge executando ML no NVIDIA Jetson NanoAzure IoT Edge executando ML no NVIDIA Jetson Nano
Azure IoT Edge executando ML no NVIDIA Jetson NanoWalter Coan
 
Programe a STM32L4 Discovery kit IoT node com ARM mbed
Programe a STM32L4 Discovery kit IoT node com ARM mbedPrograme a STM32L4 Discovery kit IoT node com ARM mbed
Programe a STM32L4 Discovery kit IoT node com ARM mbedFabio Souza
 
Que tal Hackear seu carro e plugá-lo na nuvem ?!
Que tal Hackear seu carro e plugá-lo na nuvem ?!Que tal Hackear seu carro e plugá-lo na nuvem ?!
Que tal Hackear seu carro e plugá-lo na nuvem ?!Ricardo Rufino
 
Ficha de trabalho 3 equipamento ativo de uma rede
Ficha de trabalho 3  equipamento ativo de uma redeFicha de trabalho 3  equipamento ativo de uma rede
Ficha de trabalho 3 equipamento ativo de uma redeMarcoSoaresGI
 
Workshop Kit de Desenvolvimento IoT
Workshop Kit de Desenvolvimento IoTWorkshop Kit de Desenvolvimento IoT
Workshop Kit de Desenvolvimento IoTDavid Ruiz
 
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDeviceHackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDeviceRicardo Rufino
 
Soluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e FirebaseSoluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e FirebaseAlvaro Viebrantz
 
Introdução à plataforma Arduino
Introdução à plataforma ArduinoIntrodução à plataforma Arduino
Introdução à plataforma Arduinoentrebits
 
Aplicativos Moveis Com J2ME
Aplicativos Moveis Com J2MEAplicativos Moveis Com J2ME
Aplicativos Moveis Com J2MEJoão Longo
 
Apresentação Bluetooth
Apresentação BluetoothApresentação Bluetooth
Apresentação Bluetoothsafetycontrol
 
Azure Sphere, Azure IoT Edge e modelos de IA em microcontroladores: avanços t...
Azure Sphere, Azure IoT Edge e modelos de IA em microcontroladores: avanços t...Azure Sphere, Azure IoT Edge e modelos de IA em microcontroladores: avanços t...
Azure Sphere, Azure IoT Edge e modelos de IA em microcontroladores: avanços t...Walter Coan
 
Sindpd introducao arduinodomotica
Sindpd introducao arduinodomoticaSindpd introducao arduinodomotica
Sindpd introducao arduinodomoticaDesiree Santos
 
Utilização do NVidia DeepStream para execução de modelos de IA no Azure IoT Edge
Utilização do NVidia DeepStream para execução de modelos de IA no Azure IoT EdgeUtilização do NVidia DeepStream para execução de modelos de IA no Azure IoT Edge
Utilização do NVidia DeepStream para execução de modelos de IA no Azure IoT EdgeWalter Coan
 

Semelhante a IoT além do Arduino (20)

OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)
 
TDC2014 - Arduino Legacy
TDC2014 - Arduino LegacyTDC2014 - Arduino Legacy
TDC2014 - Arduino Legacy
 
Thedude
ThedudeThedude
Thedude
 
Introdução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduinoIntrodução à eletronica e robótica com arduino
Introdução à eletronica e robótica com arduino
 
IoT arduino
IoT arduinoIoT arduino
IoT arduino
 
Azure IoT Edge executando ML no NVIDIA Jetson Nano
Azure IoT Edge executando ML no NVIDIA Jetson NanoAzure IoT Edge executando ML no NVIDIA Jetson Nano
Azure IoT Edge executando ML no NVIDIA Jetson Nano
 
Programe a STM32L4 Discovery kit IoT node com ARM mbed
Programe a STM32L4 Discovery kit IoT node com ARM mbedPrograme a STM32L4 Discovery kit IoT node com ARM mbed
Programe a STM32L4 Discovery kit IoT node com ARM mbed
 
Que tal Hackear seu carro e plugá-lo na nuvem ?!
Que tal Hackear seu carro e plugá-lo na nuvem ?!Que tal Hackear seu carro e plugá-lo na nuvem ?!
Que tal Hackear seu carro e plugá-lo na nuvem ?!
 
Ficha de trabalho 3 equipamento ativo de uma rede
Ficha de trabalho 3  equipamento ativo de uma redeFicha de trabalho 3  equipamento ativo de uma rede
Ficha de trabalho 3 equipamento ativo de uma rede
 
Apresentando o Arduino - UESPI
Apresentando o Arduino - UESPIApresentando o Arduino - UESPI
Apresentando o Arduino - UESPI
 
Workshop Kit de Desenvolvimento IoT
Workshop Kit de Desenvolvimento IoTWorkshop Kit de Desenvolvimento IoT
Workshop Kit de Desenvolvimento IoT
 
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDeviceHackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
 
Introdução a plataforma arduino
Introdução a plataforma arduinoIntrodução a plataforma arduino
Introdução a plataforma arduino
 
Soluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e FirebaseSoluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e Firebase
 
Introdução à plataforma Arduino
Introdução à plataforma ArduinoIntrodução à plataforma Arduino
Introdução à plataforma Arduino
 
Aplicativos Moveis Com J2ME
Aplicativos Moveis Com J2MEAplicativos Moveis Com J2ME
Aplicativos Moveis Com J2ME
 
Apresentação Bluetooth
Apresentação BluetoothApresentação Bluetooth
Apresentação Bluetooth
 
Azure Sphere, Azure IoT Edge e modelos de IA em microcontroladores: avanços t...
Azure Sphere, Azure IoT Edge e modelos de IA em microcontroladores: avanços t...Azure Sphere, Azure IoT Edge e modelos de IA em microcontroladores: avanços t...
Azure Sphere, Azure IoT Edge e modelos de IA em microcontroladores: avanços t...
 
Sindpd introducao arduinodomotica
Sindpd introducao arduinodomoticaSindpd introducao arduinodomotica
Sindpd introducao arduinodomotica
 
Utilização do NVidia DeepStream para execução de modelos de IA no Azure IoT Edge
Utilização do NVidia DeepStream para execução de modelos de IA no Azure IoT EdgeUtilização do NVidia DeepStream para execução de modelos de IA no Azure IoT Edge
Utilização do NVidia DeepStream para execução de modelos de IA no Azure IoT Edge
 

Mais de Ricardo Ogliari

Clean Code/Architecture com Android e Flutter
Clean Code/Architecture com Android e FlutterClean Code/Architecture com Android e Flutter
Clean Code/Architecture com Android e FlutterRicardo Ogliari
 
Mobile, Flutter e Mercado
Mobile, Flutter e MercadoMobile, Flutter e Mercado
Mobile, Flutter e MercadoRicardo Ogliari
 
Aula 1 view model livedata e databinding.pptx
Aula 1   view model livedata e databinding.pptxAula 1   view model livedata e databinding.pptx
Aula 1 view model livedata e databinding.pptxRicardo Ogliari
 
Programando em ruby para arduino
Programando em ruby para arduinoProgramando em ruby para arduino
Programando em ruby para arduinoRicardo Ogliari
 
Intel edison Primeiro Projeto
Intel edison Primeiro ProjetoIntel edison Primeiro Projeto
Intel edison Primeiro ProjetoRicardo Ogliari
 
Internacionalizando um aplicativo BlackBerry API
Internacionalizando um aplicativo BlackBerry APIInternacionalizando um aplicativo BlackBerry API
Internacionalizando um aplicativo BlackBerry APIRicardo Ogliari
 
Como criar interfaces gráficas com android
Como criar interfaces gráficas com androidComo criar interfaces gráficas com android
Como criar interfaces gráficas com androidRicardo Ogliari
 
Criando itens de menu em aplicativos nativos com a BlackBerry API
Criando itens de menu em aplicativos nativos com a BlackBerry APICriando itens de menu em aplicativos nativos com a BlackBerry API
Criando itens de menu em aplicativos nativos com a BlackBerry APIRicardo Ogliari
 
Utilizando O Cell Id Para Popularizar Os Sistemas Lbs
Utilizando O Cell Id Para Popularizar Os Sistemas LbsUtilizando O Cell Id Para Popularizar Os Sistemas Lbs
Utilizando O Cell Id Para Popularizar Os Sistemas LbsRicardo Ogliari
 
Instalando e Configurando o JIL SDK. Crie seu primeiro widget com a ferramenta.
Instalando e Configurando o JIL SDK. Crie seu primeiro widget com a ferramenta.Instalando e Configurando o JIL SDK. Crie seu primeiro widget com a ferramenta.
Instalando e Configurando o JIL SDK. Crie seu primeiro widget com a ferramenta.Ricardo Ogliari
 
A hora de criar LBS para pequenos dispositivos é agora!!
A hora de criar LBS para pequenos dispositivos é agora!!A hora de criar LBS para pequenos dispositivos é agora!!
A hora de criar LBS para pequenos dispositivos é agora!!Ricardo Ogliari
 

Mais de Ricardo Ogliari (15)

Clean Code/Architecture com Android e Flutter
Clean Code/Architecture com Android e FlutterClean Code/Architecture com Android e Flutter
Clean Code/Architecture com Android e Flutter
 
Mobile, Flutter e Mercado
Mobile, Flutter e MercadoMobile, Flutter e Mercado
Mobile, Flutter e Mercado
 
Aula 1 view model livedata e databinding.pptx
Aula 1   view model livedata e databinding.pptxAula 1   view model livedata e databinding.pptx
Aula 1 view model livedata e databinding.pptx
 
Programando em ruby para arduino
Programando em ruby para arduinoProgramando em ruby para arduino
Programando em ruby para arduino
 
Intel edison Primeiro Projeto
Intel edison Primeiro ProjetoIntel edison Primeiro Projeto
Intel edison Primeiro Projeto
 
Internacionalizando um aplicativo BlackBerry API
Internacionalizando um aplicativo BlackBerry APIInternacionalizando um aplicativo BlackBerry API
Internacionalizando um aplicativo BlackBerry API
 
Como criar interfaces gráficas com android
Como criar interfaces gráficas com androidComo criar interfaces gráficas com android
Como criar interfaces gráficas com android
 
Bada
BadaBada
Bada
 
Internacionalizacao
InternacionalizacaoInternacionalizacao
Internacionalizacao
 
Palm e web os
Palm e web osPalm e web os
Palm e web os
 
Trechos interessantes
Trechos interessantesTrechos interessantes
Trechos interessantes
 
Criando itens de menu em aplicativos nativos com a BlackBerry API
Criando itens de menu em aplicativos nativos com a BlackBerry APICriando itens de menu em aplicativos nativos com a BlackBerry API
Criando itens de menu em aplicativos nativos com a BlackBerry API
 
Utilizando O Cell Id Para Popularizar Os Sistemas Lbs
Utilizando O Cell Id Para Popularizar Os Sistemas LbsUtilizando O Cell Id Para Popularizar Os Sistemas Lbs
Utilizando O Cell Id Para Popularizar Os Sistemas Lbs
 
Instalando e Configurando o JIL SDK. Crie seu primeiro widget com a ferramenta.
Instalando e Configurando o JIL SDK. Crie seu primeiro widget com a ferramenta.Instalando e Configurando o JIL SDK. Crie seu primeiro widget com a ferramenta.
Instalando e Configurando o JIL SDK. Crie seu primeiro widget com a ferramenta.
 
A hora de criar LBS para pequenos dispositivos é agora!!
A hora de criar LBS para pequenos dispositivos é agora!!A hora de criar LBS para pequenos dispositivos é agora!!
A hora de criar LBS para pequenos dispositivos é agora!!
 

IoT além do Arduino