Ejercicio: Conexión a la API REST de Azure Digital Twins para resolver alertas
En condiciones reales, las operaciones de los parques eólicos no son continuas. En ocasiones, los recursos de turbina experimentan anomalías que pueden superar los umbrales operativos. En estas circunstancias, los recursos de turbina envían una señal de alerta que los operadores y los ingenieros reciben, analizan y sobre la que toman medidas. Para resolver una alerta de recursos de turbina en Azure Digital Twins desde la aplicación de realidad mixta, se envían solicitudes a la API REST de Azure Digital Twins.
Para realizar solicitudes a la API de REST, debe autenticarse. En el contexto de este módulo de aprendizaje, se autenticará con las credenciales de la aplicación correspondientes a un registro de aplicación. Estas credenciales representan una aplicación, no una persona, y se deben copiar en el proyecto de Unity. Al compilar la aplicación, estas credenciales se compilan directamente en la aplicación. No recomendamos este enfoque de autenticación para los sistemas de producción, porque no exige al usuario que inicie sesión. Por tanto, no se impide el acceso de usuarios no autorizados. Use este enfoque en este módulo de aprendizaje por motivos de simplicidad.
La plantilla de ARM, entre otras cosas, crea el registro de aplicación necesario. Como parte de la salida, ha creado los archivos de texto AppCredentials.txt y Azure_config_settings.txt, que contienen variables importantes necesarias para configurar los objetos Scriptable de Unity. Use estas asignaciones de variables para escribir los valores en Unity:
Azure_config_settings.txt | Unity |
---|---|
adtHostName | Dirección URL de la instancia de ADT |
AppCredentials.txt | Unity |
---|---|
appId | Id. de cliente |
password | Secreto del cliente |
tenant | Identificador de inquilino |
Estas credenciales y la dirección URL se deben transferir al proyecto de Unity para que la aplicación se pueda autenticar e interactuar con Azure Digital Twins. En concreto, debe asignar estos valores a un elemento ScriptableObject del proyecto y hacer referencia a ese elemento ScriptableObject
desde un objeto GameObject
concreto de la escena.
Adición de credenciales de Azure Digital Twins
Vaya a la carpeta Credentials (Credenciales) del panel del proyecto de Unity: Assets>ScriptableObjects>AzureDigitalTwin>Credentials.
A fin de crear un objeto Scriptable para las credenciales, seleccione Assets>Create>Scriptable Objects>Credentials>ADT Rest API Credentials.
Seleccione el objeto que admite scripts recién creado en el panel del proyecto para ver sus parámetros de configuración en el panel Inspector. Transfiera los valores en función de la asignación de variables de la sección anterior del archivo AppCredentials.txt.
Adición de un controlador de alertas de turbina
Para agregar el controlador de alertas de turbina a la escena y autenticarse:
ADTTurbineAlertController
cambia la propiedad Alert (Alerta) en el gemelo digital para una turbina específica. Una vez que se ha cambiado esta propiedad en Azure Digital Twins, el objeto Prefab ADTConnection recibe una notificación y actualiza localmente el valor Alert correspondiente.Arrastre Assets>ADTPrefabs>ADTTurbineAlertController desde el panel Project (Proyecto) hasta el panel Hierarchy (Jerarquía), en la parte inferior de la lista.
En Inspector, busque el componente ADT Turbine Alert Controller (Script) (Controlador de alertas de turbinas de ADT [script]). Seleccione el icono circular dentro del cuadro de valor del campo denominado Adt Connection Info (Información de conexión de ADT).
Seleccione la propiedad Adt Connection Info (Información de conexión de ADT) y asigne el objeto que admite scripts ADTRestAPICredentials.
Guarde el archivo con File>Save.