CN109118609A - 无人机飞行日志记录方法、装置、存储介质和计算机设备 - Google Patents

无人机飞行日志记录方法、装置、存储介质和计算机设备 Download PDF

Info

Publication number
CN109118609A
CN109118609A CN201710495876.1A CN201710495876A CN109118609A CN 109118609 A CN109118609 A CN 109118609A CN 201710495876 A CN201710495876 A CN 201710495876A CN 109118609 A CN109118609 A CN 109118609A
Authority
CN
China
Prior art keywords
log information
message
buffer area
cached
log
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.)
Granted
Application number
CN201710495876.1A
Other languages
English (en)
Other versions
CN109118609B (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.)
Shenzhen Autel Intelligent Aviation Technology Co Ltd
Original Assignee
Shenzhen Autel Intelligent Aviation Technology Co Ltd
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 Shenzhen Autel Intelligent Aviation Technology Co Ltd filed Critical Shenzhen Autel Intelligent Aviation Technology Co Ltd
Priority to CN201710495876.1A priority Critical patent/CN109118609B/zh
Priority to PCT/CN2018/082216 priority patent/WO2019001076A1/zh
Publication of CN109118609A publication Critical patent/CN109118609A/zh
Priority to US16/727,110 priority patent/US20200140118A1/en
Application granted granted Critical
Publication of CN109118609B publication Critical patent/CN109118609B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0841Registering performance data
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64DEQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENTS OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
    • B64D45/00Aircraft indicators or protectors not otherwise provided for
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1734Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0841Registering performance data
    • G07C5/085Registering performance data using electronic data carriers
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0841Registering performance data
    • G07C5/085Registering performance data using electronic data carriers
    • G07C5/0858Registering performance data using electronic data carriers wherein the data carrier is removable
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G5/00Traffic control systems for aircraft, e.g. air-traffic control [ATC]
    • G08G5/003Flight plan management
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64DEQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENTS OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
    • B64D45/00Aircraft indicators or protectors not otherwise provided for
    • B64D2045/0065Black boxes, devices automatically broadcasting distress signals
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64DEQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENTS OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
    • B64D43/00Arrangements or adaptations of instruments
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64UUNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
    • B64U2201/00UAVs characterised by their flight controls
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/221Parsing markup language streams

Abstract

本发明涉及一种无人机飞行日志记录方法、装置、存储介质和计算机设备。生成日志消息,将日志消息存入消息存储区中,缓存区获取消息存储区的日志消息。当缓存区中缓存的日志消息满足以下任一条件时,将缓存区中缓存的日志消息写入到存储卡中。条件包括:缓存区中缓存的日志消息所占存储容量达到容量阈值或缓存区中缓存的日志消息的次数达到次数阈值。每一条日志消息独立产生,且产生一条日志消息就将该日志消息写入缓存区,事件触发机制,这样实时性较好,有效降低漏掉日志消息的概率。及时同步为缓存区腾出存储空间,能够有效避免缓存区存储空间存满后日志消息不能及时写入而导致日志消息丢失的问题。

Description

