Programación para IoT
Programación de reglas y lógica empresarial
En Internet de las cosas (IoT), las reglas y la lógica empresarial se programan de forma diferente que en los modelos de programación procedimental tradicionales que utilizan SQL y consultas de base de datos. La programación procedimental pasa por el código de principio a fin con controles lógicos transferidos a otras partes de la aplicación. Los sistemas se han diseñado para soportar procesos como los siguientes:
1. Volcar los datos en una base de datos.
2. Cada noche, ejecutar consultas en los nuevos datos y aplicar lógica empresarial.
3. Volcar la salida de la operación de lote en una base de datos.
4. Ejecutar un informe que explique lo que ha sucedido.
Este proceso no funciona correctamente en el mundo acelerado de IoT. El enfoque de "almacenar y luego consultar" no es lo suficientemente flexible u oportuno. Se debe reaccionar a los eventos en tiempo real.
ThingWorx, proporciona una arquitectura gobernada por eventos que permite configurar alertas basadas en criterios de umbral y proporciona una infraestructura de creación de scripts para aplicar lógica empresarial mientras se producen eventos. Para obtener más información, consulte
Eventos y
Suscripciones.
Necesidad de análisis
Se debe tener en cuenta la cantidad masiva de datos en IoT y, por consiguiente, el enfoque del
análisis.
El patrón IFTTT (If This, Then That, si ocurre esto, hacer esto otro) espera que el usuario sepa cómo reaccionar ante los eventos. Sin embargo, hay muchas reacciones posibles ante los eventos de IoT y puede que no se sepa qué acción realizar. Es posible que no se sepa si un evento es una señal o simplemente un ruido. Se desea saber lo que se puede utilizar como conocimiento de los petabytes de datos que generan las cosas.
En resumen, ¿If This, Then What (IFTTW) (si ocurre esto, qué se debe hacer)?
IFTTW busca respuestas a preguntas como las siguientes:
• ¿Es hora de realizar el mantenimiento?
• ¿Es hora de pedir consumibles?
• ¿Es hora de enviar un técnico de reparación?
• ¿Se debe ajustar la configuración de mi producto?
Cuando se utiliza un motor de análisis con la solución de IoT, no solo se obtiene un registro histórico de eventos, sino que también se obtiene una vista predictiva del futuro basado en un modelo analítico fundamentado en el historial.
El modelo de cosa añade contexto de activos al análisis. Permite entrenar el motor de análisis en función de las clases de equipo según lo definido en el modelo. Proporciona una interfaz semántica para generar alertas o incidencias para los activos, en función del análisis de datos en tiempo real. Para obtener más información, consulte
Definición de análisis de datos.
Capa semántica centrada en cosa
ThingWorx proporciona una capa semántica en su modelo, que se supone que no se va a consumir de la manera programática tradicional. Se deben tener en cuenta las cosas y las características de las cosas necesarias para la solución. Con el modelo orientado a objetos de ThingWorx, se puede dividir la funcionalidad común en objetos de nivel superior, encapsular la lógica empresarial y las prestaciones en objetos base, y heredar los objetos base en la cosa digital. Este proceso crea una capa semántica (una representación empresarial de datos que ayuda a los usuarios finales a acceder a datos de forma autónoma utilizando términos comunes, como un producto, un cliente o unos ingresos) que permite formular preguntas como "Cosa123, ¿qué historial de temperatura y ubicación se ha registrado durante las dos últimas horas?"
La semántica del modelo se expone como un conjunto de
API de REST bien conocidas y fuertemente tipadas.
Generador de aplicaciones visuales
Los generadores de aplicaciones visuales proporcionan la parte final para consumir los resultados del modelo semántico centrado en cosa y proporcionan el desarrollo rápido de aplicaciones. Hay varios tipos de procesadores de interfaz de usuario (IU) en el mercado. Para maximizar la velocidad y la flexibilidad de generar la solución de IoT, se debe utilizar una solución que comprenda la capa semántica del modelo de datos y se ajuste cuando cambie el modelo de datos.
Para aprovechar rápidamente la potencia del modelo, se puede utilizar ThingWorx Mashup Builder, que proporciona una capa en el servidor Edge, la nube y el modelo de cosa. Proporciona widgets visuales diseñados para IoT que se pueden cablear previamente al modelo de cosa. Con ThingWorx Mashup Builder, se puede utilizar la acción de arrastrar y soltar para crear páginas de interfaz de usuario sin codificación. El entorno de desarrollo rápido de aplicaciones (RAD) permite iterar en la interfaz de usuario con más rapidez. El valor singular de ThingWorx Platform es que utiliza la capa semántica de
propiedades,
servicios y
eventos para crear de forma rápida e intuitiva aplicaciones modernas para dispositivos de escritorio y móviles. La potencia de ThingWorx permite gestionar las cientos de millones de aplicaciones necesarias para los mil millones de dispositivos conectados.