Ejercicio: Conexión a la API REST de Azure Digital Twins para resolver alertas

Completado

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

  1. Vaya a la carpeta Credentials (Credenciales) del panel del proyecto de Unity: Assets>ScriptableObjects>AzureDigitalTwin>Credentials.

  2. A fin de crear un objeto Scriptable para las credenciales, seleccione Assets>Create>Scriptable Objects>Credentials>ADT Rest API Credentials.

    Captura de pantalla del menú de recursos de Unity abierto en el que se muestra la selección del menú Crear > ScriptableObjects > Credenciales > Credenciales de API de REST de ADT.

  3. 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.

    Captura de pantalla de las credenciales de la API de REST de ADT en el inspector.

Adición de un controlador de alertas de turbina

Para agregar el controlador de alertas de turbina a la escena y autenticarse:

  1. 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.

  2. Arrastre Assets>ADTPrefabs>ADTTurbineAlertController desde el panel Project (Proyecto) hasta el panel Hierarchy (Jerarquía), en la parte inferior de la lista.

    Captura de pantalla de los objetos Prefab de ADT en el panel del proyecto de Unity.

    Captura de pantalla de los objetos Prefab de ADT en el panel Jerarquía de Unity.

  3. 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).

    Captura de pantalla del controlador de alertas de turbina de ADT en el Inspector de Unity.

  4. Seleccione la propiedad Adt Connection Info (Información de conexión de ADT) y asigne el objeto que admite scripts ADTRestAPICredentials.

    Captura de pantalla del objeto Scriptable de credenciales de la API de REST de ADT en la carpeta de recursos de Unity.

  5. Guarde el archivo con File>Save.