应用行程编码的航天器分包遥测压缩算法研究

  • 格式:pdf
  • 大小:259.65 KB
  • 文档页数:4

Vo1.24 No.2 58 航天器工程 

SPACECRAFT ENGINEERING 第24卷第2期 

2015年4月 

应用行程编码的航天器分包遥测压缩算法研究 闫国瑞 李志刚 史简 赵婷 李国军 (航天东方红卫星有限公司,北京 100094) 

摘 要针对航天器延时遥测存储数据量较大的问题,提出了一种应用行程编码(RLE)的分 包遥测压缩算法。根据遥测数据的特点,对压缩算法进行改进,使压缩效果得到进一步提升。此 外,对压缩数据生成符合空间数据系统咨询委员会(CCSDS)标准的分包遥测机制进行了阐述。对 某卫星的试验表明,使用改进后的压缩算法,能够获得6.11倍的遥测压缩比,可提高延时遥测采样 频率,增加航天器在境外的可用遥测数据量。 关键词航天器遥测数据;压缩算法;延时遥测;分包遥测;行程编码 中图分类号:TN91 文献标志码:A IlO1:10.3969/j.issn.1673—8748.2015.02.010 

Research on Packet Telemetry Compression Algorithm Using RLE YAN Guorui LI Zhigang SHI Jian ZHAO Ting LI Guojun (DFH Satellite Co.Ltd.,Beijing 100094,China) 

Abstract:For large storage of spacecraft telemetry data,a packet telemetry compression algo— rithm using RLE(run length encoding)is proposed in this paper。According to the characteristics of telemetry data,the compression algorithm is improved,SO that the compression ratio can be further increased.The mechanism of producing CCSDS—compliant packet data is also presented. An experimental results for a certain satellite show that the improved algorithm can obtain a com— pression ratio of 6.1 1,which can raise the stored telemetry sampling frequency,and increase the amount of available telemetry data without ground contact. Key words:spacecraft telemetry data;compression algorithm;stored telemetry;packet teleme— try;RI E(run length encoding) 

1 引言 航天器在轨运行期问,遥测是地面获取航天器 各系统工作状态和运行状态的唯一通道。遥测包括 实时遥测和延时遥测,延时遥测用来存储航天器在 境外的遥测数据,过境时下传延时遥测数据,用于判 读航天器在境外的状态,是航天器状态监控及故障 定位的重要依据。 目前,国内航天器主要采用抽样的方式进行延 时遥测数据存储,延时遥测采样周期的大小决定了 航天器在境外遥测的采样存储密度。延时遥测采样 周期越大,航天器在境外的可用遥测数据越少,故障 漏检率越高,对出现的故障定位越困难;采样周期越 小,可用遥测数据越多,越有利于故障检测及故障定 位。同时,随着航天器功能、性能以及复杂度的不断 提高,遥测数据量越来越大,若不采用有效的压缩算 法,则要以牺牲延时遥测采样存储密度为代价。 

收稿日期:2014 03—17;修回日期:2014—05—13 基金项目:国家重大航天工程 作者简介:闰国瑞,男,硕士,从事星务系统、星载软件研究工作。Email:yanguorui5000@qq.com。 第2期 闫国瑞等:应用行程编码的航天器分包遥测压缩算法研究 59 国外已将计算机领域常用的压缩算法应用到航 天器遥测数据压缩中,空间数据系统咨询委员会 (CCSDS)推荐使用RICE无损压缩算法进行遥测数 据压缩口]。该算法首先将数据进行分组预处理,然 后进行熵编码,剔除数据的冗余性。文献E2]中对欧 洲航天局“罗塞塔”(Rosetta)彗星探测器的在轨遥 测数据进行了研究,利用计算机领域常用的7zip、 WinZip等软件对遥测数据进行无损压缩,剔除数据 的冗余信息。不过,7zip、WinZip等软件的压缩算法 相对复杂,对航天器上的资源要求较高,因此需要一 种更符合国内航天器需求的压缩算法,以节省数据存 储空间,提高延时遥测采样频率,增加航天器的可用 遥测数据量。本文针对遥测数据时间冗余的特点,提 出了一种应用行程编码(Run Length Encoding,RLE) 的分包遥测压缩算法,研究了RLE应用到分包遥测 数据压缩并生成符合CCSDS标准的分包遥测机制, 最后以真实的在轨遥测数据验证了算法的有效性。 

