掌桥专利:专业的专利平台
掌桥专利
首页

一种数据的压缩方法及系统

文献发布时间:2023-06-19 16:11:11



技术领域

本发明涉及数据压缩技术领域,并且更具体地,涉及一种数据的压缩方法及系统。

背景技术

能源互联网技术和业务快速发展,电网公司“新基建”战略稳步推进,客户侧量测设备的种类和数量呈爆发式增长。越来越多的设备接入客户侧能源,包括电动汽车充电设施、分布式能源、居民家庭、商业楼宇、企业及园区、区域多能等量测设备,对通信接入的覆盖范围、带宽速率、通信时延、系统稳定性等提出更高要求。

发明内容

本发明为了提升数据的传输效率和带宽的利用率,并对数据进行高效存储,提出了一种数据的压缩方法,包括:

获取待压缩数据的短符描述,根据待压缩数据的短描述符,确定需要压缩数据的正向有功电能量数据块,确定需要压缩数据的正向有功电能量数据块中,需要传输的数据Data0和上次传输的数据Data1,并对Data1及Data0做差,生成Data2;

根据Data2生成需要传输的数据Data0的压缩头信息;

根据Data0生成CRC校验数据;

使用Data2、压缩头信息及CRC校验数据生成需要传输的数据Data0的压缩数据。

所述压缩数据生成后,对外传输使用的传输协议,包括:请求压缩传输或响应压缩传输的方式进行传输;

所述传输的方式若为请求压缩传输,生成的压缩数据携带压缩算法、压缩模式信息和压缩数据的处理结果后进行传输。

可选的,压缩数据的压缩方式为无损差值数据压缩;

若压缩数据的压缩方式不能使用无损差值数据压缩时,压缩数据的压缩方式使用无损数据压缩,所述无损数据压缩是将CRC校验数据及Data0进行压缩,生成压缩数据。

可选的,压缩头信息,包括:压缩头字节长度和字段压缩bit位;

字段压缩bit位用两位数字表示数据块压缩方式,0表示无损数据压缩,1表示无损差值数据压缩,2表示不压缩。

可选的,短描述符,包括:对象标识、对象特征、对象属性标识及属性内元素索引。

可选的,方法还包括:使用Data0数据生成的CRC校验数据后,根据CRC校验数据生成CRC16校验数据作为附加校验数据。

本发明还提出了一种数据的压缩系统,包括:

生成数据差值单元,获取待压缩数据的短符描述,根据待压缩数据的短描述符,确定需要压缩数据的正向有功电能量数据块,确定需要压缩数据的正向有功电能量数据块中,需要传输的数据Data0和上次传输的数据Data1,并对Data1及Data0做差,生成Data2;

压缩头信息生成单元,根据Data2生成需要传输的数据Data0的压缩头信息;

校验数据生成单元,根据Data0生成CRC校验数据;

压缩数据生成单元,使用Data2、压缩头信息及CRC校验数据生成需要传输的数据Data0的压缩数据。

可选的,所述压缩数据生成后,对外传输使用的传输协议,包括:请求压缩传输或响应压缩传输的方式进行传输;

所述传输的方式若为请求压缩传输,生成的压缩数据携带压缩算法、压缩模式信息和压缩数据的处理结果后进行传输。

可选的,压缩数据的压缩方式为无损差值数据压缩;

若压缩数据的压缩方式不能使用无损差值数据压缩时,压缩数据的压缩方式使用无损数据压缩,所述无损数据压缩是将CRC校验数据及Data0进行压缩,生成压缩数据。

可选的,压缩头信息,包括:压缩头字节长度和字段压缩bit位;

字段压缩bit位用两位数字表示数据块压缩方式,0表示无损数据压缩,1表示无损差值数据压缩,2表示不压缩。

可选的,短描述符,包括:对象标识、对象特征、对象属性标识及属性内元素索引。

可选的,校验数据生成单元还用于:在使用Data0数据生成的CRC校验数据后,根据CRC校验数据生成CRC16校验数据作为附加校验数据。

本发明通过对Data2、压缩头信息及CRC校验数据进行压缩,生成压缩数据,对压缩数据进行传输,提升了数据的传输效率和带宽的利用率,并对数据进行了高效的存储。

附图说明

图1为本发明方法的流程图;

图2为本发明系统的结构图。

具体实施方式

现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。

除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。

本发明提出了一种数据的压缩方法,如图1所示,包括:

获取待压缩数据的短符描述,根据待压缩数据的短描述符,确定需要压缩数据的正向有功电能量数据块,确定需要压缩数据的正向有功电能量数据块中,需要传输的数据Data0和上次传输的数据Data1,并对Data1及Data0做差,生成Data2;

其中,待压缩的数据,包括电能量,电压、电流、功率等多种电力数据;

根据Data2生成需要传输的数据Data0的压缩头信息;

根据Data0生成CRC校验数据;

使用Data2、压缩头信息及CRC校验数据生成需要传输的数据Data0的压缩数据。

压缩数据生成后,使用Data0数据生成的CRC16校验数据作为附加校验数据,所述附件校验数据供压缩数据的接收方,对接收到的压缩数据进行压缩数据正确性的校验。

所述压缩数据生成后,对外传输使用的传输协议,包括:请求压缩传输或响应压缩传输的方式进行传输;

所述传输的方式若为请求压缩传输,生成的压缩数据携带压缩算法、压缩模式信息和压缩数据的处理结果后进行传输。

其中,压缩头信息,包括:压缩头字节长度和字段压缩bit位;

字段压缩bit位用两位数字表示数据块压缩方式,0表示无损数据压缩,1表示无损差值数据压缩,2表示不压缩。

其中,短描述符,包括:对象标识、对象特征、对象属性标识及属性内元素索引。

本发明中压缩数据的传输使用的传输协议,传输协议支持压缩编码;

传输协议基于客户侧能源量测数据交换协议,支持请求压缩传输和响应压缩传输两种压缩传输,在请求压缩传输时,除了支持传输压缩数据以外,还支持携带压缩算法、压缩模式信息和压缩处理结果等参数字段。

支持本地信道,包括:RS-485、M-Bus、CAN、RF、PLC、HPLC、微功率无线以及HPLC与微功率无线双模通信,远程信道支持包括:GPRS、3G、4G、5G、电力专网230M、以太网、光纤等。

因为支持携带压缩算法参数,所以支持LZW、LZ77、LZ77/78、RLE、GZIP等多种通用压缩算法和自定义客户侧能源量测数据交换协议无损数据传输压缩算法。

针对每一个数据是否需要压缩,压缩方式是使用无损差值数据压缩还是使用无损完全压缩,取决于数据差异值的范围和传输要求,比如差异值为0,即无差异,使用无损完全压缩,差异较小,使用无损差值数据压缩,差异很大,不压缩,使用原始数据传输,压缩方式使用数据压缩头信息来表示。

压缩头信息包括:压缩头字节长度,字段压缩bit位。

字段压缩bit位用两位来表示数据块压缩方式,0表示完全压缩,1表示差值压缩,2表示不压缩。

下面结合实施例对本发明进行进一步的说明:

针对一个正向有功电能量数据块,本次需要传输的数据Data0为:

上一次传输的数据Data1为:

本次传输的计量数据Data0与上一次的计量数据Data1对应不同费率值字段做差生成Data2为:

其中、Data2具体差值数据及压缩头如下:

Bit7:0,无压缩头,1:有压缩头;

Bit5:压缩比0:1/2压缩,1:1/4压缩;

Bit0~Bit4:N个数据,具体采用的压缩方式;

差值数据中,每个字节表示4组压缩编码方式

压缩头信息表示为:0x85,0x52,0x01。

其中、0x85表示有长度域,1/2压缩,长度为5个Mbit长度;这里有电能量数据做例子,电能量数据为4字节时,当前压缩后的单组数据宽度为2字节

0x52的bit0~bit1是0x02,表示不压缩;

0x52的bit2~bit3是0x00,表示完全压缩;

0x52的bit4~bit5是0x01,表示差值压缩;

0x52的bit6~bit7是0x01,表示差值压缩;

0x01的bit0~bit1是0x01,表示差值压缩。

再使用CRC-CCITT校验算法,对Data0数据进行校验后,完成一次完整的数据压缩过程。

本发明还提出了一种数据的压缩系统200,如图2所示,包括:

生成数据差值单元201,获取待压缩数据的短符描述,根据待压缩数据的短描述符,确定需要压缩数据的正向有功电能量数据块,确定需要压缩数据的正向有功电能量数据块中,需要传输的数据Data0和上次传输的数据Data1,并对Data1及Data0做差,生成Data2;

压缩头信息生成单元202,根据Data2生成需要传输的数据Data0的压缩头信息;

校验数据生成单元203,根据Data0生成CRC校验数据;使用Data0数据生成的CRC16校验数据作为附加校验数据,所述附件校验数据供压缩数据的接收方,对接收到的压缩数据进行压缩数据正确性的校验。

压缩数据生成单元204,使用Data2、压缩头信息及CRC校验数据生成需要传输的数据Data0的压缩数据;

其中,所述压缩数据生成后,对外传输使用的传输协议,包括:请求压缩传输或响应压缩传输的方式进行传输;

所述传输的方式若为请求压缩传输,生成的压缩数据携带压缩算法、压缩模式信息和压缩数据的处理结果后进行传输。

其中,压缩数据的压缩方式为无损差值数据压缩;

若压缩数据的压缩方式不能使用无损差值数据压缩时,压缩数据的压缩方式使用无损数据压缩,所述无损数据压缩是将CRC校验数据及Data0进行压缩,生成压缩数据。

其中,压缩头信息,包括:压缩头字节长度和字段压缩bit位;

字段压缩bit位用两位数字表示数据块压缩方式,0表示无损数据压缩,1表示无损差值数据压缩,2表示不压缩。

其中,短描述符,包括:对象标识、对象特征、对象属性标识及属性内元素索引。

其中,校验数据生成单元还用于:在使用Data0数据生成的CRC校验数据后,根据CRC校验数据生成CRC16校验数据作为附加校验数据。

本发明提升了数据的传输效率和带宽的利用率,并对数据进行了高效的存储。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本发明实施例中的方案可以采用各种计算机语言实现,例如,面向对象的程序设计语言Java和直译式脚本语言JavaScript等。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

相关技术
  • 数据压缩系统、有损数据压缩的方法和数据压缩的方法
  • 图像压缩方法、图像压缩装置、图像传输系统、数据压缩预处理装置及数据压缩预处理方法
技术分类

06120114733625