Saltar al contenido
También puedes escuchar este post en audio, ¡dale al play!

IoT, acrónimo de Internet of Things, o su traducción más común al castellano, Internet de las Cosas, se podría decir que es la agrupación e interconexión de dispositivos y objetos a través de una red donde podrían interactuar entre ellos o con sistemas terceros.

Pero, ¿por qué está tan de moda? ¿qué hace que hoy no se pare de hablar de IoT como una de las piedras angulares de la tecnología del futuro? En mi opinión hay dos factores fundamentales, por un lado está la expansión de la cobertura de las redes de comunicaciones inalámbricas y el abaratamiento de las mismas y, por otro, la eclosión del hardware que permite de forma sencilla y barata abordar el desarrollo de pequeños dispositivos electrónicos programables capaces de conectarse a una red inalámbrica y con muy bajo consumo de energía. Y es de esto último de lo que me gustaría hablar en este post, de qué son, qué capacidades tienen y cómo se programan los más accesibles de estos dispositivos.

Empezando por el corazón de estos dispositivos, nos encontramos con los microcontroladores o MCU, se trata de un semiconductor que contiene entre otras cosas, CPU, Memoria, tanto RAM como memoria persistente, módulos de interfaz como de entradas y salidas analógicas y/o digitales, interfaces UART, I2C y toda la electrónica necesaria para que funcione (reloj, multiplexores, etc.)

Un paso más arriba se encuentran los Sistems on chip o SoC, digamos que un SoC es un microcontrolador con todo lo necesario para que pueda funcionar de manera autónoma como si fuera un ordenador, dependiendo del fabricante puede hasta incluir memora masiva para almacenamiento de programas en el propio chip, conectividad Wifi, bluetooth, etc.

Pero para poder trabajar tanto los microcontroladores como los SoC se precisan conocimientos de electrónica y disponer de un pequeño laboratorio para poder interactuar con los sistemas. Se trata de circuitos integrados con diminutos pines que no pueden ser manipulados sin más. Además, dado que se trata de plataformas bastante complejas, también es necesario dotarse de un sistema operativo básico antes de ni siquiera plantearse programar un “Hola mundo” y aquí es cuando aparecen los módulos y los kits de desarrollo. Se trata de dispositivos que integran en un solo circuito impreso un SoC y todo lo necesario para grabar, ejecutar y depurar software desarrollado en lenguajes de programación de alto nivel desde entornos integrados de desarrollo.

Estos kits o placas de desarrollo, en contra de lo que puede parecer, no solamente son placas que permiten crear prototipos previos a la elaboración de un hardware específico, sino que están dotados de la suficiente robustez y escala de integración que los hacen perfectos en si mismos para ser llevados al producto final. Se trata pues de la oportunidad prefecta para que los desarrolladores de software también se involucren en el desarrollo de la capa más cercana al medio de las plataformas IoT, es decir, los dispositivos.

 

 
Pablo Cárcaba
Pablo Cárcaba Perfil en Linkedin

Ingeniero informático, posgrado en software libre y un apasionado de los cacharritos. Llegué a la informática desde la electrónica. Con más de 25 años en el mundo de la programación, muchos de ellos han sido dedicados a los microcontroladores y autómatas. Recientemente, además de como responsable del Digital Center de Asturias, trabajo como Arquitecto en el ámbito del IoT dentro de la plataforma Cumulocity de Software AG.

Más post de Pablo Cárcaba

Listado de entradas

Listado de entradas

Listado de entradas