CONOCIENDO AL ESP32

INTRODUCCIÓN

En esta oportunidad, hablaremos precisamente de la tarjeta electrónica ESP32, utilizada muchas veces para proyectos, prototipos y ejemplos en el ámbito del Internet de las Cosas.

Conoceremos un poco más sobre su estructura, casos de uso y además, instalaremos esta tarjeta en el IDE de Arduino.

CONCEPTOS INICIALES

ESP32 es la denominación de una familia de chips SoC (System on a chip / Sistema en un Chip)  de bajo costo y consumo de energía, con tecnología WiFi y Bluetooth. El ESP32 fue creado y desarrollado por Espressif Systems y es el sucesor de la la familia ESP8266.

FAMILIA ESP32

El ESP32 Dev Kit V4.0 es parte de esta familia amplia; esta tarjeta es un microcontrolador de bajo costo y consumo de energía, cuenta con tecnología Wi-Fi y Bluetooth de modo dual integrada que permite controlar todo tipo de sensores, módulos y actuadores.

Es un módulo que tiene WIFI+BT+BLE para aplicaciones con sensores de baja potencia hasta tareas exigentes, como codificación de voz, transmisión de música y decodificación MP3. Contiene además una corriente de reposo 5uA, velocidad de hasta 150 Mbps y potencia de salida 20dBm.

Si desea conocer sobre otras tarjetas electrónicas pertenecientes a la familia del ESP32 DevKit, puede ingresar al siguiente enlace para conocer un poco más sobre ellas: https://www.espressif.com/en/products/devkits

ESP32 DEV KIT

ESTRUCTURA DEL ESP32 DEVKIT

Presentamos ahora la estructura de los pines que se tiene en la tarjeta electrónica ESP32 DEVKIT V4.0. Esta cuenta con 30 pines los cuales tienen distintas funciones, distintos uso y demás. Se explicará a continuación esta información.

PINPUT DEL ESP32 DEV KIT V1

Esta placa electrónica contiene los siguientes pines:

  • 19 canales de convertidor analógico a digital (ADC)
  • 3 interfaces SPI
  • 3 interfaces UART
  • 2 interfaces I2C
  • 16 canales de salida PWM
  • 2 convertidores de digital a analógico (DAC)
  • 2 interfaces I2S
  • 10 GPIO de detección capacitiva

Además, se presenta también el diagrama de bloques de esta tarjeta electrónica.

DIAGRAMA DE BLOQUES ESP32

PROGRAMAR EL ESP32 DEVKIT

Para poder programar esta tarjeta electrónica, podemos usar 2 métodos.

  • ESP-IDF (Espressif IoT Development Framework)

ESP-IDF, el entorno de desarrollo de software desarrollado por Espressif, puede ayudar a los usuarios a desarrollar rápidamente aplicaciones de Internet de las cosas (IoT) para satisfacer las necesidades de los usuarios de Wi-Fi, Bluetooth y bajo consumo de energía.

Es el usado por muchos desarrolladores; y para poder programar usando esta aplicación se deben tener en cuenta ciertos requerimientos, los cuales se describen en el siguiente enlace: https://docs.espressif.com/projects/esp-idf/en/release-v4.1/get-started/index.html

ESP-IDF APLICACION
  • IDE Arduino

Arduino IDE es un entorno de desarrollo y en él se realiza la programación de cada una de las placas de Arduino. Es el IDE más usado por los programadores de tarjetas Arduino y demás, para desarrollo de programas de Internet de las Cosas, como de Automatización, etc.

Para descargar y aprender mucho más acerca de este IDE, puede ingresar al siguiente enlace: https://www.arduino.cc/en/software

IDE DE ARDUINO

Por temas de comodidad y facilidad al programar esta tarjeta, se usará el IDE de Arduino para los proyectos en los que se use el ESP32 DevKit.

ESP32 DEVKIT EN IDE ARDUINO

Para instalar la tarjeta ESP32 DevKit en el IDE de Arduino, debemos seguir los siguientes pasos:

  1. Nos dirigimos a la cuenta oficial de Espressif en GitHub, usando el siguiente enlace: https://github.com/espressif/arduino-esp32
ESP32 GITHUB SOURCE

2. Dependiendo del sistema operativo en el cual se encuentre, podrá elegir la guía para instalación. Si le damos click al enlace “Installing”, nos redirigirá a un website de Espressif, en el cual según su sistema operativo, debe proceder a seguir la guía; en nuestro caso, usaremos la guía de Windows.

INDICE DE DESCARGAS ESP32
INDICE DE SISTEMA OPERATIVO PARA DESCARGAS

