Introducción #
El IOT está sufriendo un crecimiento y desarrollo exponencial en los últimos años. Esto es debido principalmente a dos factores:
- Los avances realizados en los protocolos de comunicación inalámbrica en sistemas como el Wifi o el Bluetooth.
- El desarrollo, abaratamiento y miniaturización de los microcontroladores, que por lo general son los componentes elegidos para dotar de “inteligencia” a cada dispositivo.
A lo largo de este documento se van a exponer diferentes microcontroladores de la compañía Espressif, así como las placas de desarrollo y productos comerciales que han surgido a partir de ellos.
Microprocesadores, microcontroladores y placas de desarrollo #
Existe cierta confusión en torno a los microcontroladores, en especial, al identificar las diferencias con los microprocesadores, como ocurre por ejemplo entre Raspberry Pi y Arduino. La primera contiene un microprocesador similar al de un PC, al que hay que acompañar de multitud de elementos externos para que tenga funcionalidad. Arduino Uno, que es el mayor exponente de la gama Arduino, es una placa de desarrollo que está formado por un microcontrolador denominado ATMEGA, de la compañía Atmel.
Un microcontrolador está formado por un microprocesador muy básico que solo puede realizar tareas de baja exigencia de cálculo, tiene un bajo consumo energético, y se acompaña en un único chip de todo lo necesario para realizar el proceso completo (memoria RAM, conversores analógico-digitales, puertos E / S, contadores y temporizadores, osciladores, etc.). Por todo ello son muy interesantes para formar parte de pequeños dispositivos IoT.
Cuando se conecta un microcontrolador con otras funcionalidades externas, como comunicación por USB o regulación de tensión, se crea una placa de desarrollo. Arduino es posiblemente la marca de placas de desarrollo más conocida. Sin embargo, en los últimos años han surgido otros fabricantes con productos muy interesantes.
Esp8266 #
La compañía Espressif comercializa los microcontroladores Esp8266 y Esp32, que integran comunicación Wifi y son extraordinariamente económicos. Los primeros en salir fueron los Esp8266 en 2008, revolucionando el mundo de la conectividad Wifi de bajo coste. Sin embargo, no traía conector USB, lo que dificultaba su programación:
Se llegaron a desarrollar 12 modelos del Esp8266. Las famosas placas de desarrollo NodeMCU originales, están basadas en la versión Esp-12 del microcontrolador Esp8266. En la siguiente imagen podemos apreciar una NodeMCU basada en el Esp8266 12:
En 2016 Espressif sacó al mercado su nuevo microcontrolador, el Esp32, cuyo bajo precio y flexibilidad está revolucionando nuevamente el mercado. Este dispositivo es el elegido para la primera placa Microdesys, y sus características se pueden consultar ampliamente en esta entrada.
Productos Espressif para IOT y educación #
Si bien el Esp32 está siendo la opción cada vez más utilizada, debido al desarrollo de software compatible y su bajada de precio, aún encontramos el Esp8266 en multitud de dispositivos comerciales.
Un ejemplo muy interesante del uso de microcontroladores en productos comerciales son los dispositivos domóticos de la marca Sonoff y los de la marca Shelly. Son aparatos de muy bajo coste que integran el chip ESP8266, que también incluye comunicación Wifi. En estas marcas en concreto, es el propio fabricante el que facilita parámetros de conexión interna de sus productos para que cualquier persona con ciertos conocimientos los pueda reprogramar de forma personalizada.
Estos dispositivos se pueden reprogramar con el código que cualquier usuario genere o utilizar alguna de las plataformas abiertas que están surgiendo, como Tasmota o Espurna.
Por otro lado, estas placas permiten la actualización de instalaciones antiguas a las nuevas exigencias del mercado, como puede ser el control Wifi de luces, consumo, detección de presencia, etc. Como ejemplo de esto, se muestra en la siguiente imagen el esquema necesario para actualizar el encendido mediante tres llaves conmutadas de una lámpara, dotándola de encendido mediante Wifi.
Por otro lado, los dispositivos M5stack están basados en el microcontrolador Esp32. Son productos acabados con pantalla táctil, pulsadores incorporados, puertos USB, I2C, ranura para SD, conector para batería y muchos otros elementos integrados.
Además, existen multitud de módulos que se pueden conectar de forma sencilla para ampliar funcionalidades, como GPS o LoRa.
PLCs con Esp32 #
Este PLC ESP32 de la compañía Industrial Shields ha sido diseñado para aplicaciones industriales. Permite el uso de WiFi, Bluetooth LE, protocolo Ethernet IP y otros protocolos industriales como Modbus TCP.
- Comunicación Ethernet
- Wi-Fi y BLE (Bluetooth de baja energía)
- Comunicación del puerto USB
- Comunicación I2C (3.3Vdc)
- Comunicación RS-232
- Comunicación Mitad/Duplex RS-485
- Comunicación SPI
- RTC
- Conector µSD
Hay otros productos similares, como los de la marca NORVI, que también están formados por un Esp32.