练习 - 连接到 Azure 数字孪生 REST API 以解决警报
在现实条件下,风力发电场并不会持续运作。 有时,涡轮机资产会遇到可能超过运行阈值的异常。 在这些情况下,涡轮机资产会发送警报信号,而操作员和工程师会接收、分析并采取措施。 为了从混合现实应用中解决 Azure 数字孪生上的涡轮机资产警报,需要向 Azure 数字孪生 REST API 发送请求。
要向 REST API 发送请求,需要进行身份验证。 在此学习模块的上下文中,使用与应用注册对应的应用凭据进行身份验证。 这些凭据表示应用,而不是个体,需要复制到 Unity 项目中。 当应用生成后,这些凭据将直接编译到应用中。 不建议将这种身份验证方法用于生产系统,因为它不需要用户登录。 因此,它不会阻止未经授权的用户访问。 为简单起见,在此学习模块中使用此方法。
此外,ARM 模板还创建所需的应用注册。 作为输出的一部分,你创建了AppCredentials.txt和Azure_config_settings.txt文本文件(包含配置 Unity 可编写脚本的对象所需的重要变量)。 使用这些变量映射,将值输入到 Unity 中:
Azure_config_settings.txt | Unity |
---|---|
adtHostName | Adt 实例 URL |
AppCredentials.txt | Unity |
---|---|
appId | 客户端 ID |
password | 客户端机密 |
tenant | 租户 ID |
需要将这些凭据和 URL 传输到 Unity 项目,以便应用可以进行身份验证,并与 Azure 数字孪生交互。 具体来说,需要将这些值分配给项目中的脚本化对象,并从场景中的特定 GameObject
中引用该 ScriptableObject
。
添加 Azure 数字孪生凭据
导航到 Unity 项目面板中的凭据文件夹:资产>ScriptableObjects>AzureDigitalTwin>凭据。
选择“资产>”“创建>”“ScriptableObjects>”“凭据>”“ADT Rest API 凭据”,为凭据创建可编写脚本的对象。
在项目面板中选择新建的可编写脚本的对象,以在“检查器”面板中查看其配置参数。 根据上一部分中的变量映射,从AppCredentials.txt文件中传输值。
添加涡轮机警报控制器
要向场景添加涡轮机警报控制器并进行身份验证:
ADTTurbineAlertController
更改特定涡轮机的数字孪生体上的警报属性。 此属性在 Azure 数字孪生上更改后,ADTConnection将接收通知,并在本地更新相应的警报值。选择“资产>”“ADTPrefabs>”“ADTTurbineAlertController”,将其从“项目”面板拖到列表底部的“层次结构”面板中。
在检查器中,找到ADT 涡轮机警报控制器(脚本)组件。 对于名为“Adt 连接信息”的字段,选择值框内的圆形图标。
选择“Adt 连接信息”属性,并分配 ADTRestAPICredentials 可编写脚本的对象。
使用“文件>”“保存”保存文件。