无人机飞行日志记录方法、装置、存储介质和计算机设备
技术领域
本发明涉及无人机技术领域,特别是涉及一种无人机飞行日志记录方法、装置、存储介质和计算机设备。
背景技术
无人机飞行日志一般记录了无人机飞行时的各项飞行数据,包括飞行姿态、飞行轨迹、传感器监测数据、飞行速度、飞行高度、航向等。飞行日志在需要对无人机进行飞行测试、数据分析、轨迹监测时有重大作用,是无人机系统必不可少的组成部分。目前的无人机飞行日志记录方法都存在着一些缺陷,比如因SD卡写入数据慢而导致的数据丢失、日志记录不便于数据分析、缺少对日志记录内容的验证等,因此有必要提供一种能够克服前述问题的飞行日志记录方法。
发明内容
基于此,有必要针对上述技术问题,提供一种能够有效避免无人机飞行日志数据丢失的无人机飞行日志记录方法、装置、存储介质和计算机设备。
一种无人机飞行日志记录方法,所述方法包括:
生成日志消息;
将所述日志消息存入消息存储区中;
缓存区获取所述消息存储区的日志消息;
当所述缓存区中缓存的所述日志消息满足以下任一条件时,将所述缓存区中缓存的所述日志消息写入到存储卡中:
所述缓存区中缓存的所述日志消息所占存储容量达到容量阈值;或
所述缓存区中缓存的所述日志消息的次数达到次数阈值。
在其中一个实施例中,所述日志消息包括:格式部分、标记部分和消息体;
所述消息体包含消息头部分、消息标识部分、消息长度部分、消息内容部分和消息校验部分,所述消息标识部分用于记录所述日志消息的类别,所述消息校验部分用于对所述日志消息进行校验;
所述格式部分用于定义所述消息内容部分的格式;
所述标记部分用于区分所述日志消息。
在其中一个实施例中,所述标记部分采用UTC(Coordinated Universal Time,世界标准时间)对所述日志消息进行区分,或采用递增的日志文件名称对所述日志消息进行区分。
在其中一个实施例中,该方法还包括,对所述消息体进行解析。
在其中一个实施例中,对所述消息体进行解析,包括:
对所述日志消息的消息体的消息头部分进行校验;
若校验通过,则获取所述消息体中的消息标识部分、消息长度部分和消息内容部分和消息校验部分;
根据所述消息校验部分对所述消息内容部分进行校验,若校验通过,则所述消息体解析成功。
在其中一个实施例中,所述消息头部分包括两个同步字。
在其中一个实施例中,对所述消息内容部分进行校验采用的是CRC校验。
一种计算机设备,所述计算机设备包括存储器,处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述所述的方法。
一种无人机飞行日志记录装置,所述装置包括:
日志消息生成模块,用于生成日志消息;
存储区,用于存储所述日志消息生成模块生成的所述日志消息;
缓存区,用于提取所述存储区中最新的所述日志消息;
存储卡写入模块,用于当所述缓存区中缓存的所述日志消息满足以下任一条件时,将所述缓存区中缓存的所述日志消息写入到存储卡中:所述缓存区中缓存的所述日志消息所占存储容量达到容量阈值;或所述缓存区中缓存的所述日志消息的次数达到次数阈值。
在其中一个实施例中,所述日志消息包括:格式部分、标记部分和消息体;
所述消息体包含消息头部分、消息标识部分、消息长度部分、消息内容部分和消息校验部分,所述消息标识部分用于记录所述日志消息的类别,所述消息校验部分用于对所述日志消息进行校验;
所述格式部分用于定义所述消息内容部分的格式;
所述标记部分用于区分所述日志消息。
在其中一个实施例中,所述标记部分采用UTC(Coordinated Universal Time,世界标准时间)对所述日志消息进行区分,或采用递增的日志文件名称对所述日志消息进行区分。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
生成日志消息;
将所述日志消息存入存储区中;
缓存区获取存储区中的所述日志消息;
当所述缓存区中缓存的所述日志消息满足以下任一条件时,将所述缓存区中缓存的所述日志消息写入到存储卡中:
所述缓存区中缓存的所述日志消息所占存储容量达到容量阈值;或
所述缓存区中缓存的所述日志消息的次数达到次数阈值。
本发明的每一条日志消息均独立产生,当缓存区中缓存的日志消息满足任一条件时,即满足缓存的日志消息所占存储容量达到容量阈值或缓存的日志消息的次数达到次数阈值时,就将缓存区中缓存的日志消息写入到存储卡中。写入条件采用这种事件触发机制,日志消息记录的实时性较好,能够避免因缓存区存储空间不足导致的因日志消息不能及时写入造成的日志消息丢失,从而有效降低了日志消息丢失的概率。
附图说明
图1为本发明一个实施例中无人机飞行日志记录方法的原理图;
图2为本发明一个实施例中无人机飞行日志记录方法的流程图;
图3为本发明一个实施例中无人机的日志消息的结构示意图;
图4为图3中消息体的结构示意图;
图5为本发明一个实施例中无人机飞行日志记录方法的流程图;
图6为本发明一个实施例中无人机飞行日志记录方法的流程图;
图7为本发明一个实施例中无人机飞行日志的解析流程图;
图8为本发明一个实施例中无人机飞行日志记录装置的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似改进,因此本发明不受下面公开的具体实施的限制。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
图1为本发明一个实施例中无人机飞行日志记录方法的原理图,请参考图1所示,无人机在飞行过程中会产生飞行日志,飞行日志包括一条一条具体的日志消息Message简称MSG。每生成一条日志消息,就将日志消息写入到存储区中102中。缓存区(buffer,简称BUF)104提取存储区102中最新的日志消息,当缓存区104中缓存的日志消息满足写入条件时,缓存区104中缓存的日志消息就会被写入到存储卡106中,该存储卡106优选为SD卡(Secure Digital Memory Card,安全数码卡)。
如图2所示,在本发明的一实施例提供了一种无人机飞行日志记录方法,包括:
步骤210,生成日志消息。
无人机在飞行过程中会产生用于记录无人机飞行时的各项飞行数据的飞行日志,飞行日志包括一条一条具体的日志消息。这些飞行数据包括飞行姿态、飞行轨迹、传感器监测数据、飞行速度、飞行高度、航向及电池信息等。飞行日志消息也可以由无人机的飞控芯片或者其他芯片生成。
步骤220,将生成的日志消息存入存储区102中;存储区102可以是内存中单独开辟出来的专门用于存储日志消息的一片区域,也可以是外接的存储设备。
因此,生成的所有日志消息都会先存入存储区102中,这样能够避免生成的日志消息不断地进入缓存区104,导致缓存区104处理速度变慢而造成飞行数据丢失。
步骤230,缓存区104获取存储区102中的日志消息。
在本发明一种可选的实施例中,缓存区104获取的是存储区102中最新的日志消息,且这种获取可以是主动获取也可是被动获取。具体来说,当存储区102中有最新的日志消息时,缓存区104会主动提取存储区102中最新的日志消息。或者是,当存储区102中有最新的日志消息时,存储区102依据缓存区104当前处理日志消息的能力将最新的日志消息推送给缓存区104。
步骤240,当缓存区中缓存的日志消息满足以下任一条件时,将缓存区中缓存的日志消息写入到存储卡中。条件包括:缓存区中缓存的日志消息所占存储容量达到容量阈值或缓存区中缓存的日志消息的次数达到次数阈值。
当缓存区中缓存的日志消息所占存储容量达到缓存区总容量的一定比例时,示例性的,达到缓存区总容量的三分之二时,则就将缓存区中已经缓存的日志消息写入到存储卡中。或者,当缓存区缓存日志消息的次数达到次数阈值时,例如,缓存日志消息的次数达到了100次,这样就将缓存区中已经缓存的日志消息写入到存储卡中。
存储卡包括CF(Compact Flash)卡,SM(Smart Media)卡,固态软盘卡,还有SD卡等。优选的,本发明实施例中可用SD卡用于数据存储。
SD卡(Secure Digital Memory Card)中文翻译为安全数码卡,是一种基于半导体快闪记忆器的新一代记忆设备,由于它体积小、数据传输速度快、可热插拔等优良的特性,它被广泛地于便携式装置上使用,它被广泛地于便携式装置上使用,例如数码相机、个人数码助理(PDA)和多媒体播放器等。
本实施例中,每一条日志消息独立产生,生成的日志消息先被存入存储区,避免缓存区处理速度变慢而造成的飞行数据丢失,且产生的日志消息只要满足其中任一条件就将该日志消息写入存储卡,这种事件触发机制,实时性较好,能够有效降低丢失日志消息的概率。同时,也能够及时为缓存区腾出存储空间,能够有效避免因缓存区处理能力不足而导致的日志消息丢失的问题。
如图3所示,在本发明提供的一实施例中,日志消息包括:格式部分、标记部分和消息体。
标记部分用于区分产生的日志消息。在本发明的一实施例中,对每条日志消息记录该日志消息产生的UTC(Coordinated Universal Time,世界标准时间)时间,用UTC时间区分不同时间产生的日志消息,便于后续对日志消息进行数据分析。或者,采用递增的日志文件名称对日志消息进行区分,例如采用LOG1,LOG2….LOGN对日志消息进行区分。也可以同时用两种方式对日志消息进行区分,防止因GPS失效,无法记录UTC时间。
请参见图4,消息体包含消息头部分(header1、header2)、消息标识部分(Msg_ID)、消息长度部分(LEN)、消息内容部分(Payload)和消息检验部分(CRC)。
消息头部分采用双头结构,及双header结构—header1和header2。消息头部分用于标示每条日志消息起始的位置,采用双头结构资源消耗较小,能够提升后续对日志消息进行解析的辨识度。
消息标识部分即MessageID,用于记录日志消息的类别,例如MessageID(简称Msg_ID)为battery(电池),则表示这条日志消息是对电池信息进行记录,日志消息的类别是电池。
消息长度部分(LEN),用于记录日志消息的长度。
消息内容部分(Payload)指实际的飞行真实数据,比如说GPS数据、位置、状态等。
消息校验部分用于对日志消息进行检验,一般多采用CRC(Cyclic RedundancyCheck,循环冗余校验)对日志消息的有效性进行校验。CRC校验是数据通信领域中最常用的一种差错校验码,其特征是信息字段和校验字段的长度可以任意选定。
格式部分用于定义消息内容的格式,且通过该格式部分可对消息内容的格式进行修改或重新定义。格式部分可对消息体中的消息内容部分具体记录哪些内容进行自定义,如Msg_ID为电池则可自定义消息内容部分记录电池的电量信息、寿命信息,也可自定义只记录电量信息。消息内容部分根据格式部分定义的数据结构记录日志消息。
例如,格式部分定义一条关于电池的日志消息的格式,包括当前电量、当前电压、当前电流。那么消息内容部分就对应记录这些信息。当然格式部分也支持对消息内容部分的格式进行自定义,从而记录电池的其他信息。下面就是一条关于电池的日志消息的格式部分的代码,定义消息体的消息内容部分的格式:
其中,Capacity指电池的当前电量,Voltage指电池的当前电压,Current指电池的当前电流,Timestamp_ms指时间戳,记录当前时间。
在本发明提供的实施例中,日志消息统一都包含格式部分、标记部分和消息体三部分,且格式部分可对消息体中的消息内容部分的格式进行自定义、对自定义格式进行修改以及重新定义。因每一条日志消息都包含了上述三个部分,因此都能够按照统一的解析方法对日志消息的解析,统一标准之后再进行解析就能够提高效率。
基于此,如图5所示,该方法还可以包括:
步骤250,对消息体进行解析的步骤。如图6所示,在本发明提供的一实施例中,该步骤250还可进一步包括以下步骤:
步骤252,对日志消息中消息体的消息头部分进行校验。
请一并参阅图7,为本发明实施例中对消息体进行解析的流程图。消息头部分为双头结构,例如,header1为163、header2为169,163、169为同步字,对消息头进行校验是为了找出每一条日志消息的开头,是每一帧数据的开始。
步骤254,若校验通过,则获取日志消息中的消息标识部分、消息长度部分、消息内容部分和消息校验部分。
若同步字校验失败,则返回重新对消息头部分进行同步字校验。
步骤256,根据消息校验部分对消息内容部分进行校验,若校验通过,则消息体解析成功。
根据消息校验部分对消息体中的Payload中的内容进行CRC校验,若CRC校验通过,则日志消息解析成功。说明该日志消息是完整的,有效的,可以用该日志消息进行后续的消息分析。增加CRC校验,解决了传统的飞行日志记录方法缺少对日志消息的完整性和有效性进行验证的问题。
在本实施例中,对存储卡中存储的每一条日志消息进行解析,从而筛选出完整的、有效的日志消息,丢弃无效的日志消息。这样便于后续对筛选出的日志消息进行数据分析,分析无人机的飞行姿态、飞行轨迹、传感器监测数据、飞行速度、飞行高度、航向及电池信息等。
如图8所示,本发明的一实施例还提供了一种无人机飞行日志记录装置800,该装置包括:日志消息生成模块810和存储卡写入模块820。
日志消息生成模块810,用于生成日志消息;
存储模块820,用于存储日志消息生成模块生成的日志消息;
缓存模块830,用于获取存储区中最新的日志消息;
存储卡写入模块840,用于当缓存区中缓存的日志消息满足以下任一条件时,将缓存区中缓存的日志消息写入到存储卡中,写入条件包括:缓存区中缓存的日志消息所占存储容量达到容量阈值或缓存区中缓存的日志消息的次数达到次数阈值。
在一个实施例中,日志消息包括:格式部分、标记部分和消息体。
格式部分用于定义消息内容部分的格式,标记部分用于区分日志消息。消息体包含消息头部分、消息标识部分、消息长度部分、消息内容部分和消息检验部分,消息标识部分用于记录日志消息的类别,消息校验部分用于对日志消息进行检验。
在本发明的一实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以下步骤:
生成日志消息;
将日志消息存入存储区中;
缓存区获取存储区中的日志消息;当缓存区中缓存的日志消息满足以下任一条件时,将缓存区中缓存的日志消息写入到存储卡中;条件包括:缓存区中缓存的日志消息所占存储容量达到容量阈值;或缓存区中缓存的日志消息的次数达到次数阈值。
在一个实施例中,上述程序被处理器执行时还实现以下步骤:格式部分用于定义消息内容部分的格式。标记部分用于区分日志消息。消息体包含消息头部分、消息标识部分、消息长度部分、消息内容部分和消息校验部分,消息标识部分用于记录日志消息的类别,消息校验部分用于对日志消息进行校验。
在一个实施例中,上述程序被处理器执行时还实现以下步骤:标记部分采用UTC(Coordinated Universal Time)对日志消息进行区分,或采用递增的日志文件名称对日志消息进行区分。
在一个实施例中,上述程序被处理器执行时还实现以下步骤:对消息体进行解析。
在一个实施例中,上述程序被处理器执行时还实现以下步骤:对消息体进行解析,包括:对日志消息的消息体的消息头部分进行校验。若校验通过,则获取消息体中的消息标识部分、消息长度部分和消息内容部分和消息校验部分。根据消息校验部分对消息内容部分进行校验,若校验通过,则消息体解析成功。
在一个实施例中,上述程序被处理器执行时还实现以下步骤:消息头部分包括两个同步字。
在一个实施例中,上述程序被处理器执行时还实现以下步骤:对消息内容部分进行校验采用的是CRC校验。
本发明的一实施例还提供了一种计算机设备,该计算机设备包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
生成日志消息;
将日志消息存入存储区中;
缓存区获取存储区中的日志消息;当缓存区中缓存的日志消息满足以下任一写入条件时,将缓存区中缓存的日志消息写入到存储卡中;写入条件包括:缓存区中缓存的日志消息所占存储容量达到容量阈值;或缓存区中缓存的日志消息的次数达到次数阈值。
在一个实施例中,上述处理器执行计算机程序时还实现以下步骤:格式部分用于定义消息内容部分的格式。标记部分用于区分日志消息。消息体包含消息头部分、消息标识部分、消息长度部分、消息内容部分和消息校验部分,消息标识部分用于记录日志消息的类别,消息校验部分用于对日志消息进行校验。
在一个实施例中,上述程序被处理器执行时还实现以下步骤:标记部分采用UTC(Coordinated Universal Time)对日志消息进行区分,或采用递增的日志文件名称对日志消息进行区分。
在一个实施例中,上述处理器执行计算机程序时还实现以下步骤:对消息体进行解析。
在一个实施例中,上述处理器执行计算机程序时还实现以下步骤:对消息体进行解析,包括:对日志消息的消息体的消息头部分进行校验。若校验通过,则获取消息体中的消息标识部分、消息长度部分和消息内容部分和消息校验部分。根据消息校验部分对消息内容部分进行校验,若校验通过,则消息体解析成功。
在一个实施例中,上述处理器执行计算机程序时还实现以下步骤:消息头部分包括两个同步字。
在一个实施例中,上述处理器执行计算机程序时还实现以下步骤:对消息内容部分进行校验采用的是CRC校验。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (12)

