电力系统保护装置中黑白点阵数据的压缩算法及解压方法制造方法及图纸

技术编号:23087980 阅读:21 留言:0更新日期:2020-01-11 02:10
本发明专利技术涉及电力系统保护装置中黑白点阵数据的压缩算法,包括以下步骤S01读取一个字节的原始点阵数据,判断当前字节是否为0x00或0xFF,若不是则将读取到的原始数据拷贝到压缩数据写入位置,若是则进行下一步;S02将读取到的原始数据拷贝到压缩数据中并开始计数,所述计数的个数为与当前字节的原始数据相同且连续的原始数据的个数;S03读取至与步骤S02中原始数据不同的字节时,返回步骤S01,该算法实际工程应用效果好,平均减少数据量35%,个别界面数据量减少可达99%。

Compression algorithm and decompression method of black and white lattice data in power system protection device

【技术实现步骤摘要】
电力系统保护装置中黑白点阵数据的压缩算法及解压方法
本专利技术涉及一种数据的压缩方法,尤其涉及电力系统保护装置中黑白点阵数据的压缩算法及解压方法。
技术介绍
电力系统二次设备主要用在变电站中,周围电磁环境异常复杂。实际工程中发现,如果面板上的屏幕直接通过驱动芯片加LCD扁平线缆和管理CPU板连接时,很容易因为恶劣的电磁环境导致屏幕显示异常。为了防止此种现象的出现,屏幕通过带校验的总线与管理CPU连接。管理CPU通过带校验的总线,比如以太网总线将黑白点阵数据传递给Panel板,在传递过程中,由于数据量大,一个屏幕的点阵数据会大量出现全黑或全白的部分,对于这两种情况,以字节为单位的数据要么是全0xFF,要么是全0,且大量的数据传递影响传递效率和传递质量。
技术实现思路
本专利技术的目的在于提供一种针对黑白屏幕、灵活高效的压缩机制,使管理CPU传递给屏幕的点阵数据其数据量最小,从而提升数据传递的效率,提高用户体验。为了实现上述目的,本专利技术所采取的技术方案为:电力系统保护装置中黑白点阵数据的压缩算法,包括以下步骤S01读取一个字节的原始点阵数据,判断当前字节是否为0或0xFF,若不是则将读取到的原始数据拷贝到压缩数据写入位置,若是则进行下一步;S02将读取到的原始数据拷贝到压缩数据中并开始计数,所述计数的个数为与当前字节的原始数据相同且连续的原始数据的个数;S03读取至与步骤S02中原始数据不同的字节时,返回步骤S01。进一步的,所述步骤S02中计数使用计数器计数。进一步的,所述步骤S02中计数个数达到255时,将计数器数值拷贝到压缩数据中,然后将计数器清0,然后回到S01。进一步的,计数规则为:步骤S01中如果读取的数据是0或0xFF,则将计数器置1,否则将计数器清0。进一步的,前一个字节的原始数据和当前字节的原始数据相同时,将计数器进行加1操作,如果计数器达到0xFF,则将计数器数值拷贝到压缩数据当前位置,然后将计数器清0。本专利技术还涉及一种用于上述电力系统保护装置中黑白点阵数据压缩算法的解压算法,包括以下步骤S01先从源数据的读指针位置读取一个字节的压缩数据;S02如果该数据不是0x00或者0xFF,则将数据拷贝到目的缓冲;否则重复拷贝0x00或0xFF到目的缓冲中;其中重复次数由源数据缓冲中读指针的下一个位置的值决定。本专利技术所产生的有益效果包括:该压缩算法中每个0xFF或0的下一个字节表示该0xFF或0的个数。非0和0xFF的字节维持不变。通过此种算法压缩后,实际工程应用中,每秒黑白点阵数据由480K字节降到了168K字节左右,约为原来的35%。最好情况,全黑或全白屏幕时,传递数据量只有原来的0.78%。该算法为无损压缩算法,该算法可以一边拷贝数据一边压缩,不需要二次遍历数据;该算法可以一边拷贝数据一边解压缩,前面数据的解压与后面数据无关,该算法实际工程应用效果好,平均减少数据量35%,特殊界面数据量减少达99%。附图说明图1本专利技术中的压缩方法流程图;图2典型黑白液晶点阵界面。具体实施方式下面结合附图和具体实施例对本专利技术做进一步详细的解释说明,但应当理解为本专利技术的保护范围并不受具体实施例的限制。如图1所示,本本专利技术的方法包括如下步骤:1、管理CPU先读取一个字节的原始点阵数据,若读取的数据为0或0xFF,则管理CPU中的计数器开始计数,若读取的数据不是0x00或0xFF则计数器不计数,计数器为零;2、如果管理CPU的压缩数据计数器已经开始计数,则进行步骤3;否则跳到步骤5;3、如果前一个字节的原始数据和当前字节的原始数据相同,直接到步骤4;否则将计数器的值拷贝到压缩数据写入位置,然后将当前字节的原始数据拷贝到压缩数据的下一个位置。如果拷贝的数据是0x00或0xFF,则将计数器置1,否则将计数器清0,并回到步骤1。4、前一个字节的数据和当前字节的数据相同时,将计数器进行加一操作。如果计数器达到255,则将计数器拷贝到压缩数据当前位置,然后将计数器清零,并回到步骤1。5、计数器为0,说明前一个原始字节数据不是0x00或者0xFF,读取最新的原始数据并将该值拷贝到压缩数据中,如果该值不是0x00或者0xFF则直接回到步骤1;否则将计数器置1,然后回到步骤1。上述概括为读取原始数据,若原始数据为0x00,则计数器显示为1,然后依次读取后面的字节,若后面紧邻n个0x00,则计数器最终显示为n+1,则该n+1个0最终压缩结果为0x00n+1,其中n+1<255;若n+1≥255,则在达到255时压缩为0x00255,而后重新计数,压缩为0x00n-254。0xFF的计数方法同0x00。若原始数据不是0x00或0xFF,则直接将读取到的原始数据写入压缩数据中。按照上述方法依次对字节进行压缩形成新的压缩数据。示例压缩后数据如下:0x50,0xFF,0xFF,0xFF,0x03,0x0,0xFF,0x00,0x03,0x03对上面一行压缩数据进行详细说明如下:第一个字节:0x50表示一个无压缩的数据第二,三字节:0xFF,0xFF表示255个0xFF第四,五字节:0xFF,0x03表示3个0xFF第六,七字节:0x00,0xFF表示255个0x00第八,九字节:0x00,0x03表示3个0x00第十个字节:0x03表示一个无压缩的数据。下面是FF0解压算法的解压流程,假设继电保护设备压缩后的数据放源数据缓冲当中,解压后的结果放在目的数据缓冲当中。1、先从源数据缓冲的读指针位置读取一个字节的压缩数据。2、如果该数据不是0x00或者0xFF,则将数据拷贝到目的数据缓冲中;否则重复拷贝0x00或0xFF数据到目的数据缓冲;其中重复的次数由源数据缓冲读指针的下一个位置决定。下图2所示的一种典型黑白液晶点阵界面,经过FF0压缩算法压缩后,实测其传递的数据量降到了原来的23.36%上述仅为本专利技术的优选实施例,本专利技术并不仅限于实施例的内容。对于本领域中的技术人员来说,在本专利技术的技术方案范围内可以有各种变化和更改,所作的任何变化和更改,均在本专利技术保护范围之内。本文档来自技高网...

