一文了解设备模拟器如何快速接入华为云IoT
本文以设备接入模拟器为例,介绍以MQTT原生协议接入物联网平台。此模拟器是MQTT客户端,可以快速验证是否可以与物联网平台服务交互发布或订阅消息。
前提条件
获取设备接入信息
在设备接入服务控制台获取设备接入平台所需的信息。
- 访问设备接入服务,单击“立即使用”进入设备接入控制台。
- 单击“立即使用”进入控制台,单击左侧导航栏的“总览”,点击“实例基本信息 - 接入信息”查看设备接入信息,记录域名和端口。
创建产品
- 创建MQTT协议产品(如果已有MQTT协议产品,可跳过此步骤)。
- 登录管理控制台,单击左侧导航栏“产品”,单击页面左侧的“创建产品”。
- 根据页面提示填写参数,然后单击“确定”。
基本信息
所属资源空间
平台自动将新创建的产品归属在默认资源空间下。如需归属在其他资源空间下,下拉选择所属的资源空间。如无对应的资源空间,请先创建资源空间。
产品名称
自定义。支持字母、数字、下划线(_)、连字符(-)的字符组合。
协议类型
选择MQTT。
数据格式
选择JSON。
厂商名称
自定义。支持中英文字符、数字、下划线(_)、连字符(-)的字符组合。
所属行业
请根据产品模型的所属行业填写。
设备类型
使用平台预置的产品模型,会自动关联设备类型,不需要再输入设备类型。
高级配置
产品ID
定制ProductID,用于唯一标识一个产品。如果携带此参数,平台将产品ID设置为该参数值;如果不携带此参数,产品ID在物联网平台创建产品后由平台分配获得。
产品描述
产品描述。请根据实际情况填写。
图1 创建产品
注册设备
- 在管理控制台页面,选择左侧导航栏“设备 > 所有设备”,单击页面右上角的“注册设备”。
- 根据页面提示信息填写参数,然后单击“确定”。
参数名称
说明
所属资源空间
确保和这里创建的产品归属在同一个资源空间。
所属产品
选择这里创建的产品。
设备标识码
即nodeID,设备唯一物理标识。可自定义,由英文字母和数字组成。
设备名称
即device_name,可自定义。
设备认证类型
选择“密钥”。
密钥
设备密钥,可自定义,不填写物联网平台会自动生成。
图2 注册设备成功注册设备后,平台会自动生成设备ID和密钥,请妥善保管好设备ID(deviceId)和密钥(deviceSecret),用于设备接入。
使用模拟器接入
- 下载模拟器(默认是64位操作系统),并启动模拟器,如下图:
- 界面展示
- 模拟器提供了界面显示,填写Server地址、设备ID、设备密钥。请根据实际创建的设备信息填写。
- 模拟器提供了界面显示,填写Server地址、设备ID、设备密钥。请根据实际创建的设备信息填写。
- 新建连接
设备或网关在接入物联网平台时首先需要和平台建立连接,从而将设备或网关与平台进行关联。开发者通过传入设备信息,将设备或网关连接到物联网平台。点击新建连接按钮,域名、设备ID和秘钥正确的情况下,可以看到日志设备连接成功,可在平台查看设备状态,如下图:
- 订阅Topic
订阅某topic的设备才能接收broker发布的关于该topic的消息,关于平台预置topic可参考Topic定义。
建链后,如果成功订阅Topic,主界面日志栏显示如下信息:
- 发布Topic
发布Topic是指设备主动向平台上报自己的属性或消息,详细见设备属性上报接口文档。
在模拟器中实现了上报Topic、属性上报功能。
发布Topic后,Demo界面显示如下:
设备上报属性成功后可在“设备详情”页面查看到上报的属性:
- 接收下发命令
模拟器支持接收平台下发命令的功能,在MQTT建链完成并成功订阅Topic后,可以在控制台设备详情中对该设备进行同步命令下发。下发成功后,在MQTT的回调函数中接收到平台下发给设备的命令。
例如下发参数名为smokeDetector: SILENCE,参数值为50的命令。
同步命令下发成功后,Demo界面显示如下:
- 点赞
- 收藏
- 关注作者
评论(0)