Thu. Sep 29th, 2022

Los sistemas integrados son omnipresentes en los dispositivos IoT. Combinados con software, los sistemas dedicados para el uso de IoT emplean microcontroladores y microprocesadores para permitir que los dispositivos en red se comuniquen. Para una selección y un diseño de sistemas integrados efectivos, los diseñadores de dispositivos IoT deben conocer los requisitos de energía, los tamaños de los sistemas integrados y los usos ideales. Los sistemas integrados son anteriores a la era de IoT. Los circuitos integrados y los microcontroladores estuvieron disponibles comercialmente en la década de 1970. Los dispositivos IoT han surgido únicamente porque los sistemas integrados desarrollados para un propósito específico existieron primero.

Componentes del sistema integrado

Hay tres componentes principales que componen un sistema embebido: hardware, software y el sistema operativo. Estos sistemas pueden incluir una interfaz de usuario. Los elementos de hardware incluyen una CPU o un microcontrolador, así como hardware de memoria, temporizadores, puertos de comunicaciones, una fuente de alimentación, actuadores y sensores. La pila de software de un sistema integrado maneja una tarea específica. El sistema realiza la tarea dentro de los límites de la memoria, el techo de procesamiento y las capacidades de dispersión de energía del sistema. Una configuración de SO integrada es compacta y confiable para manejar las funciones de temporización y administrar el uso del sistema. Los sistemas integrados utilizan una amplia gama de IU, que pueden incluir un botón simple, una interfaz LED o LCD para una tarea o una GUI más detallada. En términos de dimensionamiento, los sistemas integrados utilizan sistemas de pequeña, mediana o gran escala. Los sistemas a pequeña escala utilizan un procesador de 8 a 16 bits y tienen recursos de sistema limitados que pueden funcionar con batería. Los dispositivos que utilizan sistemas a pequeña escala incluyen cerraduras de puertas automáticas e impresoras. Los sistemas de escala media emplean procesadores de 16 a 32 bits y generalmente tienen más recursos de red y enrutamiento que las variantes más pequeñas. Los sistemas de mediana escala admiten casos de uso como los cajeros automáticos. Los sistemas integrados a gran escala, a menudo denominados sistemas integrados sofisticados o complejos, utilizan un procesador de 32 bits a 64 bits. Los sistemas complejos a menudo emplean una GUI con varios puertos de comunicación Ethernet, USB o inalámbricos y varios algoritmos a la vez. Los sistemas integrados a gran escala incluyen sistemas de control y gestión de la temperatura industrial, así como electrodomésticos como frigoríficos y hornos microondas. La arquitectura de software integrada a veces se divide en una capa de aplicación, una capa de middleware y una capa de firmware. Los administradores pueden implementar software integrado como software independiente capaz de ejecutar un sistema completo. Una arquitectura de software integrada puede incluir un sistema operativo en tiempo real (RTOS).

Selección de componentes para sistemas embebidos

El desarrollo de dispositivos IoT integrados generalmente toma al menos 18 meses. Elegir los componentes y el software correctos para una unidad de IoT integrada puede ser un proceso complicado para los proveedores de IoT y los fabricantes de dispositivos. Puede requerir muchas pruebas e investigaciones para garantizar que los componentes del sistema integrado funcionen todos juntos y puedan admitir de manera efectiva un dispositivo IoT. También puede ser un desafío encajar tantos componentes juntos en un factor de forma pequeño. Un dispositivo integrado a pequeña escala no utiliza más que un microcontrolador de 8 bits y una batería. Las principales herramientas de programación de código máquina para un dispositivo a pequeña escala son un editor, un ensamblador o un entorno de desarrollo integrado. Un dispositivo integrado de mediana escala generalmente usa un microcontrolador más sofisticado, un procesador Arm o un procesador de señal digital (DSP). Algunos sistemas de mediana escala pueden emplear múltiples microcontroladores o DSP. Las herramientas de programación para dispositivos de mediana escala incluyen C, C++, Visual C++ y Java. Los dispositivos integrados de IoT de mediana escala a menudo dependen de RTOS para realizar tareas repetidas que deben ejecutarse dentro de horarios rígidos. Las piezas estándar específicas de la aplicación se implementan con frecuencia en sistemas integrados de escala media para fabricar interfaces como puertos USB. Los dispositivos integrados de IoT complejos o de gran escala suelen utilizar una CPU de 64 bits y una GUI para su funcionamiento. Sus interfaces pueden incluir pantallas táctiles y requieren chips GPU. Tales sistemas intrincados incluyen equipos de monitoreo de fábricas y robots industriales.

Principales consideraciones de integración

Al desarrollar un sistema integrado de IoT de cualquier complejidad, las preocupaciones clave incluyen los costos de hardware y software, la disponibilidad de los componentes necesarios, cuánta memoria puede tener el dispositivo y la seguridad. Los dispositivos integrados de IoT no pueden tener más que un simple código de acceso a bordo para evitar intrusiones. Las limitaciones de memoria son un desafío constante. Muchos dispositivos tienen menos memoria flash disponible, lo que significa que cada línea de código cuenta en la programación de dispositivos integrados de IoT. Cuantas más líneas de código, más memoria necesita el dispositivo. Debido a que los dispositivos IoT integrados se conectan en red con otros dispositivos y tienen conectividad, los administradores pueden actualizarlos a través de un enlace por cable o inalámbrico. A diferencia de los sistemas integrados anteriores, los dispositivos IoT pueden corregir fallas o abordar problemas de seguridad que no se detectaron en las pruebas de sistemas. Los dispositivos IoT integrados pueden incluso actualizarse con nuevas funciones, si hay memoria disponible. Además, los proveedores de dispositivos IoT deben considerar si el sistema integrado debe conectarse a un sistema externo o si puede ejecutarse como un proceso independiente. Cuanto más conectado debe estar un dispositivo integrado, más memoria y ancho de banda de comunicación requiere.