阿里云物联网平台 “物模型属性” 的分析&&易错点&&上报属性时Payload如何正确组装?

简介: 您是否在纠结设备上报了数据,平台到底有没有收到?您是否很疑惑物模型属性怎么老是不刷新?您是否不理解物模型属性下发总是不生效?您是否不知道上报属性时Payload到底该怎么填?您是否很纳闷物模型属性一会又携带有时间戳,一会又没有?您是否怀疑能不能自定义物模型属性的时间戳?又如何取到自定义时间戳?您是否...

业务场景

image.png

1、设备端主动上报物模型属性,物联网平台更新物模型属性值
2、前端下发更新物模型属性指令,物模型平台不更新属性值,平台将临时的物模型属性值再转发到设备端。
3、云平台自发向设备端下发更新物模型属性指令(云平台流转->下发物模型属性),物模型平台不更新属性值。
4、设备端从物模型接收到临时的物模型属性值后进行其业务逻辑处理。
5、前端获取物模型属性值,物模型平台给真实的物模型属性值。
6、服务端获取物模型属性值,物模型平台给真实的物模型属性值。


原理

1、物模型属性的真实值来源只有一个,设备端主动上报

2、物联网平台只有设备端主动上报才会更新真实的物模型属性值


剖析

1、为什么物模型真实来源只能是设备端上报,下发更新物模型属性指令为什么都不行?
因为阿里云平台物模型属性的更新机制只认设备上报的属性,这又是为什么呢?

(1)设备上报的属性肯定是体现了设备当前真正的状态
(2)指令下发也有同步和异步的,并不能保证指令一下发,设备的真实状态就发生了变化,这样物模型属性就和设备真实的状态不同步了。

(3)设备端可能由于种种原因,或者其业务逻辑限制,指令下发下来并不代表一定会生效,并不代表一定要按照指令去执行
(4)指令下发过程中指令也可能被丢失,由于网络波动,资源紧张等情况,指令被舍弃。
(5)有可能同时存在多个客户端同时下发指令到设备,那到底谁才是正确的呢?那当然是设备端自己主动上报的那个咯。


2、什么样的物模型消息才是正确的呢?
先看协议格式:
image.png

日志服务中有物模型才能代表物模型数据更新
物模型消息只能代表向物模型topic发送了数据,不一定是正确的

来看下错误的格式:
image.png

正确的格式:
image.png
image.png

从这里可以看到,time字段和value字段是可选的,也就是物模型消息的时间戳可以有,也可以没有,但是就是不能没有Params字段


3、Payload格式注意事项

A、Payload格式必须为json格式

  Payload上报数据会经过哪些流程?
 (1) 首先,如果集成了SDK,会先经过SDK的校验。如果没有集成SDK或者直接使用MQTT接口进行上报
  那么会先经过平台的 《物模型消息》这一关,如果不是Json格式:

image.png

(2)然后是《物模型check》这一关,虽然满足了json格式,但是如果不满足Alink Json协议
image.png

(3)《物模型check》如果满足Alink Json协议,但是部分数据不满足物模型定义
AMQP可以正常订阅,物模型可以正常更新数据,但是物模型数据的日志没有生成。(后来验证又有一条错误日志,感觉平台还是有bug)
image.png
image.png

AMQP:
image.png

经过后来多次验证,发现《物模型check》还是有个错误日志的,平台6332也没有定义这个错误码

image.png

(4)《物模型check》如果满足Alink Json协议,但是全部数据都不满足物模型定义
物模型数据不会更新,AMQP正常订阅消息,但是消息内容里面有俩条5092的错误码
日志中物模型check这一关会提示6332错误码,tsl parse failed
image.png

(5)《物模型check》如果满足Alink Json协议,也满足物模型定义
物模型check通过,物模型数据更新正常,AMQP消息订阅正常,内容正常
物模型check通过
image.png

物模型数据
image.png

AMQP:
image.png

B、带time的格式和不带time的格式都是可以成功上报的
不带time格式:
"{"params":{"Temperature":99.99,"BatteryPercentage":88.88}}";

image.png

带time格式
"{"params":{"Temperature":{"value":75.75,"time":1603248612000}}}";
image.png

C、如果上报的时候自带time,那么控制台上最新的数据按照控制台的时间排布,但是历史数据就是按照自带的time的数据
eg:测试时间:2020-10-24 14:46:50
验证:当上报数据time写死1603248612000 (2020/10/21 10:50:12)
{"params":{"Temperature":{"value":75.75,"time":1603248612000}}}
历史数据:
image.png

但是最新数据也是他:
image.png

AMQP订阅到的消息:
image.png

顺便再看看日志记录里是什么样:
image.png

image.png

D、如果上报数据的时候不带time

历史数据就是最新数据
image.png

看看AMQP收到的消息:
image.png

再看看日志:
image.png
image.png


4、通过云平台流转至物模型属性下发怎样才能生效?

image.png

