GPS跟踪环路MATLAB之——数字锁频环

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

从事卫星导航基带处理的童鞋都知道,跟踪环路属于整个卫星导航信号处理中的精华之中的精华。接收机通过跟踪环在本地能够准确的复现接收到的信号的载波和伪码,是后续能够正确定位解算的关键步骤。整个跟踪环路将分成三小节,数字锁频环、数字锁相环和码环。其中数字锁频环和锁相环属于载波跟踪环。笔者所做的《从零开始研发GPS接收机》的工作中所使用的跟踪环路也将会在这里提到
《从零开始研发GPS接收机》记录了笔者实现一个硬件接收机的全过程,可通过公众号找到。

为什么要锁频环

导航信号在捕获成功之后,得到了粗略的多普勒频率值,加上中频IF,即可得到一个粗略的载波频率值。这个频率误差与真正的载波频率最高可能有一两百Hz的误差。如果没有锁频环,只有锁相环,锁相环路捕获时间直接与初始频差相关,初始频差越大,捕获时间越长。另一方面,锁相环的捕获带宽较小,在信噪比较低的时候可能出现锁定失败。相较于锁相环,锁频环能够将频差更大的信号牵引入锁,且收敛速度比锁相环会快很多。因此,十分有必要在锁相环路前加一级锁频环路,首先锁频环将频率牵引到频差很小的范围,然后在开启锁相环,这样就能既快又稳的锁定载波。

科斯塔斯环

这里首先要介绍一下一个新的概念,科斯塔斯环。

科斯塔斯环是一种基于锁相环 (PLL) 的电路,用于从抑制载波调制信号(例如双边带抑制载波信号)和相位调制信号(例如 BPSK、QPSK)中恢复载波频率。它是由通用电气公司的 John P. Costas 在 1950 年代发明的。它的发明对现代数字通信产生了深远的影响。Costas 环的主要应用是无线接收器。与其他基于 PLL 的检测器相比,优势在于,在小偏差下,Costas 环路误差电压为 在这里插入图片描述
,相比于其他PLL检测器的在这里插入图片描述
,灵敏度翻倍,也使科斯塔斯环路特别适合跟踪多普勒频移载波。
在这里插入图片描述
基于科斯塔斯环结构的锁频环和锁相环的实现也比较类似,都是分成这几个部分
1、 鉴频器/鉴相器

2、 环路滤波器

3、 频率可变振荡器

鉴别器

关于鉴频器介绍一下几种鉴频器:

点积和叉积的定义
在这里插入图片描述
鉴频器1,四象限反正切函数:
在这里插入图片描述
优点:同样是最准确的鉴频方法,而且不受比特跳变的影响
缺点:鉴频牵入范围为在这里插入图片描述
缺点:会受比特跳变影响
鉴频器2,二象限反正切函数,这是最准确的鉴频方法,缺点是会受比特跳变影响
在这里插入图片描述
优点:同样是最准确的鉴频方法,而且不受比特跳变的影响
缺点:鉴频牵入范围为在这里插入图片描述
鉴频器3
在这里插入图片描述
在这里插入图片描述也就是信号的幅值,而在这里插入图片描述也就是也就是相当于信号幅值的平方。一些情况下,如果输入前存在AGC功能的话,幅值是一个相对稳定的一个值,因此可以以一个固定数来进行替代。
优点:计算量小,而且不受比特跳变的影响,适合纯逻辑实现
缺点:鉴频近似准确,鉴频牵入范围为在这里插入图片描述

环路滤波器

二阶环路滤波器的结构如下图:
在这里插入图片描述
噪声带宽在这里插入图片描述为固有频率,在这里插入图片描述
在这里插入图片描述
k0是鉴别器的增益,k1是VCO的增益。

matlab程序

