CN106646575A - 一种基于fpga双核的组合导航***及其构建方法 - Google Patents

一种基于fpga双核的组合导航***及其构建方法 Download PDF

Info

Publication number
CN106646575A
CN106646575A CN201611005351.7A CN201611005351A CN106646575A CN 106646575 A CN106646575 A CN 106646575A CN 201611005351 A CN201611005351 A CN 201611005351A CN 106646575 A CN106646575 A CN 106646575A
Authority
CN
China
Prior art keywords
data
module
navigation
time
navigation system
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.)
Pending
Application number
CN201611005351.7A
Other languages
English (en)
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.)
Nanjing University of Aeronautics and Astronautics
Original Assignee
Nanjing University of Aeronautics and Astronautics
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 Nanjing University of Aeronautics and Astronautics filed Critical Nanjing University of Aeronautics and Astronautics
Priority to CN201611005351.7A priority Critical patent/CN106646575A/zh
Publication of CN106646575A publication Critical patent/CN106646575A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • G01S19/48Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system
    • G01S19/49Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system whereby the further system is an inertial position system, e.g. loosely-coupled
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/165Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

本发明公开了一种基于FPGA双核的组合导航***,包括FPGA核心模块,含有CPU1和CPU2双核处理单元;数据传输模块,包括RS232、RS485、RS422、蓝牙、USB数据传输接口;数据存储模块,包括SRAM、RAM、EPROM存储单元,三者之间相互连通并进行数据交流;数据融合模块,包括时间同步IP核、Kalman滤波器IP核和计时器,所述的时间同步IP核由GNSS提供的秒脉冲触发;所述的Kalman滤波器IP核,用于过滤秒脉冲的杂波;数据解算模块,包括多个开源式功能性程序:CPU1用于控制数据传输模块和数据存储模块;CPU2用于控制数据融合模块、数据解算模块和数据存储模块;所述的CPU1和CPU2通过所述的数据存储模块进行通讯和联动。本发明解决了现有技术中面对多导航设备下数据处理速度慢、数据融合效率低下的问题。

Description

