Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Anteriormente cubrimos un tutorial para usar ThingSpeak IoT Cloud con ESP32 , hoy en
este tutorial usaremos otra aplicación popular de IoT "Blynk" para controlar el LED
usando el módulo Wi-Fi ESP32 .
Blynk es una plataforma IoT para controlar Arduino, Raspberry Pi, NodeMCU y otros
microcontroladores a través de Internet. La aplicación Blynk se puede descargar desde
Google Play Store o Apple Store.
La aplicación Blynk proporciona un tablero digital donde puede construir una interfaz
gráfica para cualquier proyecto basado en IoT simplemente arrastrando y soltando
widgets. Es simple y fácil de usar la plataforma IoT para crear aplicaciones
complejas. Blynk no está limitado a una placa o plataforma específica, pero puede
usarse con cualquier microcontrolador, siempre que el microcontrolador esté conectado
a Internet. Raspberry Pi tiene Wi-Fi incorporado y otros microcontroladores como
Arduino se pueden conectar a Internet utilizando algún módulo de Wi-Fi como ESP8266,
etc. Anteriormente utilizamos la aplicación Blynk con Raspberry Pi para controlar su pin
GPIO.
Componente requerido
1. Módulo ESP32
2. Cable USB
3. IDE Arduino
4. Blynk App
5. CONDUCIDO, LIDERADO
6. Tablero de circuitos
7. Cables de puente
8. Resistencia 1K
Diagrama de circuito
1
Configuración de la aplicación Blynk para ESP32
Los siguientes son los pasos para configurar la aplicación Blynk en su teléfono y usarla
para un proyecto:
2
6. Después de hacer clic en Aceptar, encontrará la ventana del lienzo.
7. Ahora, toque cualquier parte del lienzo para abrir el cuadro del widget. Todos los
widgets disponibles se encuentran aquí. Ahora elige un botón.
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
Now define your output pin, here I am taking my output from GPIO 2 so I will include pin
2.
3
int pin = 2;
Now enter your Authentication token and your network credentials inside double inverted
commas.
In void setup() function, we will initialize the baud rate, LED output and will connect the
module with the Wi-Fi using WiFi.begin(ssid,password); function. This function begins
the Wi-Fi connection.
void setup() {
pinMode(pin, OUTPUT);
pinMode(pin, HIGH);
Serial.begin(115200);
delay(10);
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, pass);
int wifi_ctr = 0;
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("WiFi connected");
Blynk.begin("66d1e7b99b92458295f8257b80fd2b03", ssid, pass);
}
void loop(){
Blynk.run();
4
}
Ahora abra la aplicación Blynk, vaya al proyecto que creó anteriormente y toque PLAY.
Ahora puede ver que al hacer clic en el botón, su LED cambiará su estado.
Así es como puede controlar con éxito el LED utilizando ESP32 con la aplicación
Blynk .
Code
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
int pin = 2;
char auth[] = " "; // You should get Auth Token in the Blynk App.
char ssid[] = " "; // Your Wi-Fi Credentials
5
char pass[] = " ";
void setup() {
pinMode(pin, OUTPUT);
pinMode(pin, HIGH);
Serial.begin(115200);
delay(10);
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, pass);
int wifi_ctr = 0;
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("WiFi connected");
Blynk.begin("Your auth. Token", ssid, pass);
}
void loop(){
Blynk.run();
}
TAREA
REALIZAR EL PROYECTO PARA ENCENDER 1 FOCOS DE 220 V
UTILIZANDO EL RELEE DE ESTADO SOLIDO O OPTOACOPLADORES
6
QUE ES UN MODULO ESP 32
7
ESPECIFICACIONES TÉCNICAS
Voltaje de Alimentación (USB): 5V DC
Voltaje de Entradas/Salidas: 3.3V DC
SoC: ESP32
CPU principal: Tensilica Xtensa 32-bit LX6
Frecuencia de Reloj: hasta 240Mhz
Desempeño: Hasta 600 DMIPS
Procesador secundario: Permite hacer operaciones básica en modo de ultra
bajo consumo
Wifi: 802.11 b/g/n/e/i (802.11n @ 2.4 GHz hasta 150 Mbit/s)
Bluetooth:v4.2 BR/EDR and Bluetooth Low Energy (BLE)
Xtensa® Dual-Core 32-bit LX6 microprocessors, up to 600 DMIPS
Memoria:
448 KByte ROM
520 KByte SRAM
16 KByte SRAM in RTC
QSPI Flash/SRAM, 4 MBytes
Pines Digitales GPIO: 24 (Algunos pines solo como entrada)
Convesor Analogolico Digital: Dos ADC de 12bits tipo SAR, soporta mediciones
en hasta 18 canales, algunos pines soporta un amplificador con ganancia
programable
UART: 2
Chip USB-Serial: CP2102
Antena en PCB
Seguridad:
Estandares IEEE 802.11 incluyendo WFA, WPA/WPA2 and WAPI
1024-bit OTP, up to 768-bit for customers
Aceleración criptográfica por hardware: AES, HASH (SHA-2), RSA,
ECC, RNG
Este módulo de desarrollo Integra un chip de 32 bits el cual se caracteriza por integrar
comunicación WIFI y Bluetooth low energy (BLE), permitiendo una gran cantidad de
aplicaciones. Compatible con Arduino y otros entornos de programación como ESplorer
ESP32, Cloud IDE ESP32, ESP flash download tool.
Conectividad:
802.11 b/g/n/e/i/n
Wi-Fi Direct (P2P), P2P Discovery, P2P Group Owner mode and P2P Power Management
Bluetooth v4.2 BR/EDR y BLE
BLE Beacon
8
Además, soporta los protocolos SPI, I2C, UART, MAC Ethernet, Host SD
Especificaciones:
48 Pines disponibles:
18 ADC de 12 bits
2 DAC de 8 bits
10 pines para sensores de contacto
16 PWM
20 Entradas/salidas digitales
Este chip hace ya unos años que se encuentra entre nosotros y siempre ha sido una
de las formas mas sencillas y baratas de proporcionar WIFI a nuestros Arduinos. Lo
curioso es que la comunidad ha desarrollado un pluggin que lo convierte ademas en
un procesador compatible arduino que incluye WIFI siendo ademas compatible con las
librerías oficiales
No vamos a insistir mas con este asunto sobre todo cuando podéis encontrar
abundantes tutoriales al respecto en nuestra sección de comunicaciones.
Pero ya hace un año que salió un nuevo chip de espressif llamado ESP32 que es el
sucesor del Esp8266 (Que no sustituto) con una serie de especificaciones
impresionantes, y hemos estado esperando a que se estabilizase un poco el software
necesario para que lo pudiésemos usar.
Aun esta un poco verde el asunto pero no puedo resistirme a presentaros el módulo
porque es una autentica bomba y algo que solito puede soportar la IOT sin
despeinarse.
Vereis que aun hay cosas que aun estan en fase de desarrollo como iremos viendo,
pero creo que ya es el moemento de que en esta caso hagamos la presentacion
del ESP32 porque creo que os va a gustar.
9
ESPECIFICACIONES DEL ESP32
El ESP32 es un procesador del fabricante chino Espressif que viene con unas
especificaciones espectaculares:
10
Parece que uno de los procesadores se dedica a gestionar la
pila WIFI o Bluetooth por lo que tampoco aparecerá en el futuro la posibilidad
de ver este chip como un doble Arduino.
Pero si que se puede acceder al doble nucle desde RTOS (Si no te suena ,
ignóralo directamente)
Existe un modelo que aún no he recibido que además dispone de
modem LORA (Del que ya hablaremos) con lo que tenemos un monstruo para
la IOT por un precio ridículo.
También existe una versión de micro Python para este módulo, que espero
instalar y pasaros el parte en cuanto tenga ocasión.
Pero es que además disponemos de múltiples convertidores Andalogio a digital de 12
bits de resolución y dos convertidores de digital a analógico (Para temas de audio
supongo)
No hay en el mercado nada similar y menos por ese precio. Así que no hay que ser un
genio para augurar un futuro muy brillante a este chip y al su fabricante chino.
11
cualquier cosa que tenga un mínimo de interés y sea de interés general,
donde los programadores voluntarios van creando y depurando sus
cosas.
El interface Arduino para ESP8266 y ESP32 son un par de magníficos
ejemplos de las cosas que podemos encontrar
Vamos a descargar el gestor de GIT desde aquí. Ejecuta el programa una vez
descargado y veras algo así:
12
Ahora basta con que pulses el botón Clone y empezara a descargar el código a
tu PC.
Cuando finalice el clonado (O sea, que se descargue todo lo que hay
en GIThub sobre el tema que has elegido) tienes que ejecutar un programita
llamado get que encontraras en el directorio tools:
Muestra la estructura de directorios del repositorio ESP32 en GIThub
13
Hazle un click click y tardara un ratito en descargar y lanzar varias cosas al cabo
de las cuales ya estarás listo para jugar con tu flamante esp32
COMPROBANDO LA INSTALACIÓN
Vamos a comprobar que todo ha ido bien y que podemos seleccionar nuestro
módulo ESP32. Arranca tu IDE Arduino y empieza por conectar tu Node32.
Vamos a seleccionar el procesador.
Si todo ha ido bien veras que hay una nueva sección de placas con múltiples
modelos basados en el chip ESP32:
14
En mi caso el modelo “ESP32 dev module” me ha ido bien con el
típico Nodemcu32 de nuestra tienda, Selecciona el puerto serie y ya estamos
listos para probar nuestro primer programa.
Vete a ejemplos y encontraras un buen montón de programas de prueba para tu
esp32. Carga:
\\Ejemplos\ESP32\ChipID\GetChipID
Compílalo, pero pon a 115200 baudios la consola de Arduino. EL programa te
devolverá un identificador interno del chip que solo sirve para comprobar que
todo funciona.
Si quieres hacer un Blinking Led (Que asombrosa originalidad) tienes que saber
que en nuestro modulo, el LED está en el GPIO 1:
int ledPin = 1;
15
void setup()
{ pinMode (ledPin, OUTPUT);
Serial.begin(115200);
Serial.println(LED_BUILTIN);
}
void loop()
{ digitalWrite (ledPin, HIGH);
delay(1000);
digitalWrite (ledPin, LOW);
delay(1000);
}
En las proximas sesiones procuraremos hacer algun programa mas interesante,
lo prometemos. El Esp32 tiene mucho que ofrecer pero creo que ya basta por
Hoy
Para porder realizar consultas a nuestros expertos, tienes que ser suscriptor.
Suscribiendote nos ayudas a mantener este proyecto en marcha.
16
2. Ingrese https://dl.espressif.com/dl/package_esp32_index.json en el
campo "URL de administrador de placa adicionales" como se muestra en
la figura a continuación. Luego, haga clic en el botón "Aceptar":
17
Nota: si ya tiene la URL de las placas ESP8266, puede separar las URL con una
coma de la siguiente manera:
https://dl.espressif.com/dl/package_esp32_index.json,
http://arduino.esp8266.com/stable/package_esp8266com_index.json
3. Abra el administrador de juntas. Vaya
a Herramientas > Tablero > Administrador de tableros ...
18
4. Busque ESP32 y presione el botón de instalación para “ ESP32 by
Espressif Systems “:
19
5. Eso es. Debe instalarse después de unos segundos.
20
Probar la instalación
Conecte la placa ESP32 a su computadora. Con su IDE de Arduino abierto, siga
estos pasos:
1. Seleccione su Tablero en Herramientas > Menú del tablero (en mi caso es
el DOIT ESP32 DEVKIT V1 )
21
Denunciar este anuncio
3. Abra el siguiente ejemplo en Archivo > Ejemplos > WiFi (ESP32) > WiFiScan
22
4. Se abre un nuevo boceto en su Arduino IDE:
23
5. Presione el botón Cargar en el IDE de Arduino. Espere unos segundos
mientras el código se compila y carga en su tablero.
24
7. Abra el monitor serie Arduino IDE a una velocidad en baudios de 115200:
8. Presione el botón Habilitar a bordo ESP32 y debería ver las redes disponibles
cerca de su ESP32:
Denunciar este anuncio
25
Solución de problemas
Si intenta cargar un nuevo boceto en su ESP32 y recibe este mensaje de error
" Se produjo un error fatal: no se pudo conectar a ESP32: Se agotó el tiempo de
espera ... Conectando ... ". Significa que su ESP32 no está en modo intermitente /
cargando.
Con el nombre correcto de la placa y COM por seleccionado, siga estos pasos:
Mantenga presionado el botón " BOOT " en su placa ESP32
26
Presione el botón " Cargar " en el IDE de Arduino para cargar su boceto:
Después de ver el " Conectando ... "En su Arduino IDE, suelte el dedo
del botón " BOOT ":
28