Un método modular para el desarrollo de aplicaciones de IoT, parte 1: opciones de hardware
Colaboración de Editores de DigiKey de América del Norte
2017-08-30
Nota del editor: Las aplicaciones del IoT ofrecen una convergencia particularmente estrecha entre los componentes de hardware y software, lo que requiere que los desarrolladores rindan cuentas de innumerables detalles en cada dominio. Esta serie de dos partes contempla una única plataforma que utiliza un enfoque modular diseñado para facilitar esa convergencia. La Parte 1 examina cómo las opciones de hardware de la plataforma simplifican la implementación de los dispositivos del IoT, mientras que la Parte 2 examina la arquitectura de software de la plataforma y su papel en acelerar el desarrollo de extremo a extremo de las aplicaciones del IoT.
Las aplicaciones de IoT de gran escala requieren generalmente múltiples opciones de conectividad y servicios de software para la implementación de sus capacidades funcionales subyacentes. Para cumplir con los requisitos cada vez más demandantes, los desarrolladores necesitarán combinar varias soluciones diferentes de múltiples fuentes y entornos operativos.
Sin embargo, para satisfacer las demandas de cada solución, a menudo, es necesario replantearse el enfoque del desarrollo. Los desarrolladores no solo se enfrentan a los principales requisitos de la aplicación, sino también a los desafíos que implica conciliar diferentes soluciones en una aplicación perfecta. Al utilizar la plataforma ARTIK de Samsung, los desarrolladores obtienen un enfoque más sencillo que combina módulos de hardware compatibles y servicios de software en una única plataforma uniforme para el desarrollo e implementación de aplicaciones del IoT.
Problemas de desarrollo de aplicaciones del IoT
Para los desarrolladores, el amplio conjunto de requisitos asociados con las aplicaciones del IoT puede resultar desalentador. Los sistemas de sensores deben proporcionar un acondicionamiento preciso de la señal y una conversión de datos precisa con el mínimo ruido y el máximo ancho de banda. Los dispositivos inalámbricos necesitan adaptarse fácilmente a la infraestructura de comunicaciones existente para la aplicación, lo que proporciona suficiente potencia de transmisión de RF y mantiene el consumo total de energía.
En un nivel más alto, los dispositivos del IoT necesitan habilitar una conectividad en nube efectiva a través de un host intermedio como un smartphone o un dispositivo de puerta de enlace local. Al mismo tiempo, los desarrolladores deben asegurarse de que las medidas de seguridad de extremo a extremo sean capaces de mitigar las amenazas que pueden atacar la aplicación del IoT en cualquier eslabón de la cadena de información completa del IoT.
A medida que los desarrolladores estudian estos dominios de problemas individuales, pueden volverse fácilmente miopes: perder de vista las necesidades más amplias de la aplicación a medida que reducen su enfoque en cada conjunto vertical de requisitos. Esto puede ponerlos en una situación de sobrecompromiso con un camino de diseño del cual pueden tener que desviarse.
Las plataformas de extremo a extremo, como la solución Samsung ARTIK, ayudan a los desarrolladores del IoT a evitar la visión de túnel y sus consecuencias al proporcionar un conjunto completo de componentes de hardware y software que pueden combinarse fácilmente en aplicaciones completas del IoT.
Una plataforma unificada de componentes y servicios
El ecosistema ARTIK de Samsung proporciona una plataforma unificada de componentes y servicios diseñados para abordar toda la jerarquía de aplicaciones del IoT. En las capas más bajas de la jerarquía del IoT, los módulos de hardware admiten la adquisición de datos de alto rendimiento y el procesamiento de señales, a la vez que proporcionan múltiples opciones de conectividad inalámbrica.
En las capas más altas, la nube ARTIK proporciona un amplio conjunto de ofertas de servicios nativos y de terceros. Al ejecutar toda la plataforma, un modelo de seguridad unificado proporciona a los desarrolladores un conjunto coherente de servicios para garantizar que solo los dispositivos, servicios y usuarios autorizados tengan acceso a los recursos subyacentes o a la propia aplicación del IoT.
Módulos integrados
Como base del ecosistema ARTIK, una serie de módulos de hardware intercambiables proporcionan soluciones para nodos de sensores inalámbricos y gateways. Por ejemplo, el módulo ARTIK 053 de Samsung combina un procesador ARM® Cortex®-R4, memoria e interfaces periféricas con subsistemas dedicados para conectividad Wi-Fi y seguridad. Los desarrolladores obtienen acceso a los subsistemas de módulos a través de un complemento completo de interfaces en serie y pines de dispositivos que incluyen GPIO, PWM, interfaces en serie y un convertidor analógico a digital (ADC) de 4 canales y 12 bits que admite tasas de conversión superiores a 1 Msamples/s (Figura 1).

Figura 1: Al igual que con otros módulos de la familia ARTIK, el módulo ARTIK 053 proporciona un sistema inalámbrico completo que incluye procesador, memoria, interfaces y subsistemas dedicados a la seguridad y conectividad inalámbrica. (Fuente de la imagen: Samsung Semiconductor)
En sus módulos ARTIK, Samsung combina múltiples sistemas dedicados, como los de comunicaciones y seguridad, en un diseño completamente integrado construido alrededor de un procesador ARM Cortex adecuado para una clase particular de dispositivos IoT. Por ejemplo, el módulo 053 está destinado a utilizarse como un nodo IoT terminal capaz de adquirir y controlar datos en tiempo real. Consecuentemente, el módulo 053 utiliza el ARM Cortex-R4. Este es uno de los miembros más pequeños de la serie Cortex-R de ARM, una serie diseñada específicamente para aplicaciones en tiempo real de baja potencia.
Al funcionar a 320 MHz, el ARM Cortex-R4 aprovecha las cachés de datos y las instrucciones separadas para maximizar el rendimiento de los diseños que requieren una respuesta rápida. Al igual que con otros módulos ARTIK, el 053 aumenta la memoria integrada del procesador con memoria en el módulo, en este caso, 8 Mbytes de flash y 1280 Kbytes de RAM disponibles para uso general.
Además de los módulos 053 habilitados para Wi-Fi, los desarrolladores pueden encontrar otros módulos ARTIK que proporcionan capacidades de procesamiento de clase 053, pero con diferentes opciones de conectividad inalámbrica. Por ejemplo, el módulo ARTIK-020-AV2R proporciona un subsistema completo de bajo consumo de energía Bluetooth para nodos terminales del IoT diseñados para interactuar con smartphones y otros dispositivos móviles.
Independientemente del método de conectividad, cualquier dispositivo del IoT, en cualquier nivel de la jerarquía de dispositivos, necesita soportar una política de seguridad robusta capaz de mitigar las múltiples fuentes de amenazas presentes en las aplicaciones del IoT. Samsung funda sus políticas de seguridad de extremo a extremo en los mecanismos de seguridad basados en hardware en cada uno de sus módulos ARTIK. Por ejemplo, el módulo 053 integra un subsistema de seguridad integral que incluye motores criptográficos, un verdadero generador de números aleatorios, almacenamiento seguro de claves y un entorno de ejecución protegido.
El módulo 053 también incluye una unidad de función físicamente inclonable (PUF), que admite una huella dactilar digital diseñada para proteger contra la falsificación y prevenir los ataques de intermediarios que pueden surgir de los dispositivos falsificados.
Soluciones de reemplazo directo
Para todas las capacidades funcionales de los módulos 053 y otros módulos ARTIK, los desarrolladores pueden colocar estos sistemas inalámbricos completamente aprovechados en diseños con relativa facilidad. El módulo ARTIK 053 requiere pocos componentes adicionales para completar la interfaz de hardware. De hecho, los GPIO del módulo pueden impulsar hasta 12 miliamperios (mA) directamente sin búfer adicional. En el lado de la entrada, los puertos GPIO, I2C, SPI y de depuración del módulo proporcionan entradas de impedancia relativamente alta, obteniendo solo 3 microamperios (µA) (máximo, sin resistencias de pull-down). Los desarrolladores pueden accionar los canales ADC del módulo directamente desde las fuentes de voltaje, pero pueden necesitar agregar amplificadores operativos de bajo ruido para amplificar o atenuar esas señales de fuente para que coincidan con el rango de voltaje de entrada de 0 a 1.8 voltios del ADC.
Para el diseño físico de la placa de PC, los ingenieros sueldan el módulo de 79 patillas de 15 x 40 mm directamente a la placa de PC de destino o a una placa portadora interpuesta entre el módulo y la placa de destino. Debido al subsistema RF incorporado, el posicionamiento del módulo es crítico. Sin embargo, Samsung proporciona especificaciones mecánicas detalladas para optimizar el rendimiento de RF al colocar el módulo 053 en la placa (Figura 2).