一种基于FPGA双核的组合导航***及其构建方法
技术领域
本发明属于导航技术领域,涉及组合导航***在FPGA上的搭建及其应用,具体涉及一种基于FPGA双核的组合导航***及其构建方法。
背景技术
现代导航己进入以组合导航***为核心的信息中心时代。组合导航***是20世纪70年代在航海、航空与航天等领域随着现代控制理论和计算机技术的发展而发展起来的导航技术,是指把两种或两种以上不同的导航设备以适当的方式组合在一起,利用其性能上的互补特性,以获得比单独使用任一***时更高的导航性能。早期的导航***设计大多是采用模拟电路构成的专用计算机,其缺点是体积大,功耗大,成本高。自上世纪八十年代以来,由于捷联惯导***不断成熟,致使“数学平台”的应用前景超越了框架式的物理平台,所有的信号处理也都可以在导航计算机内实现,导航***的体积、功耗、成本大大降低,而由此对进行导航信息处理的计算机的处理能力提出了较高的要求。
目前导航计算机***大部分采用DSP技术,比较典型的方式是利用微控制器(MCU)作为主机完成数据采集与控制功能,采用DSP芯片完成信息处理功能的合理分配方式。随着FPGA/CPLD领域的快速发展,一种FPGA/CPLD+DSP模式被开发出来,其最大的特点是能够缩短产品开发的周期,其可编程配置特性可以将导航计算机***开发的风险降到最低,同时最大化的满足多种不同惯性传感器的器件的扩展。从而解决了MCU+DSP模式下电路设计不易扩展的问题,提高了导航***设计的灵活性,拓展了应用空间。以上两种模式在某些环境下可实现高速采集、快速处理并满足实时性要求。
随着FPGA(现场可编程门阵列)在数据处理方面的发展,采用FPGA来实现硬件设计,可以使导航***向微小型化、高性能化和低成本化方向发展。且FPGA的开发者可以使用Altera Nios II处理器和SOPC Builder工具能够很快的设计和建立起共享资源的多处理器***。随FPGA的快速发展,工程师们不再局限于单核导航***的研发,而把目光投向了基于FPGA的多核导航计算机***的研制。
目前,多核导航***的研究具有代表性的是哈尔滨工程大学专业硕士王波在硕士论文“基于FPGA的双核导航计算机***设计”(2012.3.1,专业硕士学位论文,哈尔滨工程大学)中提出了一种基于FPGA双核导航***设计。其组合导航***主要是利用SOPC Builder来构建双核***的***设备、处理器及存储器,采用Nios II软核来进行多核处理,使用RAM存储芯片进行双CPU之间的通信。但是,在面对多传感器时,这种双核组合导航***设计仍存在数据传输效率低下,***运行不稳定,导航解算速率慢,导航精度低等问题。
发明内容
本发明的目的在于克服现有技术的缺陷,提供了一种基于FPGA双核的组合导航***及其构建方法,解决了现有技术中面对多导航设备下数据处理速度慢、数据融合效率低下的问题。
为解决上述现有技术的问题,本发明采用以下技术方案。
本发明的一种基于FPGA双核的组合导航***,其特征在于,所述***可应用于GNSS和IN导航卫星***,所述的组合导航***包括:
FPGA核心模块,用于控制导航***,含有:CPU1和CPU2双核处理单元;
数据传输模块,用于导航***中的数据传输,包括:RS232、RS485、RS422、蓝牙、USB数据传输接口;
数据存储模块,用于存储导航卫星***的时间信息,包括:SRAM、RAM、EPROM存储单元,三者之间相互连通,可进行数据交流;
数据融合模块,包括:时间同步IP核、Kalman滤波器IP核和计时器,所述的时间同步IP核由GNSS提供的秒脉冲触发;所述的Kalman滤波器IP核,用于过滤秒脉冲的杂波,计时器用来于真实时间计时;
数据解算模块,用于数据的解算解码、进制转换以及IP核驱动,包括多个开源式结构的功能性程序:IMU数据解算、解码程序;GPS数据解算、解码程序;进制转换程序;IP软核驱动程序;数据融合、解算程序;各模块协同转换程序;
所述的CPU1用于控制数据传输模块和数据存储模块;所述的CPU2用于控制数据融合模块、数据解算模块和数据存储模块;所述的CPU1和CPU2通过所述的数据存储模块进行通讯和联动。
所述的数据解算模块的多个开源式结构的功能性程序,用户可通过数据传输模块的检测端口进行添加和更改。
所述的数据存储模块的SRAM负责所述的CPU1和CPU2之间数据的交汇;RAM负责固定存储空间,用于存储正、逆向导航的时间窗数据、滤波器参数数据,属于导航***的临时记忆;EPROM用于存储一些特殊导航数据,属于导航***永久的存储数据;所述的特殊导航数据包括错误数据,该错误数据用于排查故障和分析,用户可自行设定。
本发明的一种基于FPGA双核的组合导航***的构建方法,其特征在于:所述组合导航***面向GNSS和INS导航设备来设计,其控制核心以FPGA来构造CPU1和CPU2的双核处理单元;将所述***内部划分为数据传输模块,数据存储模块,数据解算模块和数据融合模块;
所述的CPU1控制数据传输模块,CPU控制数据解算模块和数据融合模块,而数据存储模块将由CPU1和CPU2共同控制;
所述的数据传输模块设计有RS232,RS485、RS422、蓝牙、USB接口;数据存储模块将主要由SDRM、RAM、EPROM等模块构成;数据融合模块以时间同步IP核和、Kalman滤波器IP核为主,且时间同步模块由GNSS提供的秒脉冲触发;数据解算模块包括多个功能性程序构成且设计为开源,可根据用户需求通过目标***或数据传输模块中的***检测端口来更改或添加。
所述的数据传输模块的RS232,RS485、RS422、蓝牙、USB数据接口,按以下方式进行设计:在接收或发送和目标对象之间构建数据缓存区间,***数据在接收和发往目标对象时,将先首先存入数据区间;只有数据缓存中的数据达到用户的要求字节量或数据缓存区溢出时,数据才会发往先进先出队列或被接收。
所述的时间同步IP核设计为:
当GNSS持续地向时间同步模块发送秒脉冲以触发时间同步模块运行时,GNSS数据首先通过数据解算模块提取出时间信息,再将时间信息预先存入时间同步模块当中的时间缓存区间内;与此同时时间同步模块内的计时器模块进行持续运作,计时器由FPGA内部晶振分频而运作,可精确到毫秒;当下一次秒脉冲来临时,再将时间存储器当中的时间取出加1s赋予计时器,且时间存储器当中用新的GNSS时间信息替代上一次的GNSS时间;当检测到IMU数据时,只要将此时计时器当中的时间打到IMU数据上,即可完成IMU数据与GNSS数据时间信息的同步。
所述的数据融合模块中的Kalman滤波器IP核通过以下设计,使其完成正向滤波、逆向滤波和正逆向组合滤波过程;
在数据存储模块中设置一个SRAM专用于Kalman滤波器IP核参数的存储空间,Kalman的参数会在一次又一次的迭代中完成更新,直到输出结果;Kalman滤波器的初始参数,可由数据存储模块直接提供;Kalman滤波器设置有逆向滤波功能和正逆向模式选择模块,并可在两种模式之间自由切换。
在所述的Kalman滤波器IP核的设计中,采用包括以下步骤的分窗、重复导航滤波解算算法:
(1)导航过程分窗:假设在某次导航过程中,导航的起点是K=1,终点为K=N;则从起点开始,对整个导航过程进行分段,即K=1,2,3,3…..N;将从K=1到K=N的整个导航滤波过程,分为K=1到K=2;K=2到K=3;K=3到K=4………K=N-1到K=N多个导航短过程;
(2)重复导航滤波解算算法:对每段分窗的导航过程都进行重复导航滤波解算;所述的重复导航滤波解算是指:一个从终点回到起点过程为逆向导航滤波解算,而从起点再次来到终点过程为正向导航解算,两者构成一次重复导航解算;而对每段分窗的导航过程都进行重复导航解算,即为重复分窗导航解算算法。
进一步的,在所述的导航过程分窗中,每段分窗的时间间隔T为10s。
与现有技术相比,本发明具有以下优点和有益效果:
1.本发明利用FPGA的可编程特性划分为CPU1和CPU2双核控制单元,这种“多处理器***”架构在组合导航***中,使得本发明组合导航***在应对多导航设备时,可极大地提高数据的传输和运算速率,并改进了数据融合精度和效率。
2.本发明利用静态随机存取存储器SRAM、随机存取存储器RAM和可擦写可编程只读存储器EPROM)三种存储芯片的存储特性来设计组合导航***中的数据存储模块,可使组合导航***的存储部分具有临时存储和永久存储的功能,且加快了数据存储时的响应速率。保证了组合导航***应用的灵活性。
3.本发明将利用数据融合模块中搭载的时间同步IP核和Kalman滤波器IP核设计新的时间同步过程和导航滤波算法。其中,本发明的时间同步过程主要利用GNSS的秒脉冲信号来触发和矫正;导航滤波解算过程主要利用组合导航***中数据存储模块的记忆功能来进行重复更新,从而实现了正向滤波和逆向滤波的有机结合。
附图说明
图1是本发明的一个实施例的组合导航***结构框图。
图2是本发明的一个实施例的数据传输模块的数据接收IP核设计流程图。
图3是本发明的一个实施例的数据传输模块的数据发送IP核设计流程图。
图4是本发明的一个实施例的具有记忆功能的数据存储模块结构图层。
图5是本发明的一个实施例的时间同步IP核构建示意图。
图6是本发明的一个实施例的时间同步过程图。
图7是本发明的一个实施例的Kalman滤波器流程图。
图8是本发明的一个实施例的基于分段加窗的正/逆向滤波过程示意图。
具体实施方式
本发明组合导航***主要由导航设备控制***组成。本发明可应对多导航设备,如:INS(Inertial Navigation System,惯性导航***)和GNSS(Global NavigationSatellite System,全球导航卫星***);控制***的硬件主体导航计算机,本发明采用FPGA为核心,利用FPGA的可编程的特性对***中的数据传输、存储、融合、解算模块的IP核进行独立的编写,从而提高整个组合导航***的运算效率和利用率。其中包括RS232/RS485/RS422/USB/蓝牙等数据传输接口IP核的设计;时间同步IP核的设计;Kalman滤波器IP核的设计。
下面结合附图对本发明做进一步详细说明。
图1是本发明基于FPGA双核的组合导航***的一个实施例的***结构框图。本实施例可应用于GNSS和IN导航卫星***,如图1所示,所述的组合导航***包括:
FPGA核心模块,用于控制导航***,含有:CPU1和CPU2双核处理单元;
数据传输模块,用于导航***中的数据传输,包括:RS232、RS485、RS422、蓝牙、USB数据传输接口;
图4是本发明的一个实施例的具有记忆功能的数据存储模块结构图层。如图4所示,该数据存储模块,可用于存储导航卫星***的时间信息,包括:SRAM(Static RandomAccess Memory,静态随机存取存储器)、RAM(random access memory,随机存取存储器)、EPROM(Erasable Programmable Read Only Memory,可擦写可编程只读存储器)存储单元,三者之间相互连通,可进行数据交流。其中,SRAM主要负责CPU1和CPU2之间数据的交汇,以保证CPU1和CPU2之间的联动;RAM主要负责分段固定存储空间,分别用于存储正、逆向导航的时间窗数据、滤波器参数等关键性数据,已达到导航***的临时记忆功能;EPROM则存储一些特别的导航数据,如:错误数据,用于排查故障和分析,可自行设定,以帮助导航***永久地存储数据。这样的存储模块的设计将具有临时记忆和永久记忆的功能,而且存储数据皆可通过数据传输模块检测端口读出或备份,且加快了数据存储时的响应速率。保证了组合导航***应用的灵活性。
数据融合模块,包括:时间同步IP核、Kalman滤波器IP核和计时器,所述的时间同步IP核由GNSS提供的秒脉冲触发;以便提高时间同步的精度;所述的Kalman滤波器IP核,用于过滤秒脉冲的杂波,计时器用来于真实时间计时;提高运算效率。
数据解算模块,用于数据的解算解码、进制转换以及IP核驱动,包括多个开源式结构的功能性程序;如:IMU数据解算、解码程序;GPS数据解算、解码程序;进制转换程序;IP软核驱动程序;数据融合、解算程序;各模块协同转换程序。
所述的CPU1用于控制数据传输模块和数据存储模块;所述的CPU2用于控制数据融合模块、数据解算模块和数据存储模块;所述的CPU1和CPU2通过所述的数据存储模块进行通讯和联动。以达到双核***提高运算效率的目的。
本实施例所述的数据解算模块的多个开源式结构的功能性程序,如:IMU数据解算、解码程序;GPS数据解算、解码程序;进制转换程序;IP软核驱动程序;数据融合、解算程序;各模块协同转换程序等。用户可通过数据传输模块的检测端口进行添加和更改。从而使得导航***具有极高的灵活性和适应性,也使得运算效率显著提高。
本实施例所述的数据存储模块的SRAM负责所述的CPU1和CPU2之间数据的交汇;RAM负责固定存储空间,用于存储正、逆向导航的时间窗数据、滤波器参数数据,属于导航***的临时记忆;EPROM用于存储一些特殊导航数据,属于导航***永久的存储数据;所述的特殊导航数据包括错误数据,该错误数据用于排查故障和分析,用户可自行设定。
本发明一种基于FPGA双核的组合导航***的构建方法,其所述组合导航***面向GNSS和INS导航设备来设计,其控制核心以FPGA来构造CPU1和CPU2的双核处理单元;将所述***内部划分为数据传输模块,数据存储模块,数据解算模块和数据融合模块;
所述的CPU1控制数据传输模块,CPU控制数据解算模块和数据融合模块,而数据存储模块将由CPU1和CPU2共同控制;以方便CPU1和CPU2之间进行联动,以达到双核***提高运算效率的目的。
所述的数据传输模块设计有RS232,RS485、RS422、蓝牙、USB接口;数据存储模块将主要由SDRM、RAM、EPROM等模块构成;数据融合模块以时间同步IP核、Kalman滤波器IP核为主,且时间同步模块由GNSS提供的秒脉冲触发;数据解算模块包括多个功能性程序构成且设计为开源,可根据用户需求通过目标***或数据传输模块中的***检测端口来更改或添加。这种设计使得导航***的稳定性,灵活性和运算效率显著提高。
图2和图3分别是本发明的一个实施例的数据传输模块的数据接收IP核设计流程图和数据传输模块的数据发送IP核设计流程图。如图2和图3所示,在数据传输模块设计中,本发明为了提高RS232/RS485/RS422/USB/蓝牙等接口的传输效率,将RS232/RS485/RS422/USB/蓝牙等接口的发送功能和接收收功能将分开进行设计编写和使用。这样,RS232/RS485/RS422/USB/蓝牙等接口的接收和发送功能的利用将更加高效和灵活。传统的数据传输接口的传输模式为一字节一字节的接受或一字节一字节的发送。本发明在编写接收和发送IP时将搭建数据传输缓冲区间,数据接收和发往目标对象时,将数据首先存入数据区间。在接收或发送和目标对象之间构建数据缓存区间,***数据在接收和发往目标对象时,将首先存入数据区间;只有数据缓存中的数据达到用户的要求字节量或数据缓存区溢出时,数据才会发往先进先出(FIFO)队列或被接收。另外,数据接收和发送的IP核将分离开来。R232接口在发送和接受数据过程中将不再拘泥于按字节传输的方式。而在现有技术中,R232RS232/RS485/RS422/USB/蓝牙等接口IP核为按字节发送数据。在此,设置τ变量为阀值。变量τ可根据目标传输帧的字节来设置。当数据量大于或等于阀值τ或者数据缓存区间溢出时,数据才会被接受或发往目标对象。这样,数据传输接口每次接受或发送的数据量为τ;当τ为每帧数据的字节数时,数据传输接口将按帧来接受或发送数据。这种设计方式,可大大提高RS232/RS485/RS422/USB/蓝牙接口发送和接受数据的效率。
图5是本发明的一个实施例的时间同步IP核构建示意图。如图5中时间同步IP核设计结构主要分为三部分,秒脉冲滤波模块,同步计时模块和时间存储模块。其中,时间存储模块独立于数据存储模块,其存储数据所占用的资源来自于CPU2本身的内存,这种设计可提高时间同步的效率。图6是本发明的一个实施例的时间同步过程图。本实施例所述的时间同步IP核设计原理为:当GNSS持续地向时间同步模块发送秒脉冲以触发时间同步模块运行时,GNSS数据首先通过数据解算模块提取出时间信息,再将时间信息预先存入时间同步模块当中的时间缓存区间内;与此同时时间同步模块内的计时器模块进行持续运作,计时器由FPGA内部晶振分频而运作,可精确到毫秒;当下一次秒脉冲来临时,再将时间存储器当中的时间取出加1s赋予计时器,且时间存储器当中用新的GNSS时间信息替代上一次的GNSS时间。当检测到IMU数据时,只要将此时计时器当中的时间打到IMU数据上,即可完成IMU数据与GNSS数据时间信息的同步。由此,可有效地避免GNSS数据接收的延时误差而带来的时间误差。
所述的数据融合模块中的Kalman滤波器IP核通过以下设计,使其完成正向滤波、逆向滤波和正逆向组合滤波过程,并实现软件硬件化,提高运算效率:
为了保证Kalman滤波器IP核运行的稳定性,其所运用的高阶运算规则将由加减乘除基本运算法则来实现。由于,Kalman滤波过程其实是一个迭代过程,这种运用将不会对其运算结果产生影响。为了实现Kalman滤波器参数迭代过程,在数据存储模块中设置一个SRAM专用于Kalman滤波器IP核参数的存储空间,Kalman的参数会在一次又一次的迭代中完成更新,直到输出结果;Kalman滤波器的初始参数,可由数据存储模块直接提供;并且,利用数据存储模块的记忆功能,因此Kalman滤波器设置有逆向滤波功能和正逆向模式选择模块,并可在两种模式之间自由切换。由此,本发明的导航***即可完成实时同步处理也可进行事后数据分析。
图7是本发明的一个实施例的Kalman滤波器流程图。如图7所示,Kalman滤波器的IP核主要由基本运算模块、模式选择模块、Kalman参数更新模块和调用部分数据存储模块构成的。其中,基本运算模块主要由加法IP核、乘法IP核、除法IP核、减法IP核组成。由加、减、乘、除基本运算规则而组成高阶的运算规则;模式选择模块主要决定是正向滤波法则还是逆向滤波法则;Kalman滤波参数的更新区间主要由一片单独的SRAM组成;调用部分的数据存储模块主要是用来实现逆向滤波的功能。本发明滤波器搭载有逆向滤波的功能,这样导航***将不仅拥有实时处理功能也将拥有后处理技术。且正逆向滤波技术可有机地结合,以提高导航精度。逆向滤波需要存储正向导航滤波和逆向导航滤波过程中的基本导航信息及卡尔曼滤波过程中滤波矩阵P的协方差信息。这就需要借助本发明中记忆性数据存储模块用以辅助Kalman滤波IP核。本发明的滤波器IP核搭载有模式切换的IP核,以方便用户在正逆向滤波之间切换。
图8是本发明的一个实施例的基于分段加窗的正/逆向滤波过程示意图。在所述的Kalman滤波器IP核的设计中,采用包括以下步骤的分窗、重复导航滤波解算算法:
(1)导航过程分窗:假设在某次导航过程中,导航的起点是K=1,终点为K=N;则从起点开始,对整个导航过程进行分段,即K=1,2,3,3…..N;将从K=1到K=N的整个导航滤波过程,分为K=1到K=2;K=2到K=3;K=3到K=4………K=N-1到K=N多个导航短过程;
(2)重复导航滤波解算算法:对每段分窗的导航过程都进行重复导航滤波解算;所述的重复导航滤波解算是指:一个从终点回到起点过程为逆向导航滤波解算,而从起点再次来到终点过程为正向导航解算,两者构成一次重复导航解算;而对每段分窗的导航过程都进行重复导航解算,即为重复分窗导航解算算法。
在所述的导航过程分窗中,为了保证重复解算过程的进度,将每段分窗的时间间隔T设为10s。

