Conectar el simulador en línea de Raspberry Pi a Azure IoT Hub (Node.js)

En este artículo, aprenderás los conceptos básicos de trabajar con el simulador en línea de Raspberry Pi. A continuación, aprenderá a conectar sin problemas el simulador Pi a la nube con Azure IoT Hub.

Connect Raspberry Pi web simulator to Azure IoT Hub

Start Raspberry Pi simulator

Si tiene dispositivos físicos, visite Conectar Raspberry Pi a Azure IoT Hub para comenzar.

Qué debe hacer

  • Conozca los aspectos fundamentales del simulador en línea de Raspberry Pi.

  • Crear un Centro de IoT.

  • Registre un dispositivo para Pi en IoT Hub.

  • Ejecuta una aplicación de ejemplo en PI para enviar datos de sensor simulados a IoT Hub.

Conecte primero Raspberry Pi simulado al IoT Hub que ha creado. A continuación, ejecute una aplicación de ejemplo con el Pi simulado para generar datos de sensor. Por último, envíe los datos del sensor a IoT Hub.

Conocimientos que adquirirá

  • Cómo crear Azure IoT Hub y obtener la cadena de conexión del nuevo dispositivo. Si no tiene ninguna cuenta de Azure, cree una cuenta de evaluación gratuita de Azure en solo unos minutos.

  • Cómo trabajar con el simulador en línea de Raspberry Pi.

  • Cómo enviar los datos del sensor a IoT Hub.

Introducción al simulador web de Raspberry Pi

Seleccione el botón siguiente para iniciar el simulador en línea de Raspberry Pi.

Hay tres áreas en el simulador web.

  1. Área de ensamblado: una representación gráfica del simulador de Pi y los dispositivos y conexiones simulados.

    De forma predeterminada, el área de ensamblado simula las conexiones de Pi a dos dispositivos:

    • Sensor de humedad BME280 conectado a I2C.1
    • Un LED conectado a GPIO 4

    El área de ensamblado está bloqueada en esta versión preliminar, por lo que actualmente no puede personalizar el ensamblado.

  2. Área de codificación: un editor de código en línea para codificar con Raspberry Pi. La aplicación de ejemplo predeterminada ayuda a recopilar datos de sensor desde el sensor BME280 y los envía a Azure IoT Hub. La aplicación es totalmente compatible con dispositivos Pi reales.

  3. Ventana de consola integrada: una ventana que muestra la salida del código. En la parte superior de esta ventana aparecen tres botones.

    • Run (Ejecutar): ejecute la aplicación en el área de codificación.

    • Reset (Restablecer): restablezca el área de codificación a la aplicación de ejemplo predeterminada.

    • Collapse/Expand (Contraer/expandir): al lado derecho hay un botón para contraer o expandir la ventana de consola.

Nota

El simulador web de Raspberry Pi está actualmente disponible en una versión preliminar. Nos gustaría oír su voz en la sala de chat de Gitter. El código fuente es público en GitHub.

Overview of Pi online simulator

Crear un centro de IoT

En esta sección se describe cómo crear un centro de IoT mediante Azure Portal.

  1. Inicie sesión en Azure Portal.

  2. En la página principal de Azure, seleccione el botón + Create a resource (+ Crear un recurso).

  3. En el menú Categorías, seleccione Internet de las cosas y, a continuación, elija IoT Hub.

  4. En la pestaña Datos básicos, complete los campos como se indica a continuación:

    Importante

    Como el centro de IoT se podrá detectar públicamente como un punto de conexión de DNS, asegúrese de que no incluye información de identificación personal ni información confidencial al asignarle un nombre.

    Propiedad Valor
    Suscripción seleccione la suscripción que quiera usar para el centro.
    Grupos de recursos seleccione un grupo de recursos o cree uno. Para crear uno, haga clic en Crear y escriba el nombre que quiera usar.
    IoT hub name escriba el nombre del centro. Este nombre debe ser globalmente único y tener una longitud que oscile entre 3 y 50 caracteres alfanuméricos. El nombre también puede incluir el carácter de guion ('-').
    Región Seleccione la región, más cercana a usted, donde desea que se encuentre el centro. Algunas características, como los flujos de dispositivo de IoT Hub, solo están disponibles en regiones específicas. Para ver estas características limitadas, debe seleccionar una de las regiones admitidas.
    Nivel Seleccione el nivel que quiere usar para el centro. La selección del nivel depende de cuántas características quiera y el número de mensajes que envíe mediante su solución al día.

    El nivel gratis está pensado para la prueba y evaluación. El nivel gratuito permite la conexión de 500 dispositivos con el centro y hasta 8000 mensajes al día. Cada suscripción a Azure puede crear un centro de IoT en el nivel gratis.

    Para comparar las características disponibles para cada nivel, seleccione Comparar niveles. Para más información, consulte Elección del nivel adecuado de IoT Hub para la solución.
    Daily message limit Seleccione la cuota diaria máxima de mensajes para el centro. Las opciones disponibles dependen del nivel seleccionado para el centro. Para ver las opciones disponibles de mensajería y precios, seleccione Ver todas las opciones y seleccione la opción que mejor coincida con las necesidades de su centro. Para obtener más información, consulte las cuotas y limitaciones de IoT Hub.

    Screen capture that shows how to create an IoT hub in the Azure portal.

    Nota:

    Los precios mostrados son solo un ejemplo.

  5. Seleccione Siguiente: Redes para continuar con la creación del centro.

  6. En la pestaña Redes, complete los campos como se indica a continuación:

    Propiedad Value
    Configuración de conectividad Elija los puntos de conexión que los dispositivos puedan usar para conectar al centro de IoT. Acepte la configuración predeterminada Acceso público para este ejemplo. Puede cambiar esta configuración después de crear el centro de IoT. Para más información, consulte Administración del acceso a la red pública para IoT Hub.
    Versión de TLS mínima Seleccione la versión de TLS mínima que va a admitir el centro de IoT. Una vez creado el centro de IoT, este valor no se puede cambiar. Acepte la configuración predeterminada, 1.0, para este ejemplo.

    Screen capture that shows how to choose the endpoints that can connect to a new IoT hub.

  7. Seleccione Siguiente: Administración para continuar con la creación del centro.

  8. En la pestaña Administración, acepte la configuración predeterminada. Si lo desea, puede modificar cualquiera de los siguientes campos:

    Propiedad Value
    Nombre del permiso Parte del control de acceso basado en rol: esta propiedad decide cómo administra el acceso al centro de IoT. Permita directivas de acceso compartido o elija solo el control de acceso basado en roles. Para obtener más información, vea Control del acceso a IoT Hub mediante Microsoft Entra ID.
    Assign me Es posible que necesite acceso a las API de datos de IoT Hub para administrar elementos dentro de una instancia. Si tiene acceso a las asignaciones de roles, seleccione Rol Colaborador de datos de IoT Hub para concederse acceso total a las API de datos.

    Para asignar roles de Azure, debe tener los permisos Microsoft.Authorization/roleAssignments/write, como Administrador de acceso de usuario o Propietario.
    Particiones del dispositivo a la nube esta propiedad relaciona los mensajes del dispositivo a la nube con el número de lectores simultáneos de los mensajes. La mayoría de los centros de IoT solo necesitan cuatro particiones.

    Screen capture that shows how to set the role-based access control and scale for a new IoT hub.

  9. Seleccione Siguiente: Complementos para pasar a la pantalla siguiente.

  10. En la pestaña Complemento, acepte la configuración predeterminada. Si lo desea, puede modificar cualquiera de los siguientes campos:

    Propiedad Value
    Enable Device Update for IoT Hub Active Device Update for IoT Hub para habilitar actualizaciones inalámbricas para los dispositivos. Si selecciona esta opción, se le pedirá que proporcione información para aprovisionar una cuenta e instancia de Device Update for IoT Hub. Para obtener más información, consulte ¿Qué es Device Update for IoT Hub?
    Enable Defender for IoT Active Defender para loT para agregar una capa adicional de protección a IoT y a sus dispositivos. Esta opción no está disponible para los centros de conectividad del nivel gratuito. Obtenga más información sobre las recomendaciones de seguridad para IoT Hub en Defender para IoT.

    Screen capture that shows how to set the optional add-ons for a new IoT hub.

    Nota:

    Los precios mostrados son solo un ejemplo.

  11. Seleccione Siguiente: Etiquetas para pasar a la pantalla siguiente.

    Las etiquetas son pares nombre-valor. Puede asignar la misma etiqueta a varios recursos y grupos de recursos para clasificar los recursos y consolidar la facturación. En este documento, no va a agregar ninguna etiqueta. Para más información, consulte Uso de etiquetas para organizar los recursos de Azure.

    Screen capture that shows how to assign tags for a new IoT hub.

  12. Seleccione Siguiente: Revisar y crear para revisar sus selecciones.

  13. Seleccione Crear para iniciar la implementación del nuevo centro. La implementación estará en curso unos minutos mientras se crea el centro. Una vez que la implementación finalice, haga clic en Ir al recurso para abrir el nuevo centro.

