当前位置:网站首页>物联网基础知识学习
物联网基础知识学习
2022-08-11 05:24:00 【Three Big Stones】
1、编解码
编解码插件是供物联网平台调用,可以完成二进制格式与JSON、JSON与JSON之间的格式相互转换。
数据上报:设备上报二进制码流数据,物联网平台调用编解码插件,将数据解码为JSON数据,发送给应用服务器。
数据下发:应用服务器发送JSON数据,物联网平台调用编解码插件,将JSON数据编码为二进制码流,下发给设备。
2、设备影子
设备影子是一个JSON文件,存储设备的在线状态、最近一次上报的设备属性值、应用服务器期望下发的配置。
数据上报:设备上报数据,将更新影子设备report区的属性值
数据下发:应用服务器下发数据时,将更新影子设备desired区的属性值,若设备在线,则将期望值同步到设备;若设备不在线,则等设备在线后,在同步期望值到设备。
3、规则引擎
规则引擎是指用户可以在物联网平台上对接入平添的设备设定相应的规则,在条件满足设定的规则后,平台会触发相应的动作来满足用户需求。包括以下两种类型:
1)设备联动
设备联动指通过条件触发,基于预设的规则,引发多设备的协同反应,实现设备联动、智能控制。如温度感应器上报温度超过50度,自动发送邮件或短信,或者平台自动下达命令给设备,执行关闭动作。
2)数据转发
数据转发无缝与华为云其他服务对接,实现设备数据的存储、计算、分析的全栈服务。
创建数据转发规则时,需要编写SQL来解析和处理设备上报的JSON数据。
3)SQL语句
由SELECT子句和WHERE子句组成,设备消息上报的SQL源数据实例:
{
"resource" : "device.message",
"event" : "report",
"event_time" : "20151212T121212Z",
"notify_data" : {
"header" : {
"device_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f",
"product_id" : "ABC123456789",
"app_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f",
"gateway_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f",
"node_id" : "ABC123456789",
"tags" : [ {
"tag_value" : "testTagValue",
"tag_key" : "testTagName"
} ]
},
"body" : {
"topic" : "topic",
"content" : {
"temperature" : 40,
"humidity" : 24
}
}
}
}
在源数据中,body中的content是设备消息上报的数据,设置当设备上报数据中temperature大于38时触发条件,并筛选出device_id、content,不需要任何其他字段时,SQL语句示例如下:
SELECT notify_data.header.device_id AS device_id, notify_data.body.content WHERE notify_data.body.content.temperature > 38
当设备上报消息中temperature大于38度时,会触发转发,转发后的数据格式如下:
{
"device_id": "d4922d8a-6c8e-4396-852c-164aefa6638f",
"notify_data.body.content" : {
"temperature" : 40,
"humidity" : 24
}
}
边栏推荐
猜你喜欢
The latest safety helmet wearing recognition system in 2022
梅科尔工作室-DjangoWeb 应用框架+MySQL数据库第四次培训
Maykle Studio - HarmonyOS Application Development Third Training
小程序技术原理分析
梅科尔工作室-HarmonyOS应用开发第一次培训
10 个超好用的 DataGrip 快捷键,快加入收藏! | 实用技巧
Diagnostic Log and Trace——为应用程序和上下文设置日志级别的方法
Joint 3D Instance Segmentation and Object Detection for Autonomous Driving
关于mmdetection框架实用小工具说明
CVPR2022——Not All Points Are Equal : IA-SSD
随机推荐
The kernel communicates with user space through character devices
【调试记录1】提高MC3172浮点运算能力,IQmath库的获取与导入使用教程
Hard hat identification
目标检测学习目录(持续更新)
梅科尔工作室-HarmonyOS应用开发第四次培训
CMT2380F32模块开发11-RTC例程
CMT2380F32模块开发3-GPIO例程
安全帽识别
支付牌照是什么意思
浙江大学软件学院2020年保研上机真题练习
通过字符设备虚拟文件系统实现kernel和userspace数据交换(基于kernel 5.8测试通过)
Pay “Attention” to Adverse Weather
CMT2380F32模块开发1-硬件
vmware不可恢复错误vmui
CMT2380F32模块开发6-flash例程
AI-based intelligent image recognition: 4 different industry applications
Maykel Studio - Django Web Application Framework + MySQL Database Fourth Training
【OAuth2】授权机制
目标检测前言
KANO模型——确定需求优先级的神器