Por qué y cómo poner en marcha proyectos de IoT celular con la placa de desarrollo de IoT de Microchip

Colaboración de Editores de DigiKey de América del Norte

El Internet de las Cosas (IoT) celular, una tecnología de red de área amplia de baja potencia (LPWAN), ofrece un camino claro y probado hacia un IoT seguro y resistente para aplicaciones que van desde las ciudades inteligentes hasta la agricultura, pasando por la supervisión remota de infraestructuras. Sin embargo, el IoT celular es una tecnología compleja, desalentadora para los diseñadores inexpertos que se embarcan en un proyecto.

Sin embargo, los retos de diseño del IoT celular pueden facilitarse basando los proyectos en placas de desarrollo celular que utilicen microcontroladores de uso general (MCU) y entornos de diseño integrados (IDE) conocidos. Respaldadas por bibliotecas de software de código abierto y una sencilla conexión de sensores, estas placas de desarrollo facilitan al diseñador la puesta en marcha de proyectos de IoT celular, desde la disposición del hardware hasta el envío de datos a la nube.

En este artículo se exponen brevemente las ventajas del IoT celular antes de explicar las complejidades de diseño que puede introducir esta tecnología. A continuación, el artículo describe cómo el uso de placas de desarrollo de IoT celular puede eliminar gran parte de esta complejidad. Por último, el artículo describe cómo configurar una placa de desarrollo de Microchip Technology para enviar datos simples de color y temperatura a la nube.

¿Qué es el IoT celular?

El IoT celular utiliza la tecnología celular de baja potencia para conectar los dispositivos finales del IoT (como sensores y actuadores) a la nube. Se trata de una tecnología LPWAN que se caracteriza por un alcance de más de un kilómetro, un soporte de dispositivos finales de alta densidad y un bajo rendimiento.

Aunque existen otras tecnologías LPWAN -en particular LoRaWAN (véase "Acelerar los proyectos de IoT de LoRaWAN con un kit de inicio de extremo a extremo") y Sigfox- el IoT celular ofrece algunas ventajas clave, entre ellas:

  • A prueba de futuro: Como norma, la especificación del IoT celular está en constante revisión y desarrollo.
  • Escalabilidad: Cellular IoT puede apoyar el rápido despliegue de IoT a través de la arquitectura celular establecida.
  • Calidad de servicio (QoS): El IoT celular ofrece una alta fiabilidad porque se basa en una infraestructura probada y madura en aplicaciones comerciales de gran volumen.
  • Interoperabilidad IP: Los dispositivos finales pueden conectarse directamente a la nube sin necesidad de costosas y complejas pasarelas.

Los diseñadores deben tener en cuenta que con el IoT celular hay un gasto continuo asociado a la transferencia de datos. Este no es el caso de las tecnologías de la competencia, como LoRaWAN, que utilizan el espectro de frecuencias sin licencia. Sin embargo, los costos de los datos del IoT celular están tendiendo a la baja debido a las presiones de la competencia y al mayor uso de la computación de borde, lo que reduce el volumen de datos poco relevantes enviados a través de la red.

El IoT celular se rige por un estándar de telecomunicaciones regulado y actualizado por el Third Generation Partnership Project (3GPP). La versión 13 de la norma del 3GPP amplió sus categorías de módem máquina a máquina (M2M) para permitir módems de bajo costo, baja potencia y bajo rendimiento adecuados para la conectividad del IoT. Las nuevas versiones de la norma han dado lugar a nuevas mejoras de estos módems IoT.

Los sensores inalámbricos equipados con módems celulares IoT pueden enviar datos a través de kilómetros a la nube sin necesidad de costosas y complejas pasarelas, junto con la seguridad y la calidad de servicio por las que se conoce el celular.

La diferencia entre LTE-M y NB-IoT

El IoT celular se presenta en dos formas, la categoría M1 de LTE (LTE-M) y el IoT de banda estrecha (NB-IoT). Ambos tipos están diseñados para su uso con dispositivos de recursos limitados, a menudo alimentados por baterías, que son típicos del IoT y del IoT industrial (IIoT). Dado que los módems del IoT se conectan a la infraestructura celular establecida, cada uno requiere su propio módulo de identidad de abonado (SIM).

LTE-M se basa en la tecnología LTE ("4G") simplificada. Admite una comunicación segura, una cobertura ubicua y una gran capacidad del sistema. Su capacidad para funcionar como un sistema full-duplex en un ancho de banda relativamente amplio (1.4 megahercios (MHz)) mejora la latencia y el rendimiento en comparación con NB-IoT. El caudal de datos en bruto es de 300 kilobits por segundo (Kbits/s) en el enlace descendente y 375 Kbits/s en el ascendente. La tecnología es adecuada para las conexiones IP seguras de extremo a extremo, y la movilidad está respaldada por las técnicas de traspaso de células LTE. LTE-M es adecuado para aplicaciones móviles como el seguimiento de activos o la asistencia sanitaria.

