CN114356431B - 基于目标飞行试验的多传感器数据自适应实时处理方法 - Google Patents
基于目标飞行试验的多传感器数据自适应实时处理方法 Download PDFInfo
- Publication number
- CN114356431B CN114356431B CN202111189889.9A CN202111189889A CN114356431B CN 114356431 B CN114356431 B CN 114356431B CN 202111189889 A CN202111189889 A CN 202111189889A CN 114356431 B CN114356431 B CN 114356431B
- Authority
- CN
- China
- Prior art keywords
- sensor
- data
- decoding
- module
- shared memory
- 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
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Testing Or Calibration Of Command Recording Devices (AREA)
- Arrangements For Transmission Of Measured Signals (AREA)
Abstract
本发明属于多传感器测量领域,公开一种多传感器数据自适应实时处理方法。该方法能够使多传感器实时数据处理系统在运行中自动识别每个传感器的数据,并根据实时接收到数据自动获取处理该数据所需的数据解码模块和数据处理模块,再将这些模块自动加载到内存中运行,完成对传感器的测量数据的接收解码和实时处理。整个过程不但不需要人工干预,而且能够自动适应不同目标飞行实验下的不同传感器组合,使多传感器实时数据处理系统能够无需在试验前进行代码修改和系统配置,直接完成目标飞行实验过程中的实时数据处理。本发明给出的系统扩展方法,使扩展后的多传感器实时数据处理系统仍无需人工干预,即可完成对新传感器数据的自动识别与处理。
Description
技术领域
本发明属于多传感器测量领域,涉及一种基于目标飞行试验的多传感器数据自适应实时处理方法。
背景技术
目标飞行试验是利用多个地面、空中或太空测量传感器,对目标飞行全程进行测量的过程。在此过程中,由于传感器自身测量范围、测量属性和测量机制的不同,多个传感器分布在不同的测量区域。另外,由于不同目标其飞行性质不尽相同,具体表现在飞行高度、速度、距离等方面,因此对其实施测量的传感器组合与分布也不相同。不同传感器的测量数据一般使用不同的处理方法,这就使得用于位于数据中心的多传感器实时数据处理系统,需要在每次目标飞行试验前,根据实际参与的测量传感器情况,选择对应的数据处理方法与模块。在目标飞行试验过程中,该多传感器实时数据处理系统实时接收每个传感器的测量数据,对其进行实时处理后将处理结果一方面输出至其它所需系统,另一方面存储至磁盘上用于事后结果分析。
传感器实时数据处理过程主要分为两个部分:一是传感器测量数据接收与解码,另一个是解码数据实时处理。传感器测量数据接收与解码,是对传感器测量数据结果通过网络进行实时接收,接收到的数据是二进制编码的,不同传感器的编码方式也不同,需要选择对应的解码方法将其解码为十进制数据。解码数据实时处理,是对已解码的十进制数据进行处理,不同的传感器的处理的过程与方法也不相同。
由于每次参与目标飞行试验测量的传感器组合不一定相同,因此需要在目标飞行试验前将多传感器实时数据处理系统中的处理方法与模块进行调整,使其能够对实际参与传感器生成的测量结果数据进行实时处理。目前,这种调整过程主要依赖人工通过修改代码或系统配置文件完成。这种方式虽然被长期使用,但是存在以下4个方面的问题:
(1)影响实时数据处理系统的可靠性
无论是采用人工直接修改代码,还算是修改系统配置文件,都增加了引入错误的可能性。一旦引入错误,不但会造成实时数据处理出错,还有可能因没有获得重要的实时处理结果,而导致试验需要重做,从而导致浪费大量的人力、物力、财力和宝贵的时间,甚至影响到该飞行器的研制进度。
(2)增加实时数据处理系统的准备时间
针对飞行试验中使用的传感器,人工修改完实时处理系统后,需要进行大量的测试以保证修改后的系统不出现问题。这就需要一定的准备时间,少则几天,多则几周。特别是当测试过程中发现错误需要进行排查时,就需要更长的时间。但是这种方式只能尽可能减少系统出问题的概率,因为实时系统的测试源与目标实际飞行过程中,各传感器获取的实时数据之前存在一定的差别,从而使得测试过程很难做到绝对的充分。
(3)增加数据处理人员的系统操作难度
数据处理人员不但需要掌握多传感器实时数据处理系统的操作,还需要掌握不同传感器处理方法模块的配置方式或者低层代码的修改方法,并需要进一步掌握系统的测试和出错时的错误定位及修改等。可以说,该系统的数据处理人员需要掌握的技能几乎与开发人员等同,而实际上也是由系统开发人员充当数据处理人员的角色的,从而大幅增加数据处理人员的培养难度。
(4)难以对实时处理系统进行扩展
当测量传感器数量增加时,需要在现有多传感器实时数据处理系统中增加新传感器的处理方法。这同时也意味着参与目标飞行试验的传感器数量进一步增加,从而导致试验前多传感器实时数据处理系统的配置量和复杂性也随之增加,并由此导致配置出错概率和测试准备时间的大幅增加。因此,这种方式非常不利于该系统的扩展。
发明内容
针对上述问题,本发明提供了一种基于目标飞行试验的多传感器数据自适应实时处理方法。该方法能够使多传感器实时数据处理系统在运行中自动识别每个传感器的数据,并根据实时接收到数据自动获取处理该数据所需的数据解码模块和数据处理模块,再将这些模块自动加载到内存中运行,完成对传感器的测量数据的接收解码和实时处理。整个过程不但不需要人工干预,而且能够自动适应不同目标飞行实验下的不同传感器组合,使多传感器实时数据处理系统能够无需在试验前进行代码修改和系统配置,直接完成目标飞行实验过程中的实时数据处理。此外,本发明还给出了多传感器实时数据处理系统的一种简单易行的扩展方法,扩展后的系统仍无需人工干预,即可完成对新传感器数据的自动识别与处理。
为实现上述目的,本发明的技术方案如下:
一种多传感器测量数据自适应实时处理方法,包括如下步骤:
步骤一:为每个传感器建立一个全局唯一的ID号,在服务器中建立一个映射关系表,该表记录的内容有传感器ID号、传感器数据标识、传感器数据报文解码模块URL地址和传感器解码数据处理模块URL地址;在服务器中建立一个传感器数据报文解码模块共享内存表,该表记录的主要内容为传感器ID号和传感器数据报文解码模块共享内存标识;在服务器中建立一个传感器解码数据处理模块共享内存表,该表记录的主要内容为传感器ID号和传感器解码数据处理模块共享内存标识;由此建立了该传感器ID号与传感器数据标识、传感器数据报文解码模块磁盘文件、传感器数据报文解码模块共享内存标识、传感器解码数据处理模块磁盘文件和传感器解码数据处理模块共享内存标识的映射关系;
步骤二:实时接收多个传感器的数据报文,将其按照接收顺序存入公共数据报文动态缓存区中,持续执行上述过程,直至全部传感器数据接收完毕或多传感器实时数据处理系统停止;
步骤三:多传感器实时数据处理系统的传感器数据报文头解码模块从公共数据报文动态缓存区中,按照顺序取出传感器数据报文,若该缓存区此刻没有数据,则等待10ms后再次尝试此过程,直至取到数据报文;
步骤四:传感器数据报文头解码模块对取出的传感器数据报文的报文头进行解码,获取该数据报文的传感器标识,即传感器数据报文头解码模块通过查询映射关系表,将获取其对应的传感器ID号,然后将传感器数据报文及其对应的传感器ID号发送至传感器数据报文传送模块;
步骤五:传感器数据报文传送模块利用传感器数据报文对应的传感器ID号,在传感器数据报文解码模块共享内存表中获取该模块的共享内存标识,通过该标识进一步获取其对应模块的共享内存,若该共享内存获取失败,则转步骤六,否则转步骤七;
步骤六:通过传感器数据报文对应的传感器ID号,多传感器数据实时数据处理系统的动态加载管理模块在映射关系表中查找出对应传感器数据报文解码模块的URL地址,利用该地址在服务器上获取该模块在磁盘上的可执行程序文件,将其加载到内存中并运行,然后再转步骤五;
步骤七:传感器数据报文解码模块从其共享内存中取出传感器数据报文,对其进行解码,然后将解码数据结果及其对应的传感器ID号一起发送至服务器内的传感器解码数据传送模块;
步骤八:通过解码数据对应的传感器ID号,在传感器解码数据处理模块共享内存表中获取该模块的共享内存标识,通过该标识进一步获取其对应模块的共享内存,若该共享内存获取失败,则转步骤九,否则转步骤十;
步骤九:通过解码数据对应的传感器ID号,动态加载管理模块在映射关系表中查找出对应传感器数解码数据处理模块的URL地址,利用该地址在服务器上获取该模块在磁盘上的可执行程序文件,将其加载到内存中并运行,然后再转步骤八;
步骤十:传感器解码数据处理模块从其共享内存中取出解码数据,对其进行处理;
步骤十一:持续执行步骤二至步骤十,直至所有传感器测量数据全部实时处理完成,或者关闭多传感器实时数据处理系统。
进一步地,所述步骤一中,传感器全局唯一ID号使用非负整数进行表示,编号方法如下:
对于已经存在的服务器,从0开始编号,在服务器中使用32位整型进行存储;
若后续加入的新传感器,其该ID号只需在原有最大ID号上加1;
若传感器离开的情况,其编号不再被其它传感器占用。
进一步地,所述步骤一中,每个传感器的实时测量数据结果以二进制编码数据的形式发送至多传感器实时数据处理系统中进行处理,这种二进制编码数据被称为数据报文,一般由数据报文头和数据内容两部分组成。
进一步地,所述步骤二中,公共数据报文动态缓存区的数据结构用队列实现,新来的传感器数据报文用指针链接到队列尾部。
进一步地,所述步骤三中,数据报文头格式都是相同的,用于标识相关传感器、收发方和数据内容信息。
进一步地,所述步骤三中,所有传感器的数据报文编码与传输都遵循同一个协议,只要传输协议不发生改变,传感器数据报文头解码模块则无需修改。
进一步地,所述步骤七中,传感器数据报文与其解码数据结果对应同一个传感器ID号。
进一步地,所述步骤八中,传感器解码数据处理模块共享内存表中获取该模块的共享内存标识是事先指定好且全局唯一的。
一种多传感器实时数据处理系统扩展方法,该方法包括如下步骤:
(1)建立新传感器的ID号,向服务器中的映射关系表中添加传感器ID号、传感器数据标识;
(2)建立新传感器的数据报文解码模块,并向服务器中的映射关系表中添加传感器数据报文解码模块URL地址,以及向服务器中的传感器数据报文解码模块共享内存表中添加传感器ID号和传感器数据报文解码模块共享内存标识;如果该传感器可以共用现有传感器数据报文解码模块,则无需执行该步骤;
(3)建立新传感器的解码数据处理模块,并向服务器中的映射关系表中添加传感器解码数据处理模块URL地址,以及向服务器中的传感器的解码数据处理模块共享内存表中添加传感器ID号和传感器解码数据处理模块共享内存标识;如果该传感器可以共用现有的传感器解码数据处理模块,则无需执行该步骤;
(4)多传感器实时数据处理系统扩展完毕。
本发明的优点是:提供了一种基于目标飞行试验的多传感器数据自适应实时处理方法,解决了在目标飞行试验过程中,因不同目标的飞行实验需采用不同的传感器组合,导致多传感器实时数据处理系统在试验前,需要人工完成不同传感器处理方面的配置,从而导致系统在可靠性、准备时间、可扩展性和人员操作难度等方面的问题。此外,本发明还给出了多传感器实时数据处理系统的一种简单易行的扩展方法,扩展后的系统仍无需人工干预,即可完成对新传感器数据的自动识别与处理。
附图说明
图1映射关系图;
图2基于目标飞行试验的多传感器数据自适应实时处理方法流程示意图。
具体实施方式
下面本发明结合附图对本发明作进一步详细说明。
本方法的技术前提示是,所有传感器的处理过程可以在一个服务器/工作站/个人计算机中完成。因此,本方法不涉及分布式数据处理系统。
参见图2,本发明提供了一种多传感器测量数据自适应实时处理方法,包括如下步骤:
步骤一:为每个传感器建立一个全局唯一的ID号,并在此基础上建立该传感器ID号与传感器数据标识、传感器数据报文解码模块磁盘文件、传感器数据报文解码模块共享内存标识、传感器解码数据处理模块磁盘文件和传感器解码数据处理模块共享内存标识的映射关系。
映射关系如图1所示,下面将各映射关系的建立方法和实现方法进行说明:
1.1传感器全局唯一ID号建立;
传感器全局唯一ID号建立方法如下:
该ID号使用非负整数进行表示,编号原则有以下三条:
第一,从0开始,在服务器中使用32位整型进行存储;
第二,后续如果有新传感器加入,则该ID号只需在原有最大ID号上加1;
第三,若有传感器离开,为保持后续方法的一致性,其编号不再被其它传感器占用。
1.2传感器数据标识与传感器ID号的映射关系建立;
传感器数据标识与传感器ID号的映射关系建立方法:
传感器数据标识是传感器数据报文头中的一个二进制数据,用于标识产生该数据的传感器。每个传感器的实时测量数据结果,都以二进制编码数据的形式发送至多传感器实时数据处理系统中进行处理。这种二进制编码数据被称为数据报文,一般由数据报文头和数据内容两部分组成。数据报文头用于标识该传感器的每个测量结果的二进制编码数据。传感器数据报文头的格式与编码协议有关,一般情况下,遵循同一协议编码数据的报文头格式均相同。该标识与传感器ID号是一对一的映射关系,每个数据报文传感器数据标识唯一确定一个传感器ID号。
1.3传感器数据报文解码模块磁盘文件与传感器ID号的映射关系建立;
传感器数据报文解码模块磁盘文件与传感器ID号的映射关系建立方法:传感器数据报文解码模块主要用于将二进制传感器数据报文解码转换为十进制测量结果。这是一个一对多映射关系,数据报文格式相同的传感器使用相同的解码模块。因此,同一个解码模块可以对应多个传感器ID号。传感器数据解码模块在未加载到服务器运行前,以可执行程序文件的形式存放在服务器的磁盘中,每个文件有个唯一的URL地址,服务器可以通过该URL地址获取到。因此,该映射关系实际上是建立传感器ID号和传感器数据报文解码模块URL地址的对应关系。
1.4传感器数据报文解码模块共享内存标识与传感器ID号的映射关系建立;
传感器数据报文解码模块共享内存标识与传感器ID号的映射关系建立方法如下:
传感器数据报文解码模块共享内存是由传感器数据报文解码模块在运行时创建的,用于接收可供该模块解码的传感器数据报文。该共享内存事先设定一个全局唯一的共享内存标识,通过该标识其它模块可以向该传感器数据报文解码模块发送数据至其共享内存中。
该映射关系建立的目的,是将每个传感器报文数据发送至能够将其解码的传感器数据报文解码模块上。所有能够被一个传感器数据报文解码模块解码的传感器数据报文,其对应的传感器ID号都应对应到该传感器数据报文解码模块的共享内存标识上。因此,一个传感器数据报文解码模块共享内存标识与传感器ID号是一对多的关系。
1.5传感器解码数据处理模块磁盘文件与传感器ID号的映射关系建立;
传感器解码数据处理模块磁盘文件与传感器ID号的映射关系建立方法如下:
传感器解码数据处理模块主要用于处理解码后的传感器数据报文,这也是一个一对多的映射关系,同类型的传感器其处理过程也相同。传感器解码数据处理模块在未加载到服务器运行前,以可执行程序文件的形式存放在管理服务器集群的磁盘中,每个文件有个唯一的URL地址。同样,该映射关系在实现上是建立传感器ID号和传感器解码数据处理模块URL的对应关系。
1.6传感器数据处理解码模块共享内存标识与传感器ID号的映射关系建立;
传感器数据处理解码模块共享内存标识与传感器ID号的映射关系建立方法如下:
传感器解码数据处理模块共享内存是由传感器解码数据处理模块在运行时创建的,用于接收可供该模块处理的传感器解码数据。该共享内存事先设定一个全局唯一的共享内存标识,通过该标识其它模块可以向该传感器解码数据处理模块发送数据至其共享内存中。
该映射关系建立的目的,是将每个传感器解码数据发送至能够对其进行处理的传感器解码数据处理模块上。所有能够被一个传感器解码数据处理模块处理的传感器解码数据,其对应的传感器ID号都应对应到该传感器解码数据处理模块的共享内存标识上。因此,一个传感器解码数据处理模块共享内存标识与传感器ID号是一对多的关系。
1.7映射关系的实现方法
在服务器中建立一个映射关系表,该表记录的内容有传感器ID号、传感器数据标识、传感器数据报文解码模块URL地址和传感器解码数据处理模块URL地址。
传感器数据报文解码模块共享内存标识与传感器ID号的映射关系建立方法,是在服务器中建立一个传感器数据报文解码模块共享内存表,该表记录的主要内容为传感器ID号和传感器数据报文解码模块共享内存标识。
传感器解码数据处理模块共享内存标识与传感器ID号的映射关系建立方法,是在服务器中建立一个传感器解码数据处理模块共享内存表,该表记录的主要内容为传感器ID号和传感器解码数据处理模块共享内存标识。
步骤二:实时接收多个传感器的数据报文,将其按照接收顺序存入公共数据报文动态缓存区中,持续执行上述过程,直至全部传感器数据接收完毕或多传感器实时数据处理系统停止。
该步骤主要用于及时接收所有发送来的传感器数据报文,并将其缓存在公共数据报文动态缓存区中。公共数据报文动态缓存区主要用来缓存所有接收到的传感器数据报文,其数据结构用队列实现,新来的传感器数据报文用指针链接到队列尾部。
步骤三:多传感器实时数据处理系统的传感器数据报文头解码模块从公共数据报文动态缓存区中,按照顺序取出传感器数据报文,若该缓存区此刻没有数据,则等待10ms后再次尝试此过程,直至取到数据报文;
一般情况下,所有传感器的数据报文编码与传输都遵循同一个协议。每个传感器在将测量结果以数据报文形式进行传送时,其数据报文头格式都是相同的,用于标识相关传感器、收发方和数据内容信息。因此,整个多传感器实时数据处理系统中只需要一个传感器数据报文头解码模块,就能完成对所有传感器数据报文头进行解码。只要传输协议不发生改变,传感器数据报文头解码模块则无需修改。
步骤四:传感器数据报文头解码模块对取出的传感器数据报文的报文头进行解码,获取该数据报文的传感器标识,即传感器数据报文头解码模块通过查询映射关系表,将获取其对应的传感器ID号,然后将传感器数据报文及其对应的传感器ID号发送至传感器数据报文传送模块。
传感器数据报文传送模块用于将传感器数据报文发送至对应的传感器数据报文解码模块上,完成该传感器数据报文的解码工作,具体传送方法见步骤五。
步骤五:传感器数据报文传送模块利用传感器数据报文对应的传感器ID号,在传感器数据解码模块共享内存表中获取该模块的共享内存标识,通过该标识进一步获取其对应模块的共享内存,若该共享内存获取失败,则转步骤六,否则转步骤七。
传感器数据报文解码模块共享内存表中获取该模块的共享内存标识是事先指定好且全局唯一的。若该模块已加载到内存并处于运行状态,通过该标识就能够获取其共享内存。否则,若获取该模块共享内存失败则说明该模块尚未加载到内存中,需要获取其可执行文件位置并加载至内存。
步骤六:通过传感器数据报文对应的传感器ID号,多传感器数据实时数据处理系统的动态加载管理模块在映射关系表中查找出对应传感器数据报文解码模块的URL地址,利用该地址在服务器上获取该模块在磁盘上的可执行程序文件,将其加载到内存中并运行,然后再转步骤五。
任何传感器数据报文解码模块或传感器解码数据处理模块的加载过程,都由动态加载管理模块完成。该管理模块属于多传感器数据实时数据处理系统,其加载任何模块的过程均是通过映射关系表,利用当前传感器数据报文或解码数据所对应的传感器ID号,获取到所需模块的磁盘位置,再将其加载到内存中并运行。
这一过程会产生毫秒级的延迟(与模块大小和计算机性能有关),但是在整个数据处理过程中,需要加载的模块数量有限,一般不会超过十个。延迟过程中数据都被缓存在各级缓存区中,待模块启动后快速完成处理,因此这种短暂的延迟过程不会对数据实时数据处理过程造成影响。
步骤七:传感器数据报文解码模块从其共享内存中取出传感器数据报文,对其进行解码,然后将解码数据结果及其对应的传感器ID号一起发送至服务器内的传感器解码数据传送模块。
传感器数据报文与其解码数据结果对应同一个传感器ID号。传感器解码数据传送模块主要用于将解码数据结果传送至对应的传感器解码数据处理模块上,完成对其的数据处理,具体传送方法见步骤八。
步骤八:通过解码数据对应的传感器ID号,在传感器解码数据处理模块共享内存表中获取该模块的共享内存标识,通过该标识进一步获取其对应模块的共享内存。若该共享内存获取失败,则转步骤九,否则转步骤十。
传感器解码数据处理模块共享内存表中获取该模块的共享内存标识是事先指定好且全局唯一的。若该模块已加载到内存并处于运行状态,通过该标识就能够获取其共享内存。若获取该模块共享内存失败则说明该模块尚未加载到内存中,需要获取其可执行文件位置并加载至内存。
步骤九:通过解码数据对应的传感器ID号,动态加载管理模块在映射关系表中查找出对应传感器数解码数据处理模块的URL地址,利用该地址在服务器上获取该模块在磁盘上的可执行程序文件,将其加载到内存中并运行,然后再转步骤八。
同样,这一过程会产生毫秒级的延迟(与模块大小和计算机性能有关),但是由于传感器数量有限,传感器解码数据处理模块相对较少,因此产生的延迟不会影响到目标飞行过程的实时数据处理。
步骤十:传感器解码数据处理模块从其共享内存中取出解码数据,对其进行处理;
步骤十一:持续执行步骤二至步骤十,直至所有传感器测量数据全部实时处理完成,或者关闭多传感器实时数据处理系统。
由于目标飞行过程中,传感器测量数据会持续发送至多传感器数据处理系统。因此,步骤二和步骤十的过程将持续进行。步骤一则是事前准备工作。
多传感器实时数据处理系统扩展方法:
目标飞行试验前,因目标测量需要加入新传感器时,就需要对多传感器实时数据处理系统进行相应的扩展。利用本发明,采用以下步骤即可完成对系统的扩展:
(1)建立新传感器的ID号,向服务器中的映射关系表中添加传感器ID号、传感器数据标识;
(2)建立新传感器的数据报文解码模块,并向服务器中的映射关系表添加传感器数据报文解码模块URL地址,以及向服务器中的传感器数据报文解码模块共享内存表中添加传感器ID号和传感器数据报文解码模块共享内存标识。如果该传感器可以共用现有传感器数据报文解码模块,则无需执行该步骤;
(3)建立新传感器的解码数据处理模块,并向服务器中的映射关系表中添加传感器数据报文解码模块URL地址,以及向服务器中的传感器数据报文解码模块共享内存表中添加传感器ID号和传感器数据报文解码模块共享内存标识。如果该传感器可以共用现有的传感器解码数据处理模块,则无需执行该步骤;
(4)多传感器实时数据处理系统扩展完毕。
Claims (9)
1.一种多传感器测量数据自适应实时处理方法,其特征在于,该方法包括如下步骤:
步骤一:为每个传感器建立一个全局唯一的ID号,在服务器中建立一个映射关系表,该映射关系表记录的内容有传感器ID号、传感器数据标识、传感器数据报文解码模块URL地址和传感器解码数据处理模块URL地址;在服务器中建立一个传感器数据报文解码模块共享内存表,该传感器数据报文解码模块共享内存表记录的主要内容为传感器ID号和传感器数据报文解码模块共享内存标识;在服务器中建立一个传感器解码数据处理模块共享内存表,该传感器解码数据处理模块共享内存表记录的主要内容为传感器ID号和传感器解码数据处理模块共享内存标识;由此建立了该传感器ID号与传感器数据标识、传感器数据报文解码模块磁盘文件、传感器数据报文解码模块共享内存标识、传感器解码数据处理模块磁盘文件和传感器解码数据处理模块共享内存标识的映射关系;
步骤二:实时接收多个传感器的数据报文,将其按照接收顺序存入公共数据报文动态缓存区中,持续执行步骤二的内容,直至全部传感器数据接收完毕或多传感器实时数据处理系统停止;
步骤三:多传感器实时数据处理系统的传感器数据报文头解码模块从公共数据报文动态缓存区中,按照顺序取出传感器数据报文,若该缓存区此刻没有数据,则等待10ms后再次尝试此过程,直至取到数据报文;
步骤四:传感器数据报文头解码模块对取出的传感器数据报文的报文头进行解码,获取该数据报文的传感器标识,即传感器数据报文头解码模块通过查询映射关系表,将获取其对应的传感器ID号,然后将传感器数据报文及其对应的传感器ID号发送至传感器数据报文传送模块;
步骤五:传感器数据报文传送模块利用传感器数据报文对应的传感器ID号,在传感器数据报文解码模块共享内存表中获取该传感器数据报文解码模块的共享内存标识,通过该共享内存标识进一步获取其对应模块的共享内存,若该共享内存获取失败,则转步骤六,否则转步骤七;
步骤六:通过传感器数据报文对应的传感器ID号,多传感器数据实时数据处理系统的动态加载管理模块在映射关系表中查找出对应传感器数据报文解码模块的UR L地址,利用该地址在服务器上获取多传感器数据实时数据处理系统的动态加载管理模块在磁盘上的可执行程序文件,将其加载到内存中并运行,然后再转步骤五;
步骤七:传感器数据报文解码模块从其共享内存中取出传感器数据报文,对其进行解码,然后将解码数据结果及其对应的传感器ID号一起发送至服务器内的传感器解码数据传送模块;
步骤八:经传感器解码数据传送模块将解码数据结果传送给对应的传感器解码数据处理模块上,通过解码数据对应的传感器ID号,在传感器解码数据处理模块共享内存表中获取该传感器解码数据处理模块的共享内存标识,通过该共享内存标识进一步获取其对应模块的共享内存,若该共享内存获取失败,则转步骤九,否则转步骤十;
步骤九:通过解码数据对应的传感器ID号,动态加载管理模块在映射关系表中查找出对应传感器数解码数据处理模块的URL地址,利用该地址在服务器上获取该传感器数解码数据处理模块在磁盘上的可执行程序文件,将其加载到内存中并运行,然后再转步骤八;
步骤十:传感器解码数据处理模块从其共享内存中取出解码数据,对其进行处理;
步骤十一:持续执行步骤二至步骤十,直至所有传感器测量数据全部实时处理完成,或者关闭多传感器实时数据处理系统。
2.如权利要求1所述的多传感器测量数据自适应实时处理方法,其特征在于,所述步骤一中,传感器全局唯一ID号使用非负整数进行表示,编号方法如下:
对于已经存在的服务器,从0开始编号,在服务器中使用32位整型进行存储;
若后续加入的新传感器,其该ID号只需在原有最大ID号上加1;
若传感器离开的情况,其编号不再被其它传感器占用。
3.如权利要求2所述的多传感器测量数据自适应实时处理方法,其特征在于,所述步骤一中,每个传感器的实时测量数据结果以二进制编码数据的形式发送至多传感器实时数据处理系统中进行处理,这种二进制编码数据被称为数据报文,由数据报文头和数据内容两部分组成。
4.如权利要求3所述的多传感器测量数据自适应实时处理方法,其特征在于,所述步骤二中,公共数据报文动态缓存区的数据结构用队列实现,新来的传感器数据报文用指针链接到队列尾部。
5.如权利要求4所述的多传感器测量数据自适应实时处理方法,其特征在于,所述步骤三中,数据报文头格式都是相同的,用于标识相关传感器、收发方和数据内容信息。
6.如权利要求4所述的多传感器测量数据自适应实时处理方法,其特征在于,所述步骤三中,所有传感器的数据报文编码与传输都遵循同一个协议,只要传输协议不发生改变,传感器数据报文头解码模块则无需修改。
7.如权利要求5或6所述的多传感器测量数据自适应实时处理方法,其特征在于,所述步骤七中,传感器数据报文与其解码数据结果对应同一个传感器ID号。
8.如权利要求7所述的多传感器测量数据自适应实时处理方法,其特征在于,所述步骤八中,传感器解码数据处理模块共享内存表中获取该传感器解码数据处理模块的共享内存标识是事先指定好且全局唯一的。
9.如权利要求1所述的多传感器测量数据自适应实时处理方法,其特征在于,上述方法还包括如下步骤:
(1)建立新传感器的ID号,向服务器中的映射关系表中添加传感器ID号、传感器数据标识;
(2)建立新传感器的数据报文解码模块,并向服务器中的映射关系表中添加传感器数据报文解码模块URL地址,以及向服务器中的传感器数据报文解码模块共享内存表中添加传感器ID号和传感器数据报文解码模块共享内存标识;如果该传感器可以共用现有传感器数据报文解码模块,则无需执行该步骤(2);
(3)建立新传感器的解码数据处理模块,并向服务器中的映射关系表中添加传感器解码数据处理模块URL地址,以及向服务器中的传感器的解码数据处理模块共享内存表中添加传感器ID号和传感器解码数据处理模块共享内存标识;如果该传感器可以共用现有的传感器解码数据处理模块,则无需执行该步骤(3);
(4)多传感器实时数据处理系统扩展完毕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111189889.9A CN114356431B (zh) | 2021-10-11 | 2021-10-11 | 基于目标飞行试验的多传感器数据自适应实时处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111189889.9A CN114356431B (zh) | 2021-10-11 | 2021-10-11 | 基于目标飞行试验的多传感器数据自适应实时处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114356431A CN114356431A (zh) | 2022-04-15 |
CN114356431B true CN114356431B (zh) | 2023-06-30 |
Family
ID=81095952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111189889.9A Active CN114356431B (zh) | 2021-10-11 | 2021-10-11 | 基于目标飞行试验的多传感器数据自适应实时处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114356431B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102804107A (zh) * | 2009-06-16 | 2012-11-28 | 英特尔公司 | 具有压力传感器的光学电容拇指控制 |
CN108563462A (zh) * | 2018-04-25 | 2018-09-21 | 珠海全志科技股份有限公司 | 数据处理方法、装置、计算机设备和计算机存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4885463B2 (ja) * | 2005-03-03 | 2012-02-29 | 株式会社日立製作所 | センサネットワークシステム、センサデータの処理方法及びプログラム |
WO2011099320A1 (ja) * | 2010-02-12 | 2011-08-18 | 株式会社日立製作所 | 情報処理装置、及び情報処理装置における情報処理方法 |
WO2013054549A1 (ja) * | 2011-10-13 | 2013-04-18 | オムロン株式会社 | ネットワークシステム、ノード装置群およびセンサ装置群 |
US20160112830A1 (en) * | 2014-10-16 | 2016-04-21 | Kakku Pty Ltd. | Method and Apparatus for Detecting Smartphone Application Users Utilizing Globally Unique Identifiers and Wireless Sensors |
CN110868336B (zh) * | 2019-11-11 | 2021-11-02 | 北京明略软件系统有限公司 | 数据管理方法、装置和计算机可读存储介质 |
US11966673B2 (en) * | 2020-03-13 | 2024-04-23 | Nvidia Corporation | Sensor simulation and learning sensor models with generative machine learning methods |
CN111935663B (zh) * | 2020-07-17 | 2022-01-25 | 腾讯科技(深圳)有限公司 | 传感器数据流的处理方法、装置、介质及电子设备 |
-
2021
- 2021-10-11 CN CN202111189889.9A patent/CN114356431B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102804107A (zh) * | 2009-06-16 | 2012-11-28 | 英特尔公司 | 具有压力传感器的光学电容拇指控制 |
CN108563462A (zh) * | 2018-04-25 | 2018-09-21 | 珠海全志科技股份有限公司 | 数据处理方法、装置、计算机设备和计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114356431A (zh) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105677469B (zh) | 定时任务执行方法及装置 | |
US5003469A (en) | Method and apparatus for processing data in a decentralized processing system | |
CN110675857A (zh) | 一种语音识别自动化测试系统及方法 | |
CN111240653B (zh) | 接口文档生成方法、装置及可读存储介质 | |
CN107302476B (zh) | 一种测试异步交互系统的自动化测试方法与系统 | |
CN113821018B (zh) | 运载火箭测试系统 | |
US8352641B2 (en) | Systems and methods for identifying fieldbus devices in a control system | |
CN104410542A (zh) | 模拟测试方法及装置 | |
CN113468128B (zh) | 一种数据处理的方法、装置、电子设备及存储介质 | |
CN114945817A (zh) | 基于缺陷检测的任务处理方法、装置及设备及存储介质 | |
CN114356785B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN108255735B (zh) | 关联环境测试方法、电子装置及计算机可读存储介质 | |
CN114356431B (zh) | 基于目标飞行试验的多传感器数据自适应实时处理方法 | |
US20190221057A1 (en) | Vehicle inspection device and vehicle inspection method | |
CN116266183A (zh) | 一种数据分析方法、装置、设备以及计算机存储介质 | |
CN115794934A (zh) | 一种生产设施监测数据与数字孪生模型集成系统及方法 | |
CN114465937A (zh) | 网卡测试方法、装置、服务器、介质和计算机程序产品 | |
CN110502584B (zh) | 数据同步的方法和装置 | |
CN116303320A (zh) | 基于日志文件的实时任务管理方法、装置、设备及介质 | |
KR102104620B1 (ko) | 네트워크 부하를 저감시킬 수 있는 레이더 신호 처리 장치의 시험 장비 | |
KR102104621B1 (ko) | 네트워크 부하를 저감시킬 수 있는 레이더 신호 처리 장치의 시험 방법 | |
KR102104619B1 (ko) | 시나리오를 이용한 레이더 신호 처리 장치의 시험 장비 | |
CN113590478B (zh) | 一种卫星接收模块的自动化烧录测试装置和方法 | |
US10237764B2 (en) | Assistance device, assistance method and program | |
CN109033137A (zh) | 动态rinex数据存储方法及装置 |
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 |