当前位置: 首页 > 专利查询>大连大学专利>正文

基于GNU Radio的GPS软件接收机制造技术

技术编号:19318188 阅读:43 留言:0更新日期:2018-11-03 09:55
本发明专利技术涉及基于GNU Radio的GPS软件接收机,属于卫星导航技术领域。本发明专利技术包括第一步:GPS天线模块接收到GPS信号后,经过低噪放大器与带通滤波器输出到射频模块;第二步:射频模块处理信号:根据奈奎斯特采样定理,对GPS C/A带宽的2倍进行带通采样,采样后的信号进行A/D转换后可以利用GNU Radio提供的USRP硬件驱动UHD将数据进行本地保存以进行后处理;本发明专利技术利用GNU Radio软件架构,采用面向对象的编程思想,结合GNU Radio提供的信号处理模块,将信号的捕获、跟踪以及后续的导航解算在通用处理器上编程实现,使用GNU Radio提供的scheduler进行多线程调度管理实现多通道处理可以达到实时性能,并且相比于硬件接收机,可以进行算法升级,便于软件开发,具有很大的灵活性与可扩展性。

GPS software receiver based on GNU Radio

The invention relates to a GPS software receiver based on GNU Radio, belonging to the field of satellite navigation technology. The invention includes the first step: after receiving the GPS signal, the GPS antenna module outputs the signal to the radio frequency module through a low noise amplifier and a band-pass filter; the second step: the radio frequency module processes the signal: according to the Nyquist sampling theorem, the band-pass sampling is carried out for twice the bandwidth of the GPS C/A, and the sampled signal can be converted by GNU after A/D conversion. UHD, which is driven by USRP hardware provided by Radio, saves data locally for post-processing. The method uses GNU Radio software architecture, adopts object-oriented programming idea, combines with signal processing module provided by GNU Radio, and realizes signal acquisition, tracking and subsequent navigation solution on a general purpose processor. The scheduler provided by GNU Radio achieves real-time performance by multi-thread scheduling management and multi-channel processing. Compared with hardware receivers, it can upgrade algorithm, facilitate software development, and has great flexibility and expansibility.

【技术实现步骤摘要】
基于GNURadio的GPS软件接收机
本专利技术涉及基于GNURadio的GPS软件接收机,属于卫星导航

