GPS/Galileo双导航系统软件定义接收机(单频信号处理)
项目介绍
本项目是基于《A Software-Defined GPS and Galileo Receiver: A Single-Frequency Approach》专著算法实现的软件定义接收机,专门用于处理GPS L1频段和Galileo E1频段的单频导航信号。采用完整的软件定义无线电架构,实现从信号采集到导航解算的全链路处理,支持实时和离线两种工作模式。
功能特性
- 双系统联合处理:同步接收处理GPS L1 C/A码和Galileo E1B/C信号
- 完整信号处理链路:包含信号采集、信号捕获、信号跟踪、导航解算四个核心阶段
- 多模式运行:支持实时流数据处理和离线中频文件处理
- 扩展分析功能:卫星可见性分析、信噪比监测、定位精度评估
- 标准数据输出:生成RINEX格式的原始观测数据文件
- 高性能算法:采用扩展卡尔曼滤波进行高精度导航解算
使用方法
基本配置
- 准备输入数据:
- RF前端采集的中频采样数据(I/Q基带信号)
- 卫星星历数据(GPS导航电文/Galileo导航电文)
- 接收机初始位置和时间信息(可选)
- 信号采集参数(采样率、中频频率等)
- 运行主程序:
```matlab
main('config.ini')
输出结果
- 实时卫星跟踪状态(载波相位、伪距测量值)
- 接收机三维定位坐标(经纬高)及精度指标
- 卫星可见性图表和信噪比监测数据
- 定位误差统计分析报告
- RINEX格式原始观测数据文件
系统要求
软件环境
- MATLAB R2018b或更高版本
- 信号处理工具箱
- 通信工具箱
硬件建议
- 多核CPU(推荐4核以上)
- 8GB以上内存
- 足够的存储空间用于处理原始中频数据
文件说明
main.m文件作为项目的主入口点,集成了接收机信号处理的完整工作流程。该文件主要实现了信号处理链路的时序控制,协调各个处理模块之间的数据流转,包含信号采集的参数配置、多通道卫星信号的并行捕获与跟踪管理、导航解算算法的调用执行,以及最终定位结果的输出与可视化展示。同时负责处理模式的切换逻辑,可根据输入配置自动选择实时或离线处理方式,并监控整个系统的运行状态。