Figura 2: Los desarrolladores pueden integrar rápidamente los módulos ARTIK en sus propios diseños utilizando los esquemas y directrices de diseño de Samsung, como esta recomendación de enrutamiento para garantizar el máximo rendimiento de RF en los esquemas de las placas de circuitos impresos. (Fuente de la imagen: Samsung Semiconductor)
Mucho antes de diseñar y producir las PCB a la medida, los desarrolladores pueden usar los kits de desarrollo de ARTIK asociados para evaluar los diseños del IoT basados en estos módulos. Por ejemplo, la placa de desarrollo del kit de arranque ARTIK 053 (SIP-KITNXF001) aloja el módulo 053 a través de una placa de interposición y proporciona LED de prueba, botones, conexión USB, conectores Arduino de interfaz de blindaje y conectores de ruptura de E/S (Figura 3).

Figura 3: Los desarrolladores pueden comenzar rápidamente a evaluar el módulo ARTIK053 mediante la placa de desarrollo del kit básico ARTIK 053, que combina un módulo 053 con alimentación, conectores E/S, LED y botones. (Fuente de la imagen: Samsung Semiconductor)
Además de alimentar la placa a través de su interfaz USB durante el desarrollo, los ingenieros pueden alimentar una placa independiente por separado a través de su conector de 5 a 12 voltios de CC o 5.6 a 6.4 voltios de conexión externa de la batería.
Para el desarrollo de hardware, Samsung incluye esquemas completos y lista de materiales, que proporcionan a los desarrolladores una ventaja en sus diseños personalizados. Como se mencionó anteriormente, los requisitos de interfaz de hardware para el módulo son muy simples. El diseño de referencia del kit básico especificado en el esquema pasa señales digitales sin búfer de los conectores de la placa al módulo. Para las entradas ADC, el esquema muestra el uso de una simple red de resistencias para proporcionar la fuente de voltaje requerida (Figura 4).

Figura 4: Los esquemas del kit básico ARTIK 053 muestran los requisitos de interfaz del módulo 053, que incluyen una red básica de resistencias para suministrar una fuente de voltaje a los cuatro canales de entrada ADC del módulo. (Fuente de la imagen: Samsung Semiconductor)
Puertas de enlace del IoT
Los módulos como Wi-Fi 053 y Bluetooth 052 ofrecen soluciones para el diseño de nodos terminales del IoT. Sin embargo, en jerarquías del IoT más complejas, los desarrolladores del IoT a menudo añaden nodos de procesamiento de alto rendimiento en una capa justo por encima de los nodos de terminal. Estos nodos intermedios sirven como puertas de enlace a la nube, a menudo agregando y preprocesando datos a nivel local, asegurando bucles de latencia cortos entre nodos terminales, o sirviendo para proteger los nodos terminales de las desconexiones periódicas de la nube.
Samsung aborda estos requisitos con un conjunto de módulos basados en procesadores de aplicaciones ARM Cortex-A cada vez más potentes. Por ejemplo, el módulo ARTIK 520 (SIP-005AYS001) está construido a partir de un Cortex-A7 ARM de 32 bits de doble núcleo, el ARTIK 530 (SIP-005AFS301) ofrece un Cortex A-9 ARM de 32 bits de cuatro núcleos, y el ARTIK 710 (SIP-007AFS001) proporciona un procesador ARM Cortex A-53 de 64 bits de ocho núcleos. Gracias a su diseño común, los desarrolladores pueden mezclar y combinar módulos para satisfacer las cargas de procesamiento específicas y los requisitos de rendimiento.
Junto con sus capacidades de procesamiento de energía, cada uno de estos módulos proporciona una colección resistente de periféricos e interfaces necesarias para abordar los requisitos más amplios de los dispositivos de puerta de enlace. Por ejemplo, además de aumentar la cantidad de canales ADC y GPIO, el ARTIK 530 proporciona soporte de interfaz de usuario con una interfaz de cámara MIPI de 4 líneas que admite hasta 1920 x 1080 a 30 fotogramas por segundo (fps); una interfaz de pantalla MIPI de 4 líneas hasta 1920 x 1080 a 60 fps; y dos canales de audio de E/S.
Junto con un mayor soporte de periféricos, los módulos ARTIK 520/530/710 satisfacen otro requisito clave de los diseños de pasarelas. Los dispositivos de pasarela del IoT normalmente necesitan comunicarse con una colección diversa de dispositivos del IoT. En consecuencia, estos módulos de puerta de enlace soportan múltiples opciones inalámbricas que incluyen Wi-Fi, Bluetooth, zigbee y Thread, así como Ethernet.
Debido a su soporte para los requisitos más amplios de los diseños de puertas de enlace, los módulos ARTIK 520/530/710 normalmente requieren un mayor esfuerzo de diseño. Para los desarrolladores, sin embargo, Samsung soporta cada módulo de puerta de enlace con una placa de desarrollo asociada que incluye el kit ARTIK 520 (SIP-KITNXB001), 530 (SIP-KITNXD001) y 710 (SIP-KITNXE001). Junto con las placas de desarrollo de cada kit, Samsung proporciona diseños de referencia completos que incluyen diseños esquemáticos, lista de materiales y diseño físico de placas de PC.
Los kits ilustran diseños de interfaz de módulo más complejos con componentes adicionales que los desarrolladores podrían necesitar para los dispositivos de puerta de enlace. A diferencia del sencillo diseño de la placa de interposición 053 y de la placa de plataforma, estos kits incluyen una importante lista de piezas necesarias para soportar la funcionalidad ampliada de los módulos de puerta de enlace.
Por ejemplo, la placa de desarrollo ARTIK 530 añade un códec de audio, controladores USB, cargador de batería e indicador de combustible, e incluso un MCU ATMEGA48PB-M AVR de Microchip Technology para canales adicionales GPIO y ADC (Figura 5).

