一种MQTT协议数据传输方法及系统与流程
- 国知局
- 2024-10-15 09:54:43
本发明属于物联网数据传输,具体涉及一种mqtt协议数据传输方法及系统。
背景技术:
1、mqtt(消息队列遥测传输)是iso标准(iso/iec prf 20922)下基于客户端-服务器的消息发布/订阅传输协议。它工作在tcp/ip协议族上,具有简单、稳定、开放和易于实现的特点。而且已经具有多个语言版本,基本可以使用在任何平台上,几乎可以把所有联网物品和外部连接起来。这些特点使得mqtt特别适合作为物联网的通信协议。
2、json是一种轻量级数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得json成为理想的数据交换语言,不仅易于阅读和编写,也易于机器解析和生成,而且还可有效地提升网络传输效率。
3、在电力物联网中,边缘物联代理装置是各类采集终端和云端物联平台数据及命令交互的中间核心设备。mqtt协议是边缘物联代理装置与云端物联平台通信采用的主要通信协议,协议数据传输采用json格式。
4、在物联网的诸多应用领域,虽然规范了统一采用mqtt协议,协议传输的消息也遵循json格式。但对于不同场景,云端系统或主站对数据的属性内容要求却并不一致。现有技术中json格式数据属性的组织依靠在代码中实现,也就是说通过代码实现json数据模型和mqtt消息主题,换一种应用场景或同一种应用场景下对数据模型的要求发生改变,都可能导致需要重新修改编码,从而导致代码模块的通用性很低、开发工作效率低。
5、总之,在物联网领域内,采用基于mqtt协议json格式交换数据时,具体的json格式数据依靠代码逐个或者逐类实现,代码模块通用性很低、开发工作效率低。
技术实现思路
1、本发明的目的在于提供一种mqtt协议数据传输方法及系统,用以解决现有技术中物联网通信业务中采用代码组织json格式的数据,导致开发工作效率低以及代码模块通用性低的问题。
2、为解决上述技术问题,本发明所提供的技术方案以及技术方案对应的有益效果如下:
3、本发明的一种mqtt协议数据传输方法,包括以下步骤:
4、1)在传输mqtt协议数据时,从模板元素库中选择模型模板,以构建自定义数据模型;
5、所述模板元素库中包括数据点对应的各数据类型的模型模板,所述模型模板中包括该数据类型对应的各数据属性;
6、2)依据业务需求,从配置数据库中选择待转发的数据点,以构成转发表,将数据点依据对应的数据类型分配到对应的转发表中,并为各数据点设定引用的自定义数据模型;
7、所述配置数据库中包含各接入装置的信息和接入装置对应的各数据类型的数据点,依据数据点确定待转发数据的各数据属性值;
8、3)解析转发表中数据点引用的自定义数据模型中包含的各数据属性,依据数据点确定各数据属性对应的数据属性值,以构成json数据格式的数据,并发送该json数据格式的数据。
9、上述技术方案的有益效果为:本发明中包括各数据类型的模型模板和各接入装置的数据点,依据需求构建多个自定义数据模型,然后通过配置转发表,为数据点指定引用的自定义数据模型,最后,再解析得到数据点引用的自定义数据模型中的数据属性,依据数据点确定各数据属性对应的数据属性值,以构成json数据格式的数据,并发送该json数据格式的数据。本发明仅通过组态式配置的方式灵活构建json格式数据,摒弃了在代码中由编码来组织json格式数据的方式,避免重复编码,操作简单工作效率高,通用性强,从而解决了现有技术中物联网通信业务中采用代码组织json格式的数据,导致开发工作效率低以及代码模块通用性低的问题。
10、进一步地,为了提高灵活性,模型模板中各数据属性支持选择配置。
11、进一步地,为了提高工作效率,步骤1)中采用可视化的数据模型配置界面构建自定义数据模型包括以下步骤:
12、加载模板元素库中各模型模板文件;可视化选择模型模板、选择模型模板中业务需要的数据属性,生成自定义数据模型文件。
13、进一步地,每个数据点对应一个唯一标识id,唯一标识id中包括数据点的数据类型、ied地址、装置地址、其扇区地址和信息体地址;通过所述唯一标识id确定待转发数据的各数据属性值。
14、进一步地,为了提高通用性,依据所述配置数据库中数据点的数据类型确定所述模板元素库中包括的模型模板类型。
15、进一步地,为了丰富模型模板,提高通用性,步骤1)中数据点的数据类型包括遥信、遥测、遥脉、遥控、遥调和定值中至少一项;所述模板元素库中包括遥信模型模板、遥测模型模板、遥脉模型模板、遥控模型模板、遥调模型模板、定值模型模板、装置模型模板、ied模型模板和公用属性模型模板中至少一项。
16、进一步地,所述模型模板和自定义数据模型均以xml格式存储。
17、进一步地,为了提高通用性,json数据格式的数据包括主题和数据内容,其中,主题名称依据自定义数据模型信息、数据点的信息和数据点唯一标识id而确定,数据内容包括各数据属性和对应的数据属性值。
18、进一步地,自定义数据模型包括:一级节点数据和至少一个二级节点数据;一级节点数据包括模型名称,还包括模型标识号和模型描述中至少一项;其中,模型标识号用于按照设定顺序给自定义数据模型编号,模型名称用于表示引用的模型模板名称,模型描述用于对自定义数据模型进行描述;二级节点数据包括引用属性的名称和引用属性类型,还包括:属性id、引用属性描述、引用属性内部索引和用户自定义值中至少一项。
19、为了解决上述问题,本发明又提供了一种mqtt协议数据传输系统,其特征在于:该系统包括处理器,所述处理器用于执行计算机指令,以实现如本发明的一种mqtt协议数据传输方法,以实现相同的有益效果。
技术特征:1.一种mqtt协议数据传输方法,其特征在于:包括以下步骤:
2.根据权利要求1所述的mqtt协议数据传输方法,其特征在于:模型模板中各数据属性支持选择配置。
3.根据权利要求2所述的mqtt协议数据传输方法,其特征在于:步骤1)中采用可视化的数据模型配置界面构建自定义数据模型包括以下步骤:
4.根据权利要求1所述的mqtt协议数据传输方法,其特征在于:每个数据点对应一个唯一标识id,唯一标识id中包括数据点的数据类型、ied地址、装置地址、其扇区地址和信息体地址;通过所述唯一标识id确定待转发数据的各数据属性值。
5.根据权利要求1所述的mqtt协议数据传输方法,其特征在于:依据所述配置数据库中数据点的数据类型确定所述模板元素库中包括的模型模板类型。
6.根据权利要求5所述的mqtt协议数据传输方法,其特征在于:步骤1)中数据点的数据类型包括遥信、遥测、遥脉、遥控、遥调和定值中至少一项;所述模板元素库中包括遥信模型模板、遥测模型模板、遥脉模型模板、遥控模型模板、遥调模型模板、定值模型模板、装置模型模板、ied模型模板和公用属性模型模板中至少一项。
7.根据权利要求1所述的mqtt协议数据传输方法,其特征在于:所述模型模板和自定义数据模型均以xml格式存储。
8.根据权利要求1所述的mqtt协议数据传输方法,其特征在于:json数据格式的数据包括主题和数据内容,其中,主题名称依据自定义数据模型信息、数据点的信息和数据点唯一标识id而确定,数据内容包括各数据属性和对应的数据属性值。
9.根据权利要求1至8任一项所述的mqtt协议数据传输方法,其特征在于:自定义数据模型包括:一级节点数据和至少一个二级节点数据;一级节点数据包括模型名称,还包括模型标识号和模型描述中至少一项;其中,模型标识号用于按照设定顺序给自定义数据模型编号,模型名称用于表示引用的模型模板名称,模型描述用于对自定义数据模型进行描述;二级节点数据包括引用属性的名称和引用属性类型,还包括:属性id、引用属性描述、引用属性内部索引和用户自定义值中至少一项。
10.一种mqtt协议数据传输系统,其特征在于:该系统包括处理器,所述处理器用于执行计算机指令,以实现如权利要求1至9任一项所述的mqtt协议数据传输方法。
技术总结本发明属于物联网数据传输领域,具体涉及一种MQTT协议数据传输方法及系统,包括:从模板元素库中选择模型模板,以构建自定义数据模型;模板元素库中包括数据点对应的各数据类型的模型模板,模型模板中包括该数据类型的各数据属性;从配置数据库中选择待转发的数据点,以构成转发表,并为各数据点设定引用的自定义数据模型;配置数据库中包含各接入装置的信息和接入装置的各数据类型的数据点,依据数据点确定待转发数据的各数据属性值;解析转发表中数据点引用的自定义数据模型中包含的各数据属性,依据数据点确定各数据属性对应的数据属性值,得到Json数据格式的数据并发送。由此,解决了开发工作效率低、代码模块通用性低的问题。技术研发人员:方正,应站煌,侍文博,周晓娟,王亚强受保护的技术使用者:许昌许继软件技术有限公司技术研发日:技术公布日:2024/10/10本文地址:https://www.jishuxx.com/zhuanli/20241015/315742.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表