NB-IoT está diseñado principalmente para la eficiencia energética y para una mejor penetración en los edificios y otras áreas poco amigables con la RF. A diferencia de LTE-M, no se basa en la capa física (PHY) de LTE. La complejidad del módem es incluso menor que la de un dispositivo LTE-M, ya que NB-IoT utiliza un ancho de banda de 200 kilohercios (kHz). Aunque el rendimiento de datos en bruto es de unos modestos 60/30 Kbits/s, el alcance es mejor que el de LTE-M. NB-IoT es adecuado para aplicaciones estáticas, como los contadores inteligentes, que pueden quedar ocultos por las paredes.

Módems celulares comerciales de IoT

Ya está disponible una gama de módems comerciales LTE-M/NB-IoT. Un ejemplo es el módulo Monarch 2 GM02S de Sequans. El dispositivo es compatible con front-end con una única unidad de mantenimiento de existencias (SKU), que es adecuado para 20 de las bandas LTE mundiales. Se suministra en un módulo LGA compacto que mide 16.3 x 17 x 1.85 milímetros (mm). El módulo cumple los requisitos de la versión 14/15 del 3GPP. Alimentado con una sola fuente de 2.2 a 5.5 voltios, el módem es capaz de una potencia máxima de transmisión de +23 decibelios referidos a 1 milivatio (mW) (dBm).

El GM02S admite una SIM externa y una eSIM, así como SIM integradas. Se incluye una interfaz de antena de 50 ohmios (Ω). El dispositivo se suministra con una pila de software LTE-M/NB-IoT y el software Cloud Connector de Sequan para facilitar la conexión con las plataformas comerciales en la nube (Figura 1).

Imagen del módem GM02S LTE-M/NB-IoT de SequansFigura 1: El módem GM02S LTE-M/NB-IoT de Sequans viene en un paquete compacto y con una pila de software madura. (Fuente de la imagen: Sequans)

Retos de diseño del IoT celular

Aunque el módem GM02S es un dispositivo altamente integrado que se suministra con una pila de software y conectividad a la nube, como todos los módems comerciales, todavía se requiere un considerable trabajo de desarrollo antes de que una aplicación de IoT envíe sin problemas datos a través de kilómetros a la nube.

El módem está diseñado únicamente para ocuparse de la comunicación entre el dispositivo final y la estación base. Se necesita un procesador de supervisión y aplicación independiente para controlar el módem y ejecutar al mismo tiempo el software de aplicación del sensor. Además, el diseñador también debe tener en cuenta el circuito o los circuitos de la antena, la fuente de alimentación y el equipamiento de un dispositivo final con una SIM para garantizar una conectividad perfecta con la red celular (véase "Cómo utilizar antenas integradas multibanda para ahorrar espacio, complejidad y costos en los diseños de IoT").

Más allá del diseño del hardware, se necesitan algunos conocimientos de codificación para conseguir que un módulo celular se conecte a la red y reciba/transmita datos. Si el diseño utiliza una MCU de aplicación externa, normalmente se comunica con el módulo celular mediante un enlace serie UART (aunque también se utilizan otras interfaces de E/S). Los comandos AT ("atención") son el medio estándar para controlar un módem celular. Los comandos comprenden una serie de cadenas de texto cortas que pueden combinarse para producir operaciones como marcar, colgar y cambiar los parámetros de la conexión.

Hay dos tipos de comandos AT: Los comandos básicos son aquellos que no comienzan con "+". "D" (Marcar), "A" (Responder), "H" (Control de colgado) y "O" (Volver al estado de datos en línea) son ejemplos. Los comandos extendidos son los que sí comienzan con "+". Por ejemplo, "+CMGS" (Enviar mensaje SMS), "+CMGL" (Listar mensajes SMS) y "+CMGR" (Leer mensajes SMS) (ver "Utilizar un módulo celular para conectar un proyecto Maker al IoT").

Estas consideraciones sobre el hardware y el software aportan una complejidad al IoT celular que podría frenar el progreso de los diseñadores menos experimentados. Afortunadamente, los fabricantes de MCU de aplicación y de módems celulares para el IoT se han unido para ofrecer herramientas de diseño de hardware y software que facilitan el aprovechamiento de esta importante tecnología LPWAN.

Eliminación de la complejidad con las placas de desarrollo del IoT