技术介绍
GPS是美国全球定位导航系统,分布范围广,卫星数目多,提供全球覆盖、全天候的三维定位,是目前服务最完善定位系统。GNURadio属于开源软件无线电软件,提供大量但是信号处理模块来实现软件无线电应用,近年来,GNURadio软件无线电项目中有着广泛的应用。传统的商用GPS接收机一般由四部分组成:GPS天线,射频前端,相关器,微处理器。其中天线负责接收GPS信号,射频前端负责将GPS信号转换为低频信号并进行A/D转换,相关器负责信号的捕获、跟踪,并将伪码、载波以及观测值等传递给微处理器,属于接收机的硬件部分,微处理器负责将导航解算,根据导航电文中的卫星位置信息以及卫星信号的发射时间与本地接收信号的时间,完成接收机的位置解算。硬件接收机的核心就是相关器,后续处理器的数据都是来自于相关器,一般的相关器都是GPS芯片。传统接收机基带信号处理中出现的大量相关运算,特别是跟踪过程的相关操作需要专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)来进行处理,相比于软件来说成本高,并且相应芯片只能针对单一的频段进行处理,难以扩展,不够灵活。
技术实现思路
为了解决上述问题,本专利技术提供一种基于GNURadio的GPS软件接收机。本专利技术采取的技术方案如下:基于GNURadio的GPS软件接收机,包括如下步骤:第一步:GPS天线模块接收到GPS信号后,经过低噪放大器与带通滤波器输出到射频模块;第二步:射频模块处理信号:根据奈奎斯特采样定理,对GPSC/A带宽的2倍进行带通采样,采样后的信号进行A/D转换后可以利用GNURadio提供的USRP硬件驱动UHD将数据进行本地保存以进行后处理,也可以根据采样流进行实时处理;第三步:基带信号处理:采集的信号中需要判断哪些是卫星信号,需要先经过捕获,得到卫星的粗略多普勒频率和码相位,将得到的信息传递给跟踪模块,再得到多普勒频移与码相位的精确值以解调出导航电文,包括如下捕获模块与跟踪模块处理:捕获模块处理方法:GPSL1C/A信号捕获是一个二维的过程,需要得到信号的码相位以及载波频率,捕获模块采样基于FFT的码相搜索算法,算法如下:a.基于FFT并行码相捕获算法首先将在采集信号分别与本地载波相乘得到同向分量I,与相移90°载波相乘得到正交分量Q,得到基带复信号I+jQ,对得到的复信号进行FFT变换;b.对本地伪码生成器生成的伪码进行FFT变换,将其转换到频域,并取复共轭;c.对a和b的结果进行相乘,并进行IFFT变换转换到时域;d.将IFFT后的输出的值的平方表示输入信号和PRN码的相关性。如果相关值中存在峰值,则该峰值的坐标就对应输入信号的码相位与载波频率;若没有通过门限,需要重新设定本地载波再次搜索;跟踪模块处理方法:捕获模块得到的码相位和多普勒频移一个粗略值,由于接收机和卫星的相对运动,码相位和多普勒频移是实时变化的,所以需要得到实时更新信号频率、码相位变化以解调出导航电文;跟踪模块采用载波跟踪环和码跟踪相结合的跟踪算法,该算法过程为:载波跟踪环中,首先根据捕获过程中输出的载波频率值在本地复制同样频率的载波。将本地复制载波与输入信号进行混频,以剥离输入信号中的载波。并根据载波的剥离效果进一步调整本地复制载波的参数,以达到最好的载波跟踪效果。载波跟踪环通常采用相位锁定环路(PLL)的形式,码跟踪环中,通常会复制3份不同相位的C/A码,分别称为超前码(early)、即时码(prompt)和滞后码(late),并分别用字母E、P和L来表示。将这3份不同相位的C/A码分别与输入信号进行相关操作,并将即时码的相关结果与超前码和滞后码的相关结果进行比较,就可以较为精确地确定相关结果的最大值。第四步:导航电文解调与位置计算,其方法如下:导航电文解调方法如下:跟踪环路的输出的数据是一串01二进制数据,需要按照GPS信号格式进行解调恢复成导航电文,其中的解调步骤包括位同步、帧同步、奇偶校验、导航电文读取几个步骤;其中位同步需要得到导航电文的跳变位置,导航电文每一位的周期为20ms,C/A码每chip周期为1ms,导航电文每一位包含20个C/A码,当某个C/A码发生变化时,直方图中20个格子相应的值加一,直到直方图中某一个格子的值超过预定值认为位同步成功,对相应跳变位置进行统计,出现一次变化就加一,大于设定门限认定检测成功;子帧同步:位同步成功后可以得到50bps的导航电文,为了获取导航信息,需要获取各个子帧在50bps导航电文中的具体位置,子帧周期6s,由于Costas对环路跳变不敏感,起始8位前导码可能为10001011或者01110100,所以子帧同步需要对前导码及其反码进行搜索,但是搜索到的符合前导码和其反码格式也可能是数据码,还需对后续22bit进行奇偶校验,并对几个子帧前导码位置进行确认。奇偶校验:假设接收获得的30bit为数据为d1,d2,d3,......d30,按照奇偶检验算法,可以计算得到对应每一位计算值D1,D2,D3,......D30,如果接收到的检校位和计算得到结果相同,则表示数据无误;导航电文读取:奇偶校验成功后按照固定的格式对导航信息进行提取,如子帧1的197位起始的8bit数据为电离层时延参数Tgd;位置解算方法如下:利用伪距定位原理,得到四颗卫星的位置信息即可结算处用户位置信息,其中(xi,yi,zi)为第i颗卫星的三维坐标,(xu,yu,zu)为用户位置,tu为用户接收机的时钟误差与卫星原子钟的时钟钟差,对(1)进行微分方程得到:其中δxu,δyu,δzu,δtu是未知量,将(2)定义为矩阵形式求解可得:该方程不能直接求解,本软件利用最小二乘法进行迭代求解,具体实现步骤为:①给定用户位置(xu,yu,zu)和时钟偏差tu设置初值,可求解一组(δxu,δyu,δzu,δtu),利用这些值对原来的值进行修正,新值看为已知量;②重复①操作,如果大于预定门限,将δxu,δyu,δzu,δtu和xu,yu,zu,tu的初值相加,得到一组新值,将新值作为接下来计算的初值;③重复①②操作,直到Δν小于门限值,此时认定求得解xu,yu,zu,tu。本专利技术的有益效果:基于GNURadio的GPS软件接收机则是利用GNURadio软件架构,采用面向对象的编程思想,结合GNURadio提供的信号处理模块,将信号的捕获、跟踪以及后续的导航解算在通用处理器上编程实现,使用GNURadio提供的scheduler进行多线程调度管理实现多通道处理可以达到实时性能,并且相比于硬件接收机,可以进行算法升级,便于软件开发,具有很大的灵活性与可扩展性。附图说明图1是基于FFT并行码相捕获算法原理如图。图2是码跟踪环与载波跟踪环相结合的跟踪算法。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。基于GNURa本文档来自技高网...

