卫星导航系统基带伪码的频域快捕获,完整系统解决方案
moboyou 2025-05-12 13:12 33 浏览
项目背景及可行性分析
1.项目名称、项目的主要内容及目前的进展情况
项目名称:卫星导航系统基带伪码的频域快捕获;
项目的主要内容:利用FPGA设计实现GNSS信号的频域快速捕获算法。
目前的进展情况:拥有成熟的算法结构和仿真测试结果,开始着手相关模块的实现。
2.项目关键技术及创新点的论述
创新点(1):基于FFT,在频域计算伪码序列的循环相关值。在每一个多普勒频移,对所有码延迟同时计算出相关结果。和传统的直接计算本地与接收信号相关值的方法相比,运算时间短。对C/A码来说,只需接收到一个伪码周期(1ms)的信号,就可估计出码相位;传统的串行相关,每次最多移动半个码片,完成一次相关运算,搜索整个码周期需要最少移动2046次。
创新点(2):FFT运算要求满足所用数据的个数为2的整数次幂,一般情况下A/D不能满足在一个码周期内采样点数符合2的整数次幂。本项目通过一种平均下采样技术,来完成数据的匹配。
创新点(3):采样数据为一个码周期时,通过处理单边带数据的办法可以减少一半的运算量。虽然通过IFFT后只能找到前一半的点,但这些点包含了几乎全部信息。
关键技术(1):FFT的实现
关键技术(2):平均下采样完成数据匹配
3.技术成熟性和可靠性论述
目前通过MATLAB在通用PC机上完成该算法,证明该算法不仅可以有效地捕获到卫星导航信号,而且速度较传统的方法相比有很大提高,在一定程度上降低计算的工作量和复杂度。
下图为实际卫星捕获结果示意图:
为了能够实现算法在FPGA平台的顺利移植,利用System Generator在Simulink下的进行了部分硬件协同仿真工作。开发板为合众达公司的seed-fem025,FPGA芯片为Virtex-4 SX25。由于整套系统硬件协同仿真所需的硬件资源不足,所以硬件协同仿真分模块进行。
软件仿真的结果如下图:
团队成员均有比较扎实的数字电路基础知识和FPGA设计功底,以及信号处理方面的专业知识,完全有能力保证该项目的顺利实施,最终完成项目。同时团队成员依托于哈尔滨工业大学通信技术研究所卫星导航技实验室,利用实验室的各种硬件资源,作为项目的物质保证;通信技术研究所早在10年以前就开始了对卫星导航技术的研究,积累了大量成熟的技术。
另外Virtex5系列的FPGA具有丰富的硬件资源,便于实现数字信号处理功能,可以有效地实现大规模的FFT运算,能够实现实时的频域捕获。
项目实施方案
1.方案基本功能框图及描述
该方案利用FFT,在频域完成接收信号与本地信号的循环相关运算,因此同时计算出所有码相位的相关值,估计接收信号的码相位延迟。
具体过程如下:
(1)中频信号采样后经过数字下变频,经过平均下采样,整合数据,匹配运算点数的要求。将匹配的数据交给FFT模块。其中I、Q两支路分别作为FFT的实部和虚部进行复数FFT运算。
(2)在FFT单元中,对进来的数据做分段处理,分段的长度L就决定一次并行运算的长度,与捕获概率、捕获时间有很大的关系。
(3)对本地产生的扩频码,同样进行平均下采样数据匹配后进行FFT运算,并取其复共轭。
(4)把数据段和地址段的FFT结果相乘,然后进行IFFT运算。
(5)对IFFT的结果取模值,存储结果。
(6)对结果进行捕获判决,找出累加后一帧中最大点与设定的门限比较,如果高于门限值,进行一次捕获检验。
(7)如果低于门限,调整NCO调整频率,重复上面的步骤
2.需要的开发平台
所需开发平台为XUPV5-LX110T,因为用频域捕获算法需要大点数的FFT变换支持。
3.方案实施过程中需要开发的模块
本方案进行的频域捕获主要分为,顶层模块,下采样模块、FFT模块、PRN序列产生模块、复数乘法器模块、NCO模块、峰值判决模块、频率搜索模块。
4.系统最终要达到的性能指标
在SNR为-19dB的条件下,捕获伪码序列,码相位的估计结果在0.5个码片范围内,以满足后续跟踪模块的启动条件。
四、需要的其它资源
1.测试设备
在方案实施过程中,需要Xilinx内嵌的逻辑分析仪;思博伦的导航卫星信号源;Simulink以及System generator。
2.仿真、开发工具
ISE集成平台,Matlab和simulink,System generator,Synplify Pro综合工具,以及仿真工具Modelsim。
加入微信
更多内涵你懂的!
搜索微信公众号:电子产品世界
或用微信扫描二维码:
Copyright (c)2000-2015 ELECTRONIC ENGINEERING & PRODUCT WORLD. All rights reserved.
- 上一篇:碱激发对粉煤灰混凝土强度及微观结构的影响
- 下一篇:Matlab基础知识笔记(1)
相关推荐
- NodeJs(一)我对NodeJs的认知
-
欢迎来到我的NodeJs专题系列,更多精彩内容持续更新中,敬请关注!写在前面前面我已经分享了100+篇前端相关的技术文章,都是自己平时工作中遇到的一些问题的问题,还有是我平时自学的内容。但是那些前端文...
- 「Django框架」-Django初识
-
Django介绍Django是一个由Python编写的Web应用框架。它源自一个在线新闻Web站点。Django作为一个从新闻系统生成环境中诞生的框架,是直接面向企业级开发的。Django是一个全功能...
- 什么是PHP?APP开发可以选择PHP编程语言吗?
-
在开发一款APP的过程当中,一支专业的APP开发团队需要UI设计师、前端开发人员、后端开发人员以及测试等等。而熟练掌握PHP编程语言的人才就相当于APP开发团队中的后端开发人员。一般在APP开发中后端...
- php可以做前端吗
-
php可以做前端吗?php不可以做前端,因为php是在服务器端执行的脚本语言,也就是后端语言,主要适用于Web后端开发领域。php简介:PHP(全称:PHP:HypertextPreprocesso...
- PHP多久能学会?比java,python难还是简单呢?
-
PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及PHP自创的语法。利于学习...
- java哪有这细糠啊,PHP是世界上最好的语言!
-
要不说我们要多了解一下其他技术呢,java哪有这好玩应啊。今天分享个php开发的辅助工具:phpenv(当然,php是世界上最好的语言,毋庸置疑)phpenv就是一个开发者工具箱神器,只有拥有了他,你...
- Java和Php的对比
-
(1)开发速度Java是一种面向对象和结构化的语言,开发速度较慢,比如代码更多,耗费较多时间。而PHP是一种解释型语言,开发速度快,代码量少,耗费的时间较少。(2)安全性Java基于字节码形式进行...
- php宝塔搭建实战多端壁纸小程序源码一(wordpress后台安装篇)
-
大家好啊,我是测评君,欢迎来到web测评。本期给大家带来一套php开发的多端壁纸类型的小程序源码,后台是使用wordpress集成的,前端是使用uniapp开发的。今天先给大家分享后台怎么在宝塔里部署...
- PHP中的IMAP扩展简单入门
-
对于邮件处理来说,大家比较熟悉的应该是POP3、SMTP这类的协议,而今天我们介绍的IMAP其实也是非常常用的一种邮件处理协议。它和POP3比较类似,都是以接收处理邮件为主。不过相对于...
- 【推荐】一款免费、全能型的数据库管理神器,效率提升利器
-
如果您对源码&技术感兴趣,请点赞+收藏+转发+关注,大家的支持是我分享最大的动力!!!项目介绍HeidiSQL是一款免费的数据库管理工具,适用于与数据库打交道的开发人员和数据库管理员。它支持多种数据...
- Php+Vue.js实现的项目管理系统
-
一个基于Vue.js实现的项目管理系统目前已实现的主要功能项目管理任务管理账号管理文件管理团队管理权限管理多组织管理技术栈PHPVueMySQLRedis相关界面前端源码地址:https://git...
- 让PHP和Node.js同框共舞:解密php-node的革命性玩法!
-
你有没有想过,PHP和Node.js有朝一日能在一个进程里握手言和?不是“后端服务调用后端服务”,也不是“前端请求后端接口”,而是——直接共享内存、互传变量、同步执行逻辑。听起来像是幻想,但今天...
- 8个增强PHP程序安全的函数
-
安全是编程非常重要的一个方面。在任何一种编程语言中,都提供了许多的函数或者模块来确保程序的安全性。在现代网站应用中,经常要获取来自世界各地用户的输入,但是,我们都知道“永远不能相信那些用户输入的数据”...
- Peachpie —— .NET 的 PHP 编译器
-
Peachpie是一款.NET平台的PHP编译器,主要特性:物联网:可以使用PHP开发WindowsIoT设备应用,至少节省30%的开发支出安全:可以在最安全的平台上运行PH...
- PHP的垃圾回收机制-PHP高级面试题+详解
-
ps:本篇内容包括精选面试题与知识篇。PHP面试题关于PHP的垃圾回收机制,PHP的垃圾回收机制引用计数(referencecounting)GC机制,PHP可以自动进行内存管理,清除不需要的...
- 一周热门
- 最近发表
- 标签列表
-
- curseforge官网网址 (16)
- 外键约束 oracle (36)
- oracle的row number (32)
- 唯一索引 oracle (34)
- oracle in 表变量 (28)
- oracle导出dmp导出 (28)
- oracle两个表 (20)
- oracle 数据库 字符集 (20)
- oracle安装补丁 (19)
- matlab化简多项式 (20)
- 多线程的创建方式 (29)
- 多线程 python (30)
- java多线程并发处理 (32)
- 宏程序代码一览表 (35)
- c++需要学多久 (25)
- c语言编程小知识大全 (17)
- css class选择器用法 (25)
- css样式引入 (30)
- html5和css3新特性 (19)
- css教程文字移动 (33)
- php简单源码 (36)
- php个人中心源码 (25)
- 网站管理平台php源码 (19)
- php小说爬取源码 (23)
- github好玩的php项目 (18)