Abordar los retos del diseño del IoT celular se facilita considerablemente al basar un prototipo en una placa de desarrollo diseñada a tal efecto. El hardware de la placa de desarrollo suele incluir una antena, una fuente de alimentación, una tarjeta SIM con cierto margen de datos libres, un procesador de aplicaciones y redes de sintonización para garantizar un buen rendimiento de RF. De este modo, los diseñadores disponen de una sólida ventaja de hardware para su proyecto y pueden centrarse en el desarrollo de la aplicación. Con la elección correcta de la placa de desarrollo, el desarrollo de la aplicación puede incluso llevarse a cabo en un IDE familiar.

Un ejemplo de una popular placa de desarrollo de IoT celular es la mini placa de desarrollo EV70N78A AVR-IoT Cellular de Microchip. Se trata de una plataforma de hardware basada en la popular MCU AVR128DB48 de Microchip y el módulo celular Sequans Monarch 2 GM02S detallado anteriormente. La MCU es un dispositivo de 8 bits y 24 MHz. Tiene 128 kilobytes (Kbytes) de flash, 16 Kbytes de SRAM, 512 bytes de EEPROM, y viene en un paquete de 48 pines.

La placa de desarrollo también integra un elemento seguro ATECC608B; una vez conectada a una red LTE-M o NB-IoT, el ATECC608B se utiliza para autenticar el hardware con la nube para identificar de forma exclusiva cada placa.

Para facilitar aún más las cosas al diseñador, la placa de desarrollo de Microchip también incluye una tarjeta SIM Truphone lista para ser activada con 150 megabytes (Mbytes) de datos.

La placa de desarrollo cuenta con cinco LEDs de usuario, dos botones mecánicos, un cristal de 32,768 kHz, sensores de color y temperatura, un conector de borde compatible con Adafruit Feather, un conector Qwiic I2C, un depurador a bordo, un puerto USB, opciones de alimentación de batería y entrada externa, y un cargador de batería MCP73830 Li-ion/Li-po con LED de estado de carga (Figura 2).

Imagen de la miniplaca de desarrollo celular AVR-IoT de Microchip Technology (haga clic para ampliar)Figura 2: La miniplaca de desarrollo AVR-IoT Cellular se basa en la MCU AVR128DB48 y viene completa con una tarjeta SIM y 150 Mbytes de datos. (Fuente de la imagen: Microchip Technology)

Iniciar un proyecto de IoT celular

El objetivo del IoT celular es conectar de forma inalámbrica dispositivos finales del IoT, como sensores y actuadores, para que sus datos puedan enviarse a través de kilómetros a la nube. En la placa de desarrollo de Microchip, la MCU está precargada con una imagen de firmware que forma una aplicación de demostración que permite a los usuarios conectar y enviar rápidamente los datos de los sensores de temperatura y color incorporados a un sandbox basado en la nube (alojado en AWS).

Para tener el hardware listo para el desarrollo, basta con activar e insertar la tarjeta SIM, conectar la antena externa a la placa, conectar el puerto USB-C de depuración de la placa al PC, escanear el código QR de la parte inferior de la placa o abrir el dispositivo de almacenamiento masivo y seguir el CLICK-ME.HTM hasta la página web del kit.

Una herramienta de aprovisionamiento de IoT de Microchip, disponible en Github, proporciona una solución fácil de usar para configurar un AVR-IoT Cellular Mini al proveedor de nube seleccionado, establecer el proveedor de red y seleccionar las bandas de frecuencia celular. (Para que el firmware de demostración de la caja de arena funcione, la placa de desarrollo debe estar aprovisionada para la caja de arena de AWS Microchip).

Una vez que los desarrolladores hayan adquirido cierta confianza con la aplicación de demostración, pueden empezar a crear su propia aplicación utilizando el soporte completo del IDE de Arduino de la placa de desarrollo. Este soporte se basa en una biblioteca Arduino celular AVR IoT alojada en Github. La biblioteca está construida sobre el DxCore de código abierto (Figura 3).

Imagen de la biblioteca IoT celular de Microchip AVR (haga clic para ampliar)Figura 3: La biblioteca IoT celular de AVR (naranja) incluye módulos de software para programar y controlar la placa de desarrollo (mostrada de forma simplificada en verde). (Fuente de la imagen: Microchip Technology)

El depurador integrado (PKOB nano) proporciona soporte completo de programación para el IDE de Arduino. No se necesita ninguna herramienta externa y también proporciona acceso a una interfaz de puerto serie (puente serie-USB) y a dos canales de analizador lógico (GPIO de depuración). El depurador integrado en la placa AVR IoT Cellular Mini aparece como un dispositivo de interfaz humana (HID) en el subsistema USB del ordenador anfitrión. Para proyectos más ambiciosos, los conectores de borde compatibles con Qwiic y Feather de la placa de desarrollo permiten una fácil expansión desde una amplia selección de placas complementarias de Sparkfun y Adafruit (Figura 4).