1.一种无人机飞行日志记录方法,所述方法包括:
生成日志消息;
将所述日志消息存入消息存储区中;
缓存区获取所述消息存储区的日志消息;
当所述缓存区中缓存的所述日志消息满足以下任一条件时,将所述缓存区中缓存的所述日志消息写入到存储卡中:
所述缓存区中缓存的所述日志消息所占存储容量达到容量阈值;或
所述缓存区中缓存的所述日志消息的次数达到次数阈值。
2.根据权利要求1所述的方法,其特征在于,所述日志消息包括:格式部分、标记部分和消息体;
所述消息体包含消息头部分、消息标识部分、消息长度部分、消息内容部分和消息校验部分,所述消息标识部分用于记录所述日志消息的类别,所述消息校验部分用于对所述日志消息进行校验;
所述格式部分用于定义所述消息内容部分的格式;
所述标记部分用于区分所述日志消息。
3.根据权利要求2所述的方法,其特征在于,所述标记部分采用UTC(CoordinatedUniversal Time,世界标准时间)对所述日志消息进行区分,或采用递增的日志文件名称对所述日志消息进行区分。
4.根据权利要求2所述的方法,其特征在于,该方法还包括:
对所述消息体进行解析。
5.根据权利要求4所述的方法,其特征在于,所述对所述消息体进行解析,包括:
对所述日志消息的消息体的消息头部分进行校验;
若校验通过,则获取所述消息体中的消息标识部分、消息长度部分和消息内容部分和消息校验部分;
根据所述消息校验部分对所述消息内容部分进行校验,若校验通过,则所述消息体解析成功。
6.根据权利要求5所述的方法,其特征在于,所述消息头部分包括两个同步字。
7.根据权利要求5所述的方法,其特征在于,对所述消息内容部分进行校验采用的是CRC校验。
8.一种计算机设备,所述计算机设备包括存储器,处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-7所述的方法。
9.一种无人机飞行日志记录装置,其特征在于,所述装置包括:
日志消息生成模块,用于生成日志消息;
存储模块,用于存储所述日志消息生成模块生成的所述日志消息;
缓存模块,用于提取所述存储区中最新的所述日志消息;
存储卡写入模块,用于当所述缓存区中缓存的所述日志消息满足以下任一条件时,将所述缓存区中缓存的所述日志消息写入到存储卡中:
所述缓存区中缓存的所述日志消息所占存储容量达到容量阈值;或
所述缓存区中缓存的所述日志消息的次数达到次数阈值。
10.根据权利要求9所述的装置,其特征在于,所述日志消息包括:格式部分、标记部分和消息体;
所述消息体包含消息头部分、消息标识部分、消息长度部分、消息内容部分和消息校验部分,所述消息标识部分用于记录所述日志消息的类别,所述消息校验部分用于对所述日志消息进行校验;
所述格式部分用于定义所述消息内容部分的格式;
所述标记部分用于区分所述日志消息。
11.根据权利要求10所述的方法,其特征在于,所述标记部分采用UTC(CoordinatedUniversal Time,世界标准时间)对所述日志消息进行区分,或采用递增的日志文件名称对所述日志消息进行区分。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现以下步骤:
生成日志消息;
将所述日志消息存入存储区中;
缓存区获取存储区中的所述日志消息;
当所述缓存区中缓存的所述日志消息满足以下任一条件时,将所述缓存区中缓存的所述日志消息写入到存储卡中:
所述缓存区中缓存的所述日志消息所占存储容量达到容量阈值;或
所述缓存区中缓存的所述日志消息的次数达到次数阈值。
CN201710495876.1A 2017-06-26 2017-06-26 无人机飞行日志记录方法、装置、存储介质和计算机设备 Active CN109118609B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201710495876.1A CN109118609B (zh) 2017-06-26 2017-06-26 无人机飞行日志记录方法、装置、存储介质和计算机设备
PCT/CN2018/082216 WO2019001076A1 (zh) 2017-06-26 2018-04-08 无人机飞行日志记录方法、装置、存储介质和计算机设备
US16/727,110 US20200140118A1 (en) 2017-06-26 2019-12-26 Method and apparatus for recording flight log of unmanned aerial vehicle, storage medium and computer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710495876.1A CN109118609B (zh) 2017-06-26 2017-06-26 无人机飞行日志记录方法、装置、存储介质和计算机设备

