(三)Air800接入阿里云--设备发送静态数据-云端进行显示

2023-10-18 23:30

本文主要是介绍(三)Air800接入阿里云--设备发送静态数据-云端进行显示,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一:代码例程下载

air202(air800)例程前往合宙官网下载即可,其他开发板类似
http://www.openluat.com/Product/gnssgprs/Air800M4.html

产品中心AIR800(或AIR202),, 资料下载,, 二次开发,, 例程下载
即可找到二次开发例程

在这里插入图片描述

二:编辑代码进行修改

步骤一:打开目标文件
在这里插入图片描述

步骤二:进行修改代码

1.修改产品名,设备名,设备秘钥

1..1产品名	 

在这里插入图片描述

1.2设备名

在这里插入图片描述

1.3设备秘钥

在这里插入图片描述

二.创建一个table表

手动添加一个table表,用来上传数据使用,表中的hum对应云端标志符hum
在这里插入图片描述

 local basedata=
{
method="thing.event.property.post",
id="1",
params={hum=4},
version="1.0",
}

三.修改发布消息的topic

1.从对应的设备那里复制发布消息的topic
在这里插入图片描述

2.对发布函数进行修改如下

注释已经写得很明确(图中有两种发布消息的方法:
一种是按照未注释的设置topic,补头,补尾保持和topic一致
二是直接把复制的topic整个替换即可,就是注释掉的那种)
后面那个jsondata是要发送的数据,要和前面的对应起来
在这里插入图片描述

--发布一条QOS为1的消息
function publishTest()
local huma=7 --添加一个局部变量,当做上传的静态数据
if sConnected then--注意:在此处自己去控制payload的内容编码,aLiYun库中不会对payload的内容做任何编码转换basedata["params"]["hum"]=huma --这里是对上面手动建立的表的键值对进行赋值(就是给让湿度 hum=7)jsondata=json.encode(basedata)--进行编码传输(转化为json格式)print("hum_"..jsondata)--这是打印一下转化后的数据aLiYun.publish("/sys/"..PRODUCT_KEY.."/"..getDeviceName().."/thing/event/property/post",jsondata,1,publishTestCb,"publishTest_"..publishCnt)-- aLiYun.publish("/sys/产品名/设备名/thing/event/property/post",jsondata,1,publishTestCb,"publishTest_"..publishCnt)
end
end

四.云端在对应的设备下建立一个物模型进行显示

具体方法上一个博客中已说明,不再赘述 ,所填写内容为下,注意此处的标志符hum是和代码表table表中hum是对应的,由于代码中对其赋值是一个整数型7,所以这里数据类型选择整数型

在这里插入图片描述

下载程序进行烧录,在设备的运行状态下你会看到上传的数据,湿度为7,右边的那个温度是上一个博客中用mqtt客户端模拟设备上传数据时建立的,

在这里插入图片描述

云下设备接入阿里云,发布消息到阿里云进行云端显示已经完成,接下来写规则引擎的使用。

这篇关于(三)Air800接入阿里云--设备发送静态数据-云端进行显示的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/235789

相关文章

第10章 中断和动态时钟显示

第10章 中断和动态时钟显示 从本章开始,按照书籍的划分,第10章开始就进入保护模式(Protected Mode)部分了,感觉从这里开始难度突然就增加了。 书中介绍了为什么有中断(Interrupt)的设计,中断的几种方式:外部硬件中断、内部中断和软中断。通过中断做了一个会走的时钟和屏幕上输入字符的程序。 我自己理解中断的一些作用: 为了更好的利用处理器的性能。协同快速和慢速设备一起工作

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

安卓链接正常显示,ios#符被转义%23导致链接访问404

原因分析: url中含有特殊字符 中文未编码 都有可能导致URL转换失败,所以需要对url编码处理  如下: guard let allowUrl = webUrl.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed) else {return} 后面发现当url中有#号时,会被误伤转义为%23,导致链接无法访问

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

如何编写Linux PCIe设备驱动器 之二

如何编写Linux PCIe设备驱动器 之二 功能(capability)集功能(capability)APIs通过pci_bus_read_config完成功能存取功能APIs参数pos常量值PCI功能结构 PCI功能IDMSI功能电源功率管理功能 功能(capability)集 功能(capability)APIs int pcie_capability_read_wo

遮罩,在指定元素上进行遮罩

废话不多说,直接上代码: ps:依赖 jquer.js 1.首先,定义一个 Overlay.js  代码如下: /*遮罩 Overlay js 对象*/function Overlay(options){//{targetId:'',viewHtml:'',viewWidth:'',viewHeight:''}try{this.state=false;//遮罩状态 true 激活,f

利用matlab bar函数绘制较为复杂的柱状图,并在图中进行适当标注

示例代码和结果如下:小疑问:如何自动选择合适的坐标位置对柱状图的数值大小进行标注?😂 clear; close all;x = 1:3;aa=[28.6321521955954 26.2453660695847 21.69102348512086.93747104431360 6.25442246899816 3.342835958564245.51365061796319 4.87

lvgl8.3.6 控件垂直布局 label控件在image控件的下方显示

在使用 LVGL 8.3.6 创建一个垂直布局,其中 label 控件位于 image 控件下方,你可以使用 lv_obj_set_flex_flow 来设置布局为垂直,并确保 label 控件在 image 控件后添加。这里是如何步骤性地实现它的一个基本示例: 创建父容器:首先创建一个容器对象,该对象将作为布局的基础。设置容器为垂直布局:使用 lv_obj_set_flex_flow 设置容器