物模型属性的真实值来源只有一个,设备端主动上报。所以不管是云端下发指令,还是平台转发指令(如云平台流转)等,设备端需要接收到指令的后,再将该属性进行上报


小结

本片文章只是剖析,不讲实操,把原理讲通

1、物模型属性的真实值来源只有一个,设备端主动上报
2、物联网平台只有设备端主动上报才会更新真实的物模型属性值
3、Payload注意事项
4、物模型消息的正确格式

后续再逐步更新实操文档:

《阿里云物联网平台物模型属性下发如何才能生效》
《阿里云物联网平台通过云平台流转实现设备间物模型属性的同步》
《阿里云物联网云平台物模型流转SQL编写技巧》

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
相关文章
|
15天前
|
存储 边缘计算 物联网
阿里云物联网平台:推动万物互联的智能化解决方案
随着物联网技术的快速发展,阿里云物联网平台为企业提供了一体化的解决方案,包括设备接入、数据管理和智能应用等核心功能。平台支持海量设备接入、实时数据采集与存储、边缘计算,并具备大规模设备管理、高安全性和开放生态等优势。广泛应用于智能制造、智慧城市和智能家居等领域,助力企业实现数字化转型。
88 5
|
5月前
|
人工智能 物联网 5G
物联网投资趋势:市场分析与预测
【6月更文挑战第7天】物联网驱动全球经济,市场规模迅速扩大,尤其在智能家居、智能工业、智能医疗领域。新兴商业模式和投资机会涌现,如平台整合、核心技术研发。5G普及、AI融合及物联网安全是未来投资趋势。Python示例代码显示了与物联网设备交互的可能性。尽管面临技术更新快、竞争激烈等挑战,投资者需了解行业趋势、关注创新企业、评估风险和回报,以实现长期投资成功。物联网投资前景广阔,将成为投资领域关键部分。
79 2
|
15天前
|
安全 网络协议 物联网
物联网僵尸网络和 DDoS 攻击的 CERT 分析
物联网僵尸网络和 DDoS 攻击的 CERT 分析
|
3月前
|
存储 安全 物联网
物联网中的通信模型
【8月更文挑战第23天】
41 0
|
4月前
|
存储 运维 监控
阿里云物联网平台的优势
【7月更文挑战第19天】阿里云物联网平台的优势
72 1
|
4月前
|
安全 物联网 物联网安全
物联网安全风险分析
### 物联网安全概览 #### 背景 物联网设备因其默认安全设置薄弱,成为黑客攻击目标。随着OT网络中物联网角色增多,这些设备临近关键系统,攻击者利用其发起攻击。 #### 物联网定义 物联网(IoT)是通过信息传感设备连接物品与互联网,实现智能化识别、定位、跟踪的网络。涵盖智能家居、可穿戴设备到复杂工业系统。 #### 攻击者偏好 物联网设备易受攻击,2022年针对物联网的网络攻击大幅增长,如DDoS攻击和恶意软件事件。物联网端点的安全疏忽使其成为恶意软件传播途径。 #### 制造业面临风险 制造业因物联网设备被攻击,导致勒索软件攻击增加,因生产中断造成的损失更大。
物联网安全风险分析
|
4月前
|
机器学习/深度学习 数据可视化 物联网
物联网设备的数据可视化与分析:解锁未来智能世界的钥匙
【7月更文挑战第6天】物联网设备的数据可视化与分析是解锁未来智能世界的关键。通过不断探索和实践,我们可以更好地利用物联网数据,推动技术创新,提升社会运行效率,为人们的生活带来更多便利和惊喜。面对技术挑战,我们应保持开放心态,积极学习新技术、新方法,不断优化数据可视化与分析的流程和效果,为物联网的繁荣发展贡献力量。
|
4月前
|
数据采集 存储 运维
物联网设备的数据处理与分析技术探讨
【7月更文挑战第2天】探索物联网(IoT)数据处理技术,涵盖数据采集(传感器、无线通信)、存储(分布式系统、NoSQL)、处理(清洗、压缩、转换)和分析(描述性、聚类、分类、异常检测)。未来趋势涉及AI集成、边缘计算、多模态处理和系统自主化。随着技术演进,期待更智能、高效的解决方案。
|
6月前
|
Cloud Native 安全 物联网
【阿里云云原生专栏】云边端一体化:阿里云如何利用云原生技术赋能物联网
【5月更文挑战第22天】阿里云借助云原生技术赋能物联网,实现云边端一体化,提升系统弹性与敏捷性。通过容器化部署,保证高可用性与可靠性。在智能交通等领域,阿里云提供高效解决方案,实现实时数据分析与决策。代码示例展示如何使用阿里云服务处理物联网数据。同时,阿里云重视数据安全,采用加密和访问控制保障数据隐私。丰富的工具和服务支持开发者构建物联网应用,推动技术广泛应用与发展。
350 1
|
6月前
|
传感器 数据采集 安全
物联网的五层架构分析
物联网五层架构,包括感知层、网络层、数据层、应用层和业务层,扮演着关键的角色。
284 2

相关产品

  • 物联网平台