Publications (2)

Publication Number Publication Date
CN109118609A true CN109118609A (zh) 2019-01-01
CN109118609B CN109118609B (zh) 2020-11-13

Family

ID=64740985

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710495876.1A Active CN109118609B (zh) 2017-06-26 2017-06-26 无人机飞行日志记录方法、装置、存储介质和计算机设备

Country Status (3)

Country Link
US (1) US20200140118A1 (zh)
CN (1) CN109118609B (zh)
WO (1) WO2019001076A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110727608A (zh) * 2019-09-03 2020-01-24 深圳市道通智能航空技术有限公司 一种日志数据的存储方法、电子设备及存储介质
CN112116729A (zh) * 2020-09-09 2020-12-22 天津津航计算技术研究所 一种基于VxWorks系统的机载数据采集方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109976361B (zh) * 2019-03-14 2022-03-25 天津大学 面向事件触发的四旋翼无人机姿态控制方法
CN113763596B (zh) * 2021-09-06 2023-03-24 天津津航计算技术研究所 一种机载异构网络数据记录方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102130736A (zh) * 2011-03-18 2011-07-20 华为技术有限公司 处理时钟信息的方法、装置和系统
CN102737416A (zh) * 2012-06-08 2012-10-17 清华大学 无人飞行器的数据记录仪
CN103019961A (zh) * 2012-12-19 2013-04-03 创新科存储技术(深圳)有限公司 缓存刷写处理方法和装置
CN103514112A (zh) * 2012-06-29 2014-01-15 浙江大华技术股份有限公司 一种数据存储方法及系统
US20140039747A1 (en) * 2011-05-13 2014-02-06 Qualcomm Incorporated Systems and methods for vehicle monitoring with processing interruption tolerance
CN104090987A (zh) * 2014-07-28 2014-10-08 华中科技大学 一种历史数据存储及索引方法
CN104732611A (zh) * 2015-01-23 2015-06-24 广州快飞计算机科技有限公司 基于飞行控制器的日志记录及读取方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164511B (zh) * 2013-02-21 2017-02-08 烽火通信科技股份有限公司 一种存储事件日志自动过滤重复抖动数据的方法
US10553120B2 (en) * 2014-09-15 2020-02-04 L3 Technologies, Inc. Fail safe aircraft monitoring and tracking
CN106296872B (zh) * 2016-08-05 2019-03-22 湖北航天技术研究院总体设计所 飞行试验数据记录装置及记录和读取试验数据的方法
CN106483966A (zh) * 2016-10-08 2017-03-08 江苏润桐数据服务有限公司 无人机数据采集系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102130736A (zh) * 2011-03-18 2011-07-20 华为技术有限公司 处理时钟信息的方法、装置和系统
US20140039747A1 (en) * 2011-05-13 2014-02-06 Qualcomm Incorporated Systems and methods for vehicle monitoring with processing interruption tolerance
CN102737416A (zh) * 2012-06-08 2012-10-17 清华大学 无人飞行器的数据记录仪
CN103514112A (zh) * 2012-06-29 2014-01-15 浙江大华技术股份有限公司 一种数据存储方法及系统
CN103019961A (zh) * 2012-12-19 2013-04-03 创新科存储技术(深圳)有限公司 缓存刷写处理方法和装置
CN104090987A (zh) * 2014-07-28 2014-10-08 华中科技大学 一种历史数据存储及索引方法
CN104732611A (zh) * 2015-01-23 2015-06-24 广州快飞计算机科技有限公司 基于飞行控制器的日志记录及读取方法和装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110727608A (zh) * 2019-09-03 2020-01-24 深圳市道通智能航空技术有限公司 一种日志数据的存储方法、电子设备及存储介质
WO2021043212A1 (zh) * 2019-09-03 2021-03-11 深圳市道通智能航空技术有限公司 一种日志数据的存储方法、电子设备及存储介质
CN112116729A (zh) * 2020-09-09 2020-12-22 天津津航计算技术研究所 一种基于VxWorks系统的机载数据采集方法
CN112116729B (zh) * 2020-09-09 2022-07-26 天津津航计算技术研究所 一种基于VxWorks系统的机载数据采集方法

Also Published As

Publication number Publication date
US20200140118A1 (en) 2020-05-07
CN109118609B (zh) 2020-11-13
WO2019001076A1 (zh) 2019-01-03

Similar Documents

Publication Publication Date Title
CN109118609A (zh) 无人机飞行日志记录方法、装置、存储介质和计算机设备
US7742414B1 (en) Lightweight indexing for fast retrieval of data from a flow-level compressed packet trace
CN106383852A (zh) 基于Docker容器的日志获取方法和装置
CN109947596A (zh) Pcie设备故障系统宕机处理方法、装置及相关组件
CN102629235B (zh) 一种提高ddr存储器读写速率的方法
Tsai et al. A fast linear shape from shading
CN103885721B (zh) 一种在键‑值系统中的数据存储或读取方法、装置
CN106021052B (zh) 一种gjb289a总线测试系统及测试方法
CN104461774B (zh) 异步复制方法、装置与系统
CN103558997B (zh) 数字平调系统的数据记录与u盘导出方法
CN109426496A (zh) 程序日志写入文件的方法、存储介质、电子设备及系统
CN110445730A (zh) 基于WinPcap的网络数据实时采集存储方法和装置
CN103729269A (zh) 一种基于云架构的网络考试数据双缓存方法
CN107844447B (zh) 多通道串行总线高速数据采集处理系统及方法
CN111930708B (zh) 基于Ceph对象存储的对象标签的扩展系统及方法
CN108880775A (zh) 一种基于ClassB模式的唤醒方法及装置
CN108615270A (zh) 基于arinc717协议的飞行维护数据记录方法
WO2019228446A1 (zh) 无人机电池信息记录方法、装置及存储介质
CN106844172A (zh) 一种高效定位系统故障的日志记录方法及系统
CN116048866A (zh) 基于实时流计算引擎的数据故障检测方法、系统及介质
CN108566377A (zh) 一种攻击事件取证方法、装置及存储介质
CN103678181A (zh) 一种缓存数据的保护方法
CN103365705B (zh) 消息队列处理方法和装置
CN104504349B (zh) 一种录像数据安全存储装置及方法
CN204740640U (zh) 基于sd卡的飞行器数据记录装置

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
CP01 Change in the name or title of a patent holder

Address after: 518000 9th floor, building B1, Zhiyuan, 1001 Xueyuan Avenue, Xili street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen daotong intelligent Aviation Technology Co.,Ltd.

Address before: 518000 9th floor, building B1, Zhiyuan, 1001 Xueyuan Avenue, Xili street, Nanshan District, Shenzhen City, Guangdong Province

Patentee before: AUTEL ROBOTICS Co.,Ltd.

CP01 Change in the name or title of a patent holder