0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

AGk5_ZLG_zhiyua 来源:未知 2022-12-19 11:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

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


应用场景

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


数据解析流程

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


数据解析配置

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

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

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

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

2. 配置数据解析脚本

编写解析脚本前,需要先了解设备上报的数据格式,我们来看下温控器读取温湿度的数据帧。温控器使用自定义协议格式的数据帧,格式如下:
以数据0406E219647FE6为例,解析规则对应:04数据长度(表示数据有4个字节)、06E21964 温湿度值、7FE6 校验码。
因此,温控器解析脚本内容如下:
//GroovyUtils为通用解析工具
import com.zlgcloud.iotplatform.iotmapping.commons.GroovyUtils
import java.nio.ByteBuffer;




/**
* 将二进制报文解析成物模型的map数据
*
* @param rawData 二进制报文
* @return 物模型数据
* @description 方法名必须为rawDataToJson,参数必须是byte[]类型
*/
static Map rawDataToJson(byte[] rawData) {
Map map = new HashMap<>();
Map dataMap = new HashMap<>();
//定义解析数据的map,key固定为data,用于存放对应事件内字段的数据
map.put("data", dataMap);
//设置数据模型配置中定义的数据点
map.put("event_name", "MX_TEMP_fn.raw");


//初始温度、湿度为0
float temperature = 0;
float humidity = 0;


//开始解析数据
ByteBuffer byteBuffer = ByteBuffer.wrap(rawData);
//从第0个字节开始读取
int offset = 0;
//读取长度
int dataLen = byteBuffer.get(offset);
offset += 1;
//如果长度为4,则同时解析温度和湿度数据;否则长度就为2,只解析温度数据
if (dataLen == 4) {
// 解析温度
temperature = byteBuffer.getShort(offset);
if (temperature >= 4096) {
// 负值
temperature = -1 * (temperature - 4096);
}
temperature = temperature / 100;
//解析湿度
offset += 2;
humidity = byteBuffer.getShort(offset);
humidity = humidity / 100;
} else {
//解析温度
temperature = byteBuffer.getShort(offset);
if (temperature >= 4096) {
// 负值
temperature = -1 * (temperature - 4096);
}
temperature = temperature / 100;
}


//将数据按数据模型配置定义的格式放入返回值中
dataMap.put("temperature", temperature);
dataMap.put("humidity", humidity);


return map;
}

说明:

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

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

3.查看解析后的数据

将解析脚本配置成功后,温控器再次上报原始数据,在云平台中就可以看到解析后的温湿度数据了。
感兴趣的用户,如果想了解更多ZLG物联网云平台相关内容,可以点击“阅读原文”跳转到云官网。



原文标题:【产品应用】IoT云平台如何识别设备透传的黑盒数据?

文章出处:【微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 致远电子
    +关注

    关注

    13

    文章

    421

    浏览量

    32378

原文标题:【产品应用】IoT云平台如何识别设备透传的黑盒数据?

