合宙Air780e+luatos+腾讯云物联网平台完成设备通信与控制(属性上报+4G远程点灯)

1.腾讯云物联网平台

首先需要在腾讯云物联网平台创建产品、创建设备、定义设备属性和行为,例如:

(1)创建产品

在这里插入图片描述

(2)定义设备属性和行为

在这里插入图片描述

(3)创建设备

在这里插入图片描述

(4)准备参数

这里我们主要用到的参数有:

a) MQTT参数

在这里插入图片描述

mqtt_host = "xxxxxxxxxx.iotcloud.tencentdevices.com"  --MQTT地址
mqtt_port = 1883  
client_id = "xxxxxxxxxx"    --MQTT Client ID
user_name = "xxxxxxxxxx"    --MQTT Username
password = "xxxxxxxxxx"     --MQTT password

b) topic

这里我们主要用到的topic分别是设备属性上报和应用调用设备行为,大家根据需要也可以添加属性响应和行为响应的topic:
在这里插入图片描述

$thing/up/action/xxxxxxxxx/xxxxxxxxx
$thing/down/action/xxxxxxxxx/xxxxxxxxx

c) json数据格式

上面topic对应具体的JSON数据格式可以参考官网文档:腾讯云物联网平台物模型协议
在这里插入图片描述
这里需要我们确定的有:

  • 设备属性上报topic对应的json数据
{
	"method": "report",
	"clientToken": "123",
	"timestamp": 1628646783,
	"params": {
		"temp": 1
	}
}
  • 应用下发行为命令时设备接收的json数据
{
	"method": "action",
	"clientToken": "v2530233902vujFm::b1eex-15x8-4e9x-980d-cf73xx539678",
	"actionId": "LED_action",
	"timestamp": 1696565196,
	"params": {
		"LED_action_down_id": 1
	}
}

2. MQTT.FX测试

首先使用MQTT.FX软件代替设备进行测试:

(1)登录

拿上面的MQTT数据进行登录
在这里插入图片描述

(2)属性上报

在这里插入图片描述

上报后我们可以在控制台看到相关数据:
在这里插入图片描述

(3)行为响应

首先订阅topic:
在这里插入图片描述

我们在控制台模拟应用端完成行为下发:
在这里插入图片描述
查看接收数据:
在这里插入图片描述
到这里即证明相关准备以完成,接下来就可以使用设备代替mqtt.fx了。

2.Luatos+Air780e

(1)下载源码

例程已经开源在Gitee,大家自行下载:
Gitee:IOT趣制作 / Luatos_TencentyunIot_air780e

(2)补充代码

通过上面我们拿到的数据就可以完成编程了,把相关参数填写到对应的位置即可:
在这里插入图片描述
按照自己的数据格式进行解析:
在这里插入图片描述
按照自己的数据格式进行上报
在这里插入图片描述

(3)编译烧录运行

在这里插入图片描述
运行:
运行程序后,系统每5S上报一次数据,数据每次上报后累加1,并且通过应用下发命令,例如开关灯,设备能够接收命令并完成灯光控制。
在这里插入图片描述