【技术保护点】
1.电力系统保护装置中黑白点阵数据的压缩算法,其特征在于:包括以下步骤/nS01读取一个字节的原始点阵数据,判断当前字节是否为0x00或0xFF,若不是则将读取到的原始数据拷贝到压缩数据写入位置,若是则进行下一步;/nS02 将读取到的原始数据拷贝到压缩数据中并开始计数,所述计数的个数为与当前字节的原始数据相同且连续的原始数据的个数;/nS03 读取至与步骤S02中原始数据不同的字节时,返回步骤S01。/n

【技术特征摘要】
1.电力系统保护装置中黑白点阵数据的压缩算法,其特征在于:包括以下步骤
S01读取一个字节的原始点阵数据,判断当前字节是否为0x00或0xFF,若不是则将读取到的原始数据拷贝到压缩数据写入位置,若是则进行下一步;
S02将读取到的原始数据拷贝到压缩数据中并开始计数,所述计数的个数为与当前字节的原始数据相同且连续的原始数据的个数;
S03读取至与步骤S02中原始数据不同的字节时,返回步骤S01。


2.根据权利要求1所述的电力系统保护装置中黑白点阵数据的压缩算法,其特征在于:所述步骤S02中计数使用计数器计数。


3.根据权利要求1所述的电力系统保护装置中黑白点阵数据的压缩算法,其特征在于:所述步骤S02中计数个数达到255时,将计数器数值拷贝到压缩数据中计数器清0。


4.根据权利要求1...

【专利技术属性】
技术研发人员:陈超李鹏习伟匡晓云姚浩丁毅陈新之崔岩峰商巍章鑫杰赵勇军董腾
申请(专利权)人:南京国电南自电网自动化有限公司
类型:发明
国别省市:江苏;32

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

1