IoT und D365FO (Architektur) – Dynamics 365 Supply Chain Management Community

En el artículo de hoy vamos a hablar de IoT; de IoT conectado a D365FO y de como darle a nuestro ERP una new capa de funcionalidad que nos permissionida poder controlar, monitorar y predecir todo aquello relacionado con nuestros dispositivos conectados de nuestro negocio.

Was ist das Ziel dieser Funktionalität?

Claramente en la actualidad cada vez oímos más hablar de IoT (Internet of things) y de como poder controlar dispositivos desde la nube, tener una monitorización en tiempo real y demás. Eso es exactamente lo que prätende esta funcionalita; Unter einem zehnfachen Trabajo-Entor mit einer IoT-Reihe von Dispositivs (Señales, Sensoren, Maschinen, Daten der Telemetrie…), die esta information a D365FO y poder realizar acciones y tomar Schlussfolgerungen auf Basis von Esos-Daten enthält.

Hace un time vimos el launciación de esta funcionalidade bajo el nombre de “IoT Intelligence”. Ahora Esta-Funktionalität haben Sie über den Namen von “Sensor Data Intelligence” erfahren.

¿Qué podemos hacer con esta characteristica?

En la factidad esta funcionalita nos allowe analizer 5 escenarios distintos aunque es de esperar que la candidad de éstos se vea aumentada. Anteriormente solo podíamos analisar 3 de ellos.

Vamos a verlos en la siguiente tabla:

Anwendungsbeispiele:

  • Sensor de producción que se encarga de pesar los palets que pasan por encima. Si el peso es superior a lo esperado hay que rechazar ese palet.
  • Lector de presencia en una linea de producción para controlar que la producción sigue funcionado. Si se produzieren un fallo en la línea se nos notificará.
  • Medir el tiempo de utilizado de un dispositivo para predecir el punto en el que habrá que hacer un mantenimiento

Hasta aquí podríamos decir que tenemos toda la información NO tecnica de esta funcción. A partir de este punto se analisan todos los facts técnicos de arquitectura y configuración para entender los entresijos del sistema.

Wie kann ich diese Funktion aktivieren?

Esta nueva versión de la funcionalita nos ofrece una variación muy importante cuanto a su activation y configuración inicial. Mientras que en la versión anterior se configuraba mediate un add-in a partir del portal de LCS; en la versión actuale lo hacemos directamente desde el entorno de D365FO.

Así pues realizaremos las siguientes acciones:

  1. Vaja a Administración del sistema > Espacios de trabajo > Administración de characteristics.
  2. En la pestana Todsutilice el campo Filter para buscar la characteristica que se llama Sensordatenintelligenz.
  3. Si la charakteristisch Sensordatenintelligenz está habilitada en su sistema, selecciónela en la lista y luego seleccione Deaktivieren para deshabilitarla. No puede usar esta versión anterior de la funcción junto con la nueva versión
  4. Benutze Campo Filter para buscar la characteristica que se llama (Vista previa) Sensordatenintelligenz.
  5. Seleccione la characteristica en la lista y luego seleccione Habilitar ahora para habilitarla.

Una vez activada la funcionalita vamos a configurarla:

  • Iniciamos-Sitzung in D365FO mit einer Cuenta, die nur Administratorrechte enthält.
  • Lass uns gehen Systemverwaltung > Konfiguration > Sensor Data Ingelligence > Implementierung und Connectar Recursos von Azure para abrir el Assistent.
  • En la página Implementieren Sie die IoT-Mustra-Lösung in Azure Auswahl Implementierer.
  • Se abrirá una nueva ventana que nos redirigirá directamente al portal de Azure.
  • En la página Implementierung personalisiertim Campo Abonnementseleccionamos la subscripción que alojará los recursos.
  • Wir haben eine neue Gruppe von Ressourcen erstellt, um eine vorhandene wiederzuverwenden
  • Wir gründen los campos siguientes: URL del entorno de gestioni de la cadena de supply j Verwenden Sie den vorhandenen Azure IoT Hub erneut desmarkado.
  • Wir wählen aus Siguiente: Revisar y crear.

Una vez crados los recursos vamos a realizar unas ultimas configuraciones en el entorno de D365FO.

