首页/文章/ 详情

大学毕业设计一席谈之三十四 GPS卫星采样信号的跟踪(3)降采样跟踪

9小时前浏览0
采样信号为一个码片包含16个采样点,需要降为4采样点,然后再进入跟踪算法,看是否能准确跟踪上。本文将展示程序改动的过程!为何要降采样?最主要是为了降低运算量,保证程序运算的实时性。跟踪环路依旧是采用移动码片的方式完成伪码跟踪。降采样的方式就是抽取,这里的抽取非常直接,就是四选一!而通信终端里面的抽取过程远比这个复杂哦!导航接收机里面这么做则完全没有问题!搞通信算法的同行们在做信号抽取的时候需要考虑很多因素,可以阅读下面的系列文章!
数字信号处理之信号处理仿真  第四章 内插和抽取(1)
......
数字信号处理之信号处理仿真v2 第四章 内插和抽取(14)
大学毕业设计一席谈之二十一 抽取滤波器的matlab仿真(1)
GPS接收机需实时处理多颗卫星的信号(每颗卫星需独立跟踪环路)。降采样可减少相关器的计算量,适合资源受限的嵌入式设备。不过对于采用移动码相位跟踪方式的环路而言,降低采样率会降低定位精度。因为DLL需要足够采样点分辨码片(Chip)边界,降采样可能导致码环抖动增大,导致码相位跟踪偏差加大。  
不断优化!
上一篇程序中的日期写错了!捕获结果也存在偏差,在此更正,不过这些失误不影响程序的正确运行!人都会犯错,关键看有没有自我纠错能力!
在此程序基础上改为4倍码速率采样后进行跟踪。

N = 16.368e6;

% 读取数据

fid = fopen(file_path, 'r');

rxDemod = fread(fid, N*15, 'int8');  % 读取N*5个int8数据,保留符号

rxDemod = rxDemod(1:16368000*5)';  % 5s长度

% 4倍抽取

rxDemod = rxDemod(1:4:end); % 四选一方式!!!

fs = 4.092e6;

ts = 1/fs;

%%% 锁相环参数

damp = 0.707;

Bp = 100;     % 噪声带宽

tp = 1/1000;  % 时间间隔 1ms调整一次

Kp = 1;

Wp = 2*Bp/(damp+1/(4*damp));

alpha = 8*damp*Wp*tp/(Kp*(4+4*damp*Wp*tp+(Wp*tp)^2));

beta  = 4*(Wp*tp)^2/(Kp*(4+4*damp*Wp*tp+(Wp*tp)^2));   

%%%%%%%%%%%%%%%    begin tracking

%%%%%% 第一通道

来源:通信工程师专辑
MATLAB通信
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-04-16
最近编辑:9小时前
算法工匠
博士后 | 高级工程师 诚信做事 认真讲课 传播知识
获赞 408粉丝 2663文章 436课程 40
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