文章出处:【微信号:ZLG_zhiyuan,微信公众号:ZLG致远电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    WT2605C语音芯片:蓝牙音频播放+BLE,引领智能设备语音交互革新

    一、双模蓝牙技术:音频与通信的完美融合1.1蓝牙音频播放与BLE的协同优势WT2605C作为一款高性能音频蓝牙芯片,创新性地将传统蓝牙音频播放与低功耗蓝牙(BLE)技术集成于一
    的头像 发表于 11-11 09:07 400次阅读
    WT2605C语音芯片:蓝牙音频播放+BLE<b class='flag-5'>透</b><b class='flag-5'>传</b>,引领智能<b class='flag-5'>设备</b>语音交互革新

    【道生物联TKB-623评估板试用】基于串口的手写数字识别

    :使用单片机结合 MNIST 库实现手写数字数据解析; 网页显示:网页端设计与数字解析结果显示等。 模式 模式是相对于 AT 指令
    发表于 11-08 11:44

    【道生物联TKB-623评估板试用】GPS定位时钟

    模式 模式是相对于 AT 指令的另一种模式。 AT 指令模式是一种通信协议,设备之间通过发送 AT 指令来进行通信和控制; 模式的
    发表于 11-06 18:48

    物联网开发必备:四款低功耗蓝牙模块参数全解析与应用实战

    物联网开发必备:四款低功耗蓝牙模块参数全解析与应用实战 作为物联网设备的“无线神经末梢”,低功耗蓝牙(BLE)模块的选择直接关系到
    的头像 发表于 11-05 14:37 316次阅读

    【ESP8266】进入模式后,数据间隔怎么调整,

    01.TCP客户端用ESP8266模式发送数据是10ms发送一次,(连续发送) 02.TCP服务器接收到的数据是200ms左右接收一次,数据
    发表于 09-15 10:16

    数据传到工业物联网平台的优势在哪

    数据(透明传输)到工业物联网平台的核心优势在于 以最小化干预实现数据高效流通与价值释放 ,尤其适用于工业场景中对
    的头像 发表于 09-09 11:37 264次阅读
    <b class='flag-5'>数据</b><b class='flag-5'>透</b>传到工业物联网<b class='flag-5'>平台</b>的优势在哪

    解锁应用场景搭建新方式:IOT 物联网平台的跨设备数据关联与零编程零成本

    在物联网技术深度渗透各行各业的今天,IOT平台已成为连接设备数据与业务的核心枢纽。而低代码组态开发的融入,更是打破了传统物联网开发的技术
    的头像 发表于 08-15 17:15 872次阅读

    【干货】数据“零处理”,什么是DTU机制?

    概述DTU(数据传输单元)模式是工业物联网的核心技术,它像一条透明的数据管道,不做任何解析或修改,直接将终端设备的原始字节流(如传感器
    的头像 发表于 07-03 19:32 1107次阅读
    【干货】<b class='flag-5'>数据</b>“零处理”,什么是DTU<b class='flag-5'>透</b><b class='flag-5'>传</b>机制?

    【第二章 模型与设备连接】手把手教你玩转新版正点原子

    D40模块把数据传输到原子,方便监控传感器的数据。模块的使用和如何从传感器数据传到平台本文不
    发表于 03-12 09:27

    【第一章 策略】手把手教你玩转新版正点原子

    ,打开刚才配置的两个上位机,或者XCOM串口调试助手,两个设备已经可以完成数据 本次实验设备间基于原子
    发表于 03-05 16:52

    BLE方案,IoT短距无线通信的“中坚力量”

    BLE技术实现设备间快速数据同步,支持多设备连接,功耗低,兼容性强,适用于物联网设备。通过简
    的头像 发表于 02-11 10:14 1919次阅读
    BLE<b class='flag-5'>透</b><b class='flag-5'>传</b>方案,<b class='flag-5'>IoT</b>短距无线通信的“中坚力量”

    开源直接用!UDP-UART数据传来了

    UDP连接将数据发送到远程设备,然后将这些数据通过UART接口发送到本地设备。 这种通信方式在需要将远程设备
    的头像 发表于 02-05 17:14 565次阅读
    开源直接用!UDP-UART<b class='flag-5'>数据</b><b class='flag-5'>透</b>传来了

    BLE方案,IoT短距无线通信的“中坚力量”

    BLE技术是一种采用蓝牙通信协议在设备之间实现数据透明传输的技术,设备在通信时会互相验证身份和安全密钥,具有较高的安全性。
    的头像 发表于 01-21 14:23 798次阅读
    BLE<b class='flag-5'>透</b><b class='flag-5'>传</b>方案,<b class='flag-5'>IoT</b>短距无线通信的“中坚力量”

    Zigbee模块使用手册

    电子发烧友网站提供《Zigbee模块使用手册.pdf》资料免费下载
    发表于 01-12 09:32 2次下载

    IoT物联网平台如何解决工厂数字化问题?

    设备管理功能,包括设备注册、配置、监控和固件升级等。此外,平台还能够从各种传感器和设备中收集数据,通过有线或无线网络传输到云端,并利用
    的头像 发表于 01-06 17:45 655次阅读