百度云的天工物联网服务目前包括:物接入、物解析、物管理、时序数据库和规则引擎等5大部分,本篇文章仅介绍物接入。
天工物联网的物接入,从开发者的角度来说相对有些复杂,需要多步操作才能实现一个云设备的创建,下面我们将详细介绍一下相关的步骤:
第一步:创建实例(类似工程中的项目概念)
支持三种方式访问。TCP,SSL(TCP加密通道),WSS(WebSocket 加密通道)。
第二步:创建设备
第三步:创建身份
天工物联网对设备的访问增加了身份这一个功能,这样对一个项目来说,安全性有了一定层度的提升,比如有些模块,只有上传的功能,那么可以绑定一个低权限的身份。或者是联合进行项目开发的时候,有些设备需要第三方合作开发,那么为第三方配置一个身份即可,约束其要传或收的topic即可。
第四步:创建策略
每个身份其实可以绑定若干个策略,每个策略对应若干个topic主题。和微软及阿里不同,百度的topic没有默认主题,这里我们创建一个相对通用的“yfiothub/yfdevice01/#”。也就是说这个节点下的所有topic都可以订阅也可以发布。
第五步:获取访问密钥
这个密钥其实是和身份绑定的,而不是和设备绑定的,不同的身份对应不同的密钥,不同的身份包含的策略也不一样。所以相同的用户名,不同的密钥对应的身份不同。
完成以上5步操作,那么我们就可以让设备来对接物联网云平台了。
和微软及阿里的物联网平台不同,百度的云连接非常简单。客户ID可以任意,用户名就是和设备对应的用户名,密码就是身份对应的密码,没有所谓的toKen等概念。
发布和订阅的topic,我们仿照阿里的分别定义为:
yfiothub/yfdevice01/update
yfiothub/yfdevice01/get
除了代码编写外,同样我们也做组态的方案,具体实施步骤如下:
第一步:添加设备
设备变量自动生成
第二步:增加百度云MQTT客户端策略
填写完服务器配置信息,然后勾选需要上传的IO变量
第三步:部署运行
相对于微软和阿里,天工物联网的“设备列表”下有一个“连接测试”的功能,可以直接进行通信监控。单击“连接测试”,进入如下页面,需要配置相关信息。
用户名就是设备对应的用户名,身份密钥就是身份对应的密钥。目前该测试页面仅支持WSS方式连接。
连接成功后,我们就可以进行订阅和发布操作了(如下图所示)。
相关的硬件如下: