Visualizar datos de sensores en tiempo real de Azure IoT Hub usando BI


Antes de empezar este post  deberíamos   tener configurado  un dispositivo Iot de Azure como por ejemplo  algunos que hemos visto como puede ser una Raspberry Pi 3  , un ESP8266  o incluso un dispositivo simulado.

En todos los  dispositivos de Azure IoT  hub comentados debemos implementar una aplicación de ejemplo para ejecutar en estos dispositivos, la cual  enviará  datos que  los sensores recogen del mundo físico ( humedad , temperatura, presencia, etc  ) a su hub de IoT.

Ahora ,una vez que tenemos un dispositivo IoT enviando mensajes  de telemetría a la nube de Azure Iot Edge, toca  crear una cuenta de Azure storage y una aplicación Azure  para poder almacenar los mensajes de hub de IoT en el almacenamiento blob, pero  como comentamos  al  principio , como requisito previo,    necesitamos  tener configurado su dispositivo de Iot  para cubrir los siguientes requisitos:

  • Una suscripción activa de Azure
  • Un centro de IoT bajo su suscripción
  • Una aplicación que envíe mensajes a su hub de IoT
  • Una cuenta  de BI. (Tratar de poder BI gratis)

 

Si  su dispositivo de IoT  ya esta enviando mensajes al Hub de Iot  excepto que haya instalado en una maquina Linux el explorador de mensajes de Azure  olo haga desde la consola  no podrá ver el contenido  de esos mensajes.  Precisamente para solucionar este problema, podemos conectar el sistema de almacenamiento de Azure con los mensajes del dispositivo para que sean almacenados como BLOB’s en el la nube de Azure,como vimos en  un post anterior 

 

En  este  post veremos como  visualizar de una forma gráfica   precisamente esos  datos del sensor en tiempo real que recibe de su hub de Azure IoT por medio de BI , aunque como veremos mas adelante en otro post si usted quiere tratar de visualizar los datos en su hub de IoT con aplicaciones Web e puede hace con otra herramienta  Azure Web Apps

 

Añadir un grupo de consumidores a su hub de IoT

Grupos de consumidores son utilizados por aplicaciones para extraer datos desde Azure IoT. Por esta razon  crearemos un grupo de consumidores para ser utilizado por un servicio de Azure que viene para leer datos de su centro de IoT.

Para agregar un grupo de consumidores a su hub de IoT, siga estos pasos:

  1. En el portal de Azure, abra su hub de IoT.
  2. En el panel izquierdo, Mensajeria –>Puntos de acceso
  3. Haga clic en el panel central en Events
  4. Ahora introduzca un nombre en grupos de consumidores en el panel derecho ( en el ejemplo lo hemos llamado «Device-to-cloud-settings» )
  5. Haga clic en Guardar.puntos de coenxion.PNG

Crear, configurar y ejecutar un trabajo de Stream Analytics

Crear un trabajo de Stream Analytics

  1. En el portal de Azure, haga clic en crear un recurso > Internet de las cosas > Stram Analytics (aálisis de flujo de trabajo)streamanalitycs.PNG
  2. Introduzca la siguiente información para el trabajo.Nombre del trabajo: el nombre del trabajo que debe ser  único en el sistema.                                                                                                                                            Suscripción: Evaluación gratuita.Grupo de recursos: utilizar el mismo grupo de recursos que utiliza el hub de IoT.

    Ubicación: utilizar la misma ubicación como el grupo de recursos.

    Anclar al panel: Seleccione esta opción para acceder a su centro de IoT desde el panel de entrada de Azurestreamjob.PNG

  3. Haga clic en Crear.

Agregar una entrada para el trabajo de Stream Analytics

  1. Abrir el trabajo de Stream Analytics.
  2. En la Topología de trabajo, haga clic en entradas.
  3. En el panel de entradas , haga clic en Agregary especifique la siguiente información:Alias de la entrada: escriba un nombre  único para el alias la entrada.Fuente: seleccione centro de IoT.

    Grupo de consumidores: seleccione el grupo de consumidores que acaba de crear.

  4. Haga clic en crear.centro deiot.PNG

Añadir una salida a la tarea de Stream Analytics

  1. En Topología de trabajo, haga clic en resultados.
  2. En el panel resultados , haga clic en Agregary luego ingrese la siguiente información:Alias de salida: el único alias para la salida.Tipo: seleccione Power BI.
  3. Haga clic en autorizar  para lo cual necesitará  una cuenta profesional  o bien probarlo con  una version gratuita salidapowerbi
  4. Ingrese a su cuenta Power BI y autorice esta salida .
  5. Una vez autorizado, introduzca la siguiente información:Espacio de trabajo de grupo: Seleccione su área de trabajo de grupo de destino.Nombre de conjunto de datos: Introduzca un nombre de conjunto de datos.

    Nombre de la tabla: escriba un nombre de tabla.

  6. Haga clic en crear.

Configurar la consulta del trabajo de análisis de secuencia

  1. En la Topología de trabajo, haga clic en consulta.
  2. Reemplace con el alias de entrada del trabajo.[YourInputAlias]
  3. Reemplace con el alias de salida del trabajo.[YourOutputAlias]
  4. Haga clic en Guardar.

Ejecutar el trabajo de análisis de secuencia

En el trabajo de análisis de secuencia, haga clic en Inicio > ahora > iniciar. Una vez que el trabajo se inicia con éxito, el estado del trabajo cambia de parado a correr.

Crear y publicar un informe de Power BI para visualizar los datos

  1. Garantizar que la aplicación de ejemplo se ejecuta en el dispositivo.
  2. Inicie sesión su cuenta de Power BI .
  3. Ir al espacio de trabajo de grupo que se establece cuando se crea la salida para el trabajo de análisis de secuencia.
  4. Haga clic en conjuntos de datos de Streaming.Debería ver el conjunto de datos lista que especificó cuando creó la salida para el trabajo de análisis de secuencia.
  5. En acciones, haga clic en el primer icono para crear un informe.
  6. Crear un gráfico de líneas para mostrar la temperatura en tiempo real con el tiempo.
    1. En la página de creación de informe, agregar un gráfico de líneas.
    2. En el panel de campos , expanda la tabla que especificó cuando creó la salida para el trabajo de análisis de secuencia.
    3. Arrastre EventEnqueuedUtcTime al eje de en el panel de visualización .
    4. Arrastre la temperatura a los valores.Ahora se crea un gráfico de líneas. El eje x muestra la fecha y la hora en la zona de tiempo UTC. El eje y muestra la temperatura del sensor. 
  7. Crear otro gráfico de líneas para indicar humedad en tiempo real con el tiempo. Para ello, siga los mismos pasos anteriores y coloque EventEnqueuedUtcTime en el eje x y la humedad en el eje y.
  8. Haga clic en Guardar para guardar el informe.
  9. Haga clic en archivo > publicar para la web.
  10. Haga clic en crear incrustar códigoy luego haga clic en publicar.

Está previsto el enlace del informe para que se pueda compartir  para el acceso de informe y un fragmento de código para integrar el informe en su blog o sitio Web.

Microsoft también ofrece aplicaciones móviles power BI  para ver e interactuar con sus dashboards de power BI e informes en su dispositivo móvil.

powerbi.PNG

Hemos visto como utilizar  Power BI para visualizar datos de los sensores en tiempo real desde su  hub de IoT de Azure. Como comentamos existe también  una forma alternativa de visualizar datos de Azure IoT Hub  mediante  Azure Web Apps para visualizar datos de los sensores en tiempo real desde Azure IoT que trataremos en un  proximo post.

 

 

 

Fuente   https://docs.microsoft.com/en-gb/azure/iot-hub/iot-hub-live-data-visualization-in-power-bi

Google y Xively


En  este blog hemos  hablado en otras ocasiones de la compañía  y su   gran trayectoria  primero con  el popular servicio de iot de  Pachube.com , después  con la adquisición por parte de  cosm.com  y  finalmente después comprada por logmeIn     reubatizando el servicio como  Xively.com,pues bien ahora podemos ver un nuevo cambio: su compra por parte de Google.

En efecto Google ha anunciado desde su blog  , que ha llegado a un acuerdo para adquirir Xively , una división de LogMeIn, Inc.( por USD50 millones )

Este nuevo movimiento alinea a Google con otros proveedores de la nube,  en especial  con  Amazon con su popular  AWS (Amazon Web Services ), que también han expandido sus propuestas IoT a través de adquisiciones, pero sin embargo, el momento y la naturaleza del acuerdo sugieren que puede estar impulsado por las ambiciones de Google en los productos electrónicos de consumo y el hogar inteligente, más que por la necesidad de agregar funciones genéricas a Google Cloud , pues  Google ya  lanzó su Cloud IoT Core para ofrecer servicios de alojamiento IoT basados ​​en su infraestructura en la nube en septiembre de 2017.

Con la adición de la plataforma Xively, Google aprovecharía su solución con un elemento de conectividad del dispositivo, ofreciendo una solución llave en mano para integrar dispositivos en la nube  así que la adquisición saca  a relucir  los intentos de Google de aumentar su participación en la cadena de valor de IoT. 

La movida de Google es similar  a otras empresas , pero es la mas tardía  que las realizadas por  sus rivales directos:

  • AWS compró 2lemetry en 2015.Las herramientas de IoT que AWS tiene, o está planificando, incluyen: IoT Core, Greengrass, IoT Device Management, IoT Device Defender, IoT analytics, FreeRTOS, IoT 1 clic y otros. AWS está tratando de proporcionar un conjunto completo de opciones para los desarrolladores de IoT en muchos mercados verticales y, al hacerlo, está dando menos espacio para que compitan los proveedores de nicho.
  • Microsoft Azure adquirió Solair en 2016.

 

Xively fue fundada en 2003 y ofrece una plataforma para la conectividad de dispositivos IoT.

 

xively

 

Tanto  AWS como  Azure utilizaron inicialmente su infraestructura en la nube para soportar los requisitos de hospedaje de datos para IoT y luego usaron la plataforma adquirida para avanzar a lo largo de la cadena de valor y simplificar el desarrollo de soluciones para los clientes.

Xively y otros desarrollos sugieren que Google apunta a fortalecer su rol en el negocio de la casa inteligente

A pesar de las similitudes con AWS y la compra de Azure de una plataforma IoT, Google puede estar intentando algo diferente con su adquisición de Xively pues si las capacidades de la plataforma IoT fueran tan importantes, podría haber comprado otra plataforma anteriormente, o incluso haber creado una internamente. Además, para competir con AWS u otros proveedores de plataforma como PTC ThingWorx, será necesario darle seguimiento con otras adquisiciones o desarrollos internos.

Xively puede ser parte de la estrategia de Google para desarrollar capacidades para productos electrónicos de consumo y dispositivos domésticos inteligentes, en lugar de una plataforma horizontal para todos los verticales.

Una semana antes del anuncio de Xively, la empresa matriz de Google, Alphabet, dijo que estaba incorporando Nest en Google para coordinar mejor estos productos inteligentes para el hogar con otros esfuerzos, como Pixel, Google Home y Chromecast. Con la adición de una plataforma, Google, no solo consolida sus productos de consumo de hardware y software, sino que también establece un ecosistema que conecta a las diferentes partes interesadas que operan en este mercado. El reciente alquiler de IoT de Google y las actividades de Xively sugieren que la adquisición de Xively podría respaldar el enfoque revisado de Google para el mercado de consumo inteligente y hogar inteligente.

 

edge

Xively, como muchas otras plataformas IoT, se posiciona como una plataforma horizontal,pero sin embargo, la mayoría de los casos de uso de Xively son para aplicaciones domésticas inteligentes y relacionadas con el consumidor  como hemos podido ver  con las numerosos ejemplos que podemos   usando  diferentes soportes y placas  que son de aplicacion en  calentadores de agua conectados, rastreadores de mascotas, termostatos , soluciones de iluminación y un largo etcétera.

Los antecedentes de usuarios y dispositivos de Xively combinados con el hardware y las aplicaciones de Google pueden ser parte de un esfuerzo para construir una plataforma de hogar inteligente más completa  asi que la venta de Xively puede representar una revisión del mercado de las plataformas de IoT

 

Para 2020 , se estima que alrededor de 20 mil millones de cosas conectadas entrarán en funcionamiento, y el análisis y el almacenamiento de datos en la nube ahora son la piedra angular de cualquier solución de IoT exitosa. Esta adquisición, sujeta a las condiciones de cierre, complementará los esfuerzos de Google Cloud para proporcionar un servicio de IoT completamente administrado que conecte, administre e ingestione de manera fácil y segura los datos de dispositivos dispersos a nivel mundial. Con la adición de la robusta plataforma IoT lista para la empresa de Xively, Google puede acelerar la línea de tiempo de sus  clientes desde la visión de IoT hasta el producto, a medida que buscan construir su negocio conectado.

A través de esta adquisición, Cloud IoT Core obtendrá tecnología de IoT profunda y experiencia en ingeniería, incluida la administración avanzada de dispositivos, la mensajería y las funciones de tablero de Xively. Los os clientes se beneficiarán del extenso conjunto de características y la plataforma flexible de administración de dispositivos de Xively, junto con la seguridad y la escala de Google Cloud. Con el profundo liderazgo de Google Cloud en el análisis de datos y el aprendizaje automático, sus  clientes también estarán en una posición única para desarrollar soluciones de IoT llave en mano y enfocarse en la creación de valor empresarial.

 

 

Fuente https://www.blog.google