Si no hemos cerrado el assiste, en el siguiente paso nos apparecarn estos campos:

Si hemos cerrado el Assistent tan solo tenemos que navegar a la ruta Systemverwaltung > Konfigurar > Inteligencia de data de sensors > Paramétros de Sensor Data Intelligence en la que veremos un formulario donde configurar los mismos campos.

Necesitamos 2 cadenas de información para poder rellenar estos campos. Nos dirigiremos al portal de Azure y dentro de los recursos creados buscaremos 2 de ellos:

Id de cliente (identidad administrada)
Cache de Redis

Copiamos estos valores y los pegamos cada uno en su lugar correspondente.

Una vez hechos estos pasos ya tenemos la herramienta correctamente configurada y podemos usarla. Pero no vamos a quedarnos aqui; vamos a analyzer que ha pasado en este proceso de instalación y cuales son los elementos implicados.

Arquitectura de Azure

En la siguiente imagen podemos ver la arquitectura que habra en Azure una vez hayamos implementado los recursos commentados anteriore:

Sensoren IoT

En Primer Lugar (a la izquierda de la imagen) tenemos los sensores fisicos que serán los encargados de sendar la información de sus lecturas a un IoT Hub. Estas lecturas müssen in einem Format, insbesondere a Azure y siempre, als “sensor-valor” dienen.

Das Format wird JSON sein und eine Struktur haben, die como la siguiente ist:

{
    "value": 50,
    "sensorId": "Machine1"
}

De esta manera el IoT Hub is capaz de distribute los mensajes que recibe todos los dispositivos creados.

IoT-Hub

Este recurso es el encargato de amancera y organizar todos los dispositivos IoT que tengamos. Conceptualmente debieria alojar tantos dispositivos IoT como dispositivos reales que tengamos conectatos.

Dazu leiten wir zum Reiter „Dispositivos“ und erstellen so viele wie wir wollen:

La diferencia entre ellos es que cada uno tiene su cadena de connexion, y es la que deberemos usar para poder configurar el envío de las señales.

Azure Stream Analytics

Diese Stream Analytics-Wiederholungen werden mit folgenden Prozessen realisiert:

1. El enlace entre el IoT Hub (donde residen las señales de los dispositivos) y el destino de esas señales. Diese Informationen haben insbesondere zwei Ziele:

  • Azure Redis Cache (Punkt zum Eingang der Metriken bei D365FO)
  • Servicebus-Warteschlange (gestión de las notificaciones)

2. Recibir data parte de D365FO de cara a poder identificar las properties y disparadores configuradores en D365FO y poder executar las notifications.

Wenn Sie einen Stream Analytics-Rekurs für einen zuvor kommentierten Escenario-Typ finden möchten, müssen Sie dies tun.

Si entramos en uno de ellos veremos como existen unas entradas y unas salidas para estas funciones, comunes para todos ellos.

  • Eintritt
    • Señales IoT
    • Información de D365FO relativ zu einer Konfiguration
  • Salidas
    • Metrics a Redis Cache (zur Pdoer-Visualisierung der Señales in D365FO)
    • Mensajes a Service Bus (um mögliche Benachrichtigungen zu verwalten)
Azure-Funktion

Este recurso es el más simple de todos pero el más necesario. Se encarga de la transmission propiamente dicha de la información entre el origen y el destino. Es el canal por donde viajarán nuestras señales desde Stream Analytics hasta Redis Cache.

Redis-Cache

Azure Cache for Redis ist ein Cache mit vollständiger Verwaltung, der eskalierbare Architekturen und Alt-Rendezvous erlaubt. Se usa para crear implementaciones en la nube o híbridas que manejan miliones de requestos por segundo con una latency de menos de a millisegundo, todo con los beneficios de configuración, seguridad and disponibile de un servicio administrado. Port tanto es extremamente útil cuando hablamos de transmission de datos sencillos con un frecuencia muy elevada y con necessidad de tiempo real.

Podemos en este recurso configurar el tamaño de esta cache y el tiempo de vida de los datos en ella. Viene a ser un “SQL” sencillo con borrado automático.

Así pues también nos ofrece una gran variatedo de escalabilidad, como podéis ver en la siguiente imagen:

Aunque offensichtlich luego repercute en el coste del recurso.