Registro de un nuevo dispositivo en el centro de IoT

En esta sección, creará una identidad de dispositivo en el registro de identidades del centro de IoT. No se puede conectar un dispositivo a un centro a menos que tenga una entrada en el registro de identidades. Vea la guía para desarrolladores de IoT Hub para más información.

  1. En el menú de navegación del centro de IoT, abra Dispositivos y, después, seleccione Agregar dispositivo para agregar un dispositivo nuevo en el centro de IoT.

    Screen capture that shows how to create a device identity in the portal.

  2. En Crear un dispositivo, proporcione un nombre para el dispositivo nuevo, como IdDeMiDispositivo y seleccione Guardar. Esta acción crea una nueva identidad de dispositivo para su centro de IoT. Deje activada la opción Generar claves automáticamente para que las claves principal y secundaria se generen de forma automática.

    Screen capture that shows how to add a new device.

    Importante

    El identificador del dispositivo puede estar visible en los registros recopilados para soporte técnico y solución de problemas del cliente, por tanto asegúrese de evitar cualquier información confidencial al darle el nombre.

  3. Después de crear el dispositivo, ábralo desde la lista del panel Dispositivos. Copie el valor de la cadena de conexión principal. El código del dispositivo usa esta cadena de conexión para comunicarse con el centro de IoT.

    De forma predeterminada, las claves y las cadenas de conexión se enmascaran porque son información confidencial. Si hace clic en el icono de ojo, se muestran. No es necesario mostrarlas para copiarlas con el botón Copiar.

    Screen capture that shows the device connection string.

Nota:

El registro de identidades de IoT Hub solo almacena identidades de dispositivos para permitir el acceso seguro a IoT Hub. Almacena las claves y los identificadores de dispositivo para usarlos como credenciales de seguridad, y un indicador de habilitado o deshabilitado que permite deshabilitar el acceso a un dispositivo individual. Si la aplicación necesita almacenar otros metadatos específicos del dispositivo, debe usar un almacén específico de la aplicación. Consulte la guía de desarrolladores de IoT Hub para obtener más información.

Ejecución de una aplicación de ejemplo en el simulador web de Pi

  1. En el área de codificación, asegúrese de trabajar con la aplicación de ejemplo predeterminada. Reemplace el marcador de posición de la línea 15 con la cadena de conexión del dispositivo de Azure IoT Hub.

    Replace the device connection string

  2. Seleccione Ejecutar o escriba npm start en la ventana de consola integrada para ejecutar la aplicación.

Debería ver el resultado siguiente que muestra los datos de sensor y los mensajes que se envían a IoT Hub Output - sensor data sent from Raspberry Pi to your IoT hub

Lectura de los mensajes recibidos por IoT Hub

Una forma de supervisar los mensajes que recibe el centro de IoT del dispositivo simulado consiste en usar la extensión de Azure IoT Hub para Visual Studio Code. Para obtener más información, vea Uso de la extensión de Azure IoT Hub para Visual Studio Code a fin de enviar y recibir mensajes entre el dispositivo e IoT Hub.

Para obtener más formas de procesar los datos enviados por el dispositivo, continúe con la sección siguiente.

Pasos siguientes

Ha ejecutado una aplicación de ejemplo para recopilar datos de sensor y enviarlos a IoT Hub.

Para continuar la introducción a Azure IoT Hub y explorar todos los escenarios de IoT con mayor detalle, consulte lo siguiente: