合宙Air780e+Luatos接入腾讯云物联网平台

合宙Air780e+Luatos接入腾讯云物联网平台

一、腾讯云物联网平台

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

1. 创建产品

Air780e_luatos_tencent_1.png

2. 定义设备属性和行为

Air780e_luatos_tencent_2.png

3. 创建设备

Air780e_luatos_tencent_3.png

4. 准备参数

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

1) MQTT参数

Air780e_luatos_tencent_4.png

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

2) topic

这里我们主要用到的topic分别是设备属性上报和应用调用设备行为,大家根据需要也可以添加属性响应和行为响应的topic:
Air780e_luatos_tencent_5.png

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

3) json数据格式

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

  • 设备属性上报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
	}
}

二、 MQTT.FX测试

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

1. 登录

拿上面的MQTT数据进行登录
Air780e_luatos_tencent_7.png

2. 属性上报

Air780e_luatos_tencent_8.png
上报后我们可以在控制台看到相关数据:
Air780e_luatos_tencent_9.png

3. 行为响应

首先订阅topic:
Air780e_luatos_tencent_10.png
我们在控制台模拟应用端完成行为下发:
Air780e_luatos_tencent_11.png
查看接收数据:
Air780e_luatos_tencent_12.png
到这里即证明相关准备以完成,接下来就可以使用设备代替mqtt.fx了。

三、Luatos+Air780e

1. 下载源码

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

2. 补充代码

通过上面我们拿到的数据就可以完成编程了,把相关参数填写到对应的位置即可:
Air780e_luatos_tencent_13.png
按照自己的数据格式进行解析:
Air780e_luatos_tencent_14.png
按照自己的数据格式进行上报
Air780e_luatos_tencent_15.png

3. 编译烧录运行

Air780e_luatos_tencent_16.png
运行:
运行程序后,系统每5S上报一次数据,数据每次上报后累加1,并且通过应用下发命令,例如开关灯,设备能够接收命令并完成灯光控制。
Air780e_luatos_tencent_17.png

Licensed under CC BY-NC-SA 4.0