【技术保护点】
1.基于GNU Radio的GPS软件接收机,其特征在于:包括如下步骤:第一步:GPS天线模块接收到GPS信号后,经过低噪放大器与带通滤波器输出到射频模块;第二步:射频模块处理信号:根据奈奎斯特采样定理,对GPS C/A带宽的2倍进行带通采样,采样后的信号进行A/D转换后可以利用GNU Radio提供的USRP硬件驱动UHD将数据进行本地保存以进行后处理;第三步:基带信号处理:采集的信号中需要判断哪些是卫星信号,需要先经过捕获,得到卫星的粗略多普勒频率和码相位,将得到的信息传递给跟踪模块,再得到多普勒频移与码相位的精确值以解调出导航电文,包括如下捕获模块与跟踪模块处理:捕获模块处理方法:GPS L1 C/A信号捕获是一个二维的过程,需要得到信号的码相位以及载波频率,捕获模块采样基于FFT的码相搜索算法,算法如下:a.基于FFT并行码相捕获算法首先将在采集信号分别与本地载波相乘得到同向分量I,与相移90°载波相乘得到正交分量Q,得到基带复信号I+jQ,对得到的复信号进行FFT变换;b.对本地伪码生成器生成的伪码进行FFT变换,将其转换到频域,并取复共轭;c.对a和b的结果进行相乘,并进行IFFT变换转换到时域;d.将IFFT后的输出的值的平方表示输入信号和PRN码的相关性;如果相关值中存在峰值,则该峰值的坐标就对应输入信号的码相位与载波频率;若没有通过门限,需要重新设定本地载波再次搜索;跟踪模块处理方法:捕获模块得到的码相位和多普勒频移一个粗略值,由于接收机和卫星的相对运动,码相位和多普勒频移是实时变化的,所以需要得到实时更新信号频率、码相位变化以解调出导航电文;跟踪模块采用载波跟踪环和码跟踪相结合的跟踪算法,算法过程为:首先根据捕获过程中输出的载波频率值在本地复制同样频率的载波,将本地复制载波与输入信号进行混频,以剥离输入信号中的载波,并根据载波的剥离效果进一步调整本地复制载波的参数,以达到最好的载波跟踪效果;载波跟踪环通常采用相位锁定环路的形式,码跟踪环中,会复制3份不同相位的C/A码,分别称为超前码、即时码和滞后码,并分别用字母E、P和L来表示;将这3份不同相位的C/A码分别与输入信号进行相关操作,并将即时码的相关结果与超前码和滞后码的相关结果进行比较,就可以精确地确定相关结果的最大值;第四步:导航电文解调与位置计算,其方法如下:导航电文解调方法如下:跟踪环路的输出的数据是一串01二进制数据,需要按照GPS信号格式进行解调恢复成导航电文,其中的解调步骤包括位同步、帧同步、奇偶校验、导航电文读取几个步骤;其中位同步需要得到导航电文的跳变位置,导航电文每一位的周期为20ms,C/A码每chip周期为1ms,导航电文每一位包含20个C/A码,当某个C/A码发生变化时,直方图中20个格子相应的值加一,直到直方图中某一个格子的值超过预定值认为位同步成功,对相应跳变位置进行统计,出现一次变化就加一,大于设定门限认定检测成功;子帧同步:位同步成功后可以得到50bps的导航电文,为了获取导航信息,需要获取各个子帧在50bps导航电文中的具体位置,子帧周期6s,由于Costas对环路跳变不敏感,起始8位前导码可能为10001011或者01110100,所以子帧同步需要对前导码及其反码进行搜索,但是搜索到的符合前导码和其反码格式也可能是数据码,还需对后续22bit进行奇偶校验,并对几个子帧前导码位置进行确认;奇偶校验:假设接收获得的30bit为数据为d1,d2,d3,......d30,按照奇偶检验算法,可以计算得到对应每一位计算值D1,D2,D3,......D30,如果接收到的检校位和计算得到结果相同,则表示数据无误;导航电文读取:奇偶校验成功后按照固定的格式对导航信息进行提取,如子帧1的197位起始的8bit数据为电离层时延参数Tgd;位置解算方法如下:利用伪距定位原理,得到四颗卫星的位置信息即可结算处用户位置信息,...

