卫星数据择优方法、装置、电子设备和存储介质与流程

未命名 09-14 阅读:120 评论:0


1.本发明涉及航天数据处理领域,尤其涉及一种卫星数据择优方法、装置、电子设备和存储介质。


背景技术:

2.相关技术中对数据进行择优的方法存在以下缺陷:1、对于无纠错容量限制的编译算法,如低密度奇偶校验(low density parity check code,ldpc)编译方法等,无法执行丢帧数统计,且根据最小/最大误码估计值计算误码率。2、按照传统固定字段误码数及简单帧计数不连续性统计的方式,得出的统计结果误差较大,且组合方式难以界定,可能出现多种方法重复计数的问题。3、在复杂数据乱序情况下丢帧统计出现不准确问题,对数据帧的局部排序纠正存在弊端,在数据质量较差的情况下会影响实时传输效率,且常因检测范围太小而收效甚微。
3.因此,如何提出一种适用范围较广且精度较高的卫星数据择优方法是亟需解决的问题。


技术实现要素:

4.本发明提供一种卫星数据择优方法、装置、电子设备和存储介质,用以实时统计各路数据误码率,形成一套基于数据质量的智能评价择优流程,保证一路最优数据推送至上层用户使用,提高数据择优的精度。
5.本发明提供一种卫星数据择优方法,包括:确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个;将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率;基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据。
6.根据本发明提供的卫星数据择优方法,所述确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个,包括:在所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的数据帧计数中,确定未按预设顺序排序的数据帧计数的数量,作为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的乱序帧数量;在所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的数据帧计数中,确定是否存在重复的数据帧计数,若存在,将每一组重复的数据帧计数数量减1
作为每一组重复的数据帧计数的重复帧数量,确定所述每一组重复的数据帧计数的重复帧数量之和,作为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的重复帧数量;在所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的数据帧计数中,确定本应接收到但未接收到的数据帧计数的数量,作为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量。
7.根据本发明提供的卫星数据择优方法,所述将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,包括:建立帧计数数组,所述帧计数数组包括所述第一时间段内接收的所述第一数据的m帧数据帧计数,将所述帧计数数组中的首个数据帧计数作为基准帧计数;执行至少一次第一过程,直至第一过程中更新的帧计数数组为空后,确定所述第一时间段内实时误码率为:误码率=(丢帧数量+乱序帧数量+重复帧数量)/m;其中,所述第一过程包括:执行至少一次第二过程,直至第二过程中确定的帧计数差值数组中不存在值为0的元素后,对帧计数差值数组中的首个元素进行数值判断,若所述帧计数差值数组中的首个元素的数值大于1,所述丢帧数量增加q,q为所述帧计数差值数组中的首个元素的数值减1;若所述帧计数差值数组中的首个元素的数值小于或等于1,取出帧计数数组中的首个数据帧计数,定义基准帧计数为取出首个数据帧计数后的帧计数数组中的首个数据帧计数,并更新帧计数数组;其中,所述第二过程包括:确定统计数组,所述统计数组包括所述帧计数数组中所述基准帧计数的后n帧数据帧计数,n为预设值;所述统计数组中的n帧数据帧计数的排列顺序与所述帧计数数组中所述基准帧计数的后n帧数据帧计数的排列顺序相同;确定帧计数差值数组,所述帧计数差值数组包括所述统计数组内的n帧数据帧计数分别与所述基准帧计数的差值;所述统计数组内的n帧数据帧计数的排序顺序与所述帧计数差值数组内的n帧数据帧计数分别与所述基准帧计数的差值的排序顺序相同;对所述帧计数差值数组内的相邻两个元素进行大小比较,判断所述帧计数差值数组内的元素是否为由小到大进行顺序排列,若否,所述乱序帧数量增加o,o为所述帧计数差值数组内所有元素中大于右侧相邻元素的元素数量;对所述帧计数差值数组内的元素进行由小到大的顺序排序,并基于所述帧计数差值数组的排序,对所述帧计数数组中所述基准帧计数的后n帧数据帧计数进行排序,使所述帧计数数组中所述基准帧计数的后n帧数据帧计数的排序顺序,和所述帧计数差值数组内的n帧数据帧计数分别与所述基准帧计数的差值的排序顺序相同;在所述帧计数差值数组内的元素为由小到大的顺序排序的情况下,检测所述帧计数差值数组中是否有元素的值为0,若有,则确定所述帧计数数组中存在和所述基准帧计数重复的数据帧计数,所述重复帧数量增加p,p为调整后的帧计数差值数组中值为0的元素的
数量;删除所述帧计数数组中和所述基准帧计数重复的数据帧计数,所述帧计数数组中后续数据帧计数按照现有排序前移补位。
8.根据本发明提供的卫星数据择优方法,所述基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据,包括:确定接收的第一数据中实时误码率最低的第一数据为最优第一数据;或者,基于所述第一时间段内接收的所述第一数据的实时误码率,计算获得至少一个数据接收线程中接收的所述第一数据的推优计算结果,确定接收的所述第一数据的推优计算结果最大的第一数据为最优第一数据;其中,所述推优计算结果通过以下公式获得:
9.其中,为至少一个数据接收线程中接收的所述第一数据的推优计算结果,n为对推优计算结果造成影响的要素的数量,每个所述对推优计算结果造成影响的要素用表示,为每个所述对推优计算结果造成影响的要素对应的权值,其中,所述对推优计算结果造成影响的要素包括所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率。
10.根据本发明提供的卫星数据择优方法,所述确定接收的所述第一数据中实时误码率最低的第一数据为最优第一数据,包括:在第一数据接收线程在第一时刻接收的第一数据的第一实时误码率小于第二数据接收线程在第二时刻接收的第一数据的第二实时误码率,且第一实时误码率和第二实时误码率的差值大于预设值的情况下,确定所述第一数据接收线程接收的第一数据为最优第一数据;所述第一时刻晚于第二时刻,所述第二数据接收线程接收的第一数据在所述第二时刻为最优第一数据。
11.根据本发明提供的卫星数据择优方法,所述方法还包括:对所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据进行数据处理,获得数据帧计数信息;基于所述数据帧计数信息,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率。
12.本发明还提供一种数据择优装置,包括:第一确定模块,用于确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个;第二确定模块,用于将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率;
第三确定模块,用于基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据。
13.本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现所述卫星数据择优方法。
14.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述卫星数据择优方法。
15.本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现所述卫星数据择优方法。
16.本发明提供的卫星数据择优方法、装置、电子设备和存储介质,通过基于丢帧数、重复帧数和乱序帧数对多路数据的实时误码率进行实时计算并检测,基于实时误码率灵活选择一路最优数据推送至上层用户使用,可以提高数据择优的精度。
附图说明
17.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
18.图1是本发明提供的卫星数据择优方法的流程示意图;图2是本发明提供的误码率统计方法的流程示意图之一;图3是本发明提供的基准帧移动流程示意图;图4是本发明提供的误码率统计方法的流程示意图之二;图5是本发明提供的误码率统计方法的流程示意图之三;图6是本发明提供的通用卫星原始数传数据帧格式示意图;图7是本发明提供的卫星数据择优方法的功能模块示意图;图8是本发明提供的卫星数据择优装置的结构示意图;图9是本发明提供的电子设备的结构示意图。
具体实施方式
19.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
20.首先对以下内容进行介绍:低轨卫星,也称近地轨道卫星,是轨道飞行高度为200~2000km的卫星合集,其轨道高度低使得传输时延短、路径损耗小、信号质量优,在高分辨率的对地观测及通信导航领域极具天赋。低轨卫星因其星座化的协作方式和信号全球覆盖的独特优势,在卫星导航、组网通讯等方面受到越来越多的关注和青睐,成为卫星事业发展的新增量。
21.卫星平台搭载各类有效载荷及传感器对目标形成观测数据,于地面站各接收雷达
装置工作范围内进行下传,形成一系列卫星数据传输(简称“卫星数传”)窗口,是卫星科学数据进行地面处理的基础。基于低轨卫星非同步轨道的运行特性,其平台及载荷数据下传受到传输窗口限制,无法像高轨卫星持续不断地进行数据传输。因此,为保证重要数据下传的稳定性及连续性,常采用“多站同时跟踪、前后接力”的方式,对低轨卫星数据进行多数据源并行传输,保证地面数据处理系统能最大限度接收完整的原始数据,并进行解析处理及后续分析。
22.目前,随着卫星搭载载荷数量的逐步提升,各卫星研制方一般采用aos标准卫星数传协议进行数据下传,以提高传输效率。低轨卫星数据经地面站下传后,地面数据处理系统需接收多站同时发送的高码速率卫星原始数传帧,进行帧头同步、帧标识识别、数据解密、解包拼帧、信道划分、解析分发、解压缩存储等处理,之后推送至上层用户分析使用。然而,在实际应用场景下,各站数据由于接收角范围、接收设备状态、传输链路等不一致,存在数据质量差异化,上层用户对数据选用困难,影响后续数据分析。
23.相关技术中对数据进行择优的方法存在以下缺陷:1、对于无纠错容量限制的编译算法,如ldpc编译方法等,无法根据最小/最大误码估计值计算误码率。
24.2、多数方法仅可作定性判断数据是否丢帧使用,缺乏具体丢帧数统计的手段。
25.3、按照传统固定字段误码数及简单帧计数不连续性统计的方式,得出的统计结果误差较大,且组合方式难以界定,可能出现多种方法重复计数的问题。
26.4、在各种乱序情况下丢帧统计出现不准确问题,对数据帧的局部排序纠正存在弊端,在数据质量较差的情况下会影响实时传输效率,且常因检测范围太小而收效甚微。
27.为了克服上述缺陷,针对低轨卫星“多站同时跟踪、前后接力”的数据下传特性,本发明提供一种卫星数据择优方法、装置、电子设备和存储介质,通过帧计数分析对多路数据误码率进行实时检测,灵活选择一路最优数据推送至上层用户使用。
28.图1是本发明提供的卫星数据择优方法的流程示意图,如图1所示,所述方法包括以下步骤:步骤100,确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个;可选地,第一时间段可以是1s内,或5s内,或10s内,本发明对此不作限定。
29.可选地,第一数据可以是卫星原始数传数据、原始遥测数据,或其他结构类似的数据。
30.可选地,为了保证各数据方向流入的数据在第一时间被接收处理,可以开发一个数据自动接收模块,通过配置数据通讯协议信息并启动常驻线程的方式,对各路第一数据实现自动接收处理。
31.可选地,数据通讯协议信息可以包含卫星标识、信息类别、协议类型、信源地址编码、信源ip地址、信宿地址编码、信宿ip地址等信息。
32.可选地,可以将数据通讯协议配置信息写入数据库存储,支持增加、删除、修改、查询等常规操作。
33.可选地,由于低轨卫星数据经地面站下传后,地面数据处理系统需接收多个地面站同时发送的高码速率卫星原始数传帧,因此,可以确定数据通讯协议配置信息的条目为
多个地面站的数量,由此确定数据接收方向的总量,启动相应数目的常驻数据接收线程。
34.例如,共有8个地面站可以发送高码速率卫星原始数传帧,则数据自动接收模块可以配置8个数据通讯协议配置信息,启动8个常驻数据接收线程。
35.可选地,启动相应数目的常驻数据接收线程后,常驻数据接收线程可以按照通讯协议对各个地面站进行实时监听,保证第一数据的自动接入。
36.例如,当前有8个常驻数据接收线程,但只有6个地面站处于发送数据的状态,则只需要6个数据接收线程接收数据,另外2个数据接收线程保持实时监听状态。
37.可选地,在数据接入过程中,数据自动接收模块还可以统计数据接收速率。
38.可选地,可以实时监测各数据接收线程的运行状态,一旦有数据接入,自动向该数据接收线程分配计算资源并计算丢帧数量、乱序帧数量、重复帧数量中的一个或多个。
39.步骤110,将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率;可选地,至少一个数据接收线程在第一时间段内接收的第一数据的误码数可以是以下情况的任意一种:1a、第一时间段内接收的第一数据的丢帧数量;2a、第一时间段内接收的第一数据的乱序帧数量;3a、第一时间段内接收的第一数据的重复帧数量;4a、第一时间段内接收的第一数据的丢帧数量和乱序帧数量;5a、第一时间段内接收的第一数据的丢帧数量和重复帧数量;6a、第一时间段内接收的第一数据的乱序帧数量和重复帧数量;7a、第一时间段内接收的第一数据的丢帧数量、乱序帧数量和重复帧数量。
40.例如,数据接收线程a在1s内接收的第一数据的丢帧数量为5,乱序帧数量为4,重复帧数量为3,则数据接收线程a在1s内接收的第一数据的误码数为12。
41.可选地,至少一个数据接收线程在第一时间段内接收的第一数据的实时误码率可以是误码数/总数据帧计数。
42.例如,数据接收线程b在5s内接收的第一数据的误码数为15,而数据接收线程b在5s内接收的第一数据的总数据帧计数为100,则数据接收线程b在5s内接收的第一数据的实时误码率为15%。
43.可选地,考虑到大流量数据处理的时效性要求,计算的误码率仅作内部排序统计处理,不对实时数据发送产生效用。
44.步骤120,基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据。
45.可选地,在确定各个数据接收线程接收的第一数据的实时误码率后,可以按照上层用户的使用需求,将最优第一数据推送至上层用户使用。
46.可选地,上层用户可以是对第一数据有使用需求的任何用户,比如需要使用第一数据进行二次处理或展示应用的用户。
47.可选地,若当前只有一个数据接收线程在接收第一数据,可以将该数据接收线程
接收的第一数据作为最优第一数据直接推送至上层用户。
48.可选地,可以确定当前接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个,并把它们的和作为误码数,把第一数据的误码数所占比例作为实时误码率,可以基于实时误码率确定最优第一数据并将其推送至上层用户使用。
49.本发明提供的卫星数据择优方法,通过基于丢帧数、重复帧数和乱序帧数对多路数据的实时误码率进行实时计算并检测,可以基于实时误码率灵活选择一路最优数据推送至上层用户使用,可以提高数据择优的精度。
50.可选地,所述确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个,包括:在所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的数据帧计数中,确定未按预设顺序排序的数据帧计数的数量,作为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的乱序帧数量;在所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的数据帧计数中,确定是否存在重复的数据帧计数,若存在,将每一组重复的数据帧计数数量减1作为每一组重复的数据帧计数的重复帧数量,确定所述每一组重复的数据帧计数的重复帧数量之和,作为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的重复帧数量;在所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的数据帧计数中,确定本应接收到但未接收到的数据帧计数的数量,作为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量。
51.可选地,预设顺序排序可以是从小到大的顺序排序,或从大到小的顺序排序,或其他顺序排序,本发明对此不作限定。
52.例如,预设顺序为从小到大排序,若第一数据的数据帧计数为0x01、0x04、0x03、0x02,由于0x04和0x02未按预设顺序排序,因此0x04和0x02为乱序帧,第一数据的乱序帧数量为2。
53.可选地,可以在接收的第一数据的数据帧计数中检测重复出现的帧计数,将每一组重复的数据帧计数数量减1作为每一组重复的数据帧计数的重复帧数量,确定每一组重复的数据帧计数的重复帧数量之和,作为至少一个数据接收线程在第一时间段内接收的第一数据的重复帧数量。
54.例如,第一数据的数据帧计数为0x01、0x01、0x02、0x03、0x04、0x04,则可以得到2组重复的数据帧计数0x01和0x04,且0x01组的数据帧计数为2,0x04组的数据帧计数为2,将2组的数据帧计数数量分别减1并求和得到第一数据的重复帧数量为2。
55.可选地,可以在接收的第一数据的数据帧计数中检测本应接收到但未接收到的数据帧计数的数量,作为第一数据的丢帧数量。
56.例如,第一数据的数据帧计数本应为0x01、0x02、0x03、0x04,但接收到的第一数据的数据帧计数为0x01、0x02、0x03,即丢失了0x04,则第一数据的丢帧数量为1。
57.本发明提供的卫星数据择优方法,通过确定丢帧数、重复帧数和乱序帧数对多路数据的实时误码率进行实时计算并检测,可以基于实时误码率灵活选择一路最优数据推送
至上层用户使用,可以提高数据择优的精度。
58.可选地,所述将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,包括:建立帧计数数组,所述帧计数数组包括所述第一时间段内接收的所述第一数据的m帧数据帧计数,将所述帧计数数组中的首个数据帧计数作为基准帧计数;执行至少一次第一过程,直至第一过程中更新的帧计数数组为空后,确定所述第一时间段内实时误码率为:误码率=(丢帧数量+乱序帧数量+重复帧数量)/m;其中,所述第一过程包括:执行至少一次第二过程,直至第二过程中确定的帧计数差值数组中不存在值为0的元素后,对帧计数差值数组中的首个元素进行数值判断,若所述帧计数差值数组中的首个元素的数值大于1,所述丢帧数量增加q,q为所述帧计数差值数组中的首个元素的数值减1;若所述帧计数差值数组中的首个元素的数值小于或等于1,取出帧计数数组中的首个数据帧计数,定义基准帧计数为取出首个数据帧计数后的帧计数数组中的首个数据帧计数,并更新帧计数数组;其中,所述第二过程包括:确定统计数组,所述统计数组包括所述帧计数数组中所述基准帧计数的后n帧数据帧计数,n为预设值;所述统计数组中的n帧数据帧计数的排列顺序与所述帧计数数组中所述基准帧计数的后n帧数据帧计数的排列顺序相同;确定帧计数差值数组,所述帧计数差值数组包括所述统计数组内的n帧数据帧计数分别与所述基准帧计数的差值;所述统计数组内的n帧数据帧计数的排序顺序与所述帧计数差值数组内的n帧数据帧计数分别与所述基准帧计数的差值的排序顺序相同;对所述帧计数差值数组内的相邻两个元素进行大小比较,判断所述帧计数差值数组内的元素是否为由小到大进行顺序排列,若否,所述乱序帧数量增加o,o为所述帧计数差值数组内所有元素中大于右侧相邻元素的元素数量;对所述帧计数差值数组内的元素进行由小到大的顺序排序,并基于所述帧计数差值数组的排序,对所述帧计数数组中所述基准帧计数的后n帧数据帧计数进行排序,使所述帧计数数组中所述基准帧计数的后n帧数据帧计数的排序顺序,和所述帧计数差值数组内的n帧数据帧计数分别与所述基准帧计数的差值的排序顺序相同;在所述帧计数差值数组内的元素为由小到大的顺序排序的情况下,检测所述帧计数差值数组中是否有元素的值为0,若有,则确定所述帧计数数组中存在和所述基准帧计数重复的数据帧计数,所述重复帧数量增加p,p为调整后的帧计数差值数组中值为0的元素的数量;删除所述帧计数数组中和所述基准帧计数重复的数据帧计数,所述帧计数数组中后续数据帧计数按照现有排序前移补位。
59.图2是本发明提供的误码率统计方法的流程示意图之一,如图2所示,该方法包括以下步骤:
1b、建立帧计数数组countarray[n];可选地,假设第一时间段内共接收卫星原始数传数据m帧,可以建立帧计数数组countarray[n],依次记录上述m帧卫星原始数传帧计数字段;可选地,可以按固定频率获取帧计数,比如1s获取一组m个帧计数,表示当前码速率为m帧/s。
[0060]
可选地,m的值可以随卫星原始数传数据实际下传速率上下波动。
[0061]
可选地,一般卫星原始数传帧为二进制编码,以十六进制表示数据码流。
[0062]
可选地,帧计数字段一般为多字节,计数满后归零循环累计,本发明以2字节十六进制字符表示帧计数,帧计数数组由连续帧计数构成。
[0063]
可选地,可以定义当前帧计数数组首个元素countarray[0]为基准帧计数refcount,有refcount=countarray[0];可选地,可以取基准帧计数后个帧计数为合理统计范围,则统计数组rangearray[n]={countarray[1],countarray[2]
……
countarray[]};可选地,合理统计范围为单次进行帧排序及误码率统计的帧序列范围。
[0064]
可选地,可以依据码速率及处理性能等实际情况选取。
[0065]
2b、计算帧计数差值数组diffarray;可选地,可以将统计数组内各帧计数与基准帧计数的差值记为diff[n],对任意,有diff[n]=rangearray[n]-refcount,记帧计数差值数组diffarray[n]={diff[0],diff[1]
……
diff[-1]};可选地,统计数组rangearray[n]及基准帧refcount均为十六进制表示,计算差值时需转换为十进制相减。
[0066]
3b、对帧计数差值数组内各元素与右侧相邻元素进行比较,对任意,每有一组diffarray[n]-diffarray[n +1]》0,误码数errcount=errcount+1;可选地,可以对帧计数差值数组内相邻两元素大小比较,判断是否为由小到大进行顺序排列,每有一个大于右侧相邻元素的,计为一个乱序帧,误码数加1。
[0067]
例如,假设共有n1组diffarray[n]
‑ꢀ
diffarray[n+1]》0,则有errcount=errcount+n1。
[0068]
4b、利用常见排序算法对帧计数差值数组diffarray[n]内各差值元素进行自小到大的顺序排序,记为diffarray[n]_ord,同步对帧计数数组countarray[n]进行更新,记为countarray[n]_ord;可选地,常见排序算法可以是快速排序,或冒泡排序,或插入排序,或其他排序算法,本发明对此不作限定。
[0069]
可选地,可以将帧计数差值数组diffarray[n]与帧计数数组countarray[n]建立索引关系,对任意,有diffarray[n]和countarray[n+1]建立索引关系。
[0070]
可选地,可以利用排序算法,对帧计数差值数组进行由小到大排序,同时通过索引关系调整帧计数数组内元素位置,记调整后有序帧计数差值数组为diffarray[n]_ord,帧计数数组为countarray[n]_ord。
[0071]
5b、检测帧计数差值数组diffarray[n]_ord内各帧计数差值diffarray[n]_ord(
)是否存在值为0的情况,若是,记重复帧数,对任意n《有diffarray[n]_ord=0,误码数errcount=errcount+。将当前帧计数数组内重复帧countarray[n]_ord (1≤n≤)删除,后续原始数传帧按照现有排序前移补位,得到新的统计数组rangearray[n]_new,返回步骤2b;若否,执行步骤6b;可选地,若diffarray[n]_ord存在为0的情况,表明统计的数据帧序列内存在与基准帧计数相同的重复帧,需在计算丢帧数前去除。
[0072]
6b、对当前帧计数差值数组diffarray[n]_ord内首个元素diffarray[0]_ord进行数值判断:若diffarray[0]_ord》1,执行步骤7b;若diffarray[0]_ord≤1,执行步骤8b;可选地,重新排序后,可以取基准帧后第一帧与其作差,得到帧计数差值数组首个元素diffarray[0]_ord,若该差值大于1,证明统计范围内无基准帧的后续连续帧,将帧计数最接近的一帧与其作差值,求得丢帧数,计入误码计数;若该差值等于1,证明后续为连续帧,无丢帧情况;若该差值小于1,证明基准帧本身为乱序帧,对其不作误码处理直接取出,后续计算会将其作为丢帧补上。
[0073]
7b、计算当前帧序列丢帧数为diffarray[0]_ord-1,有误码数errcount=errcount+diffarray[0]_ord-1,然后执行步骤 8b;8b、取出当前帧计数数组首个元素countarray[0]_ord,基准帧计数refcount顺延至下一个帧计数,返回步骤3b。
[0074]
图3是本发明提供的基准帧移动流程示意图,如图3所示,为基准帧移动流程示意,图3中横线阴影为1s内接收的卫星原始数传数据中的帧计数字段,竖线阴影为帧计数数组中的基准帧计数refcount,斜线阴影为取出的帧计数。
[0075]
9b、若当前countarray[n]_ord为空,证明第一时间段内所有帧计数遍历完毕,用误码数errcount与总帧数m作商求得当前时刻误码率,有误码率err=errcount/m。
[0076]
10b、将实时误码率计算结果err推送至动态推优模块,获取下一时间段卫星原始数传数据帧数,进行新一轮计算。
[0077]
可选地,若按照固定频率1s/次获取卫星原始数传数据帧计数,其误码统计速率应当优于1s,即统计时间小于采集时间间隔,保证误码率统计实时无延迟。
[0078]
图4是本发明提供的误码率统计方法的流程示意图之二,如图4所示,在本技术的一个实施例中,针对数据同时存在重复帧及丢帧情况进行误码率统计,本实例中首个基准帧为0x0a 0x00,后续数据帧中出现同为0x0a 0x00的重复帧,丢失帧计数为0x0a 0x02的数据帧,误码计数应为2,图4中的竖线阴影为帧计数数组中的基准帧计数refcount,斜线阴影为重复帧。该方法包括以下步骤:1c、帧计数数组countarray[n]={0x0a 0x00,0x0a 0x01,0x0a 0x03,0x0a 0x00,0x0a 0x04,0x0a 0x05,0x0a 0x06

};2c、基准帧refcount= countarray[0]= 0x0a 0x00;3c、统计数组取n=5,则有rangearray[5]={0x0a 0x01,0x0a 0x03,0x0a 0x00,0x0a 0x04,0x0a 0x05};4c、帧计数差值数组diffarray[n]={1,3,0,4,5};5c、排除0值,进行相邻元素大小比较,无乱序帧;
6c、进行快速排序,排序后diffarray[n]={0,1,3,4,5},此时统计数组依序调整为rangearray[5]={0x0a 0x00,0x0a 0x01,0x0a 0x03,0x0a 0x04,0x0a 0x05};7c、检测有diff[0]=0,存在一个重复帧,有误码计数errcount=1帧;8c、将diff[0]对应的数据帧剔除后,后续原始数传帧按照现有排序前移补位,得到新的统计数组rangearray[5]={0x0a 0x01,0x0a 0x03, 0x0a 0x04,0x0a 0x05,0x0a 0x06};9c、帧计数差值数组diffarray[n]={1,3,4,5,6};10c、进行相邻元素大小比较,无乱序帧;对帧计数差值数组进行快速排序,数组内元素顺序无变化;进行帧计数差值检测,无零值,证明无重复帧;首个元素diff[0]=1,后续为连续帧,基准帧计数refcount顺延至下一个帧计数0x0a 0x01;11c、统计数组依序调整为rangearray[5]={0x0a 0x03,0x0a 0x04,0x0a 0x05,0x0a 0x06,0x0a 0x07};12c、帧计数差值数组diffarray[n]={2,3,4,5,6};13c、进行相邻元素大小比较,无乱序帧;对帧计数差值数组进行快速排序,数组内元素顺序无变化;进行帧计数差值检测,无零值,证明无重复帧;14c、首个元素diff[0]=2》1,说明有丢帧情况,丢帧数为diff[0]-1=1帧。误码计数errcount=1+1=2帧。基准帧计数refcount顺延至下一个帧计数0x0a 0x03,重复上述步骤,直到帧计数数组countarray[n]为空。
[0079]
图5是本发明提供的误码率统计方法的流程示意图之三,如图5所示,在本发明的一个实施例中,针对数据同时存在乱序帧及丢帧情况进行误码率统计,本发明通过分层检测的方法,对乱序帧、重复帧、丢帧等情况依序分析,统一划分为误码数得到准确计算结果,本实例中首个基准帧为0x00 0x06,其自身为乱序帧;后续数据帧中出现0x00 0x05的乱序帧,丢失帧计数为0x00 0x02的数据帧,共计2帧乱序帧、1帧丢帧,误码计数应为3,图5中竖线阴影为帧计数数组中的基准帧计数refcount,横线阴影为乱序帧,斜线阴影为取出的帧计数。该方法包括以下步骤:1d、帧计数数组countarray[n]={0x00 0x06,0x00 0x01,0x00 0x05,0x00 0x03,0x00 0x04,0x00 0x07,0x00 0x08

};2d、基准帧refcount= countarray[0]= 0x00 0x06;3d、统计数组取n=5,则有rangearray[5]={0x00 0x01,0x00 0x05,0x00 0x03,0x00 0x04,0x00 0x07};4d、帧计数差值数组diffarray[n]={-5,-1,-3,-2,1};5d、排除0值,进行相邻元素大小比较,有diff[1]》diff[2],存在1帧乱序帧,有误码计数errcount=1帧;6d、进行快速排序,排序后diffarray[n]={-5,-3,-2,-1,1},此时统计数组依序调整为rangearray[5]={0x00 0x01,0x00 0x03,0x00 0x04,0x00 0x05,0x00 0x07};7d、进行重复帧检测,未有diff[n]=0;8d、取帧计数差值数组首个元素diff[0]=-5《1,基准帧本身为乱序帧,此处不作处理,基准帧计数refcount顺延至下一个帧计数0x00 0x0;9d、统计数组依序调整为rangearray[5]={0x00 0x03,0x00 0x04,0x00 0x05,
0x00 0x07,0x00 0x08};10d、帧计数差值数组diffarray[n]={2,3,4,6,7};11d、经检测未有乱序帧、重复帧;首个元素diff[0]=2》1, 说明有丢帧情况,丢帧数为diff[0]-1=1帧。误码计数errcount=1+1=2帧。基准帧计数refcount顺延至下一个帧计数0x00 0x03,重复上述步骤;12d、当基准帧顺延至0x00 0x05时,有rangearray[5]={0x00 0x07,0x00 0x08,0x00 0x09,0x00 0x0a,0x00 0x0b},此时diffarray[n]={2,3,4,5,6};13d、首个元素diff[0]=2》1, 说明有丢帧情况,丢帧数为diff[0]-1=1帧。误码计数errcount=2+1=3帧。基准帧计数refcount顺延至下一个帧计数0x00 0x07,重复上述步骤,直到帧计数数组countarray[n]为空。
[0080]
本发明提供的卫星数据择优方法,通过计算得到丢帧数、重复帧数和乱序帧数可以对多路数据的实时误码率进行实时计算并检测,可以基于实时误码率灵活选择一路最优数据推送至上层用户使用,可以提高数据择优的精度。
[0081]
可选地,所述基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据,包括:确定接收的第一数据中实时误码率最低的第一数据为最优第一数据;或者,基于所述第一时间段内接收的所述第一数据的实时误码率,计算获得至少一个数据接收线程中接收的所述第一数据的推优计算结果,确定接收的所述第一数据的推优计算结果最大的第一数据为最优第一数据;其中,所述推优计算结果通过以下公式获得:
[0082]
其中,为至少一个数据接收线程中接收的所述第一数据的推优计算结果,n为对推优计算结果造成影响的要素的数量,每个所述对推优计算结果造成影响的要素用表示,为每个所述对推优计算结果造成影响的要素对应的权值,其中,所述对推优计算结果造成影响的要素包括所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率。
[0083]
可选地,可以在至少一个数据接收线程接收的第一数据中选择实时误码率最低的第一数据作为最优第一数据并将其推送至上层用户使用。
[0084]
例如,数据接收线程a接收的第一数据的实时误码率为15%,数据接收线程b接收的第一数据的实时误码率为20%,数据接收线程c接收的第一数据的实时误码率为25%,则可以将数据接收线程a接收的第一数据作为最优第一数据,并将其推送至上层用户使用。
[0085]
可选地,由于仅考虑数据误码率进行实时择优,判据相对单一,不适用于多要素结合择优的综合应用场景,因此可以结合多个要素综合评判数据优先级。
[0086]
可选地,对推优计算结果造成影响的要素可以包括频段优先级、设备优先级、可用窗口、实时误码率等,本发明对此不作限定。
[0087]
可选地,可以使用推优计算公式对推优计算结果进行计算,其中,为至少一个数据接收线程中接收的第一数据的推优计算结果,n为对推优计算结果造成影响的要素的数量,每个所述对推优计算结果造成影响的要素用表示,为每个所述对推优计算结果造成影响的要素对应的权值。
[0088]
本发明提供的卫星数据择优方法,基于多个要素综合评判数据优先级,适用于多要素结合择优的综合应用场景,可以基于多个要素灵活选择一路最优数据推送至上层用户使用,可以提高数据择优的精度。
[0089]
可选地,所述确定接收的所述第一数据中实时误码率最低的第一数据为最优第一数据,包括:在第一数据接收线程在第一时刻接收的第一数据的第一实时误码率小于第二数据接收线程在第二时刻接收的第一数据的第二实时误码率,且第一实时误码率和第二实时误码率的差值大于预设值的情况下,确定所述第一数据接收线程接收的第一数据为最优第一数据;所述第一时刻晚于第二时刻,所述第二数据接收线程接收的第一数据在所述第二时刻为最优第一数据。
[0090]
可选地,随着时间的推移,可能会出现多路数据质量不稳定、误码率相差不大持续交替的情况,在这种情况下可以无须实时推送当前误码率最小的一路数据,造成数据来回切换的问题。
[0091]
可选地,可以预设临界值,在多路数据质量不稳定、误码率相差不大持续交替的情况下,规定只有多路数据误码率差值大于临界值的情况下才进行最优数据的切换。
[0092]
例如,设置临界值为10%,在第一数据接收线程在12:00接收的第一数据的第一实时误码率为5%,第二数据接收线程在10:00接收的第一数据的第二实时误码率为16%,且此时第二数据接收线程接收的第一数据为最优第一数据,由于第一实时误码率和第二实时误码率的差值大于10%,则可以在12:00确定所述第一数据接收线程接收的第一数据为最优第一数据。
[0093]
本发明提供的卫星数据择优方法,在多路数据质量不稳定、误码率相差不大持续交替的情况下,无须实时推送当前误码率最小的一路数据,造成数据来回切换的问题。
[0094]
可选地,所述方法还包括:对所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据进行数据处理,获得数据帧计数信息;基于所述数据帧计数信息,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率。
[0095]
图6是本发明提供的通用卫星原始数传数据帧格式示意图,如图6所示,卫星原始数传数据帧格式信息主要包含数据帧同步字、帧计数、帧长、有效数据区定义等,指导数传数据解析工作。
[0096]
可选地,在数据接入过程中,可以根据第一数据帧格式信息对接收的第一数据进行帧头同步、帧标识识别、数据解密、解析拼帧、信道划分、处理分发、解压缩存储等一系列数据处理,获得解析后的数据帧计数信息。
[0097]
例如,在数据接入过程中,可以根据卫星原始数传数据帧格式信息对接收的卫星原始数据进行帧头同步、帧标识识别、数据解密、解析拼帧、信道划分、处理分发、解压缩存储等一系列数据处理,获得解析后的数据帧计数信息。
[0098]
可选地,可以基于解析后的数据帧计数信息,获取数据帧计数信息中的丢帧数量、乱序帧数量、重复帧数量中的一个或多个。
[0099]
图7是本发明提供的卫星数据择优方法的功能模块示意图,如图7所示,在本发明的一个实施例中,本发明提供的卫星数据择优方法包含数据自动接收、监视调度、数据处理、误码率统计、动态推优等五部分功能模块。
[0100]
可选地,数据自动接收模块可以通过配置数据通讯协议信息,对各路数传数据实现自动接收处理,在数据接入过程中,统计数据接收速率,将各数据接收线程的运行状态上报给监视调度模块。
[0101]
可选地,监视调度模块可以监视各数据接收线程运行状态,对计算资源进行统一调度分配。
[0102]
可选地,数据处理模块可以配置数据帧格式信息,对数传数据实现帧头同步、解析拼帧、处理分发等操作,将数据帧计数信息解析后发送给误码率统计模块,进行数据误码率计算。
[0103]
可选地,误码率统计模块可以每秒接收数据处理模块解析的卫星原始数传帧计数,对其统计分析得到当前时刻误码率,作为各路实时数传数据质量的评判依据。
[0104]
可选地,动态推优模块可以接收误码统计模块推送的各路数据实时误码率计算结果,动态推送当前误码率最低的一路至上层用户使用。
[0105]
本发明提供的卫星数据择优方法,根据帧格式信息对卫星原始数据进行数据处理,将数据帧计数信息进行解析,便于确定帧计数信息中的丢帧数、重复帧数和乱序帧数。
[0106]
图8是本发明提供的卫星数据择优装置的结构示意图,如图8所示,所述卫星数据择优装置800包括:第一确定模块810,第二确定模块820和第三确定模块830,其中,第一确定模块810,用于确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个;第二确定模块820,用于将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率;第三确定模块830,用于基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据。
[0107]
本发明提供的卫星数据择优装置,通过基于丢帧数、重复帧数和乱序帧数对多路数据的实时误码率进行实时计算并检测,可以基于实时误码率灵活选择一路最优数据推送至上层用户使用,可以提高数据择优的精度。
[0108]
可以理解的是,本发明提供的卫星数据择优装置与上述各实施例提供的卫星数据择优方法相对应,本发明提供的卫星数据择优装置的相关技术特征可参考上述各实施例提供的卫星数据择优方法的相关技术特征,在此不再赘述。
[0109]
图9示例了一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)910、通信接口(communications interface)920、存储器(memory)930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行卫星数据择优方法,该方法包括:确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个;将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率;基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据。
[0110]
此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0111]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的卫星数据择优方法,该方法包括:确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个;将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率;基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据。
[0112]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的卫星数据择优方法,该方法包括:确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个;将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率;基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据。
[0113]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可
以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0114]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0115]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

技术特征:
1.一种卫星数据择优方法,其特征在于,包括:确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个;将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率;基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据。2.根据权利要求1所述的卫星数据择优方法,其特征在于,所述确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个,包括:在所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的数据帧计数中,确定未按预设顺序排序的数据帧计数的数量,作为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的乱序帧数量;在所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的数据帧计数中,确定是否存在重复的数据帧计数,若存在,将每一组重复的数据帧计数数量减1作为每一组重复的数据帧计数的重复帧数量,确定所述每一组重复的数据帧计数的重复帧数量之和,作为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的重复帧数量;在所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的数据帧计数中,确定本应接收到但未接收到的数据帧计数的数量,作为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量。3.根据权利要求2所述的卫星数据择优方法,其特征在于,所述将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,包括:建立帧计数数组,所述帧计数数组包括所述第一时间段内接收的所述第一数据的m帧数据帧计数,将所述帧计数数组中的首个数据帧计数作为基准帧计数;执行至少一次第一过程,直至第一过程中更新的帧计数数组为空后,确定所述第一时间段内实时误码率为:误码率=(丢帧数量+乱序帧数量+重复帧数量)/m;其中,所述第一过程包括:执行至少一次第二过程,直至第二过程中确定的帧计数差值数组中不存在值为0的元素后,对帧计数差值数组中的首个元素进行数值判断,若所述帧计数差值数组中的首个元素的数值大于1,所述丢帧数量增加q,q为所述帧计数差值数组中的首个元素的数值减1;若所述帧计数差值数组中的首个元素的数值小于或等于1,取出帧计数数组中的首个数据帧计数,定义基准帧计数为取出首个数据帧计数后的帧计数数组中的首个数据帧计数,并更新帧计数数组;
其中,所述第二过程包括:确定统计数组,所述统计数组包括所述帧计数数组中所述基准帧计数的后n帧数据帧计数,n为预设值;所述统计数组中的n帧数据帧计数的排列顺序与所述帧计数数组中所述基准帧计数的后n帧数据帧计数的排列顺序相同;确定帧计数差值数组,所述帧计数差值数组包括所述统计数组内的n帧数据帧计数分别与所述基准帧计数的差值;所述统计数组内的n帧数据帧计数的排序顺序与所述帧计数差值数组内的n帧数据帧计数分别与所述基准帧计数的差值的排序顺序相同;对所述帧计数差值数组内的相邻两个元素进行大小比较,判断所述帧计数差值数组内的元素是否为由小到大进行顺序排列,若否,所述乱序帧数量增加o,o为所述帧计数差值数组内所有元素中大于右侧相邻元素的元素数量;对所述帧计数差值数组内的元素进行由小到大的顺序排序,并基于所述帧计数差值数组的排序,对所述帧计数数组中所述基准帧计数的后n帧数据帧计数进行排序,使所述帧计数数组中所述基准帧计数的后n帧数据帧计数的排序顺序,和所述帧计数差值数组内的n帧数据帧计数分别与所述基准帧计数的差值的排序顺序相同;在所述帧计数差值数组内的元素为由小到大的顺序排序的情况下,检测所述帧计数差值数组中是否有元素的值为0,若有,则确定所述帧计数数组中存在和所述基准帧计数重复的数据帧计数,所述重复帧数量增加p,p为调整后的帧计数差值数组中值为0的元素的数量;删除所述帧计数数组中和所述基准帧计数重复的数据帧计数,所述帧计数数组中后续数据帧计数按照现有排序前移补位。4.根据权利要求1所述的卫星数据择优方法,其特征在于,所述基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据,包括:确定接收的第一数据中实时误码率最低的第一数据为最优第一数据;或者,基于所述第一时间段内接收的所述第一数据的实时误码率,计算获得至少一个数据接收线程中接收的所述第一数据的推优计算结果,确定接收的所述第一数据的推优计算结果最大的第一数据为最优第一数据;其中,所述推优计算结果通过以下公式获得:;其中,为至少一个数据接收线程中接收的所述第一数据的推优计算结果,n为对推优计算结果造成影响的要素的数量,每个所述对推优计算结果造成影响的要素用表示,为每个所述对推优计算结果造成影响的要素对应的权值,其中,所述对推优计算结果造成影响的要素包括所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率。5.根据权利要求4所述的卫星数据择优方法,其特征在于,所述确定接收的所述第一数据中实时误码率最低的第一数据为最优第一数据,包括:在第一数据接收线程在第一时刻接收的第一数据的第一实时误码率小于第二数据接
收线程在第二时刻接收的第一数据的第二实时误码率,且第一实时误码率和第二实时误码率的差值大于预设值的情况下,确定所述第一数据接收线程接收的第一数据为最优第一数据;所述第一时刻晚于第二时刻,所述第二数据接收线程接收的第一数据在所述第二时刻为最优第一数据。6.根据权利要求5所述的卫星数据择优方法,其特征在于,所述方法还包括:对所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据进行数据处理,获得数据帧计数信息;基于所述数据帧计数信息,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率。7.一种数据择优装置,其特征在于,包括:第一确定模块,用于确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个;第二确定模块,用于将所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的误码数所占总帧数比例为所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率;第三确定模块,用于基于所述至少一个数据接收线程在所述第一时间段内接收的所述第一数据的实时误码率,确定所述第一时间段内的最优第一数据。8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述卫星数据择优方法的步骤。9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述卫星数据择优方法的步骤。10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述卫星数据择优方法的步骤。

技术总结
本发明提供一种卫星数据择优方法、装置、电子设备和存储介质,属于航天数据处理领域,包括确定当前正在接收数据的至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个将至少一个数据接收线程在第一时间段内接收的第一数据的丢帧数量、乱序帧数量、重复帧数量中的一个或多个的和记录为误码数,确定至少一个数据接收线程在第一时间段内接收的第一数据的误码数所占总帧数比例为至少一个数据接收线程在第一时间段内接收的第一数据的实时误码率基于至少一个数据接收线程在第一时间段内接收的第一数据的实时误码率,确定第一时间段内的最优第一数据,可以提高数据择优的精度。精度。精度。


技术研发人员:周子琪 韩雪 周晓 张骏骁 陈东波 胡玉新 唐法帅 曹源
受保护的技术使用者:齐鲁空天信息研究院
技术研发日:2023.08.14
技术公布日:2023/9/13
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