Es ist ein Rückgriff auf eine Vielzahl neuer Daten für das IoT für Sean Accessibles von D365FO. De hecho D365FO fordert regelmäßig einen Redis-Cache auf, um Daten zu erhalten und Grafiken zu erstellen.

Speicherblob

Es gibt keinen Rückfall, wenn Sie einen Armament-Teil einer Logic App-Alcamanamos-Konfigurationen von D365FO verwenden, um Stream Analytics-Dienste zu erhalten, um die realen Daten mit den Konfigurationen und allgemeinen Alarmen zu vergleichen.

El contenido de la cuenta de storage es el siguiente:

Como podéis ver en cada carpeta se amasserá la información de cada escenario con la intención de que Azure tenga estos datos.

Por ejemplo si configuramos el escenario de calidad de producto tendremos un archivo parecido a este con la información de esa configuración:

El contenido de uno de estos archivos es el siguiente:

[

{

“@odata.etag”: “W/”JzEsNTYzNzE0NjA4MTsxLDY4NzE5NDc2NzYyJw==””,

“SensorId”: “MachineStatus1”,

“JobId”: “005863”,

“JobDataAreaId”: “usmf”,

“ItemNumber”: “P0111”,

“MaximumAttributeTolerance”: 30,

“OptimalAttributeValue”: 25,

“JobRegistrationStartDateTime”: “2022-09-22T02:50:40Z”,

“OrderId”: “B000052”,

“IsJobCompleted”: “No”,

“MinimumAttributeTolerance”: 10,

“JobRegistrationStopDateTime”: “1900-01-01T00:00:00Z”,

“AttributeName”: “Concentration”

}

]

En él podemos ver el nombre del sensor, la empresa, el article, los márgenes de tolerancia, la orden de producción asociado, el attribute que vamos a medir…

Con esta información tan solo es necesario hacer una compparision con el valor obtenido por el sensor para sabre si está fuera o dentro de lastoleranzen.

Logik-App (Datenübertragung von D365FO nach Azure)

Este recurso es el más complejo de analizer aunque su función sea quizás bastante sencilla de entender. Esta Logic App enthält Coger-Konfigurationen von D365FO und Trasladarlas al Storage anteriore commentado. ¿Cómo lo hace? Tan solo hay que echar un ojo al siguiente esquema para que veáis la completidade del asunto.

Imposible Detector nada en esta imagen así que vamos a hacer un spoiler: hay una rama para cada escenario. Así que vamos a centrarnos solo en uno y luego mentallymente seremos capaces de replikarlo para los demás.

Cogemos el ejemplo del escenario de calidad de producto.

En Primer Lugar Tenemos Eine Reihe von Anwendungen für den Zugriff auf einen D365FO und Devolvernos el Listado of Escenarios Activos y Configuratores.

Una vez obtenido (paso común para todos) el flujo realisiert las acciones propias para cada escenario; im Fall der Bewertung der Qualität des Produkts:

Sin entrar mucho en detalle lo que realiza este flujo es comparar las configurations que existen en el Storage y crear las que sean necesarias para que la configuration sea actual. Por faulto el decalaje entre actualização de configuración es de 2 minutes, aunque podemos modificarlo facilente.

Linienbus

Este servicio es el encargado de poner en cola todas las Notifications found by Stream Analytics y que tienen que ser sentivadas a D365FO en orden.

Logik-App (Benachrichtigungen)

Una vez tenemos las notifications en el Service Bus necessitamos que algo transmita estas alertas a D365FO. Dies ist eine Logic App.

Mediante un Post sobre D365FO nos muestra las alertas y marca los mensajes como completados para que la cola se vacíe y el mensaje no vuelva a ser sentivado.

¿Con estos conocimientos ya podría usar IoT con D365FO?

Por supuesto la respuesta es sí. Pero en este artículo no hemos visto su funcción ni su configuración. Para ello os emplazamos a ver la siguiente Veröffentlichung donde, además, hay sorpresas.

En la siguiente Publikation configuramos escenarios, veremos como se mestreun los resultados en D365FO, y también veremos como podemos adderle una capa de visualisierung mejor con herramientas externas. Por último, lo comentado, alguna sorpresa caerá.

.

Author: admin

Leave a Reply

Your email address will not be published. Required fields are marked *