【物联网云端对接-4】通过MQTT协议与百度云进行云端通信

百度云的天工物联网服务目前包括:物接入、物解析、物管理、时序数据库和规则引擎等5大部分,本篇文章仅介绍物接入。

天工物联网的物接入,从开发者的角度来说相对有些复杂,需要多步操作才能实现一个云设备的创建,下面我们将详细介绍一下相关的步骤:

第一步:创建实例(类似工程中的项目概念)
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
支持三种方式访问。TCP,SSL(TCP加密通道),WSS(WebSocket 加密通道)。

第二步:创建设备
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
第三步:创建身份
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
天工物联网对设备的访问增加了身份这一个功能,这样对一个项目来说,安全性有了一定层度的提升,比如有些模块,只有上传的功能,那么可以绑定一个低权限的身份。或者是联合进行项目开发的时候,有些设备需要第三方合作开发,那么为第三方配置一个身份即可,约束其要传或收的topic即可。

第四步:创建策略
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
每个身份其实可以绑定若干个策略,每个策略对应若干个topic主题。和微软及阿里不同,百度的topic没有默认主题,这里我们创建一个相对通用的“yfiothub/yfdevice01/#”。也就是说这个节点下的所有topic都可以订阅也可以发布。

第五步:获取访问密钥
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
这个密钥其实是和身份绑定的,而不是和设备绑定的,不同的身份对应不同的密钥,不同的身份包含的策略也不一样。所以相同的用户名,不同的密钥对应的身份不同。

完成以上5步操作,那么我们就可以让设备来对接物联网云平台了。

和微软及阿里的物联网平台不同,百度的云连接非常简单。客户ID可以任意,用户名就是和设备对应的用户名,密码就是身份对应的密码,没有所谓的toKen等概念。
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
发布和订阅的topic,我们仿照阿里的分别定义为:

yfiothub/yfdevice01/update

yfiothub/yfdevice01/get

除了代码编写外,同样我们也做组态的方案,具体实施步骤如下:

第一步:添加设备

发布和订阅的topic,我们仿照阿里的分别定义为:

yfiothub/yfdevice01/update

yfiothub/yfdevice01/get

除了代码编写外,同样我们也做组态的方案,具体实施步骤如下:

第一步:添加设备
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
设备变量自动生成
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
第二步:增加百度云MQTT客户端策略
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
填写完服务器配置信息,然后勾选需要上传的IO变量
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
第三步:部署运行
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
相对于微软和阿里,天工物联网的“设备列表”下有一个“连接测试”的功能,可以直接进行通信监控。单击“连接测试”,进入如下页面,需要配置相关信息。
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
用户名就是设备对应的用户名,身份密钥就是身份对应的密钥。目前该测试页面仅支持WSS方式连接。

连接成功后,我们就可以进行订阅和发布操作了(如下图所示)。
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信
相关的硬件如下:
【物联网云端对接-4】通过MQTT协议与百度云进行云端通信

上一篇:Exchange Server 2010用户管理


下一篇:浅谈各种基于物联网的商业模式