【技术特征摘要】
1.基于GNURadio的GPS软件接收机,其特征在于:包括如下步骤:第一步:GPS天线模块接收到GPS信号后,经过低噪放大器与带通滤波器输出到射频模块;第二步:射频模块处理信号:根据奈奎斯特采样定理,对GPSC/A带宽的2倍进行带通采样,采样后的信号进行A/D转换后可以利用GNURadio提供的USRP硬件驱动UHD将数据进行本地保存以进行后处理;第三步:基带信号处理:采集的信号中需要判断哪些是卫星信号,需要先经过捕获,得到卫星的粗略多普勒频率和码相位,将得到的信息传递给跟踪模块,再得到多普勒频移与码相位的精确值以解调出导航电文,包括如下捕获模块与跟踪模块处理:捕获模块处理方法:GPSL1C/A信号捕获是一个二维的过程,需要得到信号的码相位以及载波频率,捕获模块采样基于FFT的码相搜索算法,算法如下:a.基于FFT并行码相捕获算法首先将在采集信号分别与本地载波相乘得到同向分量I,与相移90°载波相乘得到正交分量Q,得到基带复信号I+jQ,对得到的复信号进行FFT变换;b.对本地伪码生成器生成的伪码进行FFT变换,将其转换到频域,并取复共轭;c.对a和b的结果进行相乘,并进行IFFT变换转换到时域;d.将IFFT后的输出的值的平方表示输入信号和PRN码的相关性;如果相关值中存在峰值,则该峰值的坐标就对应输入信号的码相位与载波频率;若没有通过门限,需要重新设定本地载波再次搜索;跟踪模块处理方法:捕获模块得到的码相位和多普勒频移一个粗略值,由于接收机和卫星的相对运动,码相位和多普勒频移是实时变化的,所以需要得到实时更新信号频率、码相位变化以解调出导航电文;跟踪模块采用载波跟踪环和码跟踪相结合的跟踪算法,算法过程为:首先根据捕获过程中输出的载波频率值在本地复制同样频率的载波,将本地复制载波与输入信号进行混频,以剥离输入信号中的载波,并根据载波的剥离效果进一步调整本地复制载波的参数,以达到最好的载波跟踪效果;载波跟踪环通常采用相位锁定环路的形式,码跟踪环中,会复制3份不同相位的C/A码,分别称为超前码、即时码和滞后码,并分别用字母E、P和L来表示;将这3份不同相位的C/A码分别与输入信号进行相关操作,并将即时码的相关结果与超前码和滞后码的相关结果进行比较,就可以精确地确定相关结果的最大值;第四步:导航电文解调与位置计算,其方法如下:导航电文解调方法如下:跟踪环路的输出的数据是一串01二进制数据,需要按照GPS信号格式进行解调恢复成导航电文,其...

【专利技术属性】
技术研发人员:陈颢伟裴悦琨裴腾达
申请(专利权)人:大连大学
类型:发明
国别省市:辽宁,21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1