2应用RLE的分包遥测压缩算法 2.1遥测压缩算法设计 RLE是一种朴素的无损压缩算法,其基本思想 是对于连续出现Y次的重复数据b,使用Y,b来表 示。例如,数据0x12,0x12,0x12,0x12,0xl5,0x15, 使用0x04,0x12,Ox02,0x15表示。对于相同数据 连续个数较少或数据均不相同时,经RLE算法压缩 后会导致数据膨胀。例如,数据Ox02,Ox03,Ox04, Ox05,0x06,处理后为0x01,0x02,0x01,Ox03,0x01, 0x04,OxOl,0x05,0x01,0x06,数据最大膨胀1倍。 因此,由RLE算法派生出了很多改进算法口-6],其中 常用的是PCX(PC Paintbrush Exchange)图像格式所 用的行程压缩方法以及Apple公司提出的PackBits 算法。PackBits算法通过引入标志位来避免RLE算 法的压缩膨胀问题,设计见图1。 当标志位Indicator为0时,数据域的内容是Run length指示的长度为m+1的非压缩数据;当Indica— tor为l时,数据为数据域的内容重复m+1次。 面向字节型PackBits压缩算法定义见图2_7]。 

属性域 数据域 标志位 行程长度 Data Indicator(值为1或0) Run length(m) 

图1 PackBits算法 Fig.1 PackBits algorithm 

属性域(1 byte) 说明 m一0~127 数据域为m+1个非压缩数据 m一一1~一127 数据域重复1一m次 m ——128 无操作 图2字节型PackBits压缩算法 Fig.2 Byte-level PackBits compression algorithm 

PackBits是一种通用算法,本文针对遥测数据 特点,对其进行改进。遥测数据从性质上可分为模 拟量和数字量:模拟量主要包括电压、电流和温度量 等;数字量主要包括软硬件的运行状态、时间码和指 令计数等。对于某个设备或应用程序,其连续下行 的遥测数据构成二维矩阵。根据遥测数据的特性, 二维矩阵的每一列具有较强的时间相关性,如设备 的开关机状态、指令计数等在短时间内为常量,时间 码大部分情况下为等差数列,温度量按照轨道周期 进行变化,不会发生跳变。对于时间码等数字量, 大部分情况下为等差数列,只须存储首项a ,公差 d,以及项数 。对于温度量等模拟量,在短时间内 不会发生跳变,其高位比特在短时问内基本不变, 因此只须存储首项a ,项数 ,以及低位比特不同 的部分。 考虑PackBits算法的两种情况:①Indicator为 1,不存在Run Length为0;②Indicator为1,Run Length为l。对于情况①,属性字节为0x80时,引 入融合差分的RLE算法(RLE—D),即其数据域为等 差数列,存储首项n ,项数 一1,以及公差d。对于 情况②,若使用PackBits算法,不仅不会带来压缩 性能的改善,反而可能会降低压缩性能(如数据为 133544355),因此属性字节为0x81时,引入面向比 特的RLE算法(RLE_b),即其数据域为首项a ,项 数n一1,以及低比特不同的部分。改进后的RLE算 法——融合差分及面向比特RLE算法(RLE-D ̄b) 见图3。 属性域(1 byte) 数据域 标志位(1 bit) 行程长度 Indicator (7 hit) Data (值为1或O) Run length(m) O m一0~127 数据域为m+1个非压缩数据 m一2~127 数据重复m+1次 m一0 数据为首项a1,项数 一1,公差d 1 数据为首项n , 

m一1 项数 一l,低比特不同部分 

图3 RLE D&b算法 Fig.3 RLE—D&b algorithm 

2.2压缩后的遥测数据分包设计 遥测数据的获取和下行发送主要由中心计算