CN107491358B - 基于运载火箭地测微机大数据量的快速容错处理方法 - Google Patents

基于运载火箭地测微机大数据量的快速容错处理方法 Download PDF

Info

Publication number
CN107491358B
CN107491358B CN201710786544.9A CN201710786544A CN107491358B CN 107491358 B CN107491358 B CN 107491358B CN 201710786544 A CN201710786544 A CN 201710786544A CN 107491358 B CN107491358 B CN 107491358B
Authority
CN
China
Prior art keywords
data
micrometer
memory
ground
timer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710786544.9A
Other languages
English (en)
Other versions
CN107491358A (zh
Inventor
刘懿龙
张晶晶
梁玉琴
吴颀
王海鹰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Aerospace Control Technology Institute
Original Assignee
Shanghai Aerospace Control Technology Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Aerospace Control Technology Institute filed Critical Shanghai Aerospace Control Technology Institute
Priority to CN201710786544.9A priority Critical patent/CN107491358B/zh
Publication of CN107491358A publication Critical patent/CN107491358A/zh
Application granted granted Critical
Publication of CN107491358B publication Critical patent/CN107491358B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0796Safety measures, i.e. ensuring safe condition in the event of error, e.g. for controlling element

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Optical Communication System (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及一种基于运载火箭地测微机大数据量的快速容错处理方法,包含以下步骤:S1、运载火箭周期性的向地测微机传输数据;S2、根据运载火箭传输数据的周期,在地测微机内设置匹配的多媒体定时器,周期性的触发定时器事件;S3、当每触发一次定时器事件时,地测微机进行一次数据的接收;S4、地测微机对接收到的数据进行容错处理,剔除超时数据、不正确数据及不完整数据。本发明能快速及时的处理箭载计算机下传的双套惯组数据以及光纤惯组下传的惯组数据,并确保地测微机所接收数据的完整、可靠和有效。

Description

基于运载火箭地测微机大数据量的快速容错处理方法
技术领域
本发明涉及一种大数据快速容错处理方法,具体是指对箭载计算机下传的双套惯组数据、及光纤惯组下传的惯组数据进行快速处理的方法,属于运载火箭控制系统设计领域。
背景技术
现有技术中,根据要求,需要对箭载计算机及光纤惯组下传的数据进行监测处理。由于所述的下传数据具有周期短、数据量大的特点,因此为了能满足对该些数据的处理要求,并能同时对其中的错误数据进行容错,以保证数据的可靠性,设计提供本发明的处理方法。
发明内容
本发明的目的是提供一种基于运载火箭地测微机大数据量的快速容错处理方法,能快速及时的处理箭载计算机下传的双套惯组数据以及光纤惯组下传的惯组数据,并确保地测微机所接收数据的完整、可靠和有效。
为实现上述目的,本发明提供一种基于运载火箭地测微机大数据量的快速容错处理方法,包含以下步骤:
S1、运载火箭周期性的向地测微机传输数据;
S2、根据运载火箭传输数据的周期,在地测微机内设置匹配的多媒体定时器,周期性的触发定时器事件;
S3、当每触发一次定时器事件时,地测微机进行一次数据的接收;
S4、地测微机对接收到的数据进行容错处理,剔除超时数据、不正确数据及不完整数据。
所述的S1中,运载火箭向地测微机传输的数据存储在地测微机的串口缓存区内。
所述的S1中,运载火箭向地测微机传输的数据包括:箭载计算机向地测微机下传的双套惯组数据,以及光纤惯组向地测微机下传的惯组数据。
所述的S2中,设置多媒体定时器周期,使多媒体定时器对地测微机的数据接收模块进行周期性定时,由数据接收模块每间隔一个周期对存储在串口缓存区内的数据进行采集。
所述的S2中,设置多媒体定时器的周期T为10ms。
所述的S3中,定时器每间隔一个周期触发一次定时器事件,每个定时器事件具体包含以下步骤:
S31、对超时计数标志进行加1计数;
S32、判断超时计数标志的当前值是否超过预设的超时指定次数;如是,将超时计数标志复位置零,将超时标志置为真,继续执行S33;如否,直接执行S33;
S33、判断串口缓存区中是否存在数据;如是,取出数据存入第一内存中,并触发数据处理事件;如否,结束定时器事件。
所述的S4中,地测微机的数据处理模块对采集到的数据进行容错处理,具体包含以下步骤:
S41、进入循环,等待数据处理事件被触发;
S42、当数据处理事件被触发后,判断第一内存中是否存在数据;如是,将第一内存中的数据拆分并存入第二内存中;如否,继续执行S43;
S43、判断第二内存中是否有数据,并且该第二内存中的数据在串口缓存区中的存储时间是否超时;如是,进入错误处理流程,剔除第二内存B中的全部数据,将第二内存中的指针下移所剔除数据个数的位数,将超时标志置为假,继续执行S44;如否,继续执行S44;
S44、判断第二内存中的指针指向数据的长度是否达到指定大小;如是,继续执行S45;如否,将超时标志置为假,返回S41,等待下一个数据处理事件被触发;
S45、判断第二内存中的指针指向数据的帧头是否合格;如是,继续执行S46;如否,进入错误处理流程,将第二内存B中的指针下移一位,返回执行S44;
S46、判断第二内存中的指针指向数据的校验码是否合格;如是,取出该数据存放至第三内存中,将第二内存中的指针下移一位,返回执行S44;如否,进入错误处理流程,将第二内存中的指针下移一位,返回执行S44。
所述的S43中,当数据在串口缓存区中的存储时间大于定时器周期×超时指定次数时,判断该数据超时。
本发明所提供的基于运载火箭地测微机大数据量的快速容错处理方法,运用高精度的多媒体定时器快速的处理串口缓存区内的下传数据,避免因数据大量堆积而导致缓存溢出的风险,以及避免因CPU长时间被占用而导致无响应的情况发生;同时本发明采用的数据容错处理方法,能够剔除各种异常数据,确保所接收数据的正确性、完整性和有效性。
附图说明
图1为本发明中的基于运载火箭地测微机大数据量的快速容错处理方法的示意图;
图2为本发明中的数据定时接收的流程图;
图3为本发明中的数据容错处理的流程图。
具体实施方式
以下结合图1~图3,详细说明本发明的一个优选实施例。
如图1所示,为本发明所提供的基于运载火箭地测微机大数据量的快速容错处理方法,包含以下步骤:
S1、运载火箭周期性的向地测微机传输数据;
S2、根据运载火箭传输数据的周期,在地测微机内设置匹配的多媒体定时器,周期性的触发定时器事件;
S3、当每触发一次定时器事件时,地测微机进行一次数据的接收;
S4、地测微机对接收到的数据进行容错处理,剔除超时数据、不正确数据及不完整数据。
所述的S1中,运载火箭向地测微机传输的数据存储在地测微机的串口缓存区内。
所述的S1中,运载火箭向地测微机传输的数据包括:箭载计算机向地测微机下传的双套惯组数据,以及光纤惯组向地测微机下传的惯组数据。
在本发明中,由于S1中运载火箭的箭载计算机和光纤惯组不是以现有技术中的响应信号的方式向地测微机发送数据,而是采用周期性定时发送数据的方式。因此,根据周期性发送数据的特点,考虑在S2中可以采用循环采集方法或者定时器定时采集方法来实现地测微机的数据接收。
又由于地测微机所采用的Windows系统是抢占式的多任务操作系统,如果选择采用循环采集方法来进行数据接收的话,会导致地测微机的CPU始终被该循环占用,使得其他功能出现卡顿。
最终,本发明选择采用定时器定时采集方法实现对周期性发送的数据进行周期性的采集接收,从而有效降低地测微机的CPU占有率,也更符合地测微机的系统需求。
所述的S2中,设置多媒体定时器周期,使多媒体定时器对地测微机的数据接收模块进行周期性定时,由数据接收模块每间隔周期T对存储在串口缓存区内的数据进行采集。
所述的S2中,设置多媒体定时器的周期T为10ms,即数据接收模块每间隔10ms对存储在串口缓存区内的数据进行采集,从而覆盖并匹配运载火箭传输数据的周期。
由于地测微机所采用的Windows系统自带的定时器是封装了Windows API(应用程序编程接口,Application Programming Interface)定时器函数的控件。该定时器是依赖消息机制的时间控制方法,首先由SetTimer函数创建一个内存对象,设定间隔时间,当到达要求的时间间隔时,定时器对象发送一个WM_TIMER的消息,并由相应函数处理。由于WM_TIMER消息的优先级不高,且易出现消息合并情况,因此在默认情况下,Windows系统自带的定时器精度为15.625ms,即该定时器的采样精度只能为15.625ms的整数倍。很明显,这种定时器无法达到本发明中所要求的10ms的数据采样周期。
又由于Windows系统中设置有一套多媒体编程接口,该接口中提供一套定时器操作的函数,可用来实现高精度的定时器,即多媒体定时器。该多媒体定时器不依赖于消息机制,而是产生一个独立的线程,该线程的优先级为最高,在一定的中断次数到达后,将直接调用预先设置的回调函数进行处理,而不必等待应用程序的消息队列为空,有效保证了定时器的实时响应。因此,本发明选择采用多媒体定时器,其能够实现精度为1ms的定时,完全能满足本发明中所要求的10ms的数据采样周期。
如图2所示,所述的S3中,定时器每间隔周期T触发一次定时器事件时,数据接收模块即对串口缓存区进行一次数据采集;每个定时器事件具体包含以下步骤:
S31、对超时计数标志进行加1计数;
S32、判断超时计数标志的当前值是否超过预设的超时指定次数N;如是,将超时计数标志复位置零,将超时标志置为真,继续执行S33;如否,直接执行S33;
S33、判断串口缓存区中是否存在数据;如是,取出数据存入第一内存A中,并触发数据处理事件;如否,结束定时器事件。
如图3所示,所述的S4中,地测微机的数据处理模块对采集到的数据进行容错处理,其是个循环过程,具体包含以下步骤:
S41、进入循环,等待数据处理事件被触发;只有当数据处理事件被触发之后,才会继续进行后续步骤,否则将始终处于等待状态;
S42、当数据处理事件被触发后,判断第一内存A中是否存在数据;如是,将第一内存A中的数据拆分并存入第二内存B中;如否,继续执行S43;
S43、判断第二内存B中是否有数据,并且该第二内存B中的数据在串口缓存区中的存储时间是否超时;如是,进入错误处理流程,剔除第二内存B中的全部数据,将第二内存B中的指针下移X位,X为第二内存B中被剔除的数据个数,将超时标志置为假,继续执行S44;如否,继续执行S44;
S44、判断第二内存B中的指针指向数据的长度是否达到指定大小;如是,继续执行S45;如否,将超时标志置为假,返回S41,等待下一个数据处理事件被触发;
S45、判断第二内存B中的指针指向数据的帧头是否合格;如是,继续执行S46;如否,进入错误处理流程,剔除该数据,并将第二内存B中的指针下移一位,返回执行S44;
S46、判断第二内存B中的指针指向数据的校验码是否合格;如是,取出该数据存放至第三内存C中,将第二内存B中的指针下移一位,返回执行S44;如否,进入错误处理流程,剔除该数据,并将第二内存B中的指针下移一位,返回执行S44。
所述的S43中,当数据在串口缓存区中的存储时间大于定时器周期×超时指定次数(T×N)时,则判断该数据超时。在本发明的一个优选实施例中,设置了定时器周期T为10ms,设置了超时指定次数N为1000次,则当数据在串口缓存区中的存储时间大于10s时,即被认为超时。
当在S43中已经判断得到第二内存B中有数据且数据存储时间超时,由于在这种情况下第二内存B中的数据因进入错误处理流程而被全部剔除,即使指针下移,所指向的也是空数据,那么接下来在S44中判断数据长度是否达标时,将肯定为否,从而跳出循环等待下一个数据处理事件被触发;
当在S43中已经判断得到第二内存B中没有数据时,将直接继续执行S44,并且在S44中判断数据长度是否达标时,也将肯定为否,从而跳出循环等待下一个数据处理事件被触发;
当在S43中已经判断得到第二内存B中有数据且数据存储时间未超时,将直接继续执行S44,而在S44中将逐条判断数据长度是否达标,并且根据判断结果选择继续进行S45或跳出循环等待下一个数据处理事件被触发。
所述的S43能够及时剔除掉超时数据,S44能够及时剔除掉不完整数据,S45和S46能够剔除掉帧头不合格以及校验码不合格的错误数据。因此,整个数据容错处理能够有效避免异常数据重组成为被地测微机所接收的数据的可能,保证了所接收数据的正确性、完整性和有效性。
综上所述,本发明所提供的基于运载火箭地测微机大数据量的快速容错处理方法,运用高精度的多媒体定时器快速的处理串口缓存区内的下传数据,以避免因数据大量堆积而导致缓存溢出的风险,避免因忙于处理大量其他数据而导致的CPU长时间处于被占用状态,从而出现无响应的情况发生,确保了数据处理的时效性;同时本发明采用的数据容错处理方法,能够剔除各种异常数据,确保所接收数据的正确性、完整性和有效性。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。

Claims (6)

1.一种基于运载火箭地测微机大数据量的快速容错处理方法,其特征在于,包含以下步骤:
S1、运载火箭周期性的向地测微机传输数据;
S2、根据运载火箭传输数据的周期,在地测微机内设置匹配的多媒体定时器,周期性的触发定时器事件;
S3、当每触发一次定时器事件时,地测微机进行一次数据的接收;
S4、地测微机对接收到的数据进行容错处理,剔除超时数据、不正确数据及不完整数据;
所述的S3中,定时器每间隔一个周期触发一次定时器事件,每个定时器事件具体包含以下步骤:
S31、对超时计数标志进行加1计数;
S32、判断超时计数标志的当前值是否超过预设的超时指定次数;如是,将超时计数标志复位置零,将超时标志置为真,继续执行S33;如否,直接执行S33;
S33、判断串口缓存区中是否存在数据;如是,取出数据存入第一内存中,并触发数据处理事件;如否,结束定时器事件;
所述的S4中,地测微机的数据处理模块对采集到的数据进行容错处理,具体包含以下步骤:
S41、进入循环,等待数据处理事件被触发;
S42、当数据处理事件被触发后,判断第一内存中是否存在数据;如是,将第一内存中的数据拆分并存入第二内存中;如否,继续执行S43;
S43、判断第二内存中是否有数据,并且该第二内存中的数据在串口缓存区中的存储时间是否超时;如是,进入错误处理流程,剔除第二内存中的全部数据,将第二内存中的指针下移所剔除数据个数的位数,将超时标志置为假,继续执行S44;如否,继续执行S44;
S44、判断第二内存中的指针指向数据的长度是否达到指定大小;如是,继续执行S45;如否,将超时标志置为假,返回S41,等待下一个数据处理事件被触发;
S45、判断第二内存中的指针指向数据的帧头是否合格;如是,继续执行S46;如否,进入错误处理流程,将第二内存中的指针下移一位,返回执行S44;
S46、判断第二内存中的指针指向数据的校验码是否合格;如是,取出该数据存放至第三内存中,将第二内存中的指针下移一位,返回执行S44;如否,进入错误处理流程,将第二内存中的指针下移一位,返回执行S44。
2.如权利要求1所述的基于运载火箭地测微机大数据量的快速容错处理方法,其特征在于,所述的S1中,运载火箭向地测微机传输的数据存储在地测微机的串口缓存区内。
3.如权利要求2所述的基于运载火箭地测微机大数据量的快速容错处理方法,其特征在于,所述的S1中,运载火箭向地测微机传输的数据包括:箭载计算机向地测微机下传的双套惯组数据,以及光纤惯组向地测微机下传的惯组数据。
4.如权利要求2所述的基于运载火箭地测微机大数据量的快速容错处理方法,其特征在于,所述的S2中,设置多媒体定时器周期,使多媒体定时器对地测微机的数据接收模块进行周期性定时,由数据接收模块每间隔一个周期对存储在串口缓存区内的数据进行采集。
5.如权利要求4所述的基于运载火箭地测微机大数据量的快速容错处理方法,其特征在于,所述的S2中,设置多媒体定时器的周期T为10ms。
6.如权利要求5所述的基于运载火箭地测微机大数据量的快速容错处理方法,其特征在于,所述的S43中,当数据在串口缓存区中的存储时间大于定时器周期×超时指定次数时,判断该数据超时。
CN201710786544.9A 2017-09-04 2017-09-04 基于运载火箭地测微机大数据量的快速容错处理方法 Active CN107491358B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710786544.9A CN107491358B (zh) 2017-09-04 2017-09-04 基于运载火箭地测微机大数据量的快速容错处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710786544.9A CN107491358B (zh) 2017-09-04 2017-09-04 基于运载火箭地测微机大数据量的快速容错处理方法

Publications (2)

Publication Number Publication Date
CN107491358A CN107491358A (zh) 2017-12-19
CN107491358B true CN107491358B (zh) 2020-05-15

Family

ID=60651355

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710786544.9A Active CN107491358B (zh) 2017-09-04 2017-09-04 基于运载火箭地测微机大数据量的快速容错处理方法

Country Status (1)

Country Link
CN (1) CN107491358B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108828946B (zh) * 2018-07-06 2021-04-27 合肥工业大学 一种用于火箭整流罩减震降噪的自适应控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7124319B2 (en) * 2002-03-19 2006-10-17 Sun Microsystems, Inc. Delay compensation for synchronous processing sets
CN101937375A (zh) * 2010-08-27 2011-01-05 浙江大学 皮卫星中央处理器的代码、数据实时纠检错方法及装置
CN102521059A (zh) * 2011-11-15 2012-06-27 北京空间飞行器总体设计部 一种星载数据管理系统自主容错方法
CN107122262A (zh) * 2017-04-21 2017-09-01 杭州狮说教育科技有限公司 基于agent的数据库智能备份系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7124319B2 (en) * 2002-03-19 2006-10-17 Sun Microsystems, Inc. Delay compensation for synchronous processing sets
CN101937375A (zh) * 2010-08-27 2011-01-05 浙江大学 皮卫星中央处理器的代码、数据实时纠检错方法及装置
CN102521059A (zh) * 2011-11-15 2012-06-27 北京空间飞行器总体设计部 一种星载数据管理系统自主容错方法
CN107122262A (zh) * 2017-04-21 2017-09-01 杭州狮说教育科技有限公司 基于agent的数据库智能备份系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于1553B总线和PXI总线的某型航天动力控制系统关键技术研究;李鹏;《研究与研发》;20140331;第1-5页 *
对象存储系统中自适应的元数据负载均衡机制;陈涛等;《软件学报》;20130228;第1-12页 *

Also Published As

Publication number Publication date
CN107491358A (zh) 2017-12-19

Similar Documents

Publication Publication Date Title
WO2017204893A1 (en) System and method for input data fault recovery in a massively parallel real time computing system
CN110806960B (zh) 信息处理方法、装置及终端设备
US20030046030A1 (en) Method and apparatus for measuring CPU task occupancy rate in a real-time system
CN107491358B (zh) 基于运载火箭地测微机大数据量的快速容错处理方法
CN113722069A (zh) 一种基于fpga的新型总线轮询调度方法及系统
CN108628694B (zh) 一种基于可编程硬件的数据处理方法以及装置
CN104094558A (zh) 多线程化分组处理
US10289527B2 (en) Tracing of exception handling events
RU2566966C2 (ru) Способ и устройство ускорения нажатия кнопок
EP2318924B1 (en) Synchronization of multiple processor cores
JP2003524225A (ja) コンピュータシステムのエラーを処理する方法及び装置
CN116055349A (zh) 一种流式数据的检测方法、装置及设备
CN109831251B (zh) 基于动态资源分配算法的误码率获取方法及设备
CN110543486B (zh) 数据变更方法、装置及服务器
CN109542903B (zh) 数据处理方法及装置
CN111708670A (zh) 实时操作系统中任务时间参数的确定方法、装置及车辆
CN111309475A (zh) 一种检测任务执行方法及设备
CN116737672B (zh) 嵌入式操作系统中文件系统的调度方法、设备及存储介质
CN116737673B (zh) 嵌入式操作系统中文件系统的调度方法、设备及存储介质
CN116107795B (zh) 报错电路及芯片设备
CN117527641B (zh) 数据报文的丢包观测方法、装置、设备及存储介质
CN117527937B (zh) 基于排序窗口的数据报文的排序方法、装置及设备
CN113176934B (zh) 嵌入式超高时钟精度定时任务执行方法和嵌入式操作系统
CN112711467B (zh) 分区超时处理方法、装置、计算机设备及存储介质
CN117395173A (zh) 控制帧作用效果检测方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant