设备上报数据
在上一节中,您已经获得了设备证书的两个标识。
对于普通的物联网场景,使用设备的这两个标识,就可以完成设备数据向云端的上报,也就是我们通常说的数据采集。
ZhiLian.Yun 支持多种设备接入协议,这里我们分别以常用的 MQTT 协议为例,快速实现数据上报,完成我们进入互联网开发世界的第一个 Hello World。
假设我们的物理设备是一个通过 UART 串口连接温度传感器的 ARM 单片机,通过 WiFi 模组接入互联网。我们希望将温度数据上报到云平台。
通过 MQTT 上报数据
MQTT 全称是 Message Queuing Telemetry Transport,它是一种基于消息队列的轻量级应用层通信协议,实现了消息发布和订阅。设备可以作为客户端的形式通过它来发布和接收消息,实现数据上报和实时控制。
ZhiLian.Yun 公有云支持全球多个区域,并随着设备接入量不断扩张。每个接入的设备有专用的 MQTT 接入点,您可以在设备详情页的【连接】中找到 MQTT 接入点,例如:
mqtt://<endpoint>:1883以上表示 MQTT 接入点服务器主机为 <endpoint>, 端口为 1883。其中 <endpoint> 会以域名形式出现,不支持 IP。
为了方便演示,我们使用 MQTTX 官网 来模拟设备端与 ZhiLian.Yun 建立 MQTT 连接以及上报数据。
这里我们采用 MQTT 普通认证方式,通过 username/password 完成连接身份验证。同样要用到之前拿到的设备证书,身份信息对应关系如下:
| 参数 | 值 |
|---|---|
| username | AccessToken |
| password | ProjectKey |
| clientId | 空或任意 |
在 MQTTX 中设置连接参数,如下图:

MQTT.fx 设置连接到 ZhiLian.Yun
连接成功后, 订阅主题 down/10000000/# 。 发布到的主题 up/10000000/attributes/post,这个主题是 ZhiLian.Yun 标准协议的属性上报主题。
然后在内容区中填写以下 JSON 消息:
{
"id": 1,
"ack": 1,
"time": 0,
"data": {
"temperature": 26.5,
"humidity": 62
}
}点击 发布按钮,即可完成一次设备数据上报。

提示
更多 MQTT 接入 ZhiLian.Yun 的实战教程,请进入 [教程]。
提示
在实际的设备开发中,不同的硬件平台有不同的开发方式,我们将会对一些主流硬件提供 SDK 和代码示例,包括基于 ARM/RISC-V 的单片机、基于 RTOS/Linux 操作系统的嵌入式硬件、基于 OpenCPU 模式的通信模组等。
更多设备接入方式
ZhiLian.Yun 支持更多设备接入方式,详情请浏览 [设备接入指南]。