3. Una vez seleccionado Windows, deberemos elegir cual de las 2 opciones de instalación podemos seguir; la manera que toma un poco más de tiempo es la que se nos muestra cuando presionamos la opción “Windows” en la imagen mostrada anteriormente, y aquí debemos seguir TODOS los pasos que se nos indica.

INCISO WINDOWS PARA DESCARGAS

Pasado ya el tiempo y la instalación, abrimos nuestro IDE de Arduino, nos dirigimos a la sección Herramientas/Placas/ESP32 Arduino/ESP32 DevModule; esta será la placa que se debe seleccionar para poder programar nuestra tarjeta en el IDE de Arduino.

PRUEBA DE INSTALACIÓN DE LA PLACA ESP32.

5. Si deseamos hacer una instalación con un menor gasto de tiempo, nos dirigimos al apartado “INSTALLING USING BOARD MANAGER”

ESP32-BOARD INSTALLATION

En ese apartado, encontramos unos enlaces, de los cuales escogeremos el denominado “Stable release link” y lo copiamos en un editor de texto.

ESP32-BOARD MANAGER

Ingresamos a nuestro IDE de Arduino, y nos dirigimos al inciso “Preferencias”

IDE-OPCIONES

En la parte baja, ingresamos nuestro enlace para obtener la tarjeta ESP32, y damos al botón OK.

PREFERENCIAS-IDE-ARDUINO

Ahora, nos dirigimos al inciso “Herramientas/Gestor de Tarjetas”.

HERRAMIENTAS ESP32 - SMELPRO

Paso siguiente, buscamos “ESP32”, y nos aparecerá la tarjeta. Damos al botón “INSTALAR” en la versión más reciente, y tendremos instalado nuestras tarjetas, y como en el proceso anterior, usaremos la denominada “ESP32 DevModule”.

ESP32-INSTALACION-TARJETA

Al momento de conectar nuestra tarjeta ESP32 a nuestra PC, entramos a la aplicación “Administrador de Dispositivos“, en donde nos mostrará si hubo algún error conectando la tarjeta con nuestra computadora. En caso se tenga un Driver instalado previamente, se mostrará como se indica en la siguiente imagen:

En caso no se tenga el Driver instalado, ingresamos al puerto que se detectó en nuestra computadora, nos dirigimos a “Controlador”, y damos click a “Actualizar controlador”

Entonces, se nos abrirá una ventana, en donde debemos ingresar a “Buscar controladores automáticamente”

Nuestro sistema operativo iniciará a buscar un controlador indicado para el uso de nuestra tarjeta electrónica. Una vez encontrada, se instalará y nos aparecerá el siguiente mensaje:

Si deseamos saber si podemos subir código a nuestra tarjeta, nos dirigimos al ejemplo Blink, localizado en Archivos/Ejemplos/Basics/Blink

Ahora, seleccionamos la tarjeta que usaremos, que será la ESP32 DevModule. Lo seleccionamos en Herramientas/Placa/ESP32/ESP32 DevModule

Realizado esto, hacemos una pequeña modificación al código; se definirá el pin 2 de la tarjeta, ya que aquí se encuentra en pin para encender un LED. El pequeño cambio se muestra a continuación:

/*El cambio lo realizamos en la primera línea del código, donde definiremos el LED en el pin 2*/
#define LED 2
/*Definimos la función Setup()*/
void setup() {
  /*Definimos al LED como salida*/
  pinMode(LED, OUTPUT); 
}
/*Definimos la función Loop()*/
void loop() {
  /*Encendemos el LED por 1 segundo, luego lo apagamos. Así funcionará el bucle*/
  digitalWrite(LED, HIGH);   
  delay(1000);                       
  digitalWrite(LED, LOW);    
  delay(1000);                       
}

Subimos el código, y si no hay problemas, nos aparecerá el siguiente mensaje, y el LED de la ESP32 DevKitV1 empezará a encender y apagarse cada 1 segundo.

CONCLUSIONES

Al momento de terminar este tutorial, se logró comprender información acerca del ESP32, los pines que integran la tarjeta electrónica y la instalación de esta en el IDE de Arduino para su futuro uso al momento de programarla. Se llega a la conclusión de que esta tarjeta es muy útil para desarrollo de prototipos de cualquier tipo de proyecto hablando de automatización e Internet de las Cosas. A comentario de quien redacta este articulo, es primordial comprender el uso de la tecnología WiFi, para luego seguir conociendo mucho más acerca de las nuevas tecnologías que rigen en estos últimos años, el mundo del Internet de las Cosas.

Entra a este enlace, para conocer más sobre como conectar el ESP32 a Internet:

CONEXIÓN DE ESP32 DEVKIT V1 A INTERNET

Te invitamos a tomar el curso de Introducción al ESP32: Introducción al ESP32 | TodoMaker’s School

Previous Post
Next Post