Figura 5: La placa de desarrollo ARTIK 530 ilustra el diseño de un sofisticado dispositivo de puerta de enlace, que combina el módulo ARTIK 530 con el MCU externo ATMEGA48PB-M de Microchip Technology, un códec de audio, componentes Ethernet y USB, y circuitos de gestión de baterías. (Fuente de la imagen: Samsung Semiconductor)
A diferencia del sencillo diseño de la placa de desarrollo 053, el kit 530 incluye la placa de plataforma, una placa de interposición que contiene el módulo 530, y una placa de interfaz (IF) para la ampliación adicional. Cuando el dispositivo de interposición 053 solo sirve como placa portadora para el módulo 053, la placa de interposición 530 soporta directamente la mayor parte de la funcionalidad del módulo 530. Como resultado, la placa de interposición 530 desempeña un papel más activo en la integración del módulo dentro de un diseño de sistema de puerta de enlace, proporcionando características como la traducción de nivel necesaria para soportar diferentes dominios de potencia asociados con diferentes componentes de diseño.
El kit de desarrollo y los esquemas asociados demuestran las soluciones de diseño específicas requeridas para cumplir con estos requisitos de interfaz más amplios. Por ejemplo, el diseño de referencia muestra cómo los diseñadores pueden incorporar traductores de nivel NLSX4373MUTAG de 2 bits y NLSX5014MUTAG de 4 bits de ON Semiconductor para interconectar de forma fiable líneas críticas dentro del diseño (Figura 6).

Figura 6: Los desarrolladores pueden aprovechar los diseños de referencia de puerta de enlace ARTIK para obtener detalles sobre la interfaz de los módulos ARTIK 520/530/710 utilizando traductores de nivel estándares para líneas de control digital. (Fuente de la imagen: Samsung Semiconductor)
Conclusión
En el pasado, al abordar los complejos requisitos de las aplicaciones del IoT, los desarrolladores no tenían más remedio que trabajar con componentes dispares de múltiples fuentes y hacer frente a los desafíos de integración asociados. Sin embargo, mediante el ecosistema ARTIK, los desarrolladores pueden combinar módulos de hardware compatibles diseñados para cumplir con los requisitos específicos de conectividad inalámbrica, funcionalidad y rendimiento en los nodos de terminales y puertas de enlace del IoT.
Diseñados para proporcionar soluciones completas de dispositivos del IoT, los módulos ARTIK integran todos los componentes necesarios para implementar nodos de terminales del IoT, o proporcionan la base para implementar diseños de puerta de enlace más complejos. Aprovechando los kits y esquemas de desarrollo de ARTIK, los desarrolladores pueden implementar rápidamente los dispositivos que proporcionan la base de hardware de cualquier aplicación del IoT. Como se describe en la Parte 2, los desarrolladores pueden aprovechar aún más la arquitectura de software del ecosistema ARTIK para completar rápidamente el diseño de extremo a extremo y la implementación de sus aplicaciones del IoT.
Descargo de responsabilidad: Las opiniones, creencias y puntos de vista expresados por los autores o participantes del foro de este sitio web no reflejan necesariamente las opiniones, las creencias y los puntos de vista de DigiKey o de las políticas oficiales de DigiKey.


