UIFlow-接入-Azure

概述

本教程将以搭建温湿度采集节点为案例,演示如何通过UIFlow编程设备接入Azure IoT云服务平台。

创建项目

接入前,需要先通过Azure门户创建IoT中心并注册新设备。 点击此处访问Azure官方文档查看详情

连接信息

根据Azure官方文档完成设备创建后,连接Azure IoT前,我们需要获取到两个字符串,分别是Primary Connection StringSAS Token

  • 其中Primary Connection String,我们可以设备属性界面直接看到(如下图)。

烧录固件

为你的设备烧录UIFlow固件(固件要求v1.7.3及以上版本),点击下方对应文档链接,可查看详细烧录步骤。

UIFlow固件烧录步骤

编写程序

案例程序中上传的数据格式为JSON,能够便于数据后续的拓展与传递,如往Power BI等应用中扩展。

    Connection String:"Primary Connection String"
    SAS Token: "SAS Token"

Micropython API IoT_Hub


//初始化连接
azure = IoT_Hub(connection_string='')

//证书接入方式
azure = IoT_Hub(device_id='', host_name='', ssl=True, cert_file_path='', private_key_path='')

//启用连接
azure.start()

//direct_method信息订阅
azure.subscribe_direct_method(topic, azure_direct_fun)

//监听云端数据callback
azure.subscribe_C2D_message(azure_C2D_cb)

//发布数据至云端
azure.publish_D2C_message()

//上传数据至云端设备实例(Device Twin)
azure.update_twin_reported_properties(key1='value',key2='value')

//传数据至云端设备实例(Device Twin) 响应callback
azure.subscribe_twin_desired_response(azure_desired_cb)

//获取云端设备实例(Device Twin)拥有的属性
azure.retrieve_twin_properties()

Micropython API IoT_Central


//初始化连接
azure = IoT_Central(scope_id='', device_id='', device_key='')

//启用连接
azure.start()

//direct_method信息订阅
azure.subscribe_direct_method(topic, azure_direct_fun)

//监听云端数据callback
azure.subscribe_C2D_message(azure_C2D_cb)

//发布数据至云端
azure.publish_D2C_message()

//上传数据至云端设备实例(Device Twin)
azure.update_twin_reported_properties(key1='value',key2='value')

//传数据至云端设备实例(Device Twin) 响应callback
azure.subscribe_twin_desired_response(azure_desired_cb)

//获取云端设备实例(Device Twin)拥有的属性
azure.retrieve_twin_properties()

发送消息到设备

将代码推送至Core2后,设备将根据程序内容开始上传数据。查看数据的方式并不唯一,该案例将演示通过Azure-IoT-Explorer工具,对上传数据进行查看。 点击访问Azure-IoT-Explorer下载页面

下载完成后,双击打开,点击Add connection填写连接密钥,输入相应的密钥后确认(传入的密钥字符串可以在,Azure门户中的Iot中心- 设置- 共享访问策略-iothubowner-Primary connection string中获得,如下图所示)。

配置完成后,即可获取到当前应用中所包含的设备列表

选中设备进入详情页,通过Cloud-to-device message功能实现信息下发。

查看设备上传数据

Azure-IoT-Explorer目前并不支持查看D2C数据,用户可通过 VSCode - Azure IoT Hub 插件 进行数据监听与下发。更多内容请查看 VSCode - Azure IoT Hub 插件Github

On This Page