Imagen de la placa de desarrollo AVR IoT de Microchip diagrama de bloquesFigura 4: Este diagrama de bloques de la placa de desarrollo AVR IoT muestra que la conexión con el PC anfitrión se realiza a través del enlace USB del depurador, mientras que la programación de la MCU de aplicación se realiza a través del enlace UART del depurador. Tenga en cuenta que la conexión entre la MCU de la aplicación y el módem celular es también a través de UART. (Fuente de la imagen: Microchip Technology)

Para empezar a programar aplicaciones es necesario descargar e instalar el IDE de Arduino y DxCore. A continuación, es necesario configurar el IDE de Arduino para permitir que se ejecute la biblioteca de Arduino celular AVR IoT (Lista 1).

Lista de configuración del IDE de Arduino para permitir la ejecución de la biblioteca Arduino celular AVR IoTLista 1: Configuración del IDE de Arduino para permitir la ejecución de la librería de Arduino celular AVR IoT. (Fuente del código: Microchip Technology)

Una vez configurado el IDE se puede instalar la biblioteca. Una vez hecho esto, se puede acceder a varios ejemplos de bibliotecas para la placa de desarrollo. Los diseñadores familiarizados con el IDE de Visual Studio Code pueden utilizarlo para el desarrollo de AVR IoT, siempre que instalen el plugin de Arduino. El código de la aplicación Arduino desarrollado en cualquiera de los dos IDE se traslada a la MCU de la placa de desarrollo a través del depurador de la placa.

Realización de mediciones de potencia

El IoT celular está diseñado para funcionar a baja potencia y prolongar la vida útil de los dispositivos finales del IoT alimentados por baterías. Por lo tanto, es importante optimizar el código de la aplicación para conseguir un consumo mínimo de energía.

En la placa de desarrollo de Microchip, la alimentación de todas las partes de la placa se conecta a través de cinco correas de corte. También están destinados a la medición de la corriente. Para medir la potencia en el circuito deseado, basta con cortar la correa y conectar un amperímetro a través de los agujeros (Figura 5).

Imagen de las correas de corte en la placa de desarrollo de AVR IoT de MicrochipFigura 5: Las cintas de corte de la placa de desarrollo AVR IoT pueden utilizarse para medir el consumo de energía de los circuitos clave. (Fuente de la imagen: Microchip Technology)

La placa de desarrollo también cuenta con un circuito de medición de la tensión del sistema que utiliza su interruptor MIC94163 y un divisor de tensión conectado a una patilla ADC de la MCU, lo que permite realizar mediciones a demanda y evitar fugas de energía a través del divisor de tensión. Para medir la tensión del sistema, siga estos pasos:

  1. Configure la referencia de voltaje para el ADC.
  2. Ponga el pin de medición de tensión del sistema GPIO de la MCU (PB3) en alto para habilitar el divisor de tensión.
  3. Establezca el pin de medición de la tensión del sistema MCU ADCO (PE0) como entrada para el ADC.
  4. Ejecuta una conversión analógico-digital (ADC) de un solo extremo.
  5. Calcule la tensión mediante la ecuación V = resultado del ADC x VREF x 4/resolución del ADC.

Por último, también es sencillo medir la tensión de alimentación siguiendo estos pasos:

  1. Configure la referencia de voltaje para el ADC.
  2. Seleccione VDD o VDDIO2 como entrada positiva del ADC. (VDD y VDDIO2 son canales de entrada internos disponibles para el ADC de la MCU).
  3. Ejecuta una conversión ADC de un solo extremo.
  4. Calcule la tensión mediante la ecuación V = resultado del ADC x VREF x 10/resolución del ADC.

Conclusión:

El IoT celular es una LPWAN popular con un potencial comercial creciente. Sin embargo, el diseño de dispositivos finales alimentados por el IoT celular requiere conocimientos tanto de hardware como de software. Para que los diseñadores puedan hacerlo, las nuevas placas de desarrollo de IoT celular, como la miniplaca de desarrollo EV70N78A AVR-IoT Cellular de Microchip, ofrecen una vía rápida de creación de prototipos.

La placa de desarrollo utiliza un módem LTE-M/NB-IoT de gama alta y una popular MCU de Microchip. El desarrollo del código de la aplicación se simplifica utilizando el IDE de Arduino o Visual Studio Code.

DigiKey logo

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.

Información sobre la editorial

Editores de DigiKey de América del Norte