模拟一个接收信号,接收信号为一个(1e6- 240)Hz信号的点频,采样率为4.1e6Hz,在第1秒的时候频率会变成(1e6- 190)Hz,在第2秒的时候频率会变成(1e6+ 10)Hz.我们看看本地产生的载波信号是否能够在频率上跟踪上这个接收信号。而且这个接收信号在前面1秒钟有随机的bit翻转,bit速率为1KHz,1ms的积分时间

format long g;

clc;clear all;close all


SampleClk = 4.1e6;  

PointNum = SampleClk*5;  
IF      = 1e6- 240 ;

Carr_cos(1:SampleClk) = cos(2*pi*(IF/SampleClk).*[1:SampleClk] + 0);
Carr_sin(1:SampleClk) = sin(2*pi*(IF/SampleClk).*[1:SampleClk] + 0); 
IF = IF + 50;
Carr_cos(1+SampleClk:PointNum) = cos(2*pi*(IF/SampleClk).*[SampleClk+1:PointNum] + 0);
Carr_sin(1+SampleClk:PointNum) = sin(2*pi*(IF/SampleClk).*[SampleClk+1:PointNum] + 0); 
IF = IF + 200;
Carr_cos(1+2*SampleClk:PointNum) = cos(2*pi*(IF/SampleClk).*[2*SampleClk+1:PointNum] + 0);
Carr_sin(1+2*SampleClk:PointNum) = sin(2*pi*(IF/SampleClk).*[2*SampleClk+1:PointNum] + 0); 


signal0 = Carr_cos +j*Carr_sin;
data = awgn(signal0,-5,'measured');

%以下为付费内容

频率跟踪示意图:(fll_frame变量)
在这里插入图片描述
I/Q幅度示意图 PI、PQ
在这里插入图片描述
在两次频率跳变中,都正常响应,能够进行快速调整跟踪到与输入信号相同的频率。

但如果将第二次变频幅度变成300Hz的话,则频率锁定到错误的频率上去了。如下图所示:
在这里插入图片描述
如果使用atan2的鉴相器,在有码元翻转的情况下,鉴频结果会被干扰,如果不加额外的判断,那么只有在没有码元翻转的时候,才能正常工作。
在这里插入图片描述
因此实际应用中,根据情况来确定使用哪一种鉴频器。读者可以根据这套matlab程序自行改变信号频率参数,更改鉴频器,修改环路带宽等一些参数来观察实验结果,以便更深的理解锁频环的运行。

获取完整程序

见公众号

双2阶广义积分器锁频(DS0GI-FLL)与其他常规锁相相比,具有较好的电网适应性,在电网谐波含 量较髙及电网故障跌落的情况下可实现对电网电压基波频率和相角快速准确的捕获。构建了基于DS0-GI-FUL 的并网变流器电网同步控制系统,仿真和实验结果表明,在电网背景谐波和故障跌落的情况下,该电网同步系 统可更好地滤除电网电压低次谐波的干扰,更快、更稳定地实现相角和频率的同步,从而验证了该系统的有效 性和可行性。 双2阶广义积分器锁频(DS0GI-FLL)与其他常规锁相相比,具有较好的电网适应性,在电网谐波含 量较髙及电网故障跌落的情况下可实现对电网电压基波频率和相角快速准确的捕获。构建了基于DS0-GI-FUL 的并网变流器电网同步控制系统,仿真和实验结果表明,在电网背景谐波和故障跌落的情况下,该电网同步系 统可更好地滤除电网电压低次谐波的干扰,更快、更稳定地实现相角和频率的同步,从而验证了该系统的有效 性和可行性。 双2阶广义积分器锁频(DS0GI-FLL)与其他常规锁相相比,具有较好的电网适应性,在电网谐波含 量较髙及电网故障跌落的情况下可实现对电网电压基波频率和相角快速准确的捕获。构建了基于DS0-GI-FUL 的并网变流器电网同步控制系统,仿真和实验结果表明,在电网背景谐波和故障跌落的情况下,该电网同步系 统可更好地滤除电网电压低次谐波的干扰,更快、更稳定地实现相角和频率的同步,从而验证了该系统的有效 性和可行性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十年老鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值