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

news2024/11/16 3:39:10

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,并且通过应用下发命令,例如开关灯,设备能够接收命令并完成灯光控制。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1063768.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python小技巧:快速合并字典dict()

文章目录 前言知识点字典合并1. dict.update()基础合并2. 字典推导式 update() 后话 前言 这里是Python小技巧的系列文章。这是第四篇,快速合并字典。 在Python的使用中,有时候需要将两个 dict(字典) 进行合并。 通常我们会借助 dict(字典) 的内置方法 …

【C语言】编译和链接

前言: 编译和链接是计算机程序开发中的两个重要步骤,用于将源代码转化为可执行的程序。 文章目录 一、翻译环境和运行环境二、翻译环境中的编译2.1 预处理(预编译)2.2 编译2.2.1 语法分析2.2.2 语法分析2.2.3 语义分析 2.3 汇编 三…

【Audio】正弦波生成原理及C++代码

正弦波生成及频谱分析 正弦波公式 诊断系统(Diag)会通过播放一段指定频率、采样率、时长及振幅的正弦音,以此对Audio测试。正弦波的公式如下,其中 A是振幅、x是时间、F是频率。 y A ∗ sin ⁡ ( 2 ∗ π ∗ x ∗ F ) y A* \s…

【考研数学】高等数学第七模块 —— 曲线积分与曲面积分 | 4. 对坐标的曲面积分(第二类曲面积分)与场论初步

文章目录 二、曲面积分2.2 对坐标的曲面积分(第二类曲面积分)1. 问题产生 —— 流量2. 对坐标的曲面积分的定义(了解)3. 对坐标的曲面积分的性质4. 对坐标的曲面积分的计算法(1) 二重积分法(2&a…

properties文件和yaml文件的区别~

之前,关于数据库的连接信息,端口号的设置等,我们会将它分门别类的写在多个文件中,但SpringBoot,它讲究统一的配置管理,我们想设置的任何参数都集中在一个固定位置和命名的配置文件,而该配置文件…

10.4| QT实现TCP服务器客户端搭建的代码,现象

头文件 #ifndef WIDGET_H #define WIDGET_H#include <QWidget>#include<QTcpServer> //服务器头文件 #include<QTcpSocket> //客户端头文件#include<QList> //链表容器 #include<QMessageBox> …

Error string: Could not load library

启动Rivz时&#xff0c;报错&#xff1a; Error string: Could not load library (Poco exception libg2o_csparse_extension.so.0.1: cannot open shared object file: No such file or directory) [ERROR] [1696572310.529059051]: Failed to load nodelet [/radar_graph_s…

破译滑块验证间距 破译sf顺丰滑块验证

废话不多说直接开干&#xff01; from selenium import webdriver # 导入配置 from selenium.webdriver.chrome.options import Options import time from PIL import Image # 导入动作链 from selenium.webdriver.common.action_chains import ActionChains import random, st…

如何获取高质量的微信私域客户?

在当今数字化时代&#xff0c;企业都在努力寻求创新的营销方式来获取更多的客户。微信私域流量作为一种精准的营销工具&#xff0c;越来越受到企业的青睐。那么&#xff0c;如何获取高质量的微信私域客户呢&#xff1f;本文将为你揭示这一难题的答案&#xff0c;让你轻松Get高转…

STM32--MQ2烟雾传感器

本文主要介绍STM32F103C8T6和烟雾传感器模块的控制算法 简介 烟雾模块选用MQ-2气体传感器&#xff0c;根据传感器的电导率随空气中可燃气体浓度的增加而增大的特性检测空气中可燃气体&#xff0c;然后将电导率的变化转换成对应的电信号 MQ系列烟雾传感分类如下&#xff1a; 该…

基于SSM的校园二手物品交易平台设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用Vue技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

Python之字符串构造

Python之字符串构造 字符串str 一个个字符组成的有序的序列&#xff0c;是字符的集合使用单引号、双引号、三引号引住的字符序列字符串是不可变对象&#xff0c;是字面常量 Python3起&#xff0c;字符串都是Unicode类型 x abcde使用for循环遍历x的值&#xff0c;打印并查看…

九小场所消防安全检查安全码系统

九小场所安全码&#xff0c;实现消防安全监督管理&#xff0c;落实消防安全责任&#xff0c;形成九小场所网格化监控、动态化管理&#xff1b; 安全码流程化管理 监管部门日常检查&#xff0c;微信扫码即可填写检查记录&#xff0c;现场可拍照、视频、文字、记录检查情况&…

1200*C. Challenging Cliffs(模拟构造贪心)

Problem - 1537C - Codeforces Challenging Cliffs - 洛谷 解析&#xff1a; 排序数组&#xff0c;然后找出间隔最短的两个相邻的数 a&#xff0c;b&#xff0c;c&#xff0c;d&#xff0c;e&#xff0c;f &#xff08;假设b&#xff0c;c为差最小的两个数&#xff09;。 然后…

虫情测报灯如何实现自动化测报?

一、KH-CQPest虫情测报灯的工作过程 虫情测报灯是新一代的图像式虫情测报智能设备&#xff0c;在农业虫害防治领域拥有独特魅力&#xff0c;它内置高像素的摄像头&#xff0c;能够精准记录并将照片上传至智慧农业平台识别害虫的形态、种类。虫情测报灯运用现代光电数控集成技术…

【深蓝学院】手写VIO第2章--IMU传感器--作业

这次作业坑很多&#xff0c;作业说明的不清楚&#xff0c;摸索了很长时间才将此次作业完成&#xff0c;在这里进行记录。 1. T1 1.1 题干 1.2 解答 1.2.1 法1&#xff0c;ros related方法 不知道为什么我的launch不了&#xff0c;在imu_utils目录下面建立build后&#xff0…

剑指offer——JZ7 重建二叉树 解题思路与具体代码【C++】

一、题目描述与要求 重建二叉树_牛客题霸_牛客网 (nowcoder.com) 题目描述 给定节点数为 n 的二叉树的前序遍历和中序遍历结果&#xff0c;请重建出该二叉树并返回它的头结点。 例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6}&#xff0c;则重建出…

[Spring] @Bean 修饰方法时如何注入参数

目录 一、Bean 的简单使用 1、正常情况 2、问题提出 二、解决方案 1、Qualifier 2、直接写方法名 三、特殊情况 1、DataSource 一、Bean 的简单使用 在开发中&#xff0c;基于 XML 文件配置 Bean 对象的做法非常繁琐且不好维护&#xff0c;因此绝大部分情况下都是使用…

计算机竞赛 题目:基于卷积神经网络的手写字符识别 - 深度学习

文章目录 0 前言1 简介2 LeNet-5 模型的介绍2.1 结构解析2.2 C1层2.3 S2层S2层和C3层连接 2.4 F6与C5层 3 写数字识别算法模型的构建3.1 输入层设计3.2 激活函数的选取3.3 卷积层设计3.4 降采样层3.5 输出层设计 4 网络模型的总体结构5 部分实现代码6 在线手写识别7 最后 0 前言…

分析“由于找不到msvcp120.dll无法继续执行代码”的原因及解决方法

在计算机使用过程中&#xff0c;我们可能会遇到一些莫名其妙的错误提示&#xff0c;其中“由于找不到 msvcp120.dll 无法继续执行代码”就是一种常见的困扰。这种错误提示的出现往往会给用户带来一定的烦恼&#xff0c;因为不清楚究竟是什么原因导致了这个错误&#xff0c;也不…