今日视点:【产品应用】IoT云平台如何识别设备透传的黑盒数据?

来源:ZLG致远电子 2023-06-23 12:12:52

设备与云平台通信,通常是一串二进制数据,不具备可读性,需要将数据解析成更易读的数据格式。本文将介绍数据解析是什么,以及在ZWS云平台中如何配置解析脚本对设备数据解析。

应用场景

市面上生产的传统设备,往往不具备联网能力,且外界通信主要通过串口传输二进制数据。在将这些设备接入物联网平台,进行数字化管理过程中,会遇到一个问题“如何将上报的二进制数据变成更易读的JSON数据?”,比如:上报“01040209E8A9”如何变成“温度:℃”,这个将原始数据转换成JSON数据的过程就是数据解析。


(资料图片)

数据解析流程

数据解析简化流程:黑盒二进制数据->解析处理->易读JSON数据。

数据解析配置

接下来,我们通过温控器+DTU接入ZWS物联网云平台,来看看温控器数据是如何进行数据解析的。

* 说明:温控器不具备入网能力,这里用DTU作为网关透传。

1. 配置数据模型首先,要在云平台中定义设备类型的数据模型,温控器有温度、湿度两个数据点,所以数据模型配置如下:

后续的解析脚本会按照模型设置的数据点来返回解析后的数据。

2. 配置数据解析脚本

编写解析脚本前,需要先了解设备上报的数据格式,我们来看下温控器读取温湿度的数据帧。温控器使用自定义协议格式的数据帧,格式如下:

以数据0406E219647FE6为例,解析规则对应:04数据长度(表示数据有4个字节)、06E21964 温湿度值、7FE6 校验码。

因此,温控器解析脚本内容如下:

//GroovyUtils为通用解析工具import import ;/*** 将二进制报文解析成物模型的map数据** @param rawData 二进制报文* @return 物模型数据* @description 方法名必须为rawDataToJson,参数必须是byte[]类型*/static Map rawDataToJson(byte[] rawData) {Map map = new HashMap<>();Map dataMap = new HashMap<>();//定义解析数据的map,key固定为data,用于存放对应事件内字段的数据("data", dataMap);//设置数据模型配置中定义的数据点("event_name", "MX_TEMP_");//初始温度、湿度为0float temperature = 0;float humidity = 0;//开始解析数据ByteBuffer byteBuffer = (rawData);//从第0个字节开始读取int offset = 0;//读取长度int dataLen = (offset);offset += 1;//如果长度为4,则同时解析温度和湿度数据;否则长度就为2,只解析温度数据if (dataLen == 4) {// 解析温度temperature = (offset);if (temperature >= 4096) {// 负值temperature = -1 * (temperature - 4096);}temperature = temperature / 100;//解析湿度offset += 2;humidity = (offset);humidity = humidity / 100;} else {//解析温度temperature = (offset);if (temperature >= 4096) {// 负值temperature = -1 * (temperature - 4096);}temperature = temperature / 100;}//将数据按数据模型配置定义的格式放入返回值中("temperature", temperature);("humidity", humidity);return map;}

说明:

1. 解析脚本中支持对多个数据点进行解析处理,不仅限于两个数据点。2. 解析脚本中的数据点要与数据模型中配置的一致,否则会解析保存失败。

将编写好的解析脚本配置到温控器的设备类型上:

3.查看解析后的数据

将解析脚本配置成功后,温控器再次上报原始数据,在云平台中就可以看到解析后的温湿度数据了。

x

热门推荐

中国会展经济研究会年会在昆明举行 专家共话会展业高质量发展潜力

2022-09

宝马计划与韩国厂商进行合作 生产固态电池

2022-07

海南推动农贸市场全面落实禁塑 加强违禁塑料制品源头治理

2021-12

柴犬登登拍卖记:动物是如何被司法拍卖的

2021-12

江西:到2025年鄱阳湖区断面水质优良比例达到50%以上

2021-12

西藏森林消防:锻造雪域救援尖兵 打造高海拔山岳救援队伍

2021-12

加强人才融通发展 第10届海峡两岸水利青年工程交流营成功举办

2021-12

四川:空手夺刀救人的“95后”女民警捐献万元奖金传递爱心

2021-12

中国食品名市临沂坚持“三化融合” 争做“食安”守望者

2021-12

上海闵行一幼儿园教职工殴打幼儿 2名涉事人员已被行拘

2021-12

推荐阅读

今日视点:【产品应用】IoT云平台如何识别设备透传的黑盒数据?

2023-06

大和上调华润电力(00836)评级至“跑赢大市” 指其燃煤独立发电厂估值目前仍低于同类_天天快看点

2023-06

焦点速看:鸡蛋可以放糖吗?

2023-06

赵秀敏个人简历_赵秀敏|环球今日讯

2023-06

龙血树的好处和坏处(龙血树的好处) 独家焦点

2023-06

发酵的香油渣如何给大白菜施肥?

2023-06

美股小幅低开 新能源汽车中概股走强 当前独家

2023-06

焦点快看:保山员工劳动纠纷律师收费要多少

2023-06

年金险的好处

2023-06

今日热议:业精于勤的例子有哪些(下列哪些属于业精于勤的表现)

2023-06