System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于北斗短报文的用电数据传输方法技术_技高网

一种基于北斗短报文的用电数据传输方法技术

技术编号:41110383 阅读:27 留言:0更新日期:2024-04-25 14:03
本发明专利技术提供了一种基于北斗短报文的用电数据传输方法,包括:压缩用电数据生成报文,将字节长度超出单次通信容量的报文拆分为多个子包,为每个子包添加相应的标识包头并发送至接收端;获取发送端发送的多个子包,并根据子包的标识包头校验发送过程中子包是否丢失;若校验为是,则接收端向发送端反馈补包信息,发送端根据补包信息再次发送相应的子包,并重复校验结果为是的操作,直至校验结果为否;若校验结果为否,则接收端执行组包操作。本发明专利技术有益效果:解决了民用北斗通信链路中单次通信报文长度受限、无通信回执的问题,提高了北斗短报的长报文通信成功率,提高了基于北斗短报文通信的传输效率。

【技术实现步骤摘要】

本专利技术属于数据通信领域,尤其是涉及一种基于北斗短报文的用电数据传输方法


技术介绍

1、随着人口的增长与工业的发展,人类社会对能源的需求也日益增加,智能电表是一种数字电能表,能够精准测量消耗的电能,并能够提供比传统电能表更多的附加信息,此外,智能电表还是智能电网的关键组成部分,其可实现消费者与供应商之间的双向和实时通信,并降低整体能源消耗,现代化电信网络系统的用电信息,通常是由485通信模式或电力载波线上传到电表附近的集中器,再传送给主站。

2、目前,电力系统普遍采用光纤通信、gprs、电力线载波等通信技术,然而,偏远山区存在无线网络信号差、有线网络铺设成本较高等问题,故上述通信技术无法满足需求,采用北斗短消息通信技术作为传输方式具有传输距离远、无盲区及安全、可靠等特点,是一种可行的方案,此外,采用数据分割传输、压缩传输及数据合并传输可提高传输效率,但单个报文的数据传输容量有限,需要对报文数据进行分包传输;受设备通信等级、使用环境等多种因素影响,低的通信成功率会导致丢包;低的服务频度导致传输效率低。

3、目前一般采用数据压缩传输的方法,如果是无损压缩则需要均匀数据、重复数据等约束条件及不同的适应场景,并且算法较为复杂、效率低;如果是有损压缩,则会导致一定程度的数据丢失;分包传输方法,由于通信成功率低导致的丢包,造成数据丢失;若采用多次发送策略,则存在效率低、浪费资源的劣势。


技术实现思路

1、有鉴于此,本专利技术旨在提出一种基于北斗短报文的用电数据传输方法,以期解决上述部分技术问题中的至少之一。

2、为达到上述目的,本专利技术的技术方案是这样实现的:

3、一种基于北斗短报文的用电数据传输方法,包括:

4、压缩用电数据生成报文,将字节长度超出单次通信容量的报文拆分为多个子包,为每个子包添加相应的标识包头并发送至接收端;

5、获取发送端发送的多个子包,并根据子包的标识包头校验发送过程中子包是否丢失;

6、若校验为是,则接收端向发送端反馈补包信息,发送端根据补包信息再次发送相应的子包,并重复校验结果为是的操作,直至校验结果为否;

7、若校验结果为否,则接收端执行组包操作。

8、进一步的,将报文拆分为多个子包的过程中,统计当前报文拆分后的子包总数,根据拆分过程中的顺序依次对子包设置子包序号;

9、拆分结束后将报文的任务号、子包总数、子包序号作为相应的子包的标识包头。

10、进一步的,执行组包操作的过程中,接收端校验当前接收的子包数量与标识包头中记录的子包数量是否相同;

11、若相同,则继续进行重组;若不同,则向发送端反馈补包信息。

12、进一步的,执行组包操作的过程中接收端根据标识包头中的子包序号,将多个子包依次排序;

13、验证子包序号是否连贯、子包序号的首位是否为1、子包序号的末位是否与子包总数相同;

14、若对子包序号的三项验证的结果均为是,则根据子包序号执行组包操作;

15、若对子包序号的三项验证的结果中任一项为否,则接收端反馈补包信息。

16、进一步的,发送端将所有子包发送后进入等待时间,等待时间到达等待阈值前,若发送端接收到补包信息,则重置等待时间,并根据补包信息发送相应的子包;

17、若发送端未接收到补包信息或等待时间超过等待阈值,则发送下一组报文。

18、进一步的,接收端首次收到子包时进入接收时间,接收时间超过接收阈值后,接收端检测子包是否丢失;

19、若检测结果为是,则反馈补包信息;

20、若检测结果为否,则执行组包操作;

21、其中,若补包信息的反馈次数超过补包阈值且检测结果为是,则丢弃当前报文的相关数据,重置接收时间。

22、进一步的,压缩用电数据生成报文的过程包括:

23、建立搜索缓冲区遍历用电数据并记录至历史缓冲区中;

24、对比搜索缓冲区内是否存在与历史缓冲区内相同的字符串;

25、若存在相同的字符串,则输出字符串的位置与长度;

26、若不存在相同的字符串,则输出当前字符;

27、其中,遍历方法为二叉树遍历。

28、进一步的,搜索缓冲区使用二叉树遍历方法遍历用电数据,根据搜索缓冲区内的字符变化,更新二叉树中的每个节点的偏移量,删除偏移量小于1的节点并插入新节点。

29、进一步的,删除偏移量小于1的节点的过程包括:

30、被删除节点没有子节点,直接删除;

31、被删除节点仅有左叶子节点或右叶子节点之一,断开被删除节点与相应的根节点和叶子节点的关系,建立相应的根节点与叶子节点之间的关系;

32、被删除节点同时有左叶子节点和右叶子节点,将被删除节点替换为的被删除节点的右子树中最左侧的节点。

33、相对于现有技术,本专利技术所述的一种基于北斗短报文的用电数据传输方法具有以下有益效果:

34、设计了一种长报文可靠性传输方案,对超过阈值字节的长报文执行“拆包”、“组包”和基于等待超时机制的“补包”操作,解决了民用北斗通信链路中单次通信报文长度受限、无通信回执的问题,提高了北斗短报的长报文通信成功率;构建压缩算法对数据进行压缩,压缩效果良好,提高了基于北斗短报文通信的传输效率。

本文档来自技高网...

【技术保护点】

1.一种基于北斗短报文的用电数据传输方法,其特征在于,包括:

2.根据权利要求1所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

3.根据权利要求2所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

4.根据权利要求2所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

5.根据权利要求1所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

6.根据权利要求1所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

7.根据权利要求1所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

8.根据权利要求7所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

9.根据权利要求7所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

【技术特征摘要】

1.一种基于北斗短报文的用电数据传输方法,其特征在于,包括:

2.根据权利要求1所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

3.根据权利要求2所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

4.根据权利要求2所述的一种基于北斗短报文的用电数据传输方法,其特征在于:

5.根据权利要求1所述的一种基于北斗短报文的...

【专利技术属性】
技术研发人员:高亚洲燕正亮王晓龙贾继堂孙冠楠陈昭华周妍姚琴
申请(专利权)人:天津航天中为数据系统科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1