Claims (9)

1.一种基于FPGA双核的组合导航***,其特征在于,所述***可应用于GNSS和IN导航卫星***,所述的组合导航***包括:
FPGA核心模块,用于控制导航***,含有:CPU1和CPU2双核处理单元;
数据传输模块,用于导航***中的数据传输,包括:RS232、RS485、RS422、蓝牙、USB数据传输接口;
数据存储模块,用于存储导航卫星***的时间信息,包括:SRAM、RAM、EPROM存储单元,三者之间相互连通,可进行数据交流;
数据融合模块,包括:时间同步IP核、Kalman滤波器IP核和计时器,所述的时间同步IP核由GNSS提供的秒脉冲触发;所述的Kalman滤波器IP核,用于过滤秒脉冲的杂波,计时器用来于真实时间计时;
数据解算模块,用于数据的解算解码、进制转换以及IP核驱动,包括多个开源式结构的功能性程序:IMU数据解算、解码程序;GPS数据解算、解码程序;进制转换程序;IP软核驱动程序;数据融合、解算程序;各模块协同转换程序;
所述的CPU1用于控制数据传输模块和数据存储模块;所述的CPU2用于控制数据融合模块、数据解算模块和数据存储模块;所述的CPU1和CPU2通过所述的数据存储模块进行通讯和联动。
2.根据权利要求1所述的一种基于FPGA双核的组合导航***,其特征是,所述的数据解算模块的多个开源式结构的功能性程序,用户可通过数据传输模块的检测端口进行添加和更改。
3.根据权利要求1所述的一种基于FPGA双核的组合导航***,其特征是,所述的数据存储模块的SRAM负责所述的CPU1和CPU2之间数据的交汇;RAM负责固定存储空间,用于存储正、逆向导航的时间窗数据、滤波器参数数据,属于导航***的临时记忆;EPROM用于存储一些特殊导航数据,属于导航***永久的存储数据;所述的特殊导航数据包括错误数据,该错误数据用于排查故障和分析,用户可自行设定。
4.一种如权利要求1至3任一项所述的基于FPGA双核的组合导航***的构建方法,其特征在于:所述组合导航***面向GNSS和INS导航设备来设计,其控制核心以FPGA来构造CPU1和CPU2的双核处理单元;将所述***内部划分为数据传输模块,数据存储模块,数据解算模块和数据融合模块;
所述的CPU1控制数据传输模块,CPU控制数据解算模块和数据融合模块,而数据存储模块将由CPU1和CPU2共同控制;
所述的数据传输模块设计有RS232,RS485、RS422、蓝牙、USB接口;数据存储模块将主要由SDRM、RAM、EPROM等模块构成;数据融合模块以时间同步IP核和、Kalman滤波器IP核为主,且时间同步模块由GNSS提供的秒脉冲触发;数据解算模块包括多个功能性程序构成且设计为开源,可根据用户需求通过目标***或数据传输模块中的***检测端口来更改或添加。
5.根据权利要求4所述的一种基于FPGA双核的组合导航***的构建方法,其特征是,所述的数据传输模块的RS232,RS485、RS422、蓝牙、USB数据接口,按以下方式进行设计:在接收或发送和目标对象之间构建数据缓存区间,***数据在接收和发往目标对象时,将先首先存入数据区间;只有数据缓存中的数据达到用户的要求字节量或数据缓存区溢出时,数据才会发往先进先出队列或被接收。
6.根据权利要求4所述的一种基于FPGA双核的组合导航***的构建方法,其特征是,所述的时间同步IP核设计为:
当GNSS持续地向时间同步模块发送秒脉冲以触发时间同步模块运行时,GNSS数据首先通过数据解算模块提取出时间信息,再将时间信息预先存入时间同步模块当中的时间缓存区间内;与此同时时间同步模块内的计时器模块进行持续运作,计时器由FPGA内部晶振分频而运作,可精确到毫秒;当下一次秒脉冲来临时,再将时间存储器当中的时间取出加1s赋予计时器,且时间存储器当中用新的GNSS时间信息替代上一次的GNSS时间;当检测到IMU数据时,只要将此时计时器当中的时间打到IMU数据上,即可完成IMU数据与GNSS数据时间信息的同步。
7.根据权利要求4所述的一种基于FPGA双核的组合导航***的构建方法,其特征是,所述的数据融合模块中的Kalman滤波器IP核通过以下设计,使其完成正向滤波、逆向滤波和正逆向组合滤波过程;
在数据存储模块中设置一个SRAM专用于Kalman滤波器IP核参数的存储空间,Kalman的参数会在一次又一次的迭代中完成更新,直到输出结果;Kalman滤波器的初始参数,可由数据存储模块直接提供;Kalman滤波器设置有逆向滤波功能和正逆向模式选择模块,并可在两种模式之间自由切换。
8.根据权利要求7所述的一种基于FPGA双核的组合导航***的构建方法,其特征是,在所述的Kalman滤波器IP核的设计中,采用包括以下步骤的分窗、重复导航滤波解算算法:
(1)导航过程分窗:假设在某次导航过程中,导航的起点是K=1,终点为K=N;则从起点开始,对整个导航过程进行分段,即K=1,2,3,3…..N;将从K=1到K=N的整个导航滤波过程,分为K=1到K=2;K=2到K=3;K=3到K=4………K=N-1到K=N多个导航短过程;
(2)重复导航滤波解算算法:对每段分窗的导航过程都进行重复导航滤波解算;所述的重复导航滤波解算是指:一个从终点回到起点过程为逆向导航滤波解算,而从起点再次来到终点过程为正向导航解算,两者构成一次重复导航解算;而对每段分窗的导航过程都进行重复导航解算,即为重复分窗导航解算算法。
9.根据权利要求8所述的一种基于FPGA双核的组合导航***的构建方法,其特征是,在所述的导航过程分窗中,每段分窗的时间间隔T为10s。
CN201611005351.7A 2016-11-15 2016-11-15 一种基于fpga双核的组合导航***及其构建方法 Pending CN106646575A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611005351.7A CN106646575A (zh) 2016-11-15 2016-11-15 一种基于fpga双核的组合导航***及其构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611005351.7A CN106646575A (zh) 2016-11-15 2016-11-15 一种基于fpga双核的组合导航***及其构建方法

Publications (1)

Publication Number Publication Date
CN106646575A true CN106646575A (zh) 2017-05-10

Family

ID=58807042

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611005351.7A Pending CN106646575A (zh) 2016-11-15 2016-11-15 一种基于fpga双核的组合导航***及其构建方法

Country Status (1)

Country Link
CN (1) CN106646575A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107747940A (zh) * 2017-05-11 2018-03-02 南京继航科技有限公司 一种基于fpga及rtos的多传感器融合导航装置
CN108318028A (zh) * 2017-12-20 2018-07-24 中国航空工业集团公司西安航空计算技术研究所 一种导航***核心处理电路设计方法
CN109752738A (zh) * 2018-12-26 2019-05-14 广州中海达卫星导航技术股份有限公司 基于标准时标的imu与gnss数据同步方法
CN112197767A (zh) * 2020-10-10 2021-01-08 江西洪都航空工业集团有限责任公司 一种在线改进滤波误差的滤波器设计方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101261129A (zh) * 2008-02-22 2008-09-10 北京航空航天大学 一种基于dsp和fpga的组合导航计算机
CN102183253A (zh) * 2010-12-31 2011-09-14 北京航空航天大学 一种位置和姿态测量***的软件时间同步方法
CN103518377A (zh) * 2011-01-06 2014-01-15 汤姆逊许可公司 更新接收设备中的数据库的方法和装置
CN106067045A (zh) * 2015-04-21 2016-11-02 国际商业机器公司 用于在设施中收集信息的方法、设备、无线计算设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101261129A (zh) * 2008-02-22 2008-09-10 北京航空航天大学 一种基于dsp和fpga的组合导航计算机
CN102183253A (zh) * 2010-12-31 2011-09-14 北京航空航天大学 一种位置和姿态测量***的软件时间同步方法
CN103518377A (zh) * 2011-01-06 2014-01-15 汤姆逊许可公司 更新接收设备中的数据库的方法和装置
CN106067045A (zh) * 2015-04-21 2016-11-02 国际商业机器公司 用于在设施中收集信息的方法、设备、无线计算设备

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
刘帅 等: "GPS/INS组合导航***时间同步方法综述", 《全球定位***》 *
洪海滨 等: "一种提高导航精度的改进滤波方法", 《测绘通报》 *
苑广欣: "基于FPGA的SINS/GPS导航处理器的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
谭会生 张昌凡: "《EDA技术及应用 Verilog HDL版》", 31 August 2016 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107747940A (zh) * 2017-05-11 2018-03-02 南京继航科技有限公司 一种基于fpga及rtos的多传感器融合导航装置
CN108318028A (zh) * 2017-12-20 2018-07-24 中国航空工业集团公司西安航空计算技术研究所 一种导航***核心处理电路设计方法
CN109752738A (zh) * 2018-12-26 2019-05-14 广州中海达卫星导航技术股份有限公司 基于标准时标的imu与gnss数据同步方法
CN112197767A (zh) * 2020-10-10 2021-01-08 江西洪都航空工业集团有限责任公司 一种在线改进滤波误差的滤波器设计方法

Similar Documents

Publication Publication Date Title
CN106646575A (zh) 一种基于fpga双核的组合导航***及其构建方法
CN101261129B (zh) 一种基于dsp和fpga的组合导航计算机
CN102866621B (zh) 一种航天器gps整秒脉冲高精度校时器及其校时方法
CN103591961A (zh) 一种基于dsp和fpga的捷联罗经导航计算机
CN105974442B (zh) 卫星导航***硬件在环实时仿真测试平台及其方法
CN102109604B (zh) Gps/galileo导航基带处理芯片及导航接收机
CN103116175A (zh) 基于dsp和fpga的嵌入式导航信息处理器
CN104330082A (zh) 一种mems/gnss组合导航***实时数据同步方法
CN108958018A (zh) 一种卫星授时方法和装置、计算机可读存储介质
CN103364770A (zh) 基于矩阵填充的雷达目标检测***及其检测方法
CN101839971B (zh) 一种高精度gnss接收机
CN103970720A (zh) 基于大规模粗粒度嵌入式可重构***及其处理方法
CN103163533A (zh) 一种gnss全球与区域电离层延迟无缝融合表达和改正方法
CN103675862B (zh) 一种相关间距可配的星载多频多模通用伪码生成方法
CN104407510A (zh) 一种授时的方法和装置
CN105372683A (zh) 一种北斗二代与gps公用频点的实时信号接收处理***
CN103727947B (zh) 基于ukf滤波的bds与gis深耦合定位方法和***
CN104597461A (zh) 一种高效的glonass信号模拟器卫星星座仿真方法
CN102645217B (zh) 一种gnss中频数据与惯性测量数据联合采集器
CN104808086B (zh) 一种具有自适应功能的ad采集板卡及采集方法
CN107747940A (zh) 一种基于fpga及rtos的多传感器融合导航装置
CN103293519B (zh) 基于流水线工作方式的i/q通道误差校正方法及其***
Xue et al. The hardware design and simulation of kalman filter based on ip core and time-sharing multiplex
Daniel et al. Tiira: An Open-Source Hardware-based GNSS Receiver and Multi-sensor